From 9002ebd76bcab292924024777827fedb899f1447 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 11 May 2022 11:32:46 +0000 Subject: [PATCH 001/550] fix(deps): update dependency @rollup/plugin-commonjs to v22 Signed-off-by: Renovate Bot --- .changeset/renovate-7ed704d.md | 5 +++++ packages/cli/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 .changeset/renovate-7ed704d.md diff --git a/.changeset/renovate-7ed704d.md b/.changeset/renovate-7ed704d.md new file mode 100644 index 0000000000..df638d8964 --- /dev/null +++ b/.changeset/renovate-7ed704d.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. diff --git a/packages/cli/package.json b/packages/cli/package.json index fe97e6127b..aea6274787 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -41,7 +41,7 @@ "@hot-loader/react-dom-v17": "npm:@hot-loader/react-dom@^17.0.2", "@manypkg/get-packages": "^1.1.3", "@octokit/request": "^5.4.12", - "@rollup/plugin-commonjs": "^21.0.1", + "@rollup/plugin-commonjs": "^22.0.0", "@rollup/plugin-json": "^4.1.0", "@rollup/plugin-node-resolve": "^13.0.0", "@rollup/plugin-yaml": "^3.1.0", diff --git a/yarn.lock b/yarn.lock index c7d84a8cc0..72de9fe370 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5026,10 +5026,10 @@ react-router-dom "6.0.0-beta.0" react-use "^17.2.4" -"@rollup/plugin-commonjs@^21.0.1": - version "21.1.0" - resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.1.0.tgz#45576d7b47609af2db87f55a6d4b46e44fc3a553" - integrity sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA== +"@rollup/plugin-commonjs@^22.0.0": + version "22.0.0" + resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz#f4d87016e2fbf187a593ab9f46626fe05b59e8bd" + integrity sha512-Ktvf2j+bAO+30awhbYoCaXpBcyPmJbaEUYClQns/+6SNCYFURbvBiNbWgHITEsIgDDWCDUclWRKEuf8cwZCFoQ== dependencies: "@rollup/pluginutils" "^3.1.0" commondir "^1.0.1" From 3ea6316cb43809d3ab51ee063f1f31b4eb87a1b2 Mon Sep 17 00:00:00 2001 From: Leon Date: Thu, 12 May 2022 13:52:21 +0200 Subject: [PATCH 002/550] optional icon for catalog and techdocs results Signed-off-by: Leon --- .../app/src/components/search/SearchModal.tsx | 9 ++- .../app/src/components/search/SearchPage.tsx | 2 + .../CatalogSearchResultListItem.tsx | 75 ++++++++++--------- .../TechDocsSearchResultListItem.tsx | 17 ++++- 4 files changed, 64 insertions(+), 39 deletions(-) diff --git a/packages/app/src/components/search/SearchModal.tsx b/packages/app/src/components/search/SearchModal.tsx index 3fdacf08b6..4af5511443 100644 --- a/packages/app/src/components/search/SearchModal.tsx +++ b/packages/app/src/components/search/SearchModal.tsx @@ -26,7 +26,12 @@ import { useTheme, } from '@material-ui/core'; import LaunchIcon from '@material-ui/icons/Launch'; -import { Link, useContent } from '@backstage/core-components'; +import { + CatalogIcon, + DocsIcon, + Link, + useContent, +} from '@backstage/core-components'; import { useApi, useRouteRef } from '@backstage/core-plugin-api'; import { CatalogSearchResultListItem } from '@backstage/plugin-catalog'; import { @@ -186,6 +191,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { case 'software-catalog': resultItem = ( } key={document.location} result={document} highlight={highlight} @@ -195,6 +201,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { case 'techdocs': resultItem = ( } key={document.location} result={document} highlight={highlight} diff --git a/packages/app/src/components/search/SearchPage.tsx b/packages/app/src/components/search/SearchPage.tsx index d1b56bbaf0..558a564b66 100644 --- a/packages/app/src/components/search/SearchPage.tsx +++ b/packages/app/src/components/search/SearchPage.tsx @@ -137,6 +137,7 @@ const SearchPage = () => { case 'software-catalog': return ( } key={document.location} result={document} highlight={highlight} @@ -145,6 +146,7 @@ const SearchPage = () => { case 'techdocs': return ( } key={document.location} result={document} highlight={highlight} diff --git a/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx b/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx index 5ba9d09949..993e34fbf6 100644 --- a/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx +++ b/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx @@ -14,12 +14,13 @@ * limitations under the License. */ -import React from 'react'; +import React, { ReactNode } from 'react'; import { Box, Chip, Divider, ListItem, + ListItemIcon, ListItemText, makeStyles, } from '@material-ui/core'; @@ -47,6 +48,7 @@ const useStyles = makeStyles({ * @public */ export interface CatalogSearchResultListItemProps { + icon?: ReactNode; result: IndexableDocument; highlight?: ResultHighlight; } @@ -60,39 +62,44 @@ export function CatalogSearchResultListItem( const classes = useStyles(); return ( - - - ) : ( - result.title - ) - } - secondary={ - props.highlight?.fields.text ? ( - - ) : ( - result.text - ) - } - /> - - {result.kind && } - {result.lifecycle && ( - - )} - + + {props.icon && {props.icon}} +
+ + ) : ( + result.title + ) + } + secondary={ + props.highlight?.fields.text ? ( + + ) : ( + result.text + ) + } + /> + + {result.kind && ( + + )} + {result.lifecycle && ( + + )} + +
diff --git a/plugins/techdocs/src/search/components/TechDocsSearchResultListItem.tsx b/plugins/techdocs/src/search/components/TechDocsSearchResultListItem.tsx index 6181e05235..9843443c7a 100644 --- a/plugins/techdocs/src/search/components/TechDocsSearchResultListItem.tsx +++ b/plugins/techdocs/src/search/components/TechDocsSearchResultListItem.tsx @@ -14,8 +14,14 @@ * limitations under the License. */ -import React, { PropsWithChildren } from 'react'; -import { Divider, ListItem, ListItemText, makeStyles } from '@material-ui/core'; +import React, { PropsWithChildren, ReactNode } from 'react'; +import { + Divider, + ListItem, + ListItemIcon, + ListItemText, + makeStyles, +} from '@material-ui/core'; import { Link } from '@backstage/core-components'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { HighlightedSearchResultText } from '@backstage/plugin-search-react'; @@ -36,6 +42,7 @@ const useStyles = makeStyles({ * @public */ export type TechDocsSearchResultListItemProps = { + icon?: ReactNode; result: any; highlight?: ResultHighlight; lineClamp?: number; @@ -59,6 +66,7 @@ export const TechDocsSearchResultListItem = ( asListItem = true, asLink = true, title, + icon, } = props; const classes = useStyles(); const TextItem = () => { @@ -135,8 +143,9 @@ export const TechDocsSearchResultListItem = ( const ListItemWrapper = ({ children }: PropsWithChildren<{}>) => asListItem ? ( <> - - {children} + + {icon && {icon}} +
{children}
From fe7614ea54f2253fafd88483c36db1371bebfd24 Mon Sep 17 00:00:00 2001 From: Leon Date: Thu, 12 May 2022 14:01:54 +0200 Subject: [PATCH 003/550] changeset Signed-off-by: Leon --- .changeset/big-bears-fold.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .changeset/big-bears-fold.md diff --git a/.changeset/big-bears-fold.md b/.changeset/big-bears-fold.md new file mode 100644 index 0000000000..ab654729fa --- /dev/null +++ b/.changeset/big-bears-fold.md @@ -0,0 +1,7 @@ +--- +'example-app': minor +'@backstage/plugin-catalog': minor +'@backstage/plugin-techdocs': minor +--- + +Add an optional icon to the Catalog and TechDocs search results From 7fd90bf916a4ebc5193a23bb2338743f9093aa67 Mon Sep 17 00:00:00 2001 From: Leon Date: Thu, 12 May 2022 14:54:40 +0200 Subject: [PATCH 004/550] api-report update Signed-off-by: Leon --- plugins/catalog/api-report.md | 2 ++ plugins/techdocs/api-report.md | 1 + 2 files changed, 3 insertions(+) diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index 556016941a..268287e34e 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -112,6 +112,8 @@ export interface CatalogSearchResultListItemProps { // (undocumented) highlight?: ResultHighlight; // (undocumented) + icon?: ReactNode; + // (undocumented) result: IndexableDocument; } diff --git a/plugins/techdocs/api-report.md b/plugins/techdocs/api-report.md index a8204bc9af..b5f471ae50 100644 --- a/plugins/techdocs/api-report.md +++ b/plugins/techdocs/api-report.md @@ -388,6 +388,7 @@ export const TechDocsSearchResultListItem: ( // @public export type TechDocsSearchResultListItemProps = { + icon?: ReactNode; result: any; highlight?: ResultHighlight; lineClamp?: number; From b046466e3c6c1f0936b072aae2a23021fd921207 Mon Sep 17 00:00:00 2001 From: Leon Date: Thu, 12 May 2022 15:06:22 +0200 Subject: [PATCH 005/550] remove example-app from changeset Signed-off-by: Leon --- .changeset/big-bears-fold.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.changeset/big-bears-fold.md b/.changeset/big-bears-fold.md index ab654729fa..b3bf51787a 100644 --- a/.changeset/big-bears-fold.md +++ b/.changeset/big-bears-fold.md @@ -1,5 +1,4 @@ --- -'example-app': minor '@backstage/plugin-catalog': minor '@backstage/plugin-techdocs': minor --- From 5553f09e800d4ffef85513ee1bdaaae32fe48071 Mon Sep 17 00:00:00 2001 From: goenning Date: Wed, 18 May 2022 19:56:50 +0100 Subject: [PATCH 006/550] ability to configure refresh interval on Kubernetes tab Signed-off-by: goenning --- .changeset/khaki-shrimps-tell.md | 5 +++++ plugins/kubernetes/api-report.md | 13 ++++++++++--- plugins/kubernetes/src/Router.tsx | 14 ++++++++++---- .../src/components/KubernetesContent.tsx | 16 +++++++++++++--- plugins/kubernetes/src/index.ts | 1 + plugins/kubernetes/src/plugin.ts | 16 +++++++++++++++- 6 files changed, 54 insertions(+), 11 deletions(-) create mode 100644 .changeset/khaki-shrimps-tell.md diff --git a/.changeset/khaki-shrimps-tell.md b/.changeset/khaki-shrimps-tell.md new file mode 100644 index 0000000000..cad03e2ae5 --- /dev/null +++ b/.changeset/khaki-shrimps-tell.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-kubernetes': patch +--- + +ability to configure refresh interval on Kubernetes tab diff --git a/plugins/kubernetes/api-report.md b/plugins/kubernetes/api-report.md index 99bee06165..80c30ed489 100644 --- a/plugins/kubernetes/api-report.md +++ b/plugins/kubernetes/api-report.md @@ -111,7 +111,14 @@ export interface DeploymentResources { // Warning: (ae-missing-release-tag) "EntityKubernetesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const EntityKubernetesContent: (_props: {}) => JSX.Element; +export const EntityKubernetesContent: ( + props: EntityKubernetesContentProps, +) => JSX.Element; + +// @public +export type EntityKubernetesContentProps = { + refreshIntervalMs?: number; +}; // Warning: (ae-forgotten-export) The symbol "ErrorPanelProps" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "ErrorPanel" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -300,6 +307,7 @@ export class KubernetesBackendClient implements KubernetesApi { // @public (undocumented) export const KubernetesContent: ({ entity, + refreshIntervalMs, }: KubernetesContentProps) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "KubernetesDrawerable" needs to be exported by the entry point index.d.ts @@ -370,11 +378,10 @@ export const PodsTable: ({ extraColumns, }: PodsTablesProps) => JSX.Element; -// Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "Router" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const Router: (_props: Props) => JSX.Element; +export const Router: (props: { refreshIntervalMs?: number }) => JSX.Element; // Warning: (ae-missing-release-tag) "ServiceAccountKubernetesAuthProvider" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // diff --git a/plugins/kubernetes/src/Router.tsx b/plugins/kubernetes/src/Router.tsx index deb6475ad5..fd3a4bd0ce 100644 --- a/plugins/kubernetes/src/Router.tsx +++ b/plugins/kubernetes/src/Router.tsx @@ -32,9 +32,7 @@ export const isKubernetesAvailable = (entity: Entity) => entity.metadata.annotations?.[KUBERNETES_LABEL_SELECTOR_QUERY_ANNOTATION], ); -type Props = {}; - -export const Router = (_props: Props) => { +export const Router = (props: { refreshIntervalMs?: number }) => { const { entity } = useEntity(); const kubernetesAnnotationValue = @@ -49,7 +47,15 @@ export const Router = (_props: Props) => { ) { return ( - } /> + + } + /> ); } diff --git a/plugins/kubernetes/src/components/KubernetesContent.tsx b/plugins/kubernetes/src/components/KubernetesContent.tsx index 036bcdb608..3fabfae604 100644 --- a/plugins/kubernetes/src/components/KubernetesContent.tsx +++ b/plugins/kubernetes/src/components/KubernetesContent.tsx @@ -25,10 +25,20 @@ import EmptyStateImage from '../assets/emptystate.svg'; import { useKubernetesObjects } from '../hooks'; import { Content, Page, Progress } from '@backstage/core-components'; -type KubernetesContentProps = { entity: Entity; children?: React.ReactNode }; +type KubernetesContentProps = { + entity: Entity; + refreshIntervalMs?: number; + children?: React.ReactNode; +}; -export const KubernetesContent = ({ entity }: KubernetesContentProps) => { - const { kubernetesObjects, error } = useKubernetesObjects(entity); +export const KubernetesContent = ({ + entity, + refreshIntervalMs, +}: KubernetesContentProps) => { + const { kubernetesObjects, error } = useKubernetesObjects( + entity, + refreshIntervalMs, + ); const clustersWithErrors = kubernetesObjects?.items.filter(r => r.errors.length > 0) ?? []; diff --git a/plugins/kubernetes/src/index.ts b/plugins/kubernetes/src/index.ts index 688d52d7e1..6e8de777ca 100644 --- a/plugins/kubernetes/src/index.ts +++ b/plugins/kubernetes/src/index.ts @@ -25,6 +25,7 @@ export { kubernetesPlugin as plugin, EntityKubernetesContent, } from './plugin'; +export type { EntityKubernetesContentProps } from './plugin'; export { Router, isKubernetesAvailable } from './Router'; export * from './api'; export * from './kubernetes-auth-provider'; diff --git a/plugins/kubernetes/src/plugin.ts b/plugins/kubernetes/src/plugin.ts index b54850307e..124bff831b 100644 --- a/plugins/kubernetes/src/plugin.ts +++ b/plugins/kubernetes/src/plugin.ts @@ -76,7 +76,21 @@ export const kubernetesPlugin = createPlugin({ }, }); -export const EntityKubernetesContent = kubernetesPlugin.provide( +/** + * Props of EntityKubernetesContent + * + * @public + */ +export type EntityKubernetesContentProps = { + /** + * Sets the refresh interval in milliseconds. The default value is 10000 (10 seconds) + */ + refreshIntervalMs?: number; +}; + +export const EntityKubernetesContent: ( + props: EntityKubernetesContentProps, +) => JSX.Element = kubernetesPlugin.provide( createRoutableExtension({ name: 'EntityKubernetesContent', component: () => import('./Router').then(m => m.Router), From 25e8598339245d6b2666df911963a20c37898af2 Mon Sep 17 00:00:00 2001 From: fabuloso Date: Mon, 23 May 2022 15:51:02 +0200 Subject: [PATCH 007/550] Allow adding user as collaborator to publish:github action Signed-off-by: fabuloso --- .../actions/builtin/publish/github.test.ts | 8 ++-- .../actions/builtin/publish/github.ts | 37 +++++++++++-------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts index f1a6c9bfe8..2ab3cfb523 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts @@ -399,11 +399,11 @@ describe('publish:github', () => { collaborators: [ { access: 'pull', - username: 'robot-1', + team: 'robot-1' }, { access: 'push', - username: 'robot-2', + team: 'robot-2', }, ], }, @@ -465,11 +465,11 @@ describe('publish:github', () => { collaborators: [ { access: 'pull', - username: 'robot-1', + team: 'robot-1', }, { access: 'push', - username: 'robot-2', + team: 'robot-2', }, ], }, diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 1f9125d962..3deb074a1b 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -58,7 +58,8 @@ export function createPublishGithubAction(options: { requiredStatusCheckContexts?: string[]; repoVisibility?: 'private' | 'internal' | 'public'; collaborators?: Array<{ - username: string; + username?: string; + team?: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; }>; token?: string; @@ -158,7 +159,7 @@ export function createPublishGithubAction(options: { type: 'array', items: { type: 'object', - required: ['username', 'access'], + required: ['access'], properties: { access: { type: 'string', @@ -167,8 +168,12 @@ export function createPublishGithubAction(options: { }, username: { type: 'string', - description: 'The username or group', + description: 'The username', }, + team: { + type: 'string', + description: 'The team name' + } }, }, }, @@ -299,22 +304,24 @@ export function createPublishGithubAction(options: { } if (collaborators) { - for (const { - access: permission, - username: team_slug, - } of collaborators) { + for (const collaborator of collaborators) { try { - await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ - org: owner, - team_slug, - owner, - repo, - permission, - }); + if (collaborator.username) { + await client.rest.repos.addCollaborator({ owner, repo, username: collaborator.username, permissions: collaborator.access }); + } + else { + await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ + org: owner, + team_slug: collaborator.team, + owner, + repo, + permission: collaborator.access, + }); + } } catch (e) { assertError(e); ctx.logger.warn( - `Skipping ${permission} access for ${team_slug}, ${e.message}`, + `Skipping ${collaborator.access} access for ${collaborator.team}, ${e.message}`, ); } } From 456c74403a1430b5118a785bf3ec54fa9ae60096 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 24 May 2022 15:34:15 +0200 Subject: [PATCH 008/550] Update test for adding collaborators Signed-off-by: Francesco Saltori --- .../actions/builtin/publish/github.test.ts | 32 ++++++++----------- .../actions/builtin/publish/github.ts | 14 +++++--- 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts index 2ab3cfb523..0fd6373c7e 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts @@ -399,7 +399,7 @@ describe('publish:github', () => { collaborators: [ { access: 'pull', - team: 'robot-1' + username: 'robot-1', }, { access: 'push', @@ -410,30 +410,24 @@ describe('publish:github', () => { }); const commonProperties = { - org: 'owner', owner: 'owner', repo: 'repo', }; - expect( - mockOctokit.rest.teams.addOrUpdateRepoPermissionsInOrg.mock.calls[1], - ).toEqual([ - { - ...commonProperties, - team_slug: 'robot-1', - permission: 'pull', - }, - ]); + expect(mockOctokit.rest.repos.addCollaborator).toHaveBeenCalledWith({ + ...commonProperties, + username: 'robot-1', + permission: 'pull', + }); expect( - mockOctokit.rest.teams.addOrUpdateRepoPermissionsInOrg.mock.calls[2], - ).toEqual([ - { - ...commonProperties, - team_slug: 'robot-2', - permission: 'push', - }, - ]); + mockOctokit.rest.teams.addOrUpdateRepoPermissionsInOrg, + ).toHaveBeenCalledWith({ + ...commonProperties, + org: 'owner', + team_slug: 'robot-2', + permission: 'push', + }); }); it('should ignore failures when adding multiple collaborators', async () => { diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 3deb074a1b..1e343c0799 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -172,8 +172,8 @@ export function createPublishGithubAction(options: { }, team: { type: 'string', - description: 'The team name' - } + description: 'The team name', + }, }, }, }, @@ -307,9 +307,13 @@ export function createPublishGithubAction(options: { for (const collaborator of collaborators) { try { if (collaborator.username) { - await client.rest.repos.addCollaborator({ owner, repo, username: collaborator.username, permissions: collaborator.access }); - } - else { + await client.rest.repos.addCollaborator({ + owner, + repo, + username: collaborator.username, + permission: collaborator.access, + }); + } else { await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ org: owner, team_slug: collaborator.team, From d075e2e60fb0483e5bf5e0fa2e65258861db4aec Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 24 May 2022 15:34:15 +0200 Subject: [PATCH 009/550] Fix log message Signed-off-by: Francesco Saltori --- .../src/scaffolder/actions/builtin/publish/github.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 1e343c0799..7b6abdde10 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -313,7 +313,7 @@ export function createPublishGithubAction(options: { username: collaborator.username, permission: collaborator.access, }); - } else { + } else if (collaborator.team) { await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ org: owner, team_slug: collaborator.team, @@ -325,7 +325,7 @@ export function createPublishGithubAction(options: { } catch (e) { assertError(e); ctx.logger.warn( - `Skipping ${collaborator.access} access for ${collaborator.team}, ${e.message}`, + `Skipping ${collaborator.access} access for ${collaborator.username ?? collaborator.team}, ${e.message}`, ); } } From f7587f11d1a52885339aa1a1eb30de929a3e5b51 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 24 May 2022 15:34:15 +0200 Subject: [PATCH 010/550] Improve descriptions of collaborators properties Signed-off-by: Francesco Saltori --- .../src/scaffolder/actions/builtin/publish/github.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 7b6abdde10..b1d6ca45b6 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -168,11 +168,13 @@ export function createPublishGithubAction(options: { }, username: { type: 'string', - description: 'The username', + description: + 'The name of the user that will be added as a collaborator', }, team: { type: 'string', - description: 'The team name', + description: + 'The name of the team that will be added as a collaborator', }, }, }, @@ -325,7 +327,9 @@ export function createPublishGithubAction(options: { } catch (e) { assertError(e); ctx.logger.warn( - `Skipping ${collaborator.access} access for ${collaborator.username ?? collaborator.team}, ${e.message}`, + `Skipping ${collaborator.access} access for ${ + collaborator.username ?? collaborator.team + }, ${e.message}`, ); } } From f0f7372a0460440bf2799a0a731dc44bbb1d1aac Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 26 May 2022 15:04:23 +0200 Subject: [PATCH 011/550] mock the catalog api Signed-off-by: Emma Indal --- .../templates/DefaultTemplate.stories.tsx | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx b/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx index 8b9c5100b1..8d6434b7c3 100644 --- a/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx +++ b/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx @@ -39,6 +39,45 @@ import { HomePageStackOverflowQuestions } from '@backstage/plugin-stack-overflow import { Grid, makeStyles } from '@material-ui/core'; import React, { ComponentType } from 'react'; +const entities = [ + { + apiVersion: '1', + kind: 'Component', + metadata: { + name: 'mock-starred-entity', + title: 'Mock Starred Entity!', + }, + }, + { + apiVersion: '1', + kind: 'Component', + metadata: { + name: 'mock-starred-entity-2', + title: 'Mock Starred Entity 2!', + }, + }, + { + apiVersion: '1', + kind: 'Component', + metadata: { + name: 'mock-starred-entity-3', + title: 'Mock Starred Entity 3!', + }, + }, + { + apiVersion: '1', + kind: 'Component', + metadata: { + name: 'mock-starred-entity-4', + title: 'Mock Starred Entity 4!', + }, + }, +]; + +const mockCatalogApi = { + getEntities: async () => ({ items: entities }), +}; + const starredEntitiesApi = new MockStarredEntitiesApi(); starredEntitiesApi.toggleStarred('component:default/example-starred-entity'); starredEntitiesApi.toggleStarred('component:default/example-starred-entity-2'); @@ -53,6 +92,7 @@ export default { <> Promise.resolve({ results: [] }) }], [ From 50e7ad7eaa26ca5576b96a5a01f2bc6a2d3d2314 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 26 May 2022 15:10:27 +0200 Subject: [PATCH 012/550] also import catalogApiRef Signed-off-by: Emma Indal --- .../src/components/home/templates/DefaultTemplate.stories.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx b/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx index 8d6434b7c3..638fe8bc29 100644 --- a/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx +++ b/packages/app/src/components/home/templates/DefaultTemplate.stories.tsx @@ -27,6 +27,7 @@ import { starredEntitiesApiRef, MockStarredEntitiesApi, entityRouteRef, + catalogApiRef, } from '@backstage/plugin-catalog-react'; import { configApiRef } from '@backstage/core-plugin-api'; import { ConfigReader } from '@backstage/config'; From 45546ba3fba8f2a324a2963f73bdb035d8464ff6 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Mon, 30 May 2022 13:29:30 +0200 Subject: [PATCH 013/550] Refine typings Signed-off-by: Francesco Saltori --- plugins/scaffolder-backend/api-report.md | 14 ++-- .../actions/builtin/publish/github.ts | 72 ++++++++++++------- 2 files changed, 56 insertions(+), 30 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index 84293a8538..b7dedebc02 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -282,10 +282,16 @@ export function createPublishGithubAction(options: { requiredStatusCheckContexts?: string[] | undefined; repoVisibility?: 'internal' | 'private' | 'public' | undefined; collaborators?: - | { - username: string; - access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; - }[] + | ( + | { + username: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + | { + team: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + )[] | undefined; token?: string | undefined; topics?: string[] | undefined; diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index b1d6ca45b6..7abf30b196 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -57,11 +57,16 @@ export function createPublishGithubAction(options: { requireCodeOwnerReviews?: boolean; requiredStatusCheckContexts?: string[]; repoVisibility?: 'private' | 'internal' | 'public'; - collaborators?: Array<{ - username?: string; - team?: string; - access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; - }>; + collaborators?: Array< + | { + username: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + | { + team: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + >; token?: string; topics?: string[]; }>({ @@ -155,28 +160,41 @@ export function createPublishGithubAction(options: { }, collaborators: { title: 'Collaborators', - description: 'Provide additional users with permissions', + description: 'Provide additional users or teams with permissions', type: 'array', items: { type: 'object', required: ['access'], - properties: { - access: { - type: 'string', - description: 'The type of access for the user', - enum: ['push', 'pull', 'admin', 'maintain', 'triage'], + oneOf: [ + { + properties: { + access: { + type: 'string', + description: 'The type of access for the user', + enum: ['push', 'pull', 'admin', 'maintain', 'triage'], + }, + username: { + type: 'string', + description: + 'The name of the user that will be added as a collaborator', + }, + }, }, - username: { - type: 'string', - description: - 'The name of the user that will be added as a collaborator', + { + properties: { + access: { + type: 'string', + description: 'The type of access for the team', + enum: ['push', 'pull', 'admin', 'maintain', 'triage'], + }, + team: { + type: 'string', + description: + 'The name of the team that will be added as a collaborator', + }, + }, }, - team: { - type: 'string', - description: - 'The name of the team that will be added as a collaborator', - }, - }, + ], }, }, token: { @@ -308,14 +326,14 @@ export function createPublishGithubAction(options: { if (collaborators) { for (const collaborator of collaborators) { try { - if (collaborator.username) { + if ('username' in collaborator) { await client.rest.repos.addCollaborator({ owner, repo, username: collaborator.username, permission: collaborator.access, }); - } else if (collaborator.team) { + } else if ('team' in collaborator) { await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ org: owner, team_slug: collaborator.team, @@ -326,10 +344,12 @@ export function createPublishGithubAction(options: { } } catch (e) { assertError(e); + const name = + 'username' in collaborator + ? collaborator.username + : collaborator.team; ctx.logger.warn( - `Skipping ${collaborator.access} access for ${ - collaborator.username ?? collaborator.team - }, ${e.message}`, + `Skipping ${collaborator.access} access for ${name}, ${e.message}`, ); } } From 26a739c43b7b60f34f85acbf41da91c5d9587942 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Mon, 30 May 2022 15:43:38 +0200 Subject: [PATCH 014/550] Fix action schema Signed-off-by: Francesco Saltori --- .../src/scaffolder/actions/builtin/publish/github.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 7abf30b196..89b6a78e72 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -181,6 +181,7 @@ export function createPublishGithubAction(options: { }, }, { + additionalProperties: false, properties: { access: { type: 'string', From ce0d8d7eb191a0aa54e9281571032b5cedb4a545 Mon Sep 17 00:00:00 2001 From: fabuloso Date: Mon, 30 May 2022 16:42:39 +0200 Subject: [PATCH 015/550] Add changeset Signed-off-by: fabuloso --- .changeset/honest-planets-sin.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 .changeset/honest-planets-sin.md diff --git a/.changeset/honest-planets-sin.md b/.changeset/honest-planets-sin.md new file mode 100644 index 0000000000..c3c9d16dd7 --- /dev/null +++ b/.changeset/honest-planets-sin.md @@ -0,0 +1,22 @@ +--- +'@backstage/plugin-scaffolder-backend': minor +--- + +**BREAKING** Fixed bug in `publish:github` action that didn't permit to add users as collaborators. +This fix required changing the way parameters are passed to the action. +In order to add a team as collaborator, now you must use the `team` field instead of `username`. +In order to add a user as collaborator, you must use the `username` field. + +```yaml +- id: publish + name: Publish + action: publish:github + input: + allowedHosts: ['github.com'] + repoUrl: ... + collaborators: + - access: ... + team: my_team + - access: ... + username: my_username +``` From 0f314e2da58a46a9509c523c3a58060135fdbcd0 Mon Sep 17 00:00:00 2001 From: "svc.appcenter" Date: Thu, 26 May 2022 19:32:25 -0300 Subject: [PATCH 016/550] fix/Add Repo part for user azure server 2020 Signed-off-by: Joao Paulo Moreira Antunes --- packages/integration/src/azure/AzureUrl.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/integration/src/azure/AzureUrl.ts b/packages/integration/src/azure/AzureUrl.ts index 76de8550ed..1161ab7a1b 100644 --- a/packages/integration/src/azure/AzureUrl.ts +++ b/packages/integration/src/azure/AzureUrl.ts @@ -37,6 +37,10 @@ export class AzureUrl { owner = parts[1]; project = parts[2]; repo = parts[4]; + } else if (parts[4] === '_git') { + owner = `${parts[1]}/${parts[2]}`; + project = parts[3]; + repo = parts[5]; } if (!owner || !project || !repo) { From e37c71b5a4654d6843abfce2248268f2061120bb Mon Sep 17 00:00:00 2001 From: Joao Paulo Moreira Antunes Date: Mon, 30 May 2022 18:57:48 -0300 Subject: [PATCH 017/550] catalog azure server 2020 for use with old tfs Signed-off-by: Joao Paulo Moreira Antunes --- .changeset/shy-geese-judge.md | 5 ++++ .../integration/src/azure/AzureUrl.test.ts | 24 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 .changeset/shy-geese-judge.md diff --git a/.changeset/shy-geese-judge.md b/.changeset/shy-geese-judge.md new file mode 100644 index 0000000000..8012b78c8f --- /dev/null +++ b/.changeset/shy-geese-judge.md @@ -0,0 +1,5 @@ +--- +'@backstage/integration': patch +--- + +Updated to support deployments of Azure DevOps Server under TFS or similar subpath diff --git a/packages/integration/src/azure/AzureUrl.test.ts b/packages/integration/src/azure/AzureUrl.test.ts index 2f22dd13da..a56f800133 100644 --- a/packages/integration/src/azure/AzureUrl.test.ts +++ b/packages/integration/src/azure/AzureUrl.test.ts @@ -142,6 +142,30 @@ describe('AzureUrl', () => { ); }); + it('should work with the old tfs long URL', () => { + const url = AzureUrl.fromRepoUrl( + 'http://my-host/tfs/projects/my-project/_git/my-repo', + ); + + expect(url.getOwner()).toBe('tfs/projects'); + expect(url.getProject()).toBe('my-project'); + expect(url.getRepo()).toBe('my-repo'); + expect(url.getRef()).toBeUndefined(); + expect(url.getPath()).toBeUndefined(); + }); + + it('should work with the old tfs long URL form with a path and ref', () => { + const url = AzureUrl.fromRepoUrl( + 'http://my-host/tfs/projects/my-project/_git/my-repo?path=%2Ffolder&version=GBtest-branch', + ); + + expect(url.getOwner()).toBe('tfs/projects'); + expect(url.getProject()).toBe('my-project'); + expect(url.getRepo()).toBe('my-repo'); + expect(url.getRef()).toBe('test-branch'); + expect(url.getPath()).toBe('/folder'); + }); + it('should reject non-branch refs', () => { expect(() => AzureUrl.fromRepoUrl( From 4db51fc5f13a084ff38c86840f67f90ec148775b Mon Sep 17 00:00:00 2001 From: fabuloso Date: Tue, 31 May 2022 10:30:51 +0200 Subject: [PATCH 018/550] Introduce user field Signed-off-by: fabuloso --- .changeset/honest-planets-sin.md | 10 +-- .../actions/builtin/publish/github.test.ts | 2 +- .../actions/builtin/publish/github.ts | 61 ++++++++++++++++--- 3 files changed, 60 insertions(+), 13 deletions(-) diff --git a/.changeset/honest-planets-sin.md b/.changeset/honest-planets-sin.md index c3c9d16dd7..5035d8cee4 100644 --- a/.changeset/honest-planets-sin.md +++ b/.changeset/honest-planets-sin.md @@ -2,10 +2,12 @@ '@backstage/plugin-scaffolder-backend': minor --- -**BREAKING** Fixed bug in `publish:github` action that didn't permit to add users as collaborators. +Fixed bug in `publish:github` action that didn't permit to add users as collaborators. This fix required changing the way parameters are passed to the action. -In order to add a team as collaborator, now you must use the `team` field instead of `username`. -In order to add a user as collaborator, you must use the `username` field. +In order to add a team as collaborator, now you must use the `team` field instead of `user`. +In order to add a user as collaborator, you must use the `user` field. + +It's still possible to use the field `username` but is deprecated in favor of `team`. ```yaml - id: publish @@ -18,5 +20,5 @@ In order to add a user as collaborator, you must use the `username` field. - access: ... team: my_team - access: ... - username: my_username + user: my_username ``` diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts index 0fd6373c7e..034c3007c4 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.test.ts @@ -399,7 +399,7 @@ describe('publish:github', () => { collaborators: [ { access: 'pull', - username: 'robot-1', + user: 'robot-1', }, { access: 'push', diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 89b6a78e72..6e6beb6e53 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -59,13 +59,17 @@ export function createPublishGithubAction(options: { repoVisibility?: 'private' | 'internal' | 'public'; collaborators?: Array< | { - username: string; + user: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } | { team: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } + | { + username: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } >; token?: string; topics?: string[]; @@ -173,13 +177,26 @@ export function createPublishGithubAction(options: { description: 'The type of access for the user', enum: ['push', 'pull', 'admin', 'maintain', 'triage'], }, - username: { + user: { type: 'string', description: 'The name of the user that will be added as a collaborator', }, }, }, + { + properties: { + access: { + type: 'string', + description: 'The type of access for the user', + enum: ['push', 'pull', 'admin', 'maintain', 'triage'], + }, + username: { + type: 'string', + description: 'Not a valid field anymore', + }, + }, + }, { additionalProperties: false, properties: { @@ -327,11 +344,22 @@ export function createPublishGithubAction(options: { if (collaborators) { for (const collaborator of collaborators) { try { - if ('username' in collaborator) { + if ('user' in collaborator) { await client.rest.repos.addCollaborator({ owner, repo, - username: collaborator.username, + username: collaborator.user, + permission: collaborator.access, + }); + } else if ('username' in collaborator) { + ctx.logger.warn( + 'The field `username` is deprecated in favor of `team`', + ); + await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ + org: owner, + team_slug: collaborator.username, + owner, + repo, permission: collaborator.access, }); } else if ('team' in collaborator) { @@ -345,10 +373,7 @@ export function createPublishGithubAction(options: { } } catch (e) { assertError(e); - const name = - 'username' in collaborator - ? collaborator.username - : collaborator.team; + const name = extractCollaboratorName(collaborator); ctx.logger.warn( `Skipping ${collaborator.access} access for ${name}, ${e.message}`, ); @@ -418,3 +443,23 @@ export function createPublishGithubAction(options: { }, }); } + +function extractCollaboratorName( + collaborator: + | { + user: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + | { + team: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } + | { + username: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + }, +) { + if ('username' in collaborator) return collaborator.username; + if ('user' in collaborator) return collaborator.user; + return collaborator.team; +} From 15a3cacaf2960ac0e4a18678257b5f3705d838b0 Mon Sep 17 00:00:00 2001 From: fabuloso Date: Tue, 31 May 2022 11:57:27 +0200 Subject: [PATCH 019/550] Regenerate api-report and mark old field name as deprecated Signed-off-by: fabuloso --- plugins/scaffolder-backend/api-report.md | 6 +++++- .../src/scaffolder/actions/builtin/publish/github.ts | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index b7dedebc02..256575e747 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -284,13 +284,17 @@ export function createPublishGithubAction(options: { collaborators?: | ( | { - username: string; + user: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } | { team: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } + | { + username: string; + access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; + } )[] | undefined; token?: string | undefined; diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 6e6beb6e53..9d3b43dc4f 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -67,6 +67,7 @@ export function createPublishGithubAction(options: { access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } | { + /** @deprecated This field is deprecated in favor of team */ username: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } @@ -191,6 +192,7 @@ export function createPublishGithubAction(options: { description: 'The type of access for the user', enum: ['push', 'pull', 'admin', 'maintain', 'triage'], }, + /** @deprecated This field is deprecated in favor of team */ username: { type: 'string', description: 'Not a valid field anymore', @@ -455,6 +457,7 @@ function extractCollaboratorName( access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; } | { + /** @deprecated This field is deprecated in favor of team */ username: string; access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; }, From ec2ad21d9e2a210043c0b7c978afed8d97fffb52 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 11 Feb 2022 03:43:51 +0100 Subject: [PATCH 020/550] chore: added migration for the created_by column Signed-off-by: blam --- .../migrations/20220211013100_created_by.js | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 plugins/scaffolder-backend/migrations/20220211013100_created_by.js diff --git a/plugins/scaffolder-backend/migrations/20220211013100_created_by.js b/plugins/scaffolder-backend/migrations/20220211013100_created_by.js new file mode 100644 index 0000000000..257cda21d2 --- /dev/null +++ b/plugins/scaffolder-backend/migrations/20220211013100_created_by.js @@ -0,0 +1,38 @@ +/* + * Copyright 2020 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. + */ + +// @ts-check + +/** + * @param {import('knex').Knex} knex + */ +exports.up = async function up(knex) { + await knex.schema.alterTable('tasks', table => { + table + .text('created_by') + .nullable() + .comment('an entity ref of the user that created the task'); + }); +}; + +/** + * @param {import('knex').Knex} knex + */ +exports.down = async function down(knex) { + await knex.schema.alterTable('tasks', table => { + table.dropColumn('created_by'); + }); +}; From 0ac523dd02bdd7d29858830da1ee19fc8dba84ea Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 11 Feb 2022 03:45:20 +0100 Subject: [PATCH 021/550] chore: added task page for my TaskSpec Signed-off-by: blam --- plugins/scaffolder/src/components/Router.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/scaffolder/src/components/Router.tsx b/plugins/scaffolder/src/components/Router.tsx index 774bc61638..d7158f81cb 100644 --- a/plugins/scaffolder/src/components/Router.tsx +++ b/plugins/scaffolder/src/components/Router.tsx @@ -38,6 +38,7 @@ import { scaffolderTaskRouteRef, selectedTemplateRouteRef, } from '../routes'; +import { MyTaskPage } from './MyTasksPage'; /** * The props for the entrypoint `ScaffolderPage` component the plugin. @@ -118,6 +119,7 @@ export const Router = (props: RouterProps) => { } /> + } /> } /> } /> Date: Fri, 11 Feb 2022 03:46:02 +0100 Subject: [PATCH 022/550] chore: added support for saving a createdBy field Signed-off-by: blam --- .../src/scaffolder/tasks/DatabaseTaskStore.ts | 39 ++++++++++++++++++- .../src/scaffolder/tasks/StorageTaskBroker.ts | 9 +++++ .../src/scaffolder/tasks/types.ts | 3 ++ .../scaffolder-backend/src/service/router.ts | 32 +++++++++++++++ 4 files changed, 81 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts index d0a0fec0a6..6752972244 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts @@ -85,6 +85,32 @@ export class DatabaseTaskStore implements TaskStore { this.db = options.database; } + async list(options: Partial): Promise { + const results = await this.db('tasks') + .where({ + created_by: options.createdBy, + }) + .orderBy('created_at', 'desc') + .select(); + + return results.map(result => ({ + id: result.id, + spec: JSON.parse(result.spec), + status: result.status, + createdBy: result.created_by, + lastHeartbeatAt: + typeof result.last_heartbeat_at === 'string' + ? DateTime.fromSQL(result.last_heartbeat_at, { + zone: 'UTC', + }).toISO() + : result.last_heartbeat_at, + createdAt: + typeof result.created_at === 'string' + ? DateTime.fromSQL(result.created_at, { zone: 'UTC' }).toISO() + : result.created_at, + })); + } + async getTask(taskId: string): Promise { const [result] = await this.db('tasks') .where({ id: taskId }) @@ -99,8 +125,16 @@ export class DatabaseTaskStore implements TaskStore { id: result.id, spec, status: result.status, - lastHeartbeatAt: result.last_heartbeat_at, - createdAt: result.created_at, + lastHeartbeatAt: + typeof result.last_heartbeat_at === 'string' + ? DateTime.fromSQL(result.last_heartbeat_at, { + zone: 'UTC', + }).toISO() + : result.last_heartbeat_at, + createdAt: + typeof result.created_at === 'string' + ? DateTime.fromSQL(result.created_at, { zone: 'UTC' }).toISO() + : result.created_at, createdBy: result.created_by ?? undefined, secrets, }; @@ -119,6 +153,7 @@ export class DatabaseTaskStore implements TaskStore { secrets: options.secrets ? JSON.stringify(options.secrets) : undefined, created_by: options.createdBy ?? null, status: 'open', + created_by: ('createdBy' in spec && spec.createdBy) || null, }); return { taskId }; } diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts index 17f07f702d..927bbf6842 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts @@ -150,6 +150,15 @@ export class StorageTaskBroker implements TaskBroker { private readonly storage: TaskStore, private readonly logger: Logger, ) {} + + async list(options?: Partial): Promise { + if (!options || !options.createdBy) { + throw new Error('Method not implemented.'); + } + + return await this.storage.list({ createdBy: options.createdBy }); + } + private deferredDispatch = defer(); /** diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts index a3a9ef84d1..1fc7670e79 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts @@ -49,6 +49,7 @@ export type SerializedTask = { lastHeartbeatAt?: string; createdBy?: string; secrets?: TaskSecrets; + createdBy: string | null; }; /** @@ -132,6 +133,7 @@ export interface TaskBroker { after: number | undefined; }): Observable<{ events: SerializedTaskEvent[] }>; get(taskId: string): Promise; + list(options?: Partial): Promise; } /** @@ -192,6 +194,7 @@ export interface TaskStore { listStaleTasks(options: { timeoutS: number }): Promise<{ tasks: { taskId: string }[]; }>; + list(options: Partial): Promise; emitLogEvent({ taskId, body }: TaskStoreEmitOptions): Promise; listEvents({ diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 5453dcd234..58bb2e831a 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -129,6 +129,19 @@ export async function createRouter( actionsToRegister.forEach(action => actionRegistry.register(action)); workers.forEach(worker => worker.start()); + const getUserEntityRefFromToken = (backstageToken: string) => { + try { + const [_header, payload, _signature] = backstageToken.split('.'); + const parsedToken = JSON.parse(Buffer.from(payload, 'base64').toString()); + + return parsedToken.sub; + } catch (e) { + logger.warn('Could not parse token from request to create template'); + logger.debug(e); + return null; + } + }; + router .get( '/v2/templates/:namespace/:kind/:name/parameter-schema', @@ -207,6 +220,8 @@ export async function createRouter( const baseUrl = getEntityBaseUrl(template); + const createdBy = token && getUserEntityRefFromToken(token); + const taskSpec: TaskSpec = { apiVersion: template.apiVersion, steps: template.spec.steps.map((step, index) => ({ @@ -228,6 +243,7 @@ export async function createRouter( }), baseUrl, }, + createdBy, }; const result = await taskBroker.dispatch({ @@ -241,6 +257,22 @@ export async function createRouter( res.status(201).json({ id: result.taskId }); }) + .get('/v2/tasks', async (req, res) => { + const token = getBearerToken(req.headers.authorization); + const userEntityRef = token && getUserEntityRefFromToken(token); + + if (!userEntityRef) { + throw new InputError( + 'Could not find a valid user entity ref in the request', + ); + } + + const tasks = await taskBroker.list({ + createdBy: userEntityRef, + }); + + res.status(200).json(tasks); + }) .get('/v2/tasks/:taskId', async (req, res) => { const { taskId } = req.params; const task = await taskBroker.get(taskId); From bdf1deef18646e11c8e2b2b0fd17fb870909a716 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 11 Feb 2022 03:46:30 +0100 Subject: [PATCH 023/550] chore: added a sample frontend Signed-off-by: blam Signed-off-by: blam --- packages/app/src/components/Root/Root.tsx | 15 +- plugins/scaffolder/package.json | 1 + plugins/scaffolder/src/api.ts | 12 ++ .../src/components/MyTasksPage/MyTaskPage.tsx | 135 ++++++++++++++++++ .../src/components/MyTasksPage/index.tsx | 16 +++ yarn.lock | 19 +++ 6 files changed, 197 insertions(+), 1 deletion(-) create mode 100644 plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx create mode 100644 plugins/scaffolder/src/components/MyTasksPage/index.tsx diff --git a/packages/app/src/components/Root/Root.tsx b/packages/app/src/components/Root/Root.tsx index 30da01841c..ff8a260540 100644 --- a/packages/app/src/components/Root/Root.tsx +++ b/packages/app/src/components/Root/Root.tsx @@ -23,6 +23,8 @@ import MapIcon from '@material-ui/icons/MyLocation'; import LayersIcon from '@material-ui/icons/Layers'; import LibraryBooks from '@material-ui/icons/LibraryBooks'; import CreateComponentIcon from '@material-ui/icons/AddCircleOutline'; +import Add from '@material-ui/icons/Add'; +import List from '@material-ui/icons/List'; import SearchIcon from '@material-ui/icons/Search'; import MenuIcon from '@material-ui/icons/Menu'; import MoneyIcon from '@material-ui/icons/MonetizationOn'; @@ -46,6 +48,8 @@ import { SidebarScrollWrapper, SidebarSpace, useSidebarOpenState, + SidebarSubmenu, + SidebarSubmenuItem, } from '@backstage/core-components'; import { MyGroupsSidebarItem } from '@backstage/plugin-org'; import GroupIcon from '@material-ui/icons/People'; @@ -106,7 +110,16 @@ export const Root = ({ children }: PropsWithChildren<{}>) => ( - + + + + + + {/* End global nav */} diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index edc9185488..bb69adfe16 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -56,6 +56,7 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "@rjsf/core": "^3.2.1", + "@material-table/core": "^4.3.29", "@rjsf/material-ui": "^3.2.1", "@types/json-schema": "^7.0.9", "@uiw/react-codemirror": "^4.7.0", diff --git a/plugins/scaffolder/src/api.ts b/plugins/scaffolder/src/api.ts index 04103b9f8a..40c88ba68d 100644 --- a/plugins/scaffolder/src/api.ts +++ b/plugins/scaffolder/src/api.ts @@ -70,6 +70,18 @@ export class ScaffolderClient implements ScaffolderApi { this.useLongPollingLogs = options.useLongPollingLogs ?? false; } + async listTasks(): Promise { + const baseUrl = await this.discoveryApi.getBaseUrl('scaffolder'); + const url = `${baseUrl}/v2/tasks`; + + const response = await this.fetchApi.fetch(url); + if (!response.ok) { + throw await ResponseError.fromResponse(response); + } + + return await response.json(); + } + async getIntegrationsList( options: ScaffolderGetIntegrationsListOptions, ): Promise { diff --git a/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx b/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx new file mode 100644 index 0000000000..36f7a68616 --- /dev/null +++ b/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx @@ -0,0 +1,135 @@ +/* + * Copyright 2022 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 { + Content, + Header, + Lifecycle, + Link, + Page, + Progress, +} from '@backstage/core-components'; +import { useApi, useRouteRef } from '@backstage/core-plugin-api'; +import { Grid } from '@material-ui/core'; +import React from 'react'; +import { scaffolderApiRef } from '../../api'; +import useAsync from 'react-use/lib/useAsync'; +import MaterialTable, { Column } from '@material-table/core'; +import { rootRouteRef } from '../../routes'; +import { Duration, Interval, DateTime } from 'luxon'; +import humanizeDuration from 'humanize-duration'; +import { + StatusError, + StatusPending, + StatusOK, +} from '@backstage/core-components'; + +const CreatedAtColumn = ({ createdAt }: { createdAt: string }) => { + const createdAtTime = DateTime.fromISO(createdAt); + const formatted = Interval.fromDateTimes(createdAtTime, DateTime.local()) + .toDuration() + .valueOf(); + + return

{humanizeDuration(formatted, { round: true })} ago

; +}; + +const TemplateTitle = ({ templateName }: { templateName?: string }) => { + const scaffolder = useApi(scaffolderApiRef); + const { value, loading, error } = useAsync( + () => + scaffolder.getTemplateParameterSchema({ + kind: 'Template', + namespace: 'default', + name: templateName, + }), + [scaffolder, templateName], + ); + + if (loading) { + return null; + } + + return

{value?.title}

; +}; + +const Status = ({ status }) => { + switch (status) { + case 'processing': + return {status}; + case 'completed': + return {status}; + case 'error': + default: + return {status}; + } +}; +export const MyTaskPage = () => { + const scaffolderApi = useApi(scaffolderApiRef); + const { value, loading, error } = useAsync( + () => scaffolderApi.listTasks(), + [scaffolderApi], + ); + + const rootLink = useRouteRef(rootRouteRef); + + return ( + +
+ All my tasks + + } + subtitle="All tasks that have been started by me" + /> + + {loading ? ( + + ) : ( + ( + {row.id} + ), + }, + { + title: 'Name', + render: row => ( + + ), + }, + { + title: 'Created', + field: 'createdAt', + render: row => , + }, + { + title: 'Status', + field: 'status', + render: row => , + }, + ]} + /> + )} + + + ); +}; diff --git a/plugins/scaffolder/src/components/MyTasksPage/index.tsx b/plugins/scaffolder/src/components/MyTasksPage/index.tsx new file mode 100644 index 0000000000..2535904349 --- /dev/null +++ b/plugins/scaffolder/src/components/MyTasksPage/index.tsx @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { MyTaskPage } from './MyTaskPage'; diff --git a/yarn.lock b/yarn.lock index 4ed8ee03bf..71c81d03e7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3988,6 +3988,25 @@ react-beautiful-dnd "^13.0.0" react-double-scrollbar "0.0.15" +"@material-table/core@^4.3.29": + version "4.3.29" + resolved "https://registry.npmjs.org/@material-table/core/-/core-4.3.29.tgz#7f60fe4fc191e016d9be663fa437e00b012eae05" + integrity sha512-7vz1oc3bo1eSzk450NgpA61xQjlgCBg7q1TDGrB8ZDMyx2NvLRxTyNBtW8JEPLaQLoCWoDFK7F/VHOYRN1fKuQ== + dependencies: + "@babel/runtime" "^7.12.5" + "@date-io/date-fns" "^1.3.13" + "@material-ui/icons" "^4.11.2" + "@material-ui/pickers" "^3.2.10" + "@material-ui/styles" "^4.11.4" + classnames "^2.2.6" + date-fns "^2.16.1" + debounce "^1.2.0" + fast-deep-equal "^3.1.3" + prop-types "^15.7.2" + react-beautiful-dnd "^13.0.0" + react-double-scrollbar "0.0.15" + uuid "^3.4.0" + "@material-ui/core@^4.11.0", "@material-ui/core@^4.11.3", "@material-ui/core@^4.12.1", "@material-ui/core@^4.12.2", "@material-ui/core@^4.9.10", "@material-ui/core@^4.9.13": version "4.12.4" resolved "https://registry.npmjs.org/@material-ui/core/-/core-4.12.4.tgz#4ac17488e8fcaf55eb6a7f5efb2a131e10138a73" From 944651e021dadc058887694c668c6d2f218b374c Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 09:15:05 -0300 Subject: [PATCH 024/550] feat: update listTasks flow Signed-off-by: Rogerio Angeliski --- .../src/scaffolder/tasks/DatabaseTaskStore.ts | 16 +++-- .../tasks/StorageTaskBroker.test.ts | 26 ++++++++ .../src/scaffolder/tasks/StorageTaskBroker.ts | 6 +- .../src/service/router.test.ts | 61 +++++++++++++++++++ .../scaffolder-backend/src/service/router.ts | 9 +-- 5 files changed, 99 insertions(+), 19 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts index 6752972244..1c4b9b5210 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts @@ -86,12 +86,15 @@ export class DatabaseTaskStore implements TaskStore { } async list(options: Partial): Promise { - const results = await this.db('tasks') - .where({ + const queryBuilder = this.db('tasks'); + + if (options.createdBy) { + queryBuilder.where({ created_by: options.createdBy, - }) - .orderBy('created_at', 'desc') - .select(); + }); + } + + const results = await queryBuilder.orderBy('created_at', 'desc').select(); return results.map(result => ({ id: result.id, @@ -153,7 +156,8 @@ export class DatabaseTaskStore implements TaskStore { secrets: options.secrets ? JSON.stringify(options.secrets) : undefined, created_by: options.createdBy ?? null, status: 'open', - created_by: ('createdBy' in spec && spec.createdBy) || null, + created_by: + ('createdBy' in options.spec && options.spec.createdBy) || null, }); return { taskId }; } diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts index bb375e5a0f..7ed2eb620a 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts @@ -202,4 +202,30 @@ describe('StorageTaskBroker', () => { expect(task.done).toBe(true); }); + + it('should list all tasks', async () => { + const broker = new StorageTaskBroker(storage, logger); + const { taskId } = await broker.dispatch({ spec: {} as TaskSpec }); + + const promise = broker.list(); + await expect(promise).resolves.toEqual( + expect.arrayContaining([ + expect.objectContaining({ + id: taskId, + }), + ]), + ); + }); + + it('should list only tasks createdBy a specific user', async () => { + const broker = new StorageTaskBroker(storage, logger); + const { taskId } = await broker.dispatch({ + spec: { createdBy: 'user:default/foo' } as TaskSpec, + }); + + const task = await storage.getTask(taskId); + + const promise = broker.list({ createdBy: 'user:default/foo' }); + await expect(promise).resolves.toEqual([task]); + }); }); diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts index 927bbf6842..8e3dadd844 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts @@ -152,11 +152,7 @@ export class StorageTaskBroker implements TaskBroker { ) {} async list(options?: Partial): Promise { - if (!options || !options.createdBy) { - throw new Error('Method not implemented.'); - } - - return await this.storage.list({ createdBy: options.createdBy }); + return await this.storage.list({ createdBy: options?.createdBy }); } private deferredDispatch = defer(); diff --git a/plugins/scaffolder-backend/src/service/router.test.ts b/plugins/scaffolder-backend/src/service/router.test.ts index 14c543249e..52f11357a6 100644 --- a/plugins/scaffolder-backend/src/service/router.test.ts +++ b/plugins/scaffolder-backend/src/service/router.test.ts @@ -131,6 +131,7 @@ describe('createRouter', () => { jest.spyOn(taskBroker, 'dispatch'); jest.spyOn(taskBroker, 'get'); + jest.spyOn(taskBroker, 'list'); jest.spyOn(taskBroker, 'event$'); const router = await createRouter({ @@ -294,6 +295,65 @@ describe('createRouter', () => { }); }); + describe('GET /v2/tasks', () => { + it('return all tasks', async () => { + (taskBroker.list as jest.Mocked['list']).mockResolvedValue([ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: '', + }, + ]); + + const response = await request(app).get(`/v2/tasks`); + expect(taskBroker.list).toBeCalledWith({ + createdBy: undefined, + }); + expect(response.status).toEqual(200); + expect(response.body).toStrictEqual([ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: '', + }, + ]); + }); + + it('return filtered tasks', async () => { + (taskBroker.list as jest.Mocked['list']).mockResolvedValue([ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: 'user:default/foo', + }, + ]); + + const response = await request(app).get( + `/v2/tasks?createdBy=user:default/foo`, + ); + expect(taskBroker.list).toBeCalledWith({ + createdBy: 'user:default/foo', + }); + + expect(response.status).toEqual(200); + expect(response.body).toStrictEqual([ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: 'user:default/foo', + }, + ]); + }); + }); + describe('GET /v2/tasks/:taskId', () => { it('does not divulge secrets', async () => { (taskBroker.get as jest.Mocked['get']).mockResolvedValue({ @@ -302,6 +362,7 @@ describe('createRouter', () => { status: 'completed', createdAt: '', secrets: { backstageToken: 'secret' }, + createdBy: '', }); const response = await request(app).get(`/v2/tasks/a-random-id`); diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 58bb2e831a..61fbe74b8b 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -258,14 +258,7 @@ export async function createRouter( res.status(201).json({ id: result.taskId }); }) .get('/v2/tasks', async (req, res) => { - const token = getBearerToken(req.headers.authorization); - const userEntityRef = token && getUserEntityRefFromToken(token); - - if (!userEntityRef) { - throw new InputError( - 'Could not find a valid user entity ref in the request', - ); - } + const userEntityRef = req.query.createdBy?.toString(); const tasks = await taskBroker.list({ createdBy: userEntityRef, From 6c02fd3c29977b64be140758dfdcf790a41a2abc Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 09:15:41 -0300 Subject: [PATCH 025/550] feat: update tasks page Signed-off-by: Rogerio Angeliski --- plugins/scaffolder/dev/index.tsx | 16 +- plugins/scaffolder/src/api.test.ts | 80 +++++++ plugins/scaffolder/src/api.ts | 16 +- .../ActionsPage/ActionsPage.test.tsx | 1 + .../ListTasksPage/ListTaskPage.test.tsx | 226 ++++++++++++++++++ .../ListTasksPage/ListTasksPage.tsx | 144 +++++++++++ .../ListTasksPage/OwnerListPicker.test.tsx | 47 ++++ .../ListTasksPage/OwnerListPicker.tsx | 135 +++++++++++ .../columns/CreatedAtColumn.test.tsx | 34 +++ .../ListTasksPage/columns/CreatedAtColumn.tsx | 27 +++ .../columns/OwnerEntityColumn.test.tsx | 82 +++++++ .../columns/OwnerEntityColumn.tsx | 50 ++++ .../columns/TaskStatusColumn.test.tsx | 38 +++ .../columns/TaskStatusColumn.tsx | 33 +++ .../columns/TemplateTitleColumn.test.tsx | 48 ++++ .../columns/TemplateTitleColumn.tsx | 33 +++ .../components/ListTasksPage/columns/index.ts | 19 ++ .../{MyTasksPage => ListTasksPage}/index.tsx | 2 +- .../src/components/MyTasksPage/MyTaskPage.tsx | 135 ----------- plugins/scaffolder/src/components/Router.tsx | 8 +- .../TemplatePage/TemplatePage.test.tsx | 1 + plugins/scaffolder/src/plugin.ts | 5 +- plugins/scaffolder/src/routes.ts | 6 + plugins/scaffolder/src/types.ts | 9 + 24 files changed, 1051 insertions(+), 144 deletions(-) create mode 100644 plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx create mode 100644 plugins/scaffolder/src/components/ListTasksPage/columns/index.ts rename plugins/scaffolder/src/components/{MyTasksPage => ListTasksPage}/index.tsx (92%) delete mode 100644 plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx diff --git a/plugins/scaffolder/dev/index.tsx b/plugins/scaffolder/dev/index.tsx index 03632f434d..83496c719d 100644 --- a/plugins/scaffolder/dev/index.tsx +++ b/plugins/scaffolder/dev/index.tsx @@ -25,7 +25,11 @@ import { import React from 'react'; import { scaffolderApiRef, ScaffolderClient } from '../src'; import { ScaffolderPage } from '../src/plugin'; -import { discoveryApiRef, fetchApiRef } from '@backstage/core-plugin-api'; +import { + discoveryApiRef, + fetchApiRef, + identityApiRef, +} from '@backstage/core-plugin-api'; import { CatalogEntityPage } from '@backstage/plugin-catalog'; createDevApp() @@ -49,9 +53,15 @@ createDevApp() discoveryApi: discoveryApiRef, fetchApi: fetchApiRef, scmIntegrationsApi: scmIntegrationsApiRef, + identityApi: identityApiRef, }, - factory: ({ discoveryApi, fetchApi, scmIntegrationsApi }) => - new ScaffolderClient({ discoveryApi, fetchApi, scmIntegrationsApi }), + factory: ({ discoveryApi, fetchApi, scmIntegrationsApi, identityApi }) => + new ScaffolderClient({ + discoveryApi, + fetchApi, + scmIntegrationsApi, + identityApi, + }), }) .addPage({ path: '/create', diff --git a/plugins/scaffolder/src/api.test.ts b/plugins/scaffolder/src/api.test.ts index 4e47c7f239..a5a3a3c51e 100644 --- a/plugins/scaffolder/src/api.test.ts +++ b/plugins/scaffolder/src/api.test.ts @@ -33,6 +33,13 @@ describe('api', () => { const discoveryApi = { getBaseUrl: async () => mockBaseUrl }; const fetchApi = new MockFetchApi(); + const identityApi = { + getBackstageIdentity: jest.fn(), + getProfileInfo: jest.fn(), + getCredentials: jest.fn(), + signOut: jest.fn(), + }; + const scmIntegrationsApi = ScmIntegrations.fromConfig( new ConfigReader({ integrations: { @@ -51,6 +58,7 @@ describe('api', () => { scmIntegrationsApi, discoveryApi, fetchApi, + identityApi, }); }); @@ -129,6 +137,7 @@ describe('api', () => { scmIntegrationsApi, discoveryApi, fetchApi, + identityApi, useLongPollingLogs: true, }); }); @@ -305,4 +314,75 @@ describe('api', () => { }); }); }); + + describe('listTasks', () => { + it('should list all tasks', async () => { + server.use( + rest.get(`${mockBaseUrl}/v2/tasks`, (req, res, ctx) => { + const createdBy = req.url.searchParams.get('createdBy'); + + if (createdBy) { + return res( + ctx.json([ + { + createdBy, + }, + ]), + ); + } + + return res( + ctx.json([ + { + createdBy: null, + }, + { + createdBy: null, + }, + ]), + ); + }), + ); + + const result = await apiClient.listTasks('all'); + expect(identityApi.getBackstageIdentity).not.toBeCalled(); + expect(result).toHaveLength(2); + }); + it('should list task using the current user as owner', async () => { + server.use( + rest.get(`${mockBaseUrl}/v2/tasks`, (req, res, ctx) => { + const createdBy = req.url.searchParams.get('createdBy'); + + if (createdBy) { + return res( + ctx.json([ + { + createdBy, + }, + ]), + ); + } + + return res( + ctx.json([ + { + createdBy: null, + }, + { + createdBy: null, + }, + ]), + ); + }), + ); + + identityApi.getBackstageIdentity.mockResolvedValueOnce({ + userEntityRef: 'user:default/foo', + }); + + const result = await apiClient.listTasks('owned'); + expect(identityApi.getBackstageIdentity).toBeCalled(); + expect(result).toHaveLength(1); + }); + }); }); diff --git a/plugins/scaffolder/src/api.ts b/plugins/scaffolder/src/api.ts index 40c88ba68d..8f2319cb9d 100644 --- a/plugins/scaffolder/src/api.ts +++ b/plugins/scaffolder/src/api.ts @@ -19,6 +19,7 @@ import { createApiRef, DiscoveryApi, FetchApi, + IdentityApi, } from '@backstage/core-plugin-api'; import { ResponseError } from '@backstage/errors'; import { ScmIntegrationRegistry } from '@backstage/integration'; @@ -36,6 +37,7 @@ import { ScaffolderGetIntegrationsListOptions, ScaffolderGetIntegrationsListResponse, ScaffolderTask, + TasksOwnerFilterKind, } from './types'; /** @@ -56,11 +58,13 @@ export class ScaffolderClient implements ScaffolderApi { private readonly discoveryApi: DiscoveryApi; private readonly scmIntegrationsApi: ScmIntegrationRegistry; private readonly fetchApi: FetchApi; + private readonly identityApi: IdentityApi; private readonly useLongPollingLogs: boolean; constructor(options: { discoveryApi: DiscoveryApi; fetchApi: FetchApi; + identityApi: IdentityApi; scmIntegrationsApi: ScmIntegrationRegistry; useLongPollingLogs?: boolean; }) { @@ -68,11 +72,19 @@ export class ScaffolderClient implements ScaffolderApi { this.fetchApi = options.fetchApi ?? { fetch }; this.scmIntegrationsApi = options.scmIntegrationsApi; this.useLongPollingLogs = options.useLongPollingLogs ?? false; + this.identityApi = options.identityApi; } - async listTasks(): Promise { + async listTasks(createdBy: TasksOwnerFilterKind): Promise { const baseUrl = await this.discoveryApi.getBaseUrl('scaffolder'); - const url = `${baseUrl}/v2/tasks`; + + let query = ''; + if (createdBy === 'owned') { + const { userEntityRef } = await this.identityApi.getBackstageIdentity(); + query = `createdBy=${encodeURIComponent(userEntityRef)}`; + } + + const url = `${baseUrl}/v2/tasks?${query}`; const response = await this.fetchApi.fetch(url); if (!response.ok) { diff --git a/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx b/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx index aff6681037..40683f01ba 100644 --- a/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx +++ b/plugins/scaffolder/src/components/ActionsPage/ActionsPage.test.tsx @@ -28,6 +28,7 @@ const scaffolderApiMock: jest.Mocked = { getTask: jest.fn(), streamLogs: jest.fn(), listActions: jest.fn(), + listTasks: jest.fn(), }; const apis = TestApiRegistry.from([scaffolderApiRef, scaffolderApiMock]); diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx new file mode 100644 index 0000000000..fced397ad3 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx @@ -0,0 +1,226 @@ +/* + * Copyright 2022 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 { Entity } from '@backstage/catalog-model'; +import { renderInTestApp, TestApiProvider } from '@backstage/test-utils'; +import { + CatalogApi, + catalogApiRef, + entityRouteRef, +} from '@backstage/plugin-catalog-react'; +import React from 'react'; +import { identityApiRef } from '@backstage/core-plugin-api'; +import { ListTasksPage } from './ListTasksPage'; +import { ScaffolderApi } from '../../types'; +import { scaffolderApiRef } from '../../api'; +import { rootRouteRef } from '../../routes'; +import { act, fireEvent } from '@testing-library/react'; + +describe('', () => { + const catalogApi: jest.Mocked = { + getEntityByRef: jest.fn(), + } as any; + + const identityApi = { + getBackstageIdentity: jest.fn(), + getProfileInfo: jest.fn(), + getCredentials: jest.fn(), + signOut: jest.fn(), + }; + + const scaffolderApiMock: jest.Mocked = { + scaffold: jest.fn(), + getTemplateParameterSchema: jest.fn(), + listTasks: jest.fn(), + } as any; + + it('should render the page', async () => { + const entity: Entity = { + apiVersion: 'v1', + kind: 'service', + metadata: { + name: 'test', + }, + spec: { + profile: { + displayName: 'BackUser', + }, + }, + }; + catalogApi.getEntityByRef.mockResolvedValue(entity); + + scaffolderApiMock.listTasks.mockResolvedValue([]); + + const { getByText } = await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + '/root': rootRouteRef, + }, + }, + ); + + expect(getByText('List template tasks')).toBeInTheDocument(); + expect(getByText('All tasks that have been started')).toBeInTheDocument(); + expect(getByText('Tasks')).toBeInTheDocument(); + }); + + it('should render the task I am owner', async () => { + const entity: Entity = { + apiVersion: 'v1', + kind: 'User', + metadata: { + name: 'foo', + }, + spec: { + profile: { + displayName: 'BackUser', + }, + }, + }; + catalogApi.getEntityByRef.mockResolvedValue(entity); + scaffolderApiMock.listTasks.mockResolvedValue([ + { + id: 'a-random-id', + spec: { + createdBy: 'user:default/foo', + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ]); + scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ + title: 'One Template', + steps: [], + }); + + const { getByText } = await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + '/root': rootRouteRef, + }, + }, + ); + + expect(scaffolderApiMock.listTasks).toBeCalledWith('owned'); + expect(getByText('List template tasks')).toBeInTheDocument(); + expect(getByText('All tasks that have been started')).toBeInTheDocument(); + expect(getByText('Tasks')).toBeInTheDocument(); + expect(getByText('One Template')).toBeInTheDocument(); + expect(getByText('BackUser')).toBeInTheDocument(); + }); + + it('should render all tasks', async () => { + const entity: Entity = { + apiVersion: 'v1', + kind: 'User', + metadata: { + name: 'foo', + }, + spec: { + profile: { + displayName: 'BackUser', + }, + }, + }; + catalogApi.getEntityByRef + .mockResolvedValue(entity) + .mockResolvedValue(entity) + .mockResolvedValue({ + ...entity, + spec: { + profile: { + displayName: 'OtherUser', + }, + }, + }); + scaffolderApiMock.listTasks + .mockResolvedValue([ + { + id: 'a-random-id', + spec: { + createdBy: 'user:default/foo', + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ]) + .mockResolvedValue([ + { + id: 'b-random-id', + spec: { + createdBy: 'user:default/boo', + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ]); + + scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ + title: 'One Template', + steps: [], + }); + + const { getByText } = await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + '/root': rootRouteRef, + }, + }, + ); + + await act(async () => { + const allButton = await getByText('All'); + fireEvent.click(allButton); + }); + + expect(scaffolderApiMock.listTasks).toBeCalledWith('all'); + expect(getByText('One Template')).toBeInTheDocument(); + expect(getByText('OtherUser')).toBeInTheDocument(); + }); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx new file mode 100644 index 0000000000..d66355b0a5 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -0,0 +1,144 @@ +/* + * Copyright 2022 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 { + Content, + EmptyState, + ErrorPanel, + Header, + Lifecycle, + Link, + Page, + Progress, +} from '@backstage/core-components'; +import { useApi, useRouteRef } from '@backstage/core-plugin-api'; +import { CatalogFilterLayout } from '@backstage/plugin-catalog-react'; +import useAsync from 'react-use/lib/useAsync'; +import MaterialTable from '@material-table/core'; +import React, { useState } from 'react'; +import { scaffolderApiRef } from '../../api'; +import { rootRouteRef } from '../../routes'; +import { OwnerListPicker } from './OwnerListPicker'; +import { TasksOwnerFilterKind } from '../../types'; +import { + CreatedAtColumn, + OwnerEntityColumn, + TaskStatusColumn, + TemplateTitleColumn, +} from './columns'; + +export interface MyTaskPageProps { + initiallySelectedFilter?: TasksOwnerFilterKind; +} + +const ListTaskPageContent = (props: MyTaskPageProps) => { + const { initiallySelectedFilter = 'owned' } = props; + + const scaffolderApi = useApi(scaffolderApiRef); + const rootLink = useRouteRef(rootRouteRef); + + const [ownerFilter, setOwnerFilter] = useState(initiallySelectedFilter); + const { value, loading, error } = useAsync( + () => scaffolderApi.listTasks(ownerFilter), + [scaffolderApi, ownerFilter], + ); + + if (loading) { + return ; + } + + if (error) { + return ( + <> + + + + ); + } + + return ( + + + setOwnerFilter(id)} + /> + + + ( + {row.id} + ), + }, + { + title: 'Template', + render: row => ( + + ), + }, + { + title: 'Created', + field: 'createdAt', + render: row => , + }, + { + title: 'Owner', + field: 'createdBy', + render: row => ( + + ), + }, + { + title: 'Status', + field: 'status', + render: row => , + }, + ]} + /> + + + ); +}; + +export const ListTasksPage = (props: MyTaskPageProps) => { + return ( + +
+ List template tasks + + } + subtitle="All tasks that have been started" + /> + + + + + ); +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.test.tsx new file mode 100644 index 0000000000..bf0ae6d946 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.test.tsx @@ -0,0 +1,47 @@ +/* + * Copyright 2022 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 { renderInTestApp } from '@backstage/test-utils'; + +import React from 'react'; +import { OwnerListPicker } from './OwnerListPicker'; +import { fireEvent } from '@testing-library/react'; + +describe('', () => { + it('should render the tasks owner filter', async () => { + const props = { + filter: 'owned', + onSelectOwner: jest.fn(), + }; + + const { getByText } = await renderInTestApp(); + + expect(await getByText('Owned')).toBeDefined(); + expect(await getByText('All')).toBeDefined(); + }); + + it('should call the function on select other item', async () => { + const props = { + filter: 'owned', + onSelectOwner: jest.fn(), + }; + + const { getByText } = await renderInTestApp(); + + fireEvent.click(await getByText('All')); + expect(props.onSelectOwner).toBeCalledWith('all'); + }); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.tsx b/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.tsx new file mode 100644 index 0000000000..e239938cb9 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/OwnerListPicker.tsx @@ -0,0 +1,135 @@ +/* + * Copyright 2022 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 { IconComponent } from '@backstage/core-plugin-api'; +import { + Card, + List, + ListItemIcon, + ListItemText, + makeStyles, + MenuItem, + Theme, + Typography, +} from '@material-ui/core'; +import SettingsIcon from '@material-ui/icons/Settings'; +import React, { Fragment } from 'react'; + +import AllIcon from '@material-ui/icons/FontDownload'; + +import { TasksOwnerFilterKind } from '../../types'; + +const useStyles = makeStyles( + theme => ({ + root: { + backgroundColor: 'rgba(0, 0, 0, .11)', + boxShadow: 'none', + margin: theme.spacing(1, 0, 1, 0), + }, + title: { + margin: theme.spacing(1, 0, 0, 1), + textTransform: 'uppercase', + fontSize: 12, + fontWeight: 'bold', + }, + listIcon: { + minWidth: 30, + color: theme.palette.text.primary, + }, + menuItem: { + minHeight: theme.spacing(6), + }, + groupWrapper: { + margin: theme.spacing(1, 1, 2, 1), + }, + }), + { + name: 'ScaffolderReactOwnerListPicker', + }, +); + +export type ButtonGroup = { + name: string; + items: { + id: 'owned' | 'starred' | 'all'; + label: string; + icon?: IconComponent; + }[]; +}; + +function getFilterGroups(): ButtonGroup[] { + return [ + { + name: 'Task Owner', + items: [ + { + id: 'owned', + label: 'Owned', + icon: SettingsIcon, + }, + { + id: 'all', + label: 'All', + icon: AllIcon, + }, + ], + }, + ]; +} + +export const OwnerListPicker = (props: { + filter: string; + onSelectOwner: (id: TasksOwnerFilterKind) => void; +}) => { + const { filter, onSelectOwner } = props; + const classes = useStyles(); + + const filterGroups = getFilterGroups(); + return ( + + {filterGroups.map(group => ( + + + {group.name} + + + + {group.items.map(item => ( + onSelectOwner(item.id as TasksOwnerFilterKind)} + selected={item.id === filter} + className={classes.menuItem} + data-testid={`owner-picker-${item.id}`} + > + {item.icon && ( + + + + )} + + {item.label} + + + ))} + + + + ))} + + ); +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.test.tsx new file mode 100644 index 0000000000..a30c1d370b --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.test.tsx @@ -0,0 +1,34 @@ +/* + * Copyright 2022 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 { renderInTestApp } from '@backstage/test-utils'; + +import React from 'react'; +import { CreatedAtColumn } from './CreatedAtColumn'; +import { DateTime } from 'luxon'; + +describe('', () => { + it('should render the column with the time', async () => { + const props = { + createdAt: DateTime.now().toISO(), + }; + + const { getByText } = await renderInTestApp(); + + const text = getByText('0 seconds ago'); + expect(text).toBeDefined(); + }); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.tsx new file mode 100644 index 0000000000..8e48d4a561 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/CreatedAtColumn.tsx @@ -0,0 +1,27 @@ +/* + * Copyright 2022 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 { DateTime, Interval } from 'luxon'; +import humanizeDuration from 'humanize-duration'; +import React from 'react'; + +export const CreatedAtColumn = ({ createdAt }: { createdAt: string }) => { + const createdAtTime = DateTime.fromISO(createdAt); + const formatted = Interval.fromDateTimes(createdAtTime, DateTime.local()) + .toDuration() + .valueOf(); + + return

{humanizeDuration(formatted, { round: true })} ago

; +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx new file mode 100644 index 0000000000..c2672e22bd --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx @@ -0,0 +1,82 @@ +/* + * Copyright 2022 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 { Entity } from '@backstage/catalog-model'; +import { renderInTestApp, TestApiProvider } from '@backstage/test-utils'; +import { + CatalogApi, + catalogApiRef, + entityRouteRef, +} from '@backstage/plugin-catalog-react'; +import React from 'react'; +import { OwnerEntityColumn } from './OwnerEntityColumn'; +import { identityApiRef } from '@backstage/core-plugin-api'; + +describe('', () => { + const catalogApi: jest.Mocked = { + getEntityByRef: jest.fn(), + } as any; + + const identityApi = { + getBackstageIdentity: jest.fn(), + getProfileInfo: jest.fn(), + getCredentials: jest.fn(), + signOut: jest.fn(), + }; + + it('should render the column with the time', async () => { + const props = { + entityRef: 'user:default/foo', + }; + + const entity: Entity = { + apiVersion: 'v1', + kind: 'User', + metadata: { + name: 'test', + }, + spec: { + profile: { + displayName: 'BackUser', + }, + }, + }; + catalogApi.getEntityByRef.mockResolvedValue(entity); + + const { getByText, getByRole } = await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + }, + }, + ); + + expect(getByRole('link')).toHaveAttribute( + 'href', + '/catalog/default/user/foo', + ); + const text = getByText('BackUser'); + expect(text).toBeDefined(); + }); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx new file mode 100644 index 0000000000..d2ca8f2620 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx @@ -0,0 +1,50 @@ +/* + * Copyright 2022 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 { Link } from '@backstage/core-components'; +import { useApi, useRouteRef } from '@backstage/core-plugin-api'; +import React from 'react'; + +import useAsync from 'react-use/lib/useAsync'; +import { ListItemText } from '@material-ui/core'; + +import { catalogApiRef, entityRouteRef } from '@backstage/plugin-catalog-react'; +import { parseEntityRef, UserEntity } from '@backstage/catalog-model'; + +export const OwnerEntityColumn = ({ + entityRef, +}: { + entityRef?: string | null; +}) => { + const catalogApi = useApi(catalogApiRef); + const catalogEntityRoute = useRouteRef(entityRouteRef); + + const { value, loading, error } = useAsync( + () => catalogApi.getEntityByRef(entityRef || ''), + [catalogApi, entityRef], + ); + + if (loading || error) { + return null; + } + + return ( + + + + ); +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.test.tsx new file mode 100644 index 0000000000..5eabcf72ff --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.test.tsx @@ -0,0 +1,38 @@ +/* + * Copyright 2022 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 { renderInTestApp } from '@backstage/test-utils'; + +import React from 'react'; +import { TaskStatusColumn } from './TaskStatusColumn'; + +describe('', () => { + it.each(['processing', 'error', 'completed'])( + 'should render the column with the status %s', + async status => { + const props = { + status: status, + }; + + const { getByText } = await renderInTestApp( + , + ); + + const text = getByText(status); + expect(text).toBeDefined(); + }, + ); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.tsx new file mode 100644 index 0000000000..995e505c36 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TaskStatusColumn.tsx @@ -0,0 +1,33 @@ +/* + * Copyright 2022 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 { + StatusError, + StatusOK, + StatusPending, +} from '@backstage/core-components'; +import React from 'react'; + +export const TaskStatusColumn = ({ status }: { status: string }) => { + switch (status) { + case 'processing': + return {status}; + case 'completed': + return {status}; + case 'error': + default: + return {status}; + } +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx new file mode 100644 index 0000000000..5ce11da28a --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx @@ -0,0 +1,48 @@ +/* + * Copyright 2022 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 { renderInTestApp, TestApiProvider } from '@backstage/test-utils'; + +import React from 'react'; +import { TemplateTitleColumn } from './TemplateTitleColumn'; +import { scaffolderApiRef } from '../../../api'; +import { ScaffolderApi } from '../../../types'; + +describe('', () => { + const scaffolderApiMock: jest.Mocked = { + scaffold: jest.fn(), + getTemplateParameterSchema: jest.fn(), + } as any; + + it('should render the column with the time', async () => { + const props = { + entityRef: 'template:default/one-template', + }; + scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ + title: 'One Template', + steps: [], + }); + + const { getByText } = await renderInTestApp( + + + , + ); + + const text = getByText('One Template'); + expect(text).toBeDefined(); + }); +}); diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx new file mode 100644 index 0000000000..8f86734809 --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx @@ -0,0 +1,33 @@ +/* + * Copyright 2022 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 { useApi } from '@backstage/core-plugin-api'; +import React from 'react'; +import { scaffolderApiRef } from '../../../api'; +import useAsync from 'react-use/lib/useAsync'; + +export const TemplateTitleColumn = ({ entityRef }: { entityRef?: string }) => { + const scaffolder = useApi(scaffolderApiRef); + const { value, loading, error } = useAsync( + () => scaffolder.getTemplateParameterSchema(entityRef || ''), + [scaffolder, entityRef], + ); + + if (loading || error) { + return null; + } + + return

{value?.title}

; +}; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/index.ts b/plugins/scaffolder/src/components/ListTasksPage/columns/index.ts new file mode 100644 index 0000000000..f6f356a3da --- /dev/null +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/index.ts @@ -0,0 +1,19 @@ +/* + * Copyright 2022 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 { CreatedAtColumn } from './CreatedAtColumn'; +export { OwnerEntityColumn } from './OwnerEntityColumn'; +export { TaskStatusColumn } from './TaskStatusColumn'; +export { TemplateTitleColumn } from './TemplateTitleColumn'; diff --git a/plugins/scaffolder/src/components/MyTasksPage/index.tsx b/plugins/scaffolder/src/components/ListTasksPage/index.tsx similarity index 92% rename from plugins/scaffolder/src/components/MyTasksPage/index.tsx rename to plugins/scaffolder/src/components/ListTasksPage/index.tsx index 2535904349..56fc7d3d28 100644 --- a/plugins/scaffolder/src/components/MyTasksPage/index.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/index.tsx @@ -13,4 +13,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export { MyTaskPage } from './MyTaskPage'; +export { ListTasksPage } from './ListTasksPage'; diff --git a/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx b/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx deleted file mode 100644 index 36f7a68616..0000000000 --- a/plugins/scaffolder/src/components/MyTasksPage/MyTaskPage.tsx +++ /dev/null @@ -1,135 +0,0 @@ -/* - * Copyright 2022 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 { - Content, - Header, - Lifecycle, - Link, - Page, - Progress, -} from '@backstage/core-components'; -import { useApi, useRouteRef } from '@backstage/core-plugin-api'; -import { Grid } from '@material-ui/core'; -import React from 'react'; -import { scaffolderApiRef } from '../../api'; -import useAsync from 'react-use/lib/useAsync'; -import MaterialTable, { Column } from '@material-table/core'; -import { rootRouteRef } from '../../routes'; -import { Duration, Interval, DateTime } from 'luxon'; -import humanizeDuration from 'humanize-duration'; -import { - StatusError, - StatusPending, - StatusOK, -} from '@backstage/core-components'; - -const CreatedAtColumn = ({ createdAt }: { createdAt: string }) => { - const createdAtTime = DateTime.fromISO(createdAt); - const formatted = Interval.fromDateTimes(createdAtTime, DateTime.local()) - .toDuration() - .valueOf(); - - return

{humanizeDuration(formatted, { round: true })} ago

; -}; - -const TemplateTitle = ({ templateName }: { templateName?: string }) => { - const scaffolder = useApi(scaffolderApiRef); - const { value, loading, error } = useAsync( - () => - scaffolder.getTemplateParameterSchema({ - kind: 'Template', - namespace: 'default', - name: templateName, - }), - [scaffolder, templateName], - ); - - if (loading) { - return null; - } - - return

{value?.title}

; -}; - -const Status = ({ status }) => { - switch (status) { - case 'processing': - return {status}; - case 'completed': - return {status}; - case 'error': - default: - return {status}; - } -}; -export const MyTaskPage = () => { - const scaffolderApi = useApi(scaffolderApiRef); - const { value, loading, error } = useAsync( - () => scaffolderApi.listTasks(), - [scaffolderApi], - ); - - const rootLink = useRouteRef(rootRouteRef); - - return ( - -
- All my tasks - - } - subtitle="All tasks that have been started by me" - /> - - {loading ? ( - - ) : ( - ( - {row.id} - ), - }, - { - title: 'Name', - render: row => ( - - ), - }, - { - title: 'Created', - field: 'createdAt', - render: row => , - }, - { - title: 'Status', - field: 'status', - render: row => , - }, - ]} - /> - )} - - - ); -}; diff --git a/plugins/scaffolder/src/components/Router.tsx b/plugins/scaffolder/src/components/Router.tsx index d7158f81cb..6beaa3419a 100644 --- a/plugins/scaffolder/src/components/Router.tsx +++ b/plugins/scaffolder/src/components/Router.tsx @@ -35,10 +35,11 @@ import { useElementFilter } from '@backstage/core-plugin-api'; import { actionsRouteRef, editRouteRef, + scaffolderListTaskRouteRef, scaffolderTaskRouteRef, selectedTemplateRouteRef, } from '../routes'; -import { MyTaskPage } from './MyTasksPage'; +import { ListTasksPage } from './ListTasksPage'; /** * The props for the entrypoint `ScaffolderPage` component the plugin. @@ -119,7 +120,10 @@ export const Router = (props: RouterProps) => { } /> - } /> + } + /> } /> } /> = { getTask: jest.fn(), streamLogs: jest.fn(), listActions: jest.fn(), + listTasks: jest.fn(), }; const featureFlagsApiMock: jest.Mocked = { diff --git a/plugins/scaffolder/src/plugin.ts b/plugins/scaffolder/src/plugin.ts index 9bbb52a71f..5ea4ae49a4 100644 --- a/plugins/scaffolder/src/plugin.ts +++ b/plugins/scaffolder/src/plugin.ts @@ -30,6 +30,7 @@ import { createRoutableExtension, discoveryApiRef, fetchApiRef, + identityApiRef, } from '@backstage/core-plugin-api'; import { OwnedEntityPicker } from './components/fields/OwnedEntityPicker/OwnedEntityPicker'; import { EntityTagsPicker } from './components/fields/EntityTagsPicker/EntityTagsPicker'; @@ -47,12 +48,14 @@ export const scaffolderPlugin = createPlugin({ discoveryApi: discoveryApiRef, scmIntegrationsApi: scmIntegrationsApiRef, fetchApi: fetchApiRef, + identityApi: identityApiRef, }, - factory: ({ discoveryApi, scmIntegrationsApi, fetchApi }) => + factory: ({ discoveryApi, scmIntegrationsApi, fetchApi, identityApi }) => new ScaffolderClient({ discoveryApi, scmIntegrationsApi, fetchApi, + identityApi, }), }), ], diff --git a/plugins/scaffolder/src/routes.ts b/plugins/scaffolder/src/routes.ts index 8ec9f9b68a..be0d69135a 100644 --- a/plugins/scaffolder/src/routes.ts +++ b/plugins/scaffolder/src/routes.ts @@ -40,6 +40,12 @@ export const scaffolderTaskRouteRef = createSubRouteRef({ path: '/tasks/:taskId', }); +export const scaffolderListTaskRouteRef = createSubRouteRef({ + id: 'scaffolder/list-tasks', + parent: rootRouteRef, + path: '/tasks', +}); + export const actionsRouteRef = createSubRouteRef({ id: 'scaffolder/actions', parent: rootRouteRef, diff --git a/plugins/scaffolder/src/types.ts b/plugins/scaffolder/src/types.ts index bddd6a7b70..acd686019c 100644 --- a/plugins/scaffolder/src/types.ts +++ b/plugins/scaffolder/src/types.ts @@ -102,6 +102,13 @@ export type LogEvent = { taskId: string; }; +/** + * The status of each task you can filter from `ScaffolderClient` + * + * @public + */ +export type TasksOwnerFilterKind = 'owned' | 'all'; + /** * The input options to the `scaffold` method of the `ScaffolderClient`. * @@ -171,6 +178,8 @@ export interface ScaffolderApi { getTask(taskId: string): Promise; + listTasks(createdBy: TasksOwnerFilterKind): Promise; + getIntegrationsList( options: ScaffolderGetIntegrationsListOptions, ): Promise; From 77f4e147c2eba1aeca787dceabc81837af4d0d54 Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 09:16:23 -0300 Subject: [PATCH 026/550] faat: change tasks page exibition Signed-off-by: Rogerio Angeliski --- packages/app/src/components/Root/Root.tsx | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/packages/app/src/components/Root/Root.tsx b/packages/app/src/components/Root/Root.tsx index ff8a260540..e724adc345 100644 --- a/packages/app/src/components/Root/Root.tsx +++ b/packages/app/src/components/Root/Root.tsx @@ -23,7 +23,6 @@ import MapIcon from '@material-ui/icons/MyLocation'; import LayersIcon from '@material-ui/icons/Layers'; import LibraryBooks from '@material-ui/icons/LibraryBooks'; import CreateComponentIcon from '@material-ui/icons/AddCircleOutline'; -import Add from '@material-ui/icons/Add'; import List from '@material-ui/icons/List'; import SearchIcon from '@material-ui/icons/Search'; import MenuIcon from '@material-ui/icons/Menu'; @@ -48,8 +47,6 @@ import { SidebarScrollWrapper, SidebarSpace, useSidebarOpenState, - SidebarSubmenu, - SidebarSubmenuItem, } from '@backstage/core-components'; import { MyGroupsSidebarItem } from '@backstage/plugin-org'; import GroupIcon from '@material-ui/icons/People'; @@ -110,16 +107,8 @@ export const Root = ({ children }: PropsWithChildren<{}>) => ( - - - - - - + + {/* End global nav */} From 0d6167f1aa28ae50ff04d94368ad77114e7ddbd5 Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 09:51:20 -0300 Subject: [PATCH 027/550] feat: update api-report Signed-off-by: Rogerio Angeliski --- plugins/scaffolder-backend/api-report.md | 7 +++++++ plugins/scaffolder/api-report.md | 9 +++++++++ .../ListTasksPage/columns/OwnerEntityColumn.tsx | 6 +----- plugins/scaffolder/src/index.ts | 1 + 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index b059a30d9b..fe3b14762b 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -395,6 +395,8 @@ export class DatabaseTaskStore implements TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) + list(options: Partial): Promise; + // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; }>; @@ -493,6 +495,7 @@ export type SerializedTask = { lastHeartbeatAt?: string; createdBy?: string; secrets?: TaskSecrets; + createdBy: string | null; }; // @public @@ -519,6 +522,8 @@ export interface TaskBroker { // (undocumented) get(taskId: string): Promise; // (undocumented) + list(options?: Partial): Promise; + // (undocumented) vacuumTasks(options: { timeoutS: number }): Promise; } @@ -616,6 +621,8 @@ export interface TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) + list(options: Partial): Promise; + // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; }>; diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 229737eaf6..159fd10871 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -16,6 +16,7 @@ import { ExternalRouteRef } from '@backstage/core-plugin-api'; import { FetchApi } from '@backstage/core-plugin-api'; import { FieldProps } from '@rjsf/core'; import { FieldValidation } from '@rjsf/core'; +import { IdentityApi } from '@backstage/core-plugin-api'; import { JsonObject } from '@backstage/types'; import { JSONSchema7 } from 'json-schema'; import { JsonValue } from '@backstage/types'; @@ -237,6 +238,8 @@ export interface ScaffolderApi { templateRef: string, ): Promise; listActions(): Promise; + // (undocumented) + listTasks(createdBy: TasksOwnerFilterKind): Promise; scaffold( options: ScaffolderScaffoldOptions, ): Promise; @@ -252,6 +255,7 @@ export class ScaffolderClient implements ScaffolderApi { constructor(options: { discoveryApi: DiscoveryApi; fetchApi: FetchApi; + identityApi: IdentityApi; scmIntegrationsApi: ScmIntegrationRegistry; useLongPollingLogs?: boolean; }); @@ -267,6 +271,8 @@ export class ScaffolderClient implements ScaffolderApi { ): Promise; // (undocumented) listActions(): Promise; + // (undocumented) + listTasks(createdBy: TasksOwnerFilterKind): Promise; scaffold( options: ScaffolderScaffoldOptions, ): Promise; @@ -376,6 +382,9 @@ export type TaskPageProps = { loadingText?: string; }; +// @public +export type TasksOwnerFilterKind = 'owned' | 'all'; + // @alpha (undocumented) export type TemplateGroupFilter = { title?: React_2.ReactNode; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx index d2ca8f2620..e595c11199 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx @@ -23,11 +23,7 @@ import { ListItemText } from '@material-ui/core'; import { catalogApiRef, entityRouteRef } from '@backstage/plugin-catalog-react'; import { parseEntityRef, UserEntity } from '@backstage/catalog-model'; -export const OwnerEntityColumn = ({ - entityRef, -}: { - entityRef?: string | null; -}) => { +export const OwnerEntityColumn = ({ entityRef }: { entityRef?: string }) => { const catalogApi = useApi(catalogApiRef); const catalogEntityRoute = useRouteRef(entityRouteRef); diff --git a/plugins/scaffolder/src/index.ts b/plugins/scaffolder/src/index.ts index fc132f644c..4f4c650f1c 100644 --- a/plugins/scaffolder/src/index.ts +++ b/plugins/scaffolder/src/index.ts @@ -35,6 +35,7 @@ export type { ScaffolderTaskOutput, ScaffolderTaskStatus, TemplateParameterSchema, + TasksOwnerFilterKind, } from './types'; export { createScaffolderFieldExtension, From dc39366bdb50e15bf366c63cc4bd419a7d6fc764 Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 09:56:33 -0300 Subject: [PATCH 028/550] chore: add changeset Signed-off-by: Rogerio Angeliski --- .changeset/rich-zebras-design.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .changeset/rich-zebras-design.md diff --git a/.changeset/rich-zebras-design.md b/.changeset/rich-zebras-design.md new file mode 100644 index 0000000000..2c8a8248b5 --- /dev/null +++ b/.changeset/rich-zebras-design.md @@ -0,0 +1,11 @@ +--- +'@backstage/plugin-scaffolder': minor +'@backstage/plugin-scaffolder-backend': minor +'@backstage/plugin-scaffolder-common': minor +--- + +- add createdBy information for TaskSpec +- add listTaksks option for show current status from scaffolder tasks + +This allow the scaffolder-backend to show who creates each task and we included +a new page in `/create/tasks` to show those tasks From d750e3a97f530a3aca5ab19c18106a66b89399e7 Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 11:19:55 -0300 Subject: [PATCH 029/550] chore: update test name Signed-off-by: Rogerio Angeliski --- .../components/ListTasksPage/columns/OwnerEntityColumn.test.tsx | 2 +- .../ListTasksPage/columns/TemplateTitleColumn.test.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx index c2672e22bd..84b86599d5 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.test.tsx @@ -37,7 +37,7 @@ describe('', () => { signOut: jest.fn(), }; - it('should render the column with the time', async () => { + it('should render the column with the user', async () => { const props = { entityRef: 'user:default/foo', }; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx index 5ce11da28a..d7d194975e 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx @@ -27,7 +27,7 @@ describe('', () => { getTemplateParameterSchema: jest.fn(), } as any; - it('should render the column with the time', async () => { + it('should render the column with the template name', async () => { const props = { entityRef: 'template:default/one-template', }; From eb0f2f1a5eb6ca410d31738aa5f8b52373c21724 Mon Sep 17 00:00:00 2001 From: Rogerio Angeliski Date: Thu, 28 Apr 2022 11:28:52 -0300 Subject: [PATCH 030/550] feat: update api-report Signed-off-by: Rogerio Angeliski --- plugins/scaffolder-common/api-report.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/scaffolder-common/api-report.md b/plugins/scaffolder-common/api-report.md index a1c5c2bf23..80b6833d4c 100644 --- a/plugins/scaffolder-common/api-report.md +++ b/plugins/scaffolder-common/api-report.md @@ -15,6 +15,8 @@ export type TaskSpec = TaskSpecV1beta3; // @public export interface TaskSpecV1beta3 { apiVersion: 'scaffolder.backstage.io/v1beta3'; + // (undocumented) + createdBy?: string; output: { [name: string]: JsonValue; }; From eb7c53a005bf05f00b06eb345d51064f13c5f676 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 11 May 2022 11:40:20 +0200 Subject: [PATCH 031/550] chore: fix up to work with the other code Signed-off-by: blam --- .../migrations/20220211013100_created_by.js | 38 ------------------- .../src/scaffolder/tasks/DatabaseTaskStore.ts | 4 +- .../tasks/StorageTaskBroker.test.ts | 5 ++- .../src/scaffolder/tasks/types.ts | 1 - .../scaffolder-backend/src/service/router.ts | 16 -------- .../ListTasksPage/ListTasksPage.tsx | 2 +- .../columns/OwnerEntityColumn.tsx | 5 ++- 7 files changed, 10 insertions(+), 61 deletions(-) delete mode 100644 plugins/scaffolder-backend/migrations/20220211013100_created_by.js diff --git a/plugins/scaffolder-backend/migrations/20220211013100_created_by.js b/plugins/scaffolder-backend/migrations/20220211013100_created_by.js deleted file mode 100644 index 257cda21d2..0000000000 --- a/plugins/scaffolder-backend/migrations/20220211013100_created_by.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright 2020 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. - */ - -// @ts-check - -/** - * @param {import('knex').Knex} knex - */ -exports.up = async function up(knex) { - await knex.schema.alterTable('tasks', table => { - table - .text('created_by') - .nullable() - .comment('an entity ref of the user that created the task'); - }); -}; - -/** - * @param {import('knex').Knex} knex - */ -exports.down = async function down(knex) { - await knex.schema.alterTable('tasks', table => { - table.dropColumn('created_by'); - }); -}; diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts index 1c4b9b5210..2ebe1e17a7 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts @@ -100,7 +100,7 @@ export class DatabaseTaskStore implements TaskStore { id: result.id, spec: JSON.parse(result.spec), status: result.status, - createdBy: result.created_by, + createdBy: result.created_by ?? undefined, lastHeartbeatAt: typeof result.last_heartbeat_at === 'string' ? DateTime.fromSQL(result.last_heartbeat_at, { @@ -156,8 +156,6 @@ export class DatabaseTaskStore implements TaskStore { secrets: options.secrets ? JSON.stringify(options.secrets) : undefined, created_by: options.createdBy ?? null, status: 'open', - created_by: - ('createdBy' in options.spec && options.spec.createdBy) || null, }); return { taskId }; } diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts index 7ed2eb620a..8558a371d5 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts @@ -15,6 +15,7 @@ */ import { getVoidLogger, DatabaseManager } from '@backstage/backend-common'; +import { UserEntity } from '@backstage/catalog-model'; import { ConfigReader } from '@backstage/config'; import { TaskSpec } from '@backstage/plugin-scaffolder-common'; import { DatabaseTaskStore } from './DatabaseTaskStore'; @@ -220,7 +221,9 @@ describe('StorageTaskBroker', () => { it('should list only tasks createdBy a specific user', async () => { const broker = new StorageTaskBroker(storage, logger); const { taskId } = await broker.dispatch({ - spec: { createdBy: 'user:default/foo' } as TaskSpec, + spec: { + user: { ref: 'user:default/foo', entity: {} as UserEntity }, + } as TaskSpec, }); const task = await storage.getTask(taskId); diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts index 1fc7670e79..f3939a8668 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts @@ -49,7 +49,6 @@ export type SerializedTask = { lastHeartbeatAt?: string; createdBy?: string; secrets?: TaskSecrets; - createdBy: string | null; }; /** diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 61fbe74b8b..c1a9b50e0d 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -129,19 +129,6 @@ export async function createRouter( actionsToRegister.forEach(action => actionRegistry.register(action)); workers.forEach(worker => worker.start()); - const getUserEntityRefFromToken = (backstageToken: string) => { - try { - const [_header, payload, _signature] = backstageToken.split('.'); - const parsedToken = JSON.parse(Buffer.from(payload, 'base64').toString()); - - return parsedToken.sub; - } catch (e) { - logger.warn('Could not parse token from request to create template'); - logger.debug(e); - return null; - } - }; - router .get( '/v2/templates/:namespace/:kind/:name/parameter-schema', @@ -220,8 +207,6 @@ export async function createRouter( const baseUrl = getEntityBaseUrl(template); - const createdBy = token && getUserEntityRefFromToken(token); - const taskSpec: TaskSpec = { apiVersion: template.apiVersion, steps: template.spec.steps.map((step, index) => ({ @@ -243,7 +228,6 @@ export async function createRouter( }), baseUrl, }, - createdBy, }; const result = await taskBroker.dispatch({ diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index d66355b0a5..7866375fb1 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -109,7 +109,7 @@ const ListTaskPageContent = (props: MyTaskPageProps) => { title: 'Owner', field: 'createdBy', render: row => ( - + ), }, { diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx index e595c11199..49c00316c7 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx @@ -39,7 +39,10 @@ export const OwnerEntityColumn = ({ entityRef }: { entityRef?: string }) => { return ( ); From 935d47d8588c79c2083e5026721a4b01459d4a61 Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 12 May 2022 12:59:25 +0200 Subject: [PATCH 032/550] chore: remove createdBy from the API report Signed-off-by: blam --- plugins/scaffolder-backend/api-report.md | 1 - plugins/scaffolder-common/api-report.md | 2 -- 2 files changed, 3 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index fe3b14762b..b09939e68a 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -495,7 +495,6 @@ export type SerializedTask = { lastHeartbeatAt?: string; createdBy?: string; secrets?: TaskSecrets; - createdBy: string | null; }; // @public diff --git a/plugins/scaffolder-common/api-report.md b/plugins/scaffolder-common/api-report.md index 80b6833d4c..a1c5c2bf23 100644 --- a/plugins/scaffolder-common/api-report.md +++ b/plugins/scaffolder-common/api-report.md @@ -15,8 +15,6 @@ export type TaskSpec = TaskSpecV1beta3; // @public export interface TaskSpecV1beta3 { apiVersion: 'scaffolder.backstage.io/v1beta3'; - // (undocumented) - createdBy?: string; output: { [name: string]: JsonValue; }; From 8db0983eb75dd13d07a7c3aca5a392147aa9ce88 Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 12 May 2022 13:16:26 +0200 Subject: [PATCH 033/550] chore: reworking some of the table to provider better links Signed-off-by: blam --- .../ListTasksPage/ListTasksPage.tsx | 6 ++++- .../columns/OwnerEntityColumn.tsx | 26 +++++++++---------- .../columns/TemplateTitleColumn.tsx | 8 ++++-- 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index 7866375fb1..8d51c9c403 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -24,7 +24,10 @@ import { Progress, } from '@backstage/core-components'; import { useApi, useRouteRef } from '@backstage/core-plugin-api'; -import { CatalogFilterLayout } from '@backstage/plugin-catalog-react'; +import { + CatalogFilterLayout, + EntityRefLink, +} from '@backstage/plugin-catalog-react'; import useAsync from 'react-use/lib/useAsync'; import MaterialTable from '@material-table/core'; import React, { useState } from 'react'; @@ -38,6 +41,7 @@ import { TaskStatusColumn, TemplateTitleColumn, } from './columns'; +import { parseEntityRef } from '@backstage/catalog-model'; export interface MyTaskPageProps { initiallySelectedFilter?: TasksOwnerFilterKind; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx index 49c00316c7..0c83c7cbc2 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/OwnerEntityColumn.tsx @@ -13,37 +13,37 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Link } from '@backstage/core-components'; -import { useApi, useRouteRef } from '@backstage/core-plugin-api'; +import { useApi } from '@backstage/core-plugin-api'; import React from 'react'; import useAsync from 'react-use/lib/useAsync'; -import { ListItemText } from '@material-ui/core'; -import { catalogApiRef, entityRouteRef } from '@backstage/plugin-catalog-react'; +import { catalogApiRef, EntityRefLink } from '@backstage/plugin-catalog-react'; import { parseEntityRef, UserEntity } from '@backstage/catalog-model'; export const OwnerEntityColumn = ({ entityRef }: { entityRef?: string }) => { const catalogApi = useApi(catalogApiRef); - const catalogEntityRoute = useRouteRef(entityRouteRef); const { value, loading, error } = useAsync( () => catalogApi.getEntityByRef(entityRef || ''), [catalogApi, entityRef], ); + if (!entityRef) { + return

Unknown

; + } + if (loading || error) { return null; } return ( - - - + ); }; diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx index 8f86734809..0561b40392 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.tsx @@ -17,6 +17,8 @@ import { useApi } from '@backstage/core-plugin-api'; import React from 'react'; import { scaffolderApiRef } from '../../../api'; import useAsync from 'react-use/lib/useAsync'; +import { parseEntityRef } from '@backstage/catalog-model'; +import { EntityRefLink } from '@backstage/plugin-catalog-react'; export const TemplateTitleColumn = ({ entityRef }: { entityRef?: string }) => { const scaffolder = useApi(scaffolderApiRef); @@ -25,9 +27,11 @@ export const TemplateTitleColumn = ({ entityRef }: { entityRef?: string }) => { [scaffolder, entityRef], ); - if (loading || error) { + if (loading || error || !entityRef) { return null; } - return

{value?.title}

; + return ( + + ); }; From 023b5aa27246c76b61472677c2803bfe935b723b Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 12 May 2022 13:35:10 +0200 Subject: [PATCH 034/550] chore: refactor the query string building a little Signed-off-by: blam --- plugins/scaffolder/src/api.ts | 10 +++++----- .../src/components/ListTasksPage/ListTasksPage.tsx | 6 +----- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/plugins/scaffolder/src/api.ts b/plugins/scaffolder/src/api.ts index 8f2319cb9d..eaf92f949e 100644 --- a/plugins/scaffolder/src/api.ts +++ b/plugins/scaffolder/src/api.ts @@ -39,6 +39,7 @@ import { ScaffolderTask, TasksOwnerFilterKind, } from './types'; +import queryString from 'qs'; /** * Utility API reference for the {@link ScaffolderApi}. @@ -77,12 +78,11 @@ export class ScaffolderClient implements ScaffolderApi { async listTasks(createdBy: TasksOwnerFilterKind): Promise { const baseUrl = await this.discoveryApi.getBaseUrl('scaffolder'); + const { userEntityRef } = await this.identityApi.getBackstageIdentity(); - let query = ''; - if (createdBy === 'owned') { - const { userEntityRef } = await this.identityApi.getBackstageIdentity(); - query = `createdBy=${encodeURIComponent(userEntityRef)}`; - } + const query = queryString.stringify( + createdBy === 'owned' ? { createdBy: userEntityRef } : {}, + ); const url = `${baseUrl}/v2/tasks?${query}`; diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index 8d51c9c403..7866375fb1 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -24,10 +24,7 @@ import { Progress, } from '@backstage/core-components'; import { useApi, useRouteRef } from '@backstage/core-plugin-api'; -import { - CatalogFilterLayout, - EntityRefLink, -} from '@backstage/plugin-catalog-react'; +import { CatalogFilterLayout } from '@backstage/plugin-catalog-react'; import useAsync from 'react-use/lib/useAsync'; import MaterialTable from '@material-table/core'; import React, { useState } from 'react'; @@ -41,7 +38,6 @@ import { TaskStatusColumn, TemplateTitleColumn, } from './columns'; -import { parseEntityRef } from '@backstage/catalog-model'; export interface MyTaskPageProps { initiallySelectedFilter?: TasksOwnerFilterKind; From 1c3f99c65456108c460081d203b052c14f9ae42d Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 12 May 2022 16:47:23 +0200 Subject: [PATCH 035/550] chore: reworking the api Signed-off-by: blam Signed-off-by: blam --- .../src/scaffolder/tasks/DatabaseTaskStore.ts | 39 +++++++------------ .../src/scaffolder/tasks/types.ts | 4 +- 2 files changed, 16 insertions(+), 27 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts index 2ebe1e17a7..145747124a 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts @@ -64,6 +64,14 @@ export type DatabaseTaskStoreOptions = { database: Knex; }; +const parseSqlDateToIsoString = (input: T): T | string => { + if (typeof input === 'string') { + return DateTime.fromSQL(input, { zone: 'UTC' }).toISO(); + } + + return input; +}; + /** * DatabaseTaskStore * @@ -85,7 +93,7 @@ export class DatabaseTaskStore implements TaskStore { this.db = options.database; } - async list(options: Partial): Promise { + async list(options: { createdBy?: string }): Promise { const queryBuilder = this.db('tasks'); if (options.createdBy) { @@ -101,16 +109,8 @@ export class DatabaseTaskStore implements TaskStore { spec: JSON.parse(result.spec), status: result.status, createdBy: result.created_by ?? undefined, - lastHeartbeatAt: - typeof result.last_heartbeat_at === 'string' - ? DateTime.fromSQL(result.last_heartbeat_at, { - zone: 'UTC', - }).toISO() - : result.last_heartbeat_at, - createdAt: - typeof result.created_at === 'string' - ? DateTime.fromSQL(result.created_at, { zone: 'UTC' }).toISO() - : result.created_at, + lastHeartbeatAt: parseSqlDateToIsoString(result.last_heartbeat_at), + createdAt: parseSqlDateToIsoString(result.created_at), })); } @@ -128,16 +128,8 @@ export class DatabaseTaskStore implements TaskStore { id: result.id, spec, status: result.status, - lastHeartbeatAt: - typeof result.last_heartbeat_at === 'string' - ? DateTime.fromSQL(result.last_heartbeat_at, { - zone: 'UTC', - }).toISO() - : result.last_heartbeat_at, - createdAt: - typeof result.created_at === 'string' - ? DateTime.fromSQL(result.created_at, { zone: 'UTC' }).toISO() - : result.created_at, + lastHeartbeatAt: parseSqlDateToIsoString(result.last_heartbeat_at), + createdAt: parseSqlDateToIsoString(result.created_at), createdBy: result.created_by ?? undefined, secrets, }; @@ -329,10 +321,7 @@ export class DatabaseTaskStore implements TaskStore { taskId, body, type: event.event_type, - createdAt: - typeof event.created_at === 'string' - ? DateTime.fromSQL(event.created_at, { zone: 'UTC' }).toISO() - : event.created_at, + createdAt: parseSqlDateToIsoString(event.created_at), }; } catch (error) { throw new Error( diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts index f3939a8668..e56d1b682a 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts @@ -132,7 +132,7 @@ export interface TaskBroker { after: number | undefined; }): Observable<{ events: SerializedTaskEvent[] }>; get(taskId: string): Promise; - list(options?: Partial): Promise; + list(options?: { createdBy?: string }): Promise; } /** @@ -193,7 +193,7 @@ export interface TaskStore { listStaleTasks(options: { timeoutS: number }): Promise<{ tasks: { taskId: string }[]; }>; - list(options: Partial): Promise; + list(options: { createdBy?: string }): Promise; emitLogEvent({ taskId, body }: TaskStoreEmitOptions): Promise; listEvents({ From bcb040de3e271376381d1b1346b3858e34ea6bfb Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 12 May 2022 16:51:08 +0200 Subject: [PATCH 036/550] chore: change api report to make it more narrow Signed-off-by: blam Signed-off-by: blam --- plugins/scaffolder-backend/api-report.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index b09939e68a..1c333eb85f 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -395,7 +395,7 @@ export class DatabaseTaskStore implements TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) - list(options: Partial): Promise; + list(options: { createdBy?: string }): Promise; // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; @@ -521,7 +521,7 @@ export interface TaskBroker { // (undocumented) get(taskId: string): Promise; // (undocumented) - list(options?: Partial): Promise; + list(options?: { createdBy?: string }): Promise; // (undocumented) vacuumTasks(options: { timeoutS: number }): Promise; } @@ -620,7 +620,7 @@ export interface TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) - list(options: Partial): Promise; + list(options: { createdBy?: string }): Promise; // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; From 2de8c51462b27fe18e4e95ff8e7c9e77121d87f6 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 13 May 2022 11:11:08 +0200 Subject: [PATCH 037/550] chore: fixing up the tests for the scaffolder tasks now the API has changed Signed-off-by: blam --- plugins/scaffolder/src/api.test.ts | 5 +++- .../ListTasksPage/ListTaskPage.test.tsx | 30 +++++++++++++------ .../columns/TemplateTitleColumn.test.tsx | 2 ++ 3 files changed, 27 insertions(+), 10 deletions(-) diff --git a/plugins/scaffolder/src/api.test.ts b/plugins/scaffolder/src/api.test.ts index a5a3a3c51e..0b21f938ce 100644 --- a/plugins/scaffolder/src/api.test.ts +++ b/plugins/scaffolder/src/api.test.ts @@ -17,6 +17,7 @@ import { ConfigReader } from '@backstage/core-app-api'; import { ScmIntegrations } from '@backstage/integration'; import { MockFetchApi, setupRequestMockHandlers } from '@backstage/test-utils'; +import { identity } from 'lodash'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ScaffolderClient } from './api'; @@ -60,6 +61,9 @@ describe('api', () => { fetchApi, identityApi, }); + + jest.restoreAllMocks(); + identityApi.getBackstageIdentity.mockReturnValue({}); }); it('should return default and custom integrations', async () => { @@ -345,7 +349,6 @@ describe('api', () => { ); const result = await apiClient.listTasks('all'); - expect(identityApi.getBackstageIdentity).not.toBeCalled(); expect(result).toHaveLength(2); }); it('should list task using the current user as owner', async () => { diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx index fced397ad3..cf7204a3c6 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx @@ -105,19 +105,23 @@ describe('', () => { { id: 'a-random-id', spec: { - createdBy: 'user:default/foo', + user: { ref: 'user:default/foo' }, + templateInfo: { + entityRef: 'template:default/test', + }, } as any, status: 'completed', createdAt: '', lastHeartbeatAt: '', }, ]); + scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ title: 'One Template', steps: [], }); - const { getByText } = await renderInTestApp( + const { getByText, findByText } = await renderInTestApp( ', () => { expect(getByText('List template tasks')).toBeInTheDocument(); expect(getByText('All tasks that have been started')).toBeInTheDocument(); expect(getByText('Tasks')).toBeInTheDocument(); - expect(getByText('One Template')).toBeInTheDocument(); - expect(getByText('BackUser')).toBeInTheDocument(); + expect(await findByText('One Template')).toBeInTheDocument(); + expect(await findByText('BackUser')).toBeInTheDocument(); }); it('should render all tasks', async () => { @@ -172,7 +176,10 @@ describe('', () => { { id: 'a-random-id', spec: { - createdBy: 'user:default/foo', + user: { ref: 'user:default/foo' }, + templateInfo: { + entityRef: 'template:default/mock', + }, } as any, status: 'completed', createdAt: '', @@ -183,7 +190,12 @@ describe('', () => { { id: 'b-random-id', spec: { - createdBy: 'user:default/boo', + templateInfo: { + entityRef: 'template:default/mock', + }, + user: { + ref: 'user:default/boo', + }, } as any, status: 'completed', createdAt: '', @@ -196,7 +208,7 @@ describe('', () => { steps: [], }); - const { getByText } = await renderInTestApp( + const { getByText, findByText } = await renderInTestApp( ', () => { }); expect(scaffolderApiMock.listTasks).toBeCalledWith('all'); - expect(getByText('One Template')).toBeInTheDocument(); - expect(getByText('OtherUser')).toBeInTheDocument(); + expect(await findByText('One Template')).toBeInTheDocument(); + expect(await findByText('OtherUser')).toBeInTheDocument(); }); }); diff --git a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx index d7d194975e..3dc20312aa 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/columns/TemplateTitleColumn.test.tsx @@ -20,6 +20,7 @@ import React from 'react'; import { TemplateTitleColumn } from './TemplateTitleColumn'; import { scaffolderApiRef } from '../../../api'; import { ScaffolderApi } from '../../../types'; +import { entityRouteRef } from '@backstage/plugin-catalog-react'; describe('', () => { const scaffolderApiMock: jest.Mocked = { @@ -40,6 +41,7 @@ describe('', () => { , + { mountedRoutes: { '/test': entityRouteRef } }, ); const text = getByText('One Template'); From 4ee9ef6d366c3188bfac85be0ab3bfbb93664a51 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 13 May 2022 11:14:03 +0200 Subject: [PATCH 038/550] chore: fixing these tests too Signed-off-by: blam --- .../tasks/StorageTaskBroker.test.ts | 5 ++-- .../src/service/router.test.ts | 29 ++++++++----------- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts index 8558a371d5..710c9af2f0 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts @@ -221,9 +221,8 @@ describe('StorageTaskBroker', () => { it('should list only tasks createdBy a specific user', async () => { const broker = new StorageTaskBroker(storage, logger); const { taskId } = await broker.dispatch({ - spec: { - user: { ref: 'user:default/foo', entity: {} as UserEntity }, - } as TaskSpec, + spec: {} as TaskSpec, + createdBy: 'user:default/foo', }); const task = await storage.getTask(taskId); diff --git a/plugins/scaffolder-backend/src/service/router.test.ts b/plugins/scaffolder-backend/src/service/router.test.ts index 52f11357a6..b65c26949c 100644 --- a/plugins/scaffolder-backend/src/service/router.test.ts +++ b/plugins/scaffolder-backend/src/service/router.test.ts @@ -217,23 +217,18 @@ describe('createRouter', () => { const mockToken = 'blob.eyJzdWIiOiJ1c2VyOmRlZmF1bHQvZ3Vlc3QiLCJuYW1lIjoiSm9obiBEb2UifQ.blob'; - console.log( - JSON.stringify( - await request(app) - .post('/v2/tasks') - .set('Authorization', `Bearer ${mockToken}`) - .send({ - templateRef: stringifyEntityRef({ - kind: 'template', - name: 'create-react-app-template', - }), - values: { - required: 'required-value', - }, - }), - ), - ); - + await request(app) + .post('/v2/tasks') + .set('Authorization', `Bearer ${mockToken}`) + .send({ + templateRef: stringifyEntityRef({ + kind: 'template', + name: 'create-react-app-template', + }), + values: { + required: 'required-value', + }, + }); expect(broker).toHaveBeenCalledWith( expect.objectContaining({ createdBy: 'user:default/guest', From eb2cc98152871fc745259291d7eb6718ffbb3ee5 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 13 May 2022 11:16:36 +0200 Subject: [PATCH 039/550] chore: updating changeset Signed-off-by: blam --- .changeset/rich-zebras-design.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.changeset/rich-zebras-design.md b/.changeset/rich-zebras-design.md index 2c8a8248b5..d8ce399bce 100644 --- a/.changeset/rich-zebras-design.md +++ b/.changeset/rich-zebras-design.md @@ -1,11 +1,8 @@ --- '@backstage/plugin-scaffolder': minor '@backstage/plugin-scaffolder-backend': minor -'@backstage/plugin-scaffolder-common': minor --- -- add createdBy information for TaskSpec -- add listTaksks option for show current status from scaffolder tasks +- Add `listTasks` option to get tasks optionally filtered by a `userRef` -This allow the scaffolder-backend to show who creates each task and we included -a new page in `/create/tasks` to show those tasks +- Added a new page under `/create/tasks` to show those tasks, optionally grouped by the current signed in user. From 3d1d561a4de4094ee1b71b14718b09dd00af5d78 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 13 May 2022 11:18:06 +0200 Subject: [PATCH 040/550] chore: fixing type for storage task broker Signed-off-by: blam Signed-off-by: blam --- .../src/scaffolder/tasks/StorageTaskBroker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts index 8e3dadd844..fb0d673083 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts @@ -151,7 +151,7 @@ export class StorageTaskBroker implements TaskBroker { private readonly logger: Logger, ) {} - async list(options?: Partial): Promise { + async list(options?: { createdBy?: string }): Promise { return await this.storage.list({ createdBy: options?.createdBy }); } From ee63f03e9196207c659955b8d0059e9d207053c3 Mon Sep 17 00:00:00 2001 From: blam Date: Fri, 13 May 2022 11:22:44 +0200 Subject: [PATCH 041/550] chore: fixing typescript Signed-off-by: blam --- packages/catalog-model/examples/acme/team-a-group.yaml | 10 ++++++++++ .../src/scaffolder/tasks/StorageTaskBroker.test.ts | 1 - plugins/scaffolder/src/api.test.ts | 1 - 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/catalog-model/examples/acme/team-a-group.yaml b/packages/catalog-model/examples/acme/team-a-group.yaml index e343209d5f..2b3e2999d2 100644 --- a/packages/catalog-model/examples/acme/team-a-group.yaml +++ b/packages/catalog-model/examples/acme/team-a-group.yaml @@ -58,3 +58,13 @@ spec: email: guest@example.com picture: https://avatars.dicebear.com/api/avataaars/guest@example.com.svg?background=%23fff memberOf: [team-a] + +--- +apiVersion: backstage.io/v1alpha1 +kind: User +metadata: + name: benjdlambert +spec: + profile: + picture: https://avatars.dicebear.com/api/avataaars/breanna-davison@example.com.svg?background=%23fff + memberOf: [] diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts index 710c9af2f0..caca1580ad 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts @@ -15,7 +15,6 @@ */ import { getVoidLogger, DatabaseManager } from '@backstage/backend-common'; -import { UserEntity } from '@backstage/catalog-model'; import { ConfigReader } from '@backstage/config'; import { TaskSpec } from '@backstage/plugin-scaffolder-common'; import { DatabaseTaskStore } from './DatabaseTaskStore'; diff --git a/plugins/scaffolder/src/api.test.ts b/plugins/scaffolder/src/api.test.ts index 0b21f938ce..d5b91ebdb8 100644 --- a/plugins/scaffolder/src/api.test.ts +++ b/plugins/scaffolder/src/api.test.ts @@ -17,7 +17,6 @@ import { ConfigReader } from '@backstage/core-app-api'; import { ScmIntegrations } from '@backstage/integration'; import { MockFetchApi, setupRequestMockHandlers } from '@backstage/test-utils'; -import { identity } from 'lodash'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ScaffolderClient } from './api'; From 61d31317a106b1b0ea0228834478894d4dc227a7 Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 30 May 2022 14:43:14 +0200 Subject: [PATCH 042/550] chore: fixing context menu Signed-off-by: blam Signed-off-by: blam --- .changeset/rich-zebras-design.md | 2 +- packages/app/src/components/Root/Root.tsx | 2 -- .../ScaffolderPage/ScaffolderPage.tsx | 1 + .../ScaffolderPageContextMenu.tsx | 26 ++++++++++++++++--- plugins/scaffolder/src/types.ts | 2 +- 5 files changed, 25 insertions(+), 8 deletions(-) diff --git a/.changeset/rich-zebras-design.md b/.changeset/rich-zebras-design.md index d8ce399bce..fc121349aa 100644 --- a/.changeset/rich-zebras-design.md +++ b/.changeset/rich-zebras-design.md @@ -3,6 +3,6 @@ '@backstage/plugin-scaffolder-backend': minor --- -- Add `listTasks` option to get tasks optionally filtered by a `userRef` +- Add `listTasks` option to get tasks optionally filtered by `createdBy` - Added a new page under `/create/tasks` to show those tasks, optionally grouped by the current signed in user. diff --git a/packages/app/src/components/Root/Root.tsx b/packages/app/src/components/Root/Root.tsx index e724adc345..30da01841c 100644 --- a/packages/app/src/components/Root/Root.tsx +++ b/packages/app/src/components/Root/Root.tsx @@ -23,7 +23,6 @@ import MapIcon from '@material-ui/icons/MyLocation'; import LayersIcon from '@material-ui/icons/Layers'; import LibraryBooks from '@material-ui/icons/LibraryBooks'; import CreateComponentIcon from '@material-ui/icons/AddCircleOutline'; -import List from '@material-ui/icons/List'; import SearchIcon from '@material-ui/icons/Search'; import MenuIcon from '@material-ui/icons/Menu'; import MoneyIcon from '@material-ui/icons/MonetizationOn'; @@ -108,7 +107,6 @@ export const Root = ({ children }: PropsWithChildren<{}>) => ( - {/* End global nav */} diff --git a/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPage.tsx b/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPage.tsx index 79d176cd11..2bc36ff0d2 100644 --- a/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPage.tsx +++ b/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPage.tsx @@ -52,6 +52,7 @@ export type ScaffolderPageProps = { contextMenu?: { editor?: boolean; actions?: boolean; + tasks?: boolean; }; }; diff --git a/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPageContextMenu.tsx b/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPageContextMenu.tsx index 6d9a89cfab..74366753f7 100644 --- a/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPageContextMenu.tsx +++ b/plugins/scaffolder/src/components/ScaffolderPage/ScaffolderPageContextMenu.tsx @@ -24,10 +24,15 @@ import Popover from '@material-ui/core/Popover'; import { makeStyles } from '@material-ui/core/styles'; import Description from '@material-ui/icons/Description'; 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 { useNavigate } from 'react-router'; -import { rootRouteRef } from '../../routes'; +import { + actionsRouteRef, + editRouteRef, + scaffolderListTaskRouteRef, +} from '../../routes'; const useStyles = makeStyles({ button: { @@ -38,6 +43,7 @@ const useStyles = makeStyles({ export type ScaffolderPageContextMenuProps = { editor?: boolean; actions?: boolean; + tasks?: boolean; }; export function ScaffolderPageContextMenu( @@ -45,11 +51,15 @@ export function ScaffolderPageContextMenu( ) { const classes = useStyles(); const [anchorEl, setAnchorEl] = useState(); - const pageLink = useRouteRef(rootRouteRef); + const editLink = useRouteRef(editRouteRef); + const actionsLink = useRouteRef(actionsRouteRef); + const tasksLink = useRouteRef(scaffolderListTaskRouteRef); + const navigate = useNavigate(); const showEditor = props.editor !== false; const showActions = props.actions !== false; + const showTasks = props.tasks !== false; if (!showEditor && !showActions) { return null; @@ -85,7 +95,7 @@ export function ScaffolderPageContextMenu( > {showEditor && ( - navigate(`${pageLink()}/edit`)}> + navigate(editLink())}> @@ -93,13 +103,21 @@ export function ScaffolderPageContextMenu( )} {showActions && ( - navigate(`${pageLink()}/actions`)}> + navigate(actionsLink())}> )} + {showTasks && ( + navigate(tasksLink())}> + + + + + + )} diff --git a/plugins/scaffolder/src/types.ts b/plugins/scaffolder/src/types.ts index acd686019c..6792f069cc 100644 --- a/plugins/scaffolder/src/types.ts +++ b/plugins/scaffolder/src/types.ts @@ -178,7 +178,7 @@ export interface ScaffolderApi { getTask(taskId: string): Promise; - listTasks(createdBy: TasksOwnerFilterKind): Promise; + listTasks?(createdBy: TasksOwnerFilterKind): Promise; getIntegrationsList( options: ScaffolderGetIntegrationsListOptions, From 1cd1c184eeeb47d97baa843d833f0a416398a655 Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 30 May 2022 14:53:54 +0200 Subject: [PATCH 043/550] chore: reworking the api to wrap up in an object Signed-off-by: blam --- plugins/scaffolder/src/api.test.ts | 4 ++-- plugins/scaffolder/src/api.ts | 6 ++++-- .../ListTasksPage/ListTaskPage.test.tsx | 7 ++++--- .../components/ListTasksPage/ListTasksPage.tsx | 15 +++++++++++---- plugins/scaffolder/src/types.ts | 6 +++++- 5 files changed, 26 insertions(+), 12 deletions(-) diff --git a/plugins/scaffolder/src/api.test.ts b/plugins/scaffolder/src/api.test.ts index d5b91ebdb8..7dc840ee96 100644 --- a/plugins/scaffolder/src/api.test.ts +++ b/plugins/scaffolder/src/api.test.ts @@ -347,7 +347,7 @@ describe('api', () => { }), ); - const result = await apiClient.listTasks('all'); + const result = await apiClient.listTasks({ createdBy: 'all' }); expect(result).toHaveLength(2); }); it('should list task using the current user as owner', async () => { @@ -382,7 +382,7 @@ describe('api', () => { userEntityRef: 'user:default/foo', }); - const result = await apiClient.listTasks('owned'); + const result = await apiClient.listTasks({ createdBy: 'owned' }); expect(identityApi.getBackstageIdentity).toBeCalled(); expect(result).toHaveLength(1); }); diff --git a/plugins/scaffolder/src/api.ts b/plugins/scaffolder/src/api.ts index eaf92f949e..c19853b5f1 100644 --- a/plugins/scaffolder/src/api.ts +++ b/plugins/scaffolder/src/api.ts @@ -76,12 +76,14 @@ export class ScaffolderClient implements ScaffolderApi { this.identityApi = options.identityApi; } - async listTasks(createdBy: TasksOwnerFilterKind): Promise { + async listTasks(options: { + createdBy: TasksOwnerFilterKind; + }): Promise { const baseUrl = await this.discoveryApi.getBaseUrl('scaffolder'); const { userEntityRef } = await this.identityApi.getBackstageIdentity(); const query = queryString.stringify( - createdBy === 'owned' ? { createdBy: userEntityRef } : {}, + options.createdBy === 'owned' ? { createdBy: userEntityRef } : {}, ); const url = `${baseUrl}/v2/tasks?${query}`; diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx index cf7204a3c6..3d20fd1fd8 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx @@ -41,7 +41,7 @@ describe('', () => { signOut: jest.fn(), }; - const scaffolderApiMock: jest.Mocked = { + const scaffolderApiMock: jest.Mocked> = { scaffold: jest.fn(), getTemplateParameterSchema: jest.fn(), listTasks: jest.fn(), @@ -139,7 +139,7 @@ describe('', () => { }, ); - expect(scaffolderApiMock.listTasks).toBeCalledWith('owned'); + expect(scaffolderApiMock.listTasks).toBeCalledWith({ createdBy: 'owned' }); expect(getByText('List template tasks')).toBeInTheDocument(); expect(getByText('All tasks that have been started')).toBeInTheDocument(); expect(getByText('Tasks')).toBeInTheDocument(); @@ -171,6 +171,7 @@ describe('', () => { }, }, }); + scaffolderApiMock.listTasks .mockResolvedValue([ { @@ -231,7 +232,7 @@ describe('', () => { fireEvent.click(allButton); }); - expect(scaffolderApiMock.listTasks).toBeCalledWith('all'); + expect(scaffolderApiMock.listTasks).toBeCalledWith({ createdBy: 'all' }); expect(await findByText('One Template')).toBeInTheDocument(); expect(await findByText('OtherUser')).toBeInTheDocument(); }); diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index 7866375fb1..5f099ed331 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -50,10 +50,17 @@ const ListTaskPageContent = (props: MyTaskPageProps) => { const rootLink = useRouteRef(rootRouteRef); const [ownerFilter, setOwnerFilter] = useState(initiallySelectedFilter); - const { value, loading, error } = useAsync( - () => scaffolderApi.listTasks(ownerFilter), - [scaffolderApi, ownerFilter], - ); + const { value, loading, error } = useAsync(() => { + if (scaffolderApi.listTasks) { + return scaffolderApi.listTasks?.({ createdBy: ownerFilter }); + } + + // eslint-disable-next-line no-console + console.warn( + 'listTasks is not implemented in the scaffolderApi, please make sure to implement this method.', + ); + return Promise.resolve([]); + }, [scaffolderApi, ownerFilter]); if (loading) { return ; diff --git a/plugins/scaffolder/src/types.ts b/plugins/scaffolder/src/types.ts index 6792f069cc..608d586b09 100644 --- a/plugins/scaffolder/src/types.ts +++ b/plugins/scaffolder/src/types.ts @@ -178,7 +178,11 @@ export interface ScaffolderApi { getTask(taskId: string): Promise; - listTasks?(createdBy: TasksOwnerFilterKind): Promise; + listTasks?({ + createdBy, + }: { + createdBy: TasksOwnerFilterKind; + }): Promise; getIntegrationsList( options: ScaffolderGetIntegrationsListOptions, From f7c604a25e4f55ba3e959d6e6d01be7e4845e093 Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 30 May 2022 14:56:55 +0200 Subject: [PATCH 044/550] chore: fixing some things Signed-off-by: blam --- plugins/scaffolder/api-report.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 159fd10871..2469450f93 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -239,7 +239,11 @@ export interface ScaffolderApi { ): Promise; listActions(): Promise; // (undocumented) - listTasks(createdBy: TasksOwnerFilterKind): Promise; + listTasks?({ + createdBy, + }: { + createdBy: TasksOwnerFilterKind; + }): Promise; scaffold( options: ScaffolderScaffoldOptions, ): Promise; @@ -272,7 +276,9 @@ export class ScaffolderClient implements ScaffolderApi { // (undocumented) listActions(): Promise; // (undocumented) - listTasks(createdBy: TasksOwnerFilterKind): Promise; + listTasks(options: { + createdBy: TasksOwnerFilterKind; + }): Promise; scaffold( options: ScaffolderScaffoldOptions, ): Promise; From f5732feb25089bb8c4c7cf63678e47faac3d9c99 Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 31 May 2022 10:47:52 +0200 Subject: [PATCH 045/550] chore: use the existing material-table version Signed-off-by: blam --- plugins/scaffolder/package.json | 2 +- yarn.lock | 19 ------------------- 2 files changed, 1 insertion(+), 20 deletions(-) diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index bb69adfe16..8bb88b28bb 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -56,7 +56,7 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "@rjsf/core": "^3.2.1", - "@material-table/core": "^4.3.29", + "@material-table/core": "^3.1.0", "@rjsf/material-ui": "^3.2.1", "@types/json-schema": "^7.0.9", "@uiw/react-codemirror": "^4.7.0", diff --git a/yarn.lock b/yarn.lock index 71c81d03e7..4ed8ee03bf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3988,25 +3988,6 @@ react-beautiful-dnd "^13.0.0" react-double-scrollbar "0.0.15" -"@material-table/core@^4.3.29": - version "4.3.29" - resolved "https://registry.npmjs.org/@material-table/core/-/core-4.3.29.tgz#7f60fe4fc191e016d9be663fa437e00b012eae05" - integrity sha512-7vz1oc3bo1eSzk450NgpA61xQjlgCBg7q1TDGrB8ZDMyx2NvLRxTyNBtW8JEPLaQLoCWoDFK7F/VHOYRN1fKuQ== - dependencies: - "@babel/runtime" "^7.12.5" - "@date-io/date-fns" "^1.3.13" - "@material-ui/icons" "^4.11.2" - "@material-ui/pickers" "^3.2.10" - "@material-ui/styles" "^4.11.4" - classnames "^2.2.6" - date-fns "^2.16.1" - debounce "^1.2.0" - fast-deep-equal "^3.1.3" - prop-types "^15.7.2" - react-beautiful-dnd "^13.0.0" - react-double-scrollbar "0.0.15" - uuid "^3.4.0" - "@material-ui/core@^4.11.0", "@material-ui/core@^4.11.3", "@material-ui/core@^4.12.1", "@material-ui/core@^4.12.2", "@material-ui/core@^4.9.10", "@material-ui/core@^4.9.13": version "4.12.4" resolved "https://registry.npmjs.org/@material-ui/core/-/core-4.12.4.tgz#4ac17488e8fcaf55eb6a7f5efb2a131e10138a73" From 786eb9535d4d10913bdfae338c46c3bcd8619914 Mon Sep 17 00:00:00 2001 From: Jakub Cierlik Date: Tue, 31 May 2022 12:43:42 +0200 Subject: [PATCH 046/550] Cloudify Plugin shorter description as requested by @Rugvip Signed-off-by: Jakub Cierlik --- microsite/data/plugins/cloudify.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/cloudify.yaml b/microsite/data/plugins/cloudify.yaml index 717f54737f..e5bcbe1545 100644 --- a/microsite/data/plugins/cloudify.yaml +++ b/microsite/data/plugins/cloudify.yaml @@ -3,7 +3,7 @@ title: Cloudify author: Cloudify authorUrl: https://cloudify.co/ category: Orchestration -description: Cloudify provides a remote execution and environment management backend that handles the provisioning and continuous update of Kubernetes, Terraform, Ansible, CloudFormation, Azure ARM, VRO based environments through a single API endpoint. +description: Cloudify provides a remote execution and environment management backend for Kubernetes, Terraform, Ansible, etc. documentation: https://github.com/cloudify-cosmo/backstage-cloudify-plugin#readme iconUrl: https://avatars.githubusercontent.com/u/6260555?s=200&v=4 npmPackageName: 'plugin-cloudify' From aea8e28d7c27f3ece4be367e0d9a475865b87175 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 31 May 2022 15:15:57 +0200 Subject: [PATCH 047/550] Minor adjustments Signed-off-by: Francesco Saltori --- .changeset/honest-planets-sin.md | 2 +- .../actions/builtin/publish/github.ts | 17 ++--------------- 2 files changed, 3 insertions(+), 16 deletions(-) diff --git a/.changeset/honest-planets-sin.md b/.changeset/honest-planets-sin.md index 5035d8cee4..03a34f7d86 100644 --- a/.changeset/honest-planets-sin.md +++ b/.changeset/honest-planets-sin.md @@ -4,7 +4,7 @@ Fixed bug in `publish:github` action that didn't permit to add users as collaborators. This fix required changing the way parameters are passed to the action. -In order to add a team as collaborator, now you must use the `team` field instead of `user`. +In order to add a team as collaborator, now you must use the `team` field instead of `username`. In order to add a user as collaborator, you must use the `user` field. It's still possible to use the field `username` but is deprecated in favor of `team`. diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 9d3b43dc4f..4237ff1abf 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -355,7 +355,7 @@ export function createPublishGithubAction(options: { }); } else if ('username' in collaborator) { ctx.logger.warn( - 'The field `username` is deprecated in favor of `team`', + 'The field `username` is deprecated in favor of `team` and will be removed in the future.', ); await client.rest.teams.addOrUpdateRepoPermissionsInOrg({ org: owner, @@ -447,20 +447,7 @@ export function createPublishGithubAction(options: { } function extractCollaboratorName( - collaborator: - | { - user: string; - access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; - } - | { - team: string; - access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; - } - | { - /** @deprecated This field is deprecated in favor of team */ - username: string; - access: 'pull' | 'push' | 'admin' | 'maintain' | 'triage'; - }, + collaborator: { user: string } | { team: string } | { username: string }, ) { if ('username' in collaborator) return collaborator.username; if ('user' in collaborator) return collaborator.user; From e7bb7f9cfc8fcf901f5e94505f9cf4b168aea138 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 31 May 2022 15:12:42 +0200 Subject: [PATCH 048/550] Improve publish:github action schema Signed-off-by: Francesco Saltori --- .../actions/builtin/publish/github.ts | 69 +++++++------------ 1 file changed, 26 insertions(+), 43 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts index 4237ff1abf..7e5c76c186 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/github.ts @@ -169,51 +169,34 @@ export function createPublishGithubAction(options: { type: 'array', items: { type: 'object', + additionalProperties: false, required: ['access'], + properties: { + access: { + type: 'string', + description: 'The type of access for the user', + enum: ['push', 'pull', 'admin', 'maintain', 'triage'], + }, + user: { + type: 'string', + description: + 'The name of the user that will be added as a collaborator', + }, + username: { + type: 'string', + description: + 'Deprecated. Use the `team` or `user` field instead.', + }, + team: { + type: 'string', + description: + 'The name of the team that will be added as a collaborator', + }, + }, oneOf: [ - { - properties: { - access: { - type: 'string', - description: 'The type of access for the user', - enum: ['push', 'pull', 'admin', 'maintain', 'triage'], - }, - user: { - type: 'string', - description: - 'The name of the user that will be added as a collaborator', - }, - }, - }, - { - properties: { - access: { - type: 'string', - description: 'The type of access for the user', - enum: ['push', 'pull', 'admin', 'maintain', 'triage'], - }, - /** @deprecated This field is deprecated in favor of team */ - username: { - type: 'string', - description: 'Not a valid field anymore', - }, - }, - }, - { - additionalProperties: false, - properties: { - access: { - type: 'string', - description: 'The type of access for the team', - enum: ['push', 'pull', 'admin', 'maintain', 'triage'], - }, - team: { - type: 'string', - description: - 'The name of the team that will be added as a collaborator', - }, - }, - }, + { required: ['user'] }, + { required: ['username'] }, + { required: ['team'] }, ], }, }, From 3934f8bb24f96cd44cc3b6696636b935e0652cf8 Mon Sep 17 00:00:00 2001 From: Francesco Saltori Date: Tue, 31 May 2022 15:17:07 +0200 Subject: [PATCH 049/550] Make changeset a bit shorter Signed-off-by: Francesco Saltori --- .changeset/honest-planets-sin.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.changeset/honest-planets-sin.md b/.changeset/honest-planets-sin.md index 03a34f7d86..bb55e881c6 100644 --- a/.changeset/honest-planets-sin.md +++ b/.changeset/honest-planets-sin.md @@ -2,7 +2,7 @@ '@backstage/plugin-scaffolder-backend': minor --- -Fixed bug in `publish:github` action that didn't permit to add users as collaborators. +Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. This fix required changing the way parameters are passed to the action. In order to add a team as collaborator, now you must use the `team` field instead of `username`. In order to add a user as collaborator, you must use the `user` field. @@ -14,7 +14,6 @@ It's still possible to use the field `username` but is deprecated in favor of `t name: Publish action: publish:github input: - allowedHosts: ['github.com'] repoUrl: ... collaborators: - access: ... From 115214b719140909b798548398285f61146178a8 Mon Sep 17 00:00:00 2001 From: Ingmar van Dijk Date: Fri, 27 May 2022 10:33:07 +0200 Subject: [PATCH 050/550] Make code work as documented. Review mask does not need 'show: true'. (#11687) Signed-off-by: Ingmar van Dijk --- .../MultistepJsonForm/MultistepJsonForm.test.tsx | 1 - .../components/MultistepJsonForm/MultistepJsonForm.tsx | 8 ++++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.test.tsx b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.test.tsx index 5f7091832f..21540a4895 100644 --- a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.test.tsx +++ b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.test.tsx @@ -41,7 +41,6 @@ describe('MultistepJsonForm', () => { type: 'string', 'ui:backstage': { review: { - show: true, mask: '******', }, }, diff --git a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx index fb1de5f46d..d2ed0241ef 100644 --- a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx +++ b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx @@ -94,14 +94,14 @@ export function getReviewData(formData: Record, steps: Step[]) { } const review = uiSchema['ui:backstage'].review as JsonObject; - if (!review.show) { - continue; - } - if (review.mask) { reviewData[key] = review.mask; continue; } + + if (!review.show) { + continue; + } reviewData[key] = formData[key]; } } From ac0c7e45ee1d6dd867db35d3db73858e4a93d04f Mon Sep 17 00:00:00 2001 From: Ingmar van Dijk Date: Tue, 31 May 2022 10:17:35 +0200 Subject: [PATCH 051/550] Adding changeset. Signed-off-by: Ingmar van Dijk --- .changeset/beige-dots-bathe.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/beige-dots-bathe.md diff --git a/.changeset/beige-dots-bathe.md b/.changeset/beige-dots-bathe.md new file mode 100644 index 0000000000..a061ae769f --- /dev/null +++ b/.changeset/beige-dots-bathe.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +Fixes review mask in MultistepJsonForm to work as documented. 'show: true' no longer needed when mask is set. From b9ce08bbb813d3e808e76c6ad458f5dd84e09285 Mon Sep 17 00:00:00 2001 From: Ingmar van Dijk Date: Tue, 31 May 2022 10:27:41 +0200 Subject: [PATCH 052/550] Fix code style on MultistepJsonForm. Prettier check will pass now. Signed-off-by: Ingmar van Dijk --- .../src/components/MultistepJsonForm/MultistepJsonForm.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx index d2ed0241ef..34ceeb730d 100644 --- a/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx +++ b/plugins/scaffolder/src/components/MultistepJsonForm/MultistepJsonForm.tsx @@ -98,7 +98,7 @@ export function getReviewData(formData: Record, steps: Step[]) { reviewData[key] = review.mask; continue; } - + if (!review.show) { continue; } From a83465692eee782c8aacafb392bd20e8b264c936 Mon Sep 17 00:00:00 2001 From: Ben Lambert Date: Tue, 31 May 2022 11:06:05 +0200 Subject: [PATCH 053/550] Update beige-dots-bathe.md Signed-off-by: Ben Lambert --- .changeset/beige-dots-bathe.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/beige-dots-bathe.md b/.changeset/beige-dots-bathe.md index a061ae769f..3d8f34f1db 100644 --- a/.changeset/beige-dots-bathe.md +++ b/.changeset/beige-dots-bathe.md @@ -2,4 +2,4 @@ '@backstage/plugin-scaffolder': patch --- -Fixes review mask in MultistepJsonForm to work as documented. 'show: true' no longer needed when mask is set. +Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. From 698c55f1820cad93ad157959ac0c720c5886e764 Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 31 May 2022 16:42:51 +0200 Subject: [PATCH 054/550] chore: code review changes Signed-off-by: blam --- .../examples/acme/team-a-group.yaml | 70 ------------ .../src/scaffolder/tasks/DatabaseTaskStore.ts | 8 +- .../tasks/StorageTaskBroker.test.ts | 8 +- .../src/scaffolder/tasks/StorageTaskBroker.ts | 9 +- .../src/scaffolder/tasks/types.ts | 4 +- .../src/service/router.test.ts | 84 ++++++++------ .../scaffolder-backend/src/service/router.ts | 15 ++- plugins/scaffolder/src/api.test.ts | 36 +++--- plugins/scaffolder/src/api.ts | 20 ++-- .../ListTasksPage/ListTaskPage.test.tsx | 104 ++++++++++-------- .../ListTasksPage/ListTasksPage.tsx | 10 +- .../ListTasksPage/OwnerListPicker.tsx | 6 +- plugins/scaffolder/src/index.ts | 1 - plugins/scaffolder/src/types.ts | 13 +-- yarn.lock | 83 ++++++++++++-- 15 files changed, 256 insertions(+), 215 deletions(-) delete mode 100644 packages/catalog-model/examples/acme/team-a-group.yaml diff --git a/packages/catalog-model/examples/acme/team-a-group.yaml b/packages/catalog-model/examples/acme/team-a-group.yaml deleted file mode 100644 index 2b3e2999d2..0000000000 --- a/packages/catalog-model/examples/acme/team-a-group.yaml +++ /dev/null @@ -1,70 +0,0 @@ -apiVersion: backstage.io/v1alpha1 -kind: Group -metadata: - name: team-a - description: Team A -spec: - type: team - profile: - # Intentional no displayName for testing - email: team-a@example.com - picture: https://avatars.dicebear.com/api/identicon/team-a@example.com.svg?background=%23fff&margin=25 - parent: backstage - children: [] ---- -apiVersion: backstage.io/v1alpha1 -kind: User -metadata: - name: breanna.davison -spec: - profile: - # Intentional no displayName for testing - email: breanna-davison@example.com - picture: https://avatars.dicebear.com/api/avataaars/breanna-davison@example.com.svg?background=%23fff - memberOf: [team-a] ---- -apiVersion: backstage.io/v1alpha1 -kind: User -metadata: - name: janelle.dawe -spec: - profile: - displayName: Janelle Dawe - email: janelle-dawe@example.com - picture: https://avatars.dicebear.com/api/avataaars/janelle-dawe@example.com.svg?background=%23fff - memberOf: [team-a] ---- -apiVersion: backstage.io/v1alpha1 -kind: User -metadata: - name: nigel.manning -spec: - profile: - displayName: Nigel Manning - email: nigel-manning@example.com - picture: https://avatars.dicebear.com/api/avataaars/nigel-manning@example.com.svg?background=%23fff - memberOf: [team-a] ---- -# This user is added as an example, to make it more easy for the "Guest" -# sign-in option to demonstrate some entities being owned. In a regular org, -# a guest user would probably not be registered like this. -apiVersion: backstage.io/v1alpha1 -kind: User -metadata: - name: guest -spec: - profile: - displayName: Guest User - email: guest@example.com - picture: https://avatars.dicebear.com/api/avataaars/guest@example.com.svg?background=%23fff - memberOf: [team-a] - ---- -apiVersion: backstage.io/v1alpha1 -kind: User -metadata: - name: benjdlambert -spec: - profile: - picture: https://avatars.dicebear.com/api/avataaars/breanna-davison@example.com.svg?background=%23fff - memberOf: [] diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts index 145747124a..d62e59744f 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/DatabaseTaskStore.ts @@ -93,7 +93,9 @@ export class DatabaseTaskStore implements TaskStore { this.db = options.database; } - async list(options: { createdBy?: string }): Promise { + async list(options: { + createdBy?: string; + }): Promise<{ tasks: SerializedTask[] }> { const queryBuilder = this.db('tasks'); if (options.createdBy) { @@ -104,7 +106,7 @@ export class DatabaseTaskStore implements TaskStore { const results = await queryBuilder.orderBy('created_at', 'desc').select(); - return results.map(result => ({ + const tasks = results.map(result => ({ id: result.id, spec: JSON.parse(result.spec), status: result.status, @@ -112,6 +114,8 @@ export class DatabaseTaskStore implements TaskStore { lastHeartbeatAt: parseSqlDateToIsoString(result.last_heartbeat_at), createdAt: parseSqlDateToIsoString(result.created_at), })); + + return { tasks }; } async getTask(taskId: string): Promise { diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts index caca1580ad..2350072806 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.test.ts @@ -208,13 +208,13 @@ describe('StorageTaskBroker', () => { const { taskId } = await broker.dispatch({ spec: {} as TaskSpec }); const promise = broker.list(); - await expect(promise).resolves.toEqual( - expect.arrayContaining([ + await expect(promise).resolves.toEqual({ + tasks: expect.arrayContaining([ expect.objectContaining({ id: taskId, }), ]), - ); + }); }); it('should list only tasks createdBy a specific user', async () => { @@ -227,6 +227,6 @@ describe('StorageTaskBroker', () => { const task = await storage.getTask(taskId); const promise = broker.list({ createdBy: 'user:default/foo' }); - await expect(promise).resolves.toEqual([task]); + await expect(promise).resolves.toEqual({ tasks: [task] }); }); }); diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts index fb0d673083..9e60bc7727 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/StorageTaskBroker.ts @@ -151,7 +151,14 @@ export class StorageTaskBroker implements TaskBroker { private readonly logger: Logger, ) {} - async list(options?: { createdBy?: string }): Promise { + async list(options?: { + createdBy?: string; + }): Promise<{ tasks: SerializedTask[] }> { + if (!this.storage.list) { + throw new Error( + 'TaskStore does not implement the list method. Please implement the list method to be able to list tasks', + ); + } return await this.storage.list({ createdBy: options?.createdBy }); } diff --git a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts index a9d3e3ae5b..4b63a0cdd3 100644 --- a/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts +++ b/plugins/scaffolder-backend/src/scaffolder/tasks/types.ts @@ -133,7 +133,7 @@ export interface TaskBroker { after: number | undefined; }): Observable<{ events: SerializedTaskEvent[] }>; get(taskId: string): Promise; - list(options?: { createdBy?: string }): Promise; + list?(options?: { createdBy?: string }): Promise<{ tasks: SerializedTask[] }>; } /** @@ -194,7 +194,7 @@ export interface TaskStore { listStaleTasks(options: { timeoutS: number }): Promise<{ tasks: { taskId: string }[]; }>; - list(options: { createdBy?: string }): Promise; + list?(options: { createdBy?: string }): Promise<{ tasks: SerializedTask[] }>; emitLogEvent({ taskId, body }: TaskStoreEmitOptions): Promise; listEvents({ diff --git a/plugins/scaffolder-backend/src/service/router.test.ts b/plugins/scaffolder-backend/src/service/router.test.ts index b65c26949c..aea33f1158 100644 --- a/plugins/scaffolder-backend/src/service/router.test.ts +++ b/plugins/scaffolder-backend/src/service/router.test.ts @@ -292,42 +292,52 @@ describe('createRouter', () => { describe('GET /v2/tasks', () => { it('return all tasks', async () => { - (taskBroker.list as jest.Mocked['list']).mockResolvedValue([ - { - id: 'a-random-id', - spec: {} as any, - status: 'completed', - createdAt: '', - createdBy: '', - }, - ]); + ( + taskBroker.list as jest.Mocked>['list'] + ).mockResolvedValue({ + tasks: [ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: '', + }, + ], + }); const response = await request(app).get(`/v2/tasks`); expect(taskBroker.list).toBeCalledWith({ createdBy: undefined, }); expect(response.status).toEqual(200); - expect(response.body).toStrictEqual([ - { - id: 'a-random-id', - spec: {} as any, - status: 'completed', - createdAt: '', - createdBy: '', - }, - ]); + expect(response.body).toStrictEqual({ + tasks: [ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: '', + }, + ], + }); }); it('return filtered tasks', async () => { - (taskBroker.list as jest.Mocked['list']).mockResolvedValue([ - { - id: 'a-random-id', - spec: {} as any, - status: 'completed', - createdAt: '', - createdBy: 'user:default/foo', - }, - ]); + ( + taskBroker.list as jest.Mocked>['list'] + ).mockResolvedValue({ + tasks: [ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: 'user:default/foo', + }, + ], + }); const response = await request(app).get( `/v2/tasks?createdBy=user:default/foo`, @@ -337,15 +347,17 @@ describe('createRouter', () => { }); expect(response.status).toEqual(200); - expect(response.body).toStrictEqual([ - { - id: 'a-random-id', - spec: {} as any, - status: 'completed', - createdAt: '', - createdBy: 'user:default/foo', - }, - ]); + expect(response.body).toStrictEqual({ + tasks: [ + { + id: 'a-random-id', + spec: {} as any, + status: 'completed', + createdAt: '', + createdBy: 'user:default/foo', + }, + ], + }); }); }); diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 553ff2b8bc..4919d2e5f9 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -253,7 +253,20 @@ export async function createRouter( res.status(201).json({ id: result.taskId }); }) .get('/v2/tasks', async (req, res) => { - const userEntityRef = req.query.createdBy?.toString(); + const [userEntityRef] = [req.query.createdBy].flat(); + + if ( + typeof userEntityRef !== 'string' && + typeof userEntityRef !== 'undefined' + ) { + throw new InputError('createdBy query parameter must be a string'); + } + + if (!taskBroker.list) { + throw new Error( + 'TaskBroker does not support listing tasks, please implement the list method on the TaskBroker.', + ); + } const tasks = await taskBroker.list({ createdBy: userEntityRef, diff --git a/plugins/scaffolder/src/api.test.ts b/plugins/scaffolder/src/api.test.ts index 7dc840ee96..583258c069 100644 --- a/plugins/scaffolder/src/api.test.ts +++ b/plugins/scaffolder/src/api.test.ts @@ -347,7 +347,7 @@ describe('api', () => { }), ); - const result = await apiClient.listTasks({ createdBy: 'all' }); + const result = await apiClient.listTasks({ filterByOwnership: 'all' }); expect(result).toHaveLength(2); }); it('should list task using the current user as owner', async () => { @@ -357,23 +357,27 @@ describe('api', () => { if (createdBy) { return res( - ctx.json([ - { - createdBy, - }, - ]), + ctx.json({ + tasks: [ + { + createdBy, + }, + ], + }), ); } return res( - ctx.json([ - { - createdBy: null, - }, - { - createdBy: null, - }, - ]), + ctx.json({ + tasks: [ + { + createdBy: null, + }, + { + createdBy: null, + }, + ], + }), ); }), ); @@ -382,9 +386,9 @@ describe('api', () => { userEntityRef: 'user:default/foo', }); - const result = await apiClient.listTasks({ createdBy: 'owned' }); + const result = await apiClient.listTasks({ filterByOwnership: 'owned' }); expect(identityApi.getBackstageIdentity).toBeCalled(); - expect(result).toHaveLength(1); + expect(result.tasks).toHaveLength(1); }); }); }); diff --git a/plugins/scaffolder/src/api.ts b/plugins/scaffolder/src/api.ts index 6d236bb8fd..64141dd83d 100644 --- a/plugins/scaffolder/src/api.ts +++ b/plugins/scaffolder/src/api.ts @@ -37,7 +37,6 @@ import { ScaffolderGetIntegrationsListOptions, ScaffolderGetIntegrationsListResponse, ScaffolderTask, - TasksOwnerFilterKind, ScaffolderDryRunOptions, ScaffolderDryRunResponse, } from './types'; @@ -61,13 +60,13 @@ export class ScaffolderClient implements ScaffolderApi { private readonly discoveryApi: DiscoveryApi; private readonly scmIntegrationsApi: ScmIntegrationRegistry; private readonly fetchApi: FetchApi; - private readonly identityApi: IdentityApi; + private readonly identityApi?: IdentityApi; private readonly useLongPollingLogs: boolean; constructor(options: { discoveryApi: DiscoveryApi; fetchApi: FetchApi; - identityApi: IdentityApi; + identityApi?: IdentityApi; scmIntegrationsApi: ScmIntegrationRegistry; useLongPollingLogs?: boolean; }) { @@ -79,18 +78,21 @@ export class ScaffolderClient implements ScaffolderApi { } async listTasks(options: { - createdBy: TasksOwnerFilterKind; - }): Promise { + filterByOwnership: 'owned' | 'all'; + }): Promise<{ tasks: ScaffolderTask[] }> { + if (!this.identityApi) { + throw new Error( + 'IdentityApi is not available in the ScaffolderClient, please pass through the IdentityApi to the ScaffolderClient constructor in order to use the listTasks method', + ); + } const baseUrl = await this.discoveryApi.getBaseUrl('scaffolder'); const { userEntityRef } = await this.identityApi.getBackstageIdentity(); const query = queryString.stringify( - options.createdBy === 'owned' ? { createdBy: userEntityRef } : {}, + options.filterByOwnership === 'owned' ? { createdBy: userEntityRef } : {}, ); - const url = `${baseUrl}/v2/tasks?${query}`; - - const response = await this.fetchApi.fetch(url); + const response = await this.fetchApi.fetch(`${baseUrl}/v2/tasks?${query}`); if (!response.ok) { throw await ResponseError.fromResponse(response); } diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx index 3d20fd1fd8..6dc26abd68 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTaskPage.test.tsx @@ -62,7 +62,7 @@ describe('', () => { }; catalogApi.getEntityByRef.mockResolvedValue(entity); - scaffolderApiMock.listTasks.mockResolvedValue([]); + scaffolderApiMock.listTasks.mockResolvedValue({ tasks: [] }); const { getByText } = await renderInTestApp( ', () => { }, }; catalogApi.getEntityByRef.mockResolvedValue(entity); - scaffolderApiMock.listTasks.mockResolvedValue([ - { - id: 'a-random-id', - spec: { - user: { ref: 'user:default/foo' }, - templateInfo: { - entityRef: 'template:default/test', - }, - } as any, - status: 'completed', - createdAt: '', - lastHeartbeatAt: '', - }, - ]); + scaffolderApiMock.listTasks.mockResolvedValue({ + tasks: [ + { + id: 'a-random-id', + spec: { + user: { ref: 'user:default/foo' }, + templateInfo: { + entityRef: 'template:default/test', + }, + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ], + }); scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ title: 'One Template', @@ -139,7 +141,9 @@ describe('', () => { }, ); - expect(scaffolderApiMock.listTasks).toBeCalledWith({ createdBy: 'owned' }); + expect(scaffolderApiMock.listTasks).toBeCalledWith({ + filterByOwnership: 'owned', + }); expect(getByText('List template tasks')).toBeInTheDocument(); expect(getByText('All tasks that have been started')).toBeInTheDocument(); expect(getByText('Tasks')).toBeInTheDocument(); @@ -173,36 +177,40 @@ describe('', () => { }); scaffolderApiMock.listTasks - .mockResolvedValue([ - { - id: 'a-random-id', - spec: { - user: { ref: 'user:default/foo' }, - templateInfo: { - entityRef: 'template:default/mock', - }, - } as any, - status: 'completed', - createdAt: '', - lastHeartbeatAt: '', - }, - ]) - .mockResolvedValue([ - { - id: 'b-random-id', - spec: { - templateInfo: { - entityRef: 'template:default/mock', - }, - user: { - ref: 'user:default/boo', - }, - } as any, - status: 'completed', - createdAt: '', - lastHeartbeatAt: '', - }, - ]); + .mockResolvedValue({ + tasks: [ + { + id: 'a-random-id', + spec: { + user: { ref: 'user:default/foo' }, + templateInfo: { + entityRef: 'template:default/mock', + }, + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ], + }) + .mockResolvedValue({ + tasks: [ + { + id: 'b-random-id', + spec: { + templateInfo: { + entityRef: 'template:default/mock', + }, + user: { + ref: 'user:default/boo', + }, + } as any, + status: 'completed', + createdAt: '', + lastHeartbeatAt: '', + }, + ], + }); scaffolderApiMock.getTemplateParameterSchema.mockResolvedValue({ title: 'One Template', @@ -232,7 +240,9 @@ describe('', () => { fireEvent.click(allButton); }); - expect(scaffolderApiMock.listTasks).toBeCalledWith({ createdBy: 'all' }); + expect(scaffolderApiMock.listTasks).toBeCalledWith({ + filterByOwnership: 'all', + }); expect(await findByText('One Template')).toBeInTheDocument(); expect(await findByText('OtherUser')).toBeInTheDocument(); }); diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index 5f099ed331..d45d6f1ae7 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -31,7 +31,6 @@ import React, { useState } from 'react'; import { scaffolderApiRef } from '../../api'; import { rootRouteRef } from '../../routes'; import { OwnerListPicker } from './OwnerListPicker'; -import { TasksOwnerFilterKind } from '../../types'; import { CreatedAtColumn, OwnerEntityColumn, @@ -40,7 +39,7 @@ import { } from './columns'; export interface MyTaskPageProps { - initiallySelectedFilter?: TasksOwnerFilterKind; + initiallySelectedFilter?: 'owned' | 'all'; } const ListTaskPageContent = (props: MyTaskPageProps) => { @@ -52,14 +51,15 @@ const ListTaskPageContent = (props: MyTaskPageProps) => { const [ownerFilter, setOwnerFilter] = useState(initiallySelectedFilter); const { value, loading, error } = useAsync(() => { if (scaffolderApi.listTasks) { - return scaffolderApi.listTasks?.({ createdBy: ownerFilter }); + return scaffolderApi.listTasks?.({ filterByOwnership: ownerFilter }); } // eslint-disable-next-line no-console console.warn( 'listTasks is not implemented in the scaffolderApi, please make sure to implement this method.', ); - return Promise.resolve([]); + + return Promise.resolve({ tasks: [] }); }, [scaffolderApi, ownerFilter]); if (loading) { @@ -89,7 +89,7 @@ const ListTaskPageContent = (props: MyTaskPageProps) => { ( theme => ({ root: { @@ -91,7 +89,7 @@ function getFilterGroups(): ButtonGroup[] { export const OwnerListPicker = (props: { filter: string; - onSelectOwner: (id: TasksOwnerFilterKind) => void; + onSelectOwner: (id: 'owned' | 'all') => void; }) => { const { filter, onSelectOwner } = props; const classes = useStyles(); @@ -111,7 +109,7 @@ export const OwnerListPicker = (props: { key={item.id} button divider - onClick={() => onSelectOwner(item.id as TasksOwnerFilterKind)} + onClick={() => onSelectOwner(item.id as 'owned' | 'all')} selected={item.id === filter} className={classes.menuItem} data-testid={`owner-picker-${item.id}`} diff --git a/plugins/scaffolder/src/index.ts b/plugins/scaffolder/src/index.ts index d98fd96e55..c42dc95f9e 100644 --- a/plugins/scaffolder/src/index.ts +++ b/plugins/scaffolder/src/index.ts @@ -37,7 +37,6 @@ export type { ScaffolderTaskOutput, ScaffolderTaskStatus, TemplateParameterSchema, - TasksOwnerFilterKind, } from './types'; export { createScaffolderFieldExtension, diff --git a/plugins/scaffolder/src/types.ts b/plugins/scaffolder/src/types.ts index df7afe065f..710af6ad23 100644 --- a/plugins/scaffolder/src/types.ts +++ b/plugins/scaffolder/src/types.ts @@ -102,13 +102,6 @@ export type LogEvent = { taskId: string; }; -/** - * The status of each task you can filter from `ScaffolderClient` - * - * @public - */ -export type TasksOwnerFilterKind = 'owned' | 'all'; - /** * The input options to the `scaffold` method of the `ScaffolderClient`. * @@ -200,10 +193,10 @@ export interface ScaffolderApi { getTask(taskId: string): Promise; listTasks?({ - createdBy, + filterByOwnership, }: { - createdBy: TasksOwnerFilterKind; - }): Promise; + filterByOwnership: 'owned' | 'all'; + }): Promise<{ tasks: ScaffolderTask[] }>; getIntegrationsList( options: ScaffolderGetIntegrationsListOptions, diff --git a/yarn.lock b/yarn.lock index aeac084923..e7d10f183d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4176,6 +4176,14 @@ resolved "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.1.tgz#155ef21065427901994e765da8a0ba0eaae8b8bd" integrity sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw== +"@mswjs/cookies@^0.1.6": + version "0.1.7" + resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.1.7.tgz#d334081b2c51057a61c1dd7b76ca3cac02251651" + integrity sha512-bDg1ReMBx+PYDB4Pk7y1Q07Zz1iKIEUWQpkEXiA2lEWg9gvOZ8UBmGXilCEUvyYoRFlmr/9iXTRR69TrgSwX/Q== + dependencies: + "@types/set-cookie-parser" "^2.4.0" + set-cookie-parser "^2.4.6" + "@mswjs/cookies@^0.2.0": version "0.2.0" resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.2.0.tgz#7ef2b5d7e444498bb27cf57720e61f76a4ce9f23" @@ -4184,6 +4192,18 @@ "@types/set-cookie-parser" "^2.4.0" set-cookie-parser "^2.4.6" +"@mswjs/interceptors@^0.12.6": + version "0.12.7" + resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.12.7.tgz#0d1cd4cd31a0f663e0455993951201faa09d0909" + integrity sha512-eGjZ3JRAt0Fzi5FgXiV/P3bJGj0NqsN7vBS0J0FO2AQRQ0jCKQS4lEFm4wvlSgKQNfeuc/Vz6d81VtU3Gkx/zg== + dependencies: + "@open-draft/until" "^1.0.3" + "@xmldom/xmldom" "^0.7.2" + debug "^4.3.2" + headers-utils "^3.0.2" + outvariant "^1.2.0" + strict-event-emitter "^0.2.0" + "@mswjs/interceptors@^0.15.1": version "0.15.3" resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.15.3.tgz#bcd17b5d7558d4f598007a4bb383b42dc9264f8d" @@ -5967,6 +5987,14 @@ resolved "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz#f14740d1f585a0a8e3f46359b62fda8b0eaa31e7" integrity sha512-K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w== +"@types/inquirer@^7.3.3": + version "7.3.3" + resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-7.3.3.tgz#92e6676efb67fa6925c69a2ee638f67a822952ac" + integrity sha512-HhxyLejTHMfohAuhRun4csWigAMjXTmRyiJTU1Y/I1xmggikFMkOUoMQRlFm+zQcPEGHSs3io/0FAmNZf8EymQ== + dependencies: + "@types/through" "*" + rxjs "^6.4.0" + "@types/inquirer@^8.1.3": version "8.2.1" resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.1.tgz#28a139be3105a1175e205537e8ac10830e38dbf4" @@ -6043,7 +6071,7 @@ resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -7163,7 +7191,7 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.5": +"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.2", "@xmldom/xmldom@^0.7.5": version "0.7.5" resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A== @@ -9827,7 +9855,7 @@ cookie@0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== -cookie@0.4.2, cookie@^0.4.2, cookie@~0.4.1: +cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: version "0.4.2" resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== @@ -13556,6 +13584,11 @@ graphql-ws@^5.4.1: resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.5.5.tgz#f375486d3f196e2a2527b503644693ae3a8670a9" integrity sha512-hvyIS71vs4Tu/yUYHPvGXsTgo0t3arU820+lT5VjZS2go0ewp2LqyCgxEN56CzOG7Iys52eRhHBiD1gGRdiQtw== +graphql@^15.5.1: + version "15.8.0" + resolved "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" + integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== + graphql@^16.0.0, graphql@^16.3.0: version "16.5.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.5.0.tgz#41b5c1182eaac7f3d47164fb247f61e4dfb69c85" @@ -13782,6 +13815,11 @@ headers-polyfill@^3.0.4: resolved "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.0.7.tgz#725c4f591e6748f46b036197eae102c92b959ff4" integrity sha512-JoLCAdCEab58+2/yEmSnOlficyHFpIl0XJqwu3l+Unkm1gXpFUYsThz6Yha3D6tNhocWkCPfyW0YVIGWFqTi7w== +headers-utils@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz#dfc65feae4b0e34357308aefbcafa99c895e59ef" + integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== + helmet@^5.0.2: version "5.0.2" resolved "https://registry.npmjs.org/helmet/-/helmet-5.0.2.tgz#3264ec6bab96c82deaf65e3403c369424cb2366c" @@ -14361,7 +14399,7 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@^8.0.0, inquirer@^8.2.0: +inquirer@^8.0.0, inquirer@^8.1.1, inquirer@^8.2.0: version "8.2.4" resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== @@ -18146,6 +18184,32 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +msw@^0.35.0: + version "0.35.0" + resolved "https://registry.npmjs.org/msw/-/msw-0.35.0.tgz#18a4ceb6c822ef226a30421d434413bc45030d38" + integrity sha512-V7A6PqaS31F1k//fPS0OnO7vllfaqBUFsMEu3IpYixyWpiUInfyglodnbXhhtDyytkQikpkPZv8TZi/CvZzv/w== + dependencies: + "@mswjs/cookies" "^0.1.6" + "@mswjs/interceptors" "^0.12.6" + "@open-draft/until" "^1.0.3" + "@types/cookie" "^0.4.1" + "@types/inquirer" "^7.3.3" + "@types/js-levenshtein" "^1.1.0" + chalk "^4.1.1" + chokidar "^3.4.2" + cookie "^0.4.1" + graphql "^15.5.1" + headers-utils "^3.0.2" + inquirer "^8.1.1" + is-node-process "^1.0.1" + js-levenshtein "^1.1.6" + node-fetch "^2.6.1" + node-match-path "^0.6.3" + statuses "^2.0.0" + strict-event-emitter "^0.2.0" + type-fest "^1.2.2" + yargs "^17.0.1" + msw@^0.39.2: version "0.39.2" resolved "https://registry.npmjs.org/msw/-/msw-0.39.2.tgz#832e9274db62c43cb79854d5a69dce031c700de8" @@ -18490,6 +18554,11 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" +node-match-path@^0.6.3: + version "0.6.3" + resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" + integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== + node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -19099,7 +19168,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.1, outvariant@^1.3.0: +outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -22133,7 +22202,7 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" -rxjs@^6.3.3, rxjs@^6.6.0, rxjs@^6.6.3: +rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -25768,7 +25837,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -yargs@^17.3.1: +yargs@^17.0.1, yargs@^17.3.1: version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From c67af10222f2d05b348accf583f689c6c9c716b6 Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 31 May 2022 16:43:57 +0200 Subject: [PATCH 055/550] chore: fixing api-report Signed-off-by: blam --- plugins/scaffolder-backend/api-report.md | 12 +++++++++--- plugins/scaffolder/api-report.md | 19 +++++++++---------- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index f26c242f97..b6a67b7c55 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -396,7 +396,9 @@ export class DatabaseTaskStore implements TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) - list(options: { createdBy?: string }): Promise; + list(options: { createdBy?: string }): Promise<{ + tasks: SerializedTask[]; + }>; // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; @@ -522,7 +524,9 @@ export interface TaskBroker { // (undocumented) get(taskId: string): Promise; // (undocumented) - list(options?: { createdBy?: string }): Promise; + list?(options?: { createdBy?: string }): Promise<{ + tasks: SerializedTask[]; + }>; // (undocumented) vacuumTasks(options: { timeoutS: number }): Promise; } @@ -623,7 +627,9 @@ export interface TaskStore { // (undocumented) heartbeatTask(taskId: string): Promise; // (undocumented) - list(options: { createdBy?: string }): Promise; + list?(options: { createdBy?: string }): Promise<{ + tasks: SerializedTask[]; + }>; // (undocumented) listEvents({ taskId, after }: TaskStoreListEventsOptions): Promise<{ events: SerializedTaskEvent[]; diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 6fbcd78df1..9ffca426ac 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -243,10 +243,12 @@ export interface ScaffolderApi { listActions(): Promise; // (undocumented) listTasks?({ - createdBy, + filterByOwnership, }: { - createdBy: TasksOwnerFilterKind; - }): Promise; + filterByOwnership: 'owned' | 'all'; + }): Promise<{ + tasks: ScaffolderTask[]; + }>; scaffold( options: ScaffolderScaffoldOptions, ): Promise; @@ -262,7 +264,7 @@ export class ScaffolderClient implements ScaffolderApi { constructor(options: { discoveryApi: DiscoveryApi; fetchApi: FetchApi; - identityApi: IdentityApi; + identityApi?: IdentityApi; scmIntegrationsApi: ScmIntegrationRegistry; useLongPollingLogs?: boolean; }); @@ -281,9 +283,9 @@ export class ScaffolderClient implements ScaffolderApi { // (undocumented) listActions(): Promise; // (undocumented) - listTasks(options: { - createdBy: TasksOwnerFilterKind; - }): Promise; + listTasks(options: { filterByOwnership: 'owned' | 'all' }): Promise<{ + tasks: ScaffolderTask[]; + }>; scaffold( options: ScaffolderScaffoldOptions, ): Promise; @@ -424,9 +426,6 @@ export type TaskPageProps = { loadingText?: string; }; -// @public -export type TasksOwnerFilterKind = 'owned' | 'all'; - // @alpha (undocumented) export type TemplateGroupFilter = { title?: React_2.ReactNode; From 14f38803d00247f7f3428374290916c6368281df Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 31 May 2022 16:54:39 +0200 Subject: [PATCH 056/550] chore: reset one file Signed-off-by: blam --- .../examples/acme/team-a-group.yaml | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 packages/catalog-model/examples/acme/team-a-group.yaml diff --git a/packages/catalog-model/examples/acme/team-a-group.yaml b/packages/catalog-model/examples/acme/team-a-group.yaml new file mode 100644 index 0000000000..e343209d5f --- /dev/null +++ b/packages/catalog-model/examples/acme/team-a-group.yaml @@ -0,0 +1,60 @@ +apiVersion: backstage.io/v1alpha1 +kind: Group +metadata: + name: team-a + description: Team A +spec: + type: team + profile: + # Intentional no displayName for testing + email: team-a@example.com + picture: https://avatars.dicebear.com/api/identicon/team-a@example.com.svg?background=%23fff&margin=25 + parent: backstage + children: [] +--- +apiVersion: backstage.io/v1alpha1 +kind: User +metadata: + name: breanna.davison +spec: + profile: + # Intentional no displayName for testing + email: breanna-davison@example.com + picture: https://avatars.dicebear.com/api/avataaars/breanna-davison@example.com.svg?background=%23fff + memberOf: [team-a] +--- +apiVersion: backstage.io/v1alpha1 +kind: User +metadata: + name: janelle.dawe +spec: + profile: + displayName: Janelle Dawe + email: janelle-dawe@example.com + picture: https://avatars.dicebear.com/api/avataaars/janelle-dawe@example.com.svg?background=%23fff + memberOf: [team-a] +--- +apiVersion: backstage.io/v1alpha1 +kind: User +metadata: + name: nigel.manning +spec: + profile: + displayName: Nigel Manning + email: nigel-manning@example.com + picture: https://avatars.dicebear.com/api/avataaars/nigel-manning@example.com.svg?background=%23fff + memberOf: [team-a] +--- +# This user is added as an example, to make it more easy for the "Guest" +# sign-in option to demonstrate some entities being owned. In a regular org, +# a guest user would probably not be registered like this. +apiVersion: backstage.io/v1alpha1 +kind: User +metadata: + name: guest +spec: + profile: + displayName: Guest User + email: guest@example.com + picture: https://avatars.dicebear.com/api/avataaars/guest@example.com.svg?background=%23fff + memberOf: [team-a] From d22bf3267dbbeeab34beb030b46b3a702ec59bbc Mon Sep 17 00:00:00 2001 From: Joao Paulo Moreira Antunes Date: Tue, 31 May 2022 13:58:06 -0300 Subject: [PATCH 057/550] edit changeset Signed-off-by: Joao Paulo Moreira Antunes --- .changeset/shy-geese-judge.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/shy-geese-judge.md b/.changeset/shy-geese-judge.md index 8012b78c8f..fbb994263b 100644 --- a/.changeset/shy-geese-judge.md +++ b/.changeset/shy-geese-judge.md @@ -2,4 +2,4 @@ '@backstage/integration': patch --- -Updated to support deployments of Azure DevOps Server under TFS or similar subpath +Updated to support deployments of Azure DevOps Server under TFS or similar sub path From 834ee623fbf42dfd73ee091ea6bcebcf00b4389a Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 31 May 2022 19:34:19 +0200 Subject: [PATCH 058/550] chore: bump the version of cypress that is used by the new app Signed-off-by: blam --- .../templates/default-app/packages/app/package.json.hbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/create-app/templates/default-app/packages/app/package.json.hbs b/packages/create-app/templates/default-app/packages/app/package.json.hbs index 9bf67f6e52..a7e79cbe3d 100644 --- a/packages/create-app/templates/default-app/packages/app/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/app/package.json.hbs @@ -50,7 +50,7 @@ "@types/node": "^14.14.32", "@types/react-dom": "*", "cross-env": "^7.0.0", - "cypress": "^7.3.0", + "cypress": "^9.5.0", "eslint-plugin-cypress": "^2.10.3", "start-server-and-test": "^1.10.11" }, From 9216877d17b96f25db78928b6242abac346be687 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Tue, 31 May 2022 10:44:44 -0700 Subject: [PATCH 059/550] feat: add dynatrace plugin Signed-off-by: Isaiah Thiessen --- app-config.yaml | 7 + microsite/data/plugins/dynatrace.yaml | 12 ++ microsite/static/img/dynatrace.svg | 68 +++++++++ packages/app/package.json | 1 + .../app/src/components/catalog/EntityPage.tsx | 20 +++ plugins/dynatrace/.eslintrc.js | 1 + plugins/dynatrace/README.md | 56 ++++++++ plugins/dynatrace/config.d.ts | 28 ++++ plugins/dynatrace/dev/index.tsx | 27 ++++ plugins/dynatrace/package.json | 56 ++++++++ plugins/dynatrace/src/api/DynatraceApi.ts | 48 +++++++ plugins/dynatrace/src/api/DynatraceClient.ts | 66 +++++++++ plugins/dynatrace/src/api/index.ts | 18 +++ .../components/DynatraceTab/DynatraceTab.tsx | 54 +++++++ .../src/components/DynatraceTab/index.ts | 16 +++ .../ProblemStatus/ProblemStatus.test.tsx | 29 ++++ .../Problems/ProblemStatus/ProblemStatus.tsx | 39 +++++ .../Problems/ProblemStatus/index.ts | 16 +++ .../ProblemsList/ProblemsList.test.tsx | 53 +++++++ .../Problems/ProblemsList/ProblemsList.tsx | 44 ++++++ .../components/Problems/ProblemsList/index.ts | 16 +++ .../ProblemsTable/ProblemsTable.test.tsx | 44 ++++++ .../Problems/ProblemsTable/ProblemsTable.tsx | 83 +++++++++++ .../Problems/ProblemsTable/index.ts | 16 +++ plugins/dynatrace/src/constants.ts | 16 +++ plugins/dynatrace/src/index.ts | 16 +++ plugins/dynatrace/src/mocks/problems.json | 135 ++++++++++++++++++ plugins/dynatrace/src/plugin.test.ts | 22 +++ plugins/dynatrace/src/plugin.ts | 61 ++++++++ plugins/dynatrace/src/routes.ts | 20 +++ plugins/dynatrace/src/setupTests.ts | 17 +++ 31 files changed, 1105 insertions(+) create mode 100644 microsite/data/plugins/dynatrace.yaml create mode 100644 microsite/static/img/dynatrace.svg create mode 100644 plugins/dynatrace/.eslintrc.js create mode 100644 plugins/dynatrace/README.md create mode 100644 plugins/dynatrace/config.d.ts create mode 100644 plugins/dynatrace/dev/index.tsx create mode 100644 plugins/dynatrace/package.json create mode 100644 plugins/dynatrace/src/api/DynatraceApi.ts create mode 100644 plugins/dynatrace/src/api/DynatraceClient.ts create mode 100644 plugins/dynatrace/src/api/index.ts create mode 100644 plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx create mode 100644 plugins/dynatrace/src/components/DynatraceTab/index.ts create mode 100644 plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.test.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemStatus/index.ts create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsList/index.ts create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.test.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx create mode 100644 plugins/dynatrace/src/components/Problems/ProblemsTable/index.ts create mode 100644 plugins/dynatrace/src/constants.ts create mode 100644 plugins/dynatrace/src/index.ts create mode 100644 plugins/dynatrace/src/mocks/problems.json create mode 100644 plugins/dynatrace/src/plugin.test.ts create mode 100644 plugins/dynatrace/src/plugin.ts create mode 100644 plugins/dynatrace/src/routes.ts create mode 100644 plugins/dynatrace/src/setupTests.ts diff --git a/app-config.yaml b/app-config.yaml index eb51c59847..1c9bc66a45 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -114,6 +114,10 @@ proxy: allowedHeaders: ['Authorization'] headers: Authorization: Basic ${GOCD_AUTH_CREDENTIALS} + '/dynatrace': + target: https://your.dynatrace.instance.com/api/v2 + headers: + Authorization: "Api-Token ${DYNATRACE_ACCESS_TOKEN}" organization: name: My Company @@ -131,6 +135,9 @@ techdocs: publisher: type: 'local' # Alternatives - 'googleGcs' or 'awsS3' or 'azureBlobStorage' or 'openStackSwift'. Read documentation for using alternatives. +dynatrace: + baseUrl: https://your-dynatrace-instance-here.dynatrace.com + sentry: organization: my-company diff --git a/microsite/data/plugins/dynatrace.yaml b/microsite/data/plugins/dynatrace.yaml new file mode 100644 index 0000000000..30629928b3 --- /dev/null +++ b/microsite/data/plugins/dynatrace.yaml @@ -0,0 +1,12 @@ +--- +title: Dynatrace +author: "TELUS" +authorUrl: "https://github.com/telus" +category: Monitoring +description: View monitoring info from dynatrace for services in your software catalog. +documentation: https://github.com/backstage/backstage/tree/master/plugins/dynatrace +iconUrl: img/dynatrace.svg +npmPackageName: "@backstage/backstage-plugin-dynatrace" +tags: + - dynatrace + - monitoring diff --git a/microsite/static/img/dynatrace.svg b/microsite/static/img/dynatrace.svg new file mode 100644 index 0000000000..de114c0005 --- /dev/null +++ b/microsite/static/img/dynatrace.svg @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/app/package.json b/packages/app/package.json index 97b5d35f23..814b671c95 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -29,6 +29,7 @@ "@backstage/plugin-cloudbuild": "^0.3.6-next.1", "@backstage/plugin-code-coverage": "^0.1.33-next.1", "@backstage/plugin-cost-insights": "^0.11.28-next.1", + "@backstage/plugin-dynatrace": "^0.1.0", "@backstage/plugin-explore": "^0.3.37-next.1", "@backstage/plugin-gcalendar": "^0.3.2-next.1", "@backstage/plugin-gcp-projects": "^0.3.25-next.1", diff --git a/packages/app/src/components/catalog/EntityPage.tsx b/packages/app/src/components/catalog/EntityPage.tsx index 799fe3e4d9..1958aabd2e 100644 --- a/packages/app/src/components/catalog/EntityPage.tsx +++ b/packages/app/src/components/catalog/EntityPage.tsx @@ -73,6 +73,10 @@ import { isCloudbuildAvailable, } from '@backstage/plugin-cloudbuild'; import { EntityCodeCoverageContent } from '@backstage/plugin-code-coverage'; +import { + DynatraceTab, + isDynatraceAvailable, +} from '@backstage/plugin-dynatrace'; import { EntityGithubActionsContent, EntityRecentGithubActionsRunsCard, @@ -447,6 +451,14 @@ const serviceEntityPage = ( + + + + ); @@ -495,6 +507,14 @@ const websiteEntityPage = ( + + + + , + title: 'Root Page', + path: '/dynatrace', + }) + .render(); diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json new file mode 100644 index 0000000000..5ff08529e6 --- /dev/null +++ b/plugins/dynatrace/package.json @@ -0,0 +1,56 @@ +{ + "name": "@backstage/plugin-dynatrace", + "version": "0.1.0", + "main": "src/index.ts", + "types": "src/index.ts", + "license": "Apache-2.0", + "publishConfig": { + "access": "public", + "main": "dist/index.esm.js", + "types": "dist/index.d.ts" + }, + "backstage": { + "role": "frontend-plugin" + }, + "scripts": { + "start": "backstage-cli package start", + "build": "backstage-cli package build", + "lint": "backstage-cli package lint", + "test": "backstage-cli package test", + "clean": "backstage-cli package clean", + "prepack": "backstage-cli package prepack", + "postpack": "backstage-cli package postpack" + }, + "dependencies": { + "@backstage/catalog-model": "^1.0.2", + "@backstage/core-components": "^0.9.3-next.0", + "@backstage/core-plugin-api": "^1.0.0", + "@backstage/theme": "^0.2.15", + "@material-ui/core": "^4.9.13", + "@material-ui/icons": "^4.9.1", + "@material-ui/lab": "4.0.0-alpha.57", + "cross-fetch": "^3.1.5", + "react-use": "^17.2.4" + }, + "peerDependencies": { + "@backstage/plugin-catalog-react": "^1.0.0", + "react": "^16.13.1 || ^17.0.0" + }, + "devDependencies": { + "@backstage/cli": "^0.16.1-next.0", + "@backstage/core-app-api": "^1.0.1-next.0", + "@backstage/dev-utils": "^1.0.1-next.0", + "@backstage/test-utils": "^1.0.1-next.0", + "@testing-library/jest-dom": "^5.10.1", + "@testing-library/react": "^12.1.3", + "@testing-library/user-event": "^13.1.8", + "@types/jest": "*", + "@types/node": "*", + "cross-fetch": "^3.1.5", + "express": "^4.18.1", + "msw": "^0.35.0" + }, + "files": [ + "dist" + ] +} diff --git a/plugins/dynatrace/src/api/DynatraceApi.ts b/plugins/dynatrace/src/api/DynatraceApi.ts new file mode 100644 index 0000000000..40676e3d09 --- /dev/null +++ b/plugins/dynatrace/src/api/DynatraceApi.ts @@ -0,0 +1,48 @@ +/* + * Copyright 2022 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 { createApiRef } from '@backstage/core-plugin-api'; + +export type DynatraceEntity = { + entityId: { + id: string; + type: string; + }; + name: string; +}; + +export type Problem = { + problemId: string; + impactLevel: string; + status: string; + startTime: number; + endTime: number; + title: string; + severityLevel: string; + rootCauseEntity: DynatraceEntity; + affectedEntities: Array; +}; + +export interface Problems { + problems: Array; +} + +export const dynatraceApiRef = createApiRef({ + id: 'plugin.dynatrace.service', +}); + +export type DynatraceApi = { + getProblems(dynatraceEntityId: string): Promise; +}; diff --git a/plugins/dynatrace/src/api/DynatraceClient.ts b/plugins/dynatrace/src/api/DynatraceClient.ts new file mode 100644 index 0000000000..157e840749 --- /dev/null +++ b/plugins/dynatrace/src/api/DynatraceClient.ts @@ -0,0 +1,66 @@ +/* + * Copyright 2022 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 fetch from 'cross-fetch'; +import { Problems, DynatraceApi } from './DynatraceApi'; +import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; + +export class DynatraceClient implements DynatraceApi { + discoveryApi: DiscoveryApi; + identityApi: IdentityApi; + + constructor({ + discoveryApi, + identityApi, + }: { + discoveryApi: DiscoveryApi; + identityApi: IdentityApi; + }) { + this.discoveryApi = discoveryApi; + this.identityApi = identityApi; + } + + private async callApi( + path: string, + query: { [key in string]: any }, + ): Promise { + const { token: idToken } = await this.identityApi.getCredentials(); + + const apiUrl = `${await this.discoveryApi.getBaseUrl('proxy')}/dynatrace`; + const response = await fetch( + `${apiUrl}/${path}?${new URLSearchParams(query).toString()}`, + { + headers: { + 'Content-Type': 'application/json', + ...(idToken && { Authorization: `Bearer ${idToken}` }), + }, + }, + ); + if (response.status === 200) { + return (await response.json()) as T; + } + return undefined; + } + + async getProblems(dynatraceEntityId: string): Promise { + if (!dynatraceEntityId) { + return undefined; + } + + return this.callApi('problems', { + entitySelector: `entityId(${dynatraceEntityId})`, + }); + } +} diff --git a/plugins/dynatrace/src/api/index.ts b/plugins/dynatrace/src/api/index.ts new file mode 100644 index 0000000000..3924f373b5 --- /dev/null +++ b/plugins/dynatrace/src/api/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2022 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 type { Problems, Problem, DynatraceEntity } from './DynatraceApi'; +export { dynatraceApiRef } from './DynatraceApi'; +export { DynatraceClient } from './DynatraceClient'; diff --git a/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx b/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx new file mode 100644 index 0000000000..8068ad7ad9 --- /dev/null +++ b/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx @@ -0,0 +1,54 @@ +/* + * Copyright 2022 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 from 'react'; +import { Grid } from '@material-ui/core'; +import { + Page, + Content, + ContentHeader, + SupportButton, + MissingAnnotationEmptyState, +} from '@backstage/core-components'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import { ProblemsList } from '../Problems/ProblemsList'; +import { isDynatraceAvailable } from '../../plugin'; +import { DYNATRACE_ID_ANNOTATION } from '../../constants'; + +export const DynatraceTab = () => { + const { entity } = useEntity(); + const dynatraceEntityId: string = + entity?.metadata.annotations?.[DYNATRACE_ID_ANNOTATION] ?? ''; + + if (!isDynatraceAvailable(entity)) { + return ; + } + return ( + + + + + Plugin to show information from Dynatrace + + + + + + + + + + ); +}; diff --git a/plugins/dynatrace/src/components/DynatraceTab/index.ts b/plugins/dynatrace/src/components/DynatraceTab/index.ts new file mode 100644 index 0000000000..cd3a1b8fc6 --- /dev/null +++ b/plugins/dynatrace/src/components/DynatraceTab/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { DynatraceTab } from './DynatraceTab'; diff --git a/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.test.tsx b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.test.tsx new file mode 100644 index 0000000000..9ac20ea1a2 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.test.tsx @@ -0,0 +1,29 @@ +/* + * Copyright 2022 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 from 'react'; +import { ProblemStatus } from './ProblemStatus'; +import { renderInTestApp } from '@backstage/test-utils'; + +describe('ProblemStatus', () => { + it('renders StatusOK for a closed issue', async () => { + const rendered = await renderInTestApp(); + expect(await rendered.findByText('Closed')).toBeInTheDocument(); + }); + it('renders StatusError for an open issue', async () => { + const rendered = await renderInTestApp(); + expect(await rendered.findByText('Open')).toBeInTheDocument(); + }); +}); diff --git a/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx new file mode 100644 index 0000000000..5605be6e44 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx @@ -0,0 +1,39 @@ +/* + * Copyright 2022 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 from 'react'; +import { Problem } from '../../../api/DynatraceApi'; +import { StatusError, StatusOK } from '@backstage/core-components'; + +export const ProblemStatus = ({ status }: Partial) => { + switch (status?.toLocaleLowerCase()) { + case 'open': + return ( + <> + + Open + + ); + case 'closed': + return ( + <> + + Closed + + ); + default: + return <>; + } +}; diff --git a/plugins/dynatrace/src/components/Problems/ProblemStatus/index.ts b/plugins/dynatrace/src/components/Problems/ProblemStatus/index.ts new file mode 100644 index 0000000000..14124f8d46 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemStatus/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { ProblemStatus } from './ProblemStatus'; diff --git a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx new file mode 100644 index 0000000000..dfeb311c33 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx @@ -0,0 +1,53 @@ +/* + * Copyright 2022 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 from 'react'; +import { ProblemsList } from './ProblemsList'; +import { renderInTestApp, TestApiRegistry } from '@backstage/test-utils'; +import { dynatraceApiRef } from '../../../api'; +import { problems } from '../../../mocks/problems.json'; +import { ApiProvider, ConfigReader } from '@backstage/core-app-api'; +import { configApiRef } from '@backstage/core-plugin-api'; + +const mockDynatraceApi = { + getProblems: jest.fn(), +}; +const apis = TestApiRegistry.from( + [dynatraceApiRef, mockDynatraceApi], + [configApiRef, new ConfigReader({ dynatrace: { baseUrl: '__dynatrace__' } })], +); + +describe('ProblemStatus', () => { + it('renders a table with problem data', async () => { + mockDynatraceApi.getProblems = jest.fn().mockResolvedValue({ problems }); + const rendered = await renderInTestApp( + + + , + ); + expect(await rendered.findByText('example-service')).toBeInTheDocument(); + }); + it('renders "nothing to report :)" if no problems are found', async () => { + mockDynatraceApi.getProblems = jest.fn().mockResolvedValue({}); + const rendered = await renderInTestApp( + + + , + ); + expect( + await rendered.findByText('Nothing to report :)'), + ).toBeInTheDocument(); + }); +}); diff --git a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx new file mode 100644 index 0000000000..b12b8fe41a --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx @@ -0,0 +1,44 @@ +/* + * Copyright 2022 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 from 'react'; +import useAsync from 'react-use/lib/useAsync'; +import { Progress } from '@backstage/core-components'; +import Alert from '@material-ui/lab/Alert'; +import { useApi } from '@backstage/core-plugin-api'; +import { ProblemsTable } from '../ProblemsTable'; +import { dynatraceApiRef } from '../../../api'; + +type ProblemsListProps = { + dynatraceEntityId: string; +}; + +export const ProblemsList = (props: ProblemsListProps) => { + const { dynatraceEntityId } = props; + const dynatraceApi = useApi(dynatraceApiRef); + const { value, loading, error } = useAsync(async () => { + const r = await dynatraceApi.getProblems(dynatraceEntityId); + return r; + }, [dynatraceApi, dynatraceEntityId]); + const problems = value?.problems; + + if (loading) { + return ; + } else if (error) { + return {error.message}; + } + if (!problems) return
Nothing to report :)
; + return ; +}; diff --git a/plugins/dynatrace/src/components/Problems/ProblemsList/index.ts b/plugins/dynatrace/src/components/Problems/ProblemsList/index.ts new file mode 100644 index 0000000000..f70c9c6f20 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsList/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { ProblemsList } from './ProblemsList'; diff --git a/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.test.tsx b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.test.tsx new file mode 100644 index 0000000000..e4adc43656 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.test.tsx @@ -0,0 +1,44 @@ +/* + * Copyright 2022 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 from 'react'; +import { ProblemsTable } from './ProblemsTable'; +import { renderInTestApp, TestApiRegistry } from '@backstage/test-utils'; +import { problems } from '../../../mocks/problems.json'; +import { ApiProvider, ConfigReader } from '@backstage/core-app-api'; +import { configApiRef } from '@backstage/core-plugin-api'; + +describe('ProblemsTable', () => { + const apis = TestApiRegistry.from([ + configApiRef, + new ConfigReader({ dynatrace: { baseUrl: '__dynatrace__' } }), + ]); + it('renders the table with some problem data', async () => { + const rendered = await renderInTestApp( + + , + , + ); + expect(await rendered.findByText('example-service')).toBeInTheDocument(); + }); + it('renders an empty table when no data is provided', async () => { + const rendered = await renderInTestApp( + + + , + ); + expect(await rendered.findByText('Problems')).toBeInTheDocument(); + }); +}); diff --git a/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx new file mode 100644 index 0000000000..ba1a2e19d9 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx @@ -0,0 +1,83 @@ +/* + * Copyright 2022 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 from 'react'; +import { Table, TableColumn } from '@backstage/core-components'; +import { Problem } from '../../../api/DynatraceApi'; +import { ProblemStatus } from '../ProblemStatus'; +import { configApiRef } from '@backstage/core-plugin-api'; +import { useApi } from '@backstage/core-plugin-api'; +import { Link } from '@material-ui/core'; + +type ProblemsTableProps = { + problems: Problem[]; +}; + +export const ProblemsTable = ({ problems }: ProblemsTableProps) => { + const configApi = useApi(configApiRef); + const dynatraceBaseUrl = configApi.getString('dynatrace.baseUrl'); + const columns: TableColumn[] = [ + { + title: 'Title', + field: 'title', + render: (row: Partial) => ( + + {row.title} + + ), + }, + { + title: 'Status', + field: 'status', + render: (row: Partial) => , + }, + { title: 'Severity', field: 'severityLevel' }, + { + title: 'Root Cause', + field: 'rootCauseEntity', + render: (row: Partial) => row.rootCauseEntity?.name, + }, + { + title: 'Affected', + field: 'affectedEntities', + render: (row: Partial) => row.affectedEntities?.map(e => e.name), + }, + { + title: 'Start Time', + field: 'startTime', + render: (row: Partial) => + new Date(row.startTime || 0).toString(), + }, + { + title: 'End Time', + field: 'endTime', + render: (row: Partial) => + row.endTime === -1 ? 'ongoing' : new Date(row.endTime || 0).toString(), + }, + ]; + + return ( + { + return { ...p, id: p.problemId }; + })} + /> + ); +}; diff --git a/plugins/dynatrace/src/components/Problems/ProblemsTable/index.ts b/plugins/dynatrace/src/components/Problems/ProblemsTable/index.ts new file mode 100644 index 0000000000..d1cd52e511 --- /dev/null +++ b/plugins/dynatrace/src/components/Problems/ProblemsTable/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { ProblemsTable } from './ProblemsTable'; diff --git a/plugins/dynatrace/src/constants.ts b/plugins/dynatrace/src/constants.ts new file mode 100644 index 0000000000..21453e0338 --- /dev/null +++ b/plugins/dynatrace/src/constants.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 const DYNATRACE_ID_ANNOTATION = 'dynatrace.com/dynatrace-entity-id'; diff --git a/plugins/dynatrace/src/index.ts b/plugins/dynatrace/src/index.ts new file mode 100644 index 0000000000..c96c16201d --- /dev/null +++ b/plugins/dynatrace/src/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 { dynatracePlugin, DynatraceTab, isDynatraceAvailable } from './plugin'; diff --git a/plugins/dynatrace/src/mocks/problems.json b/plugins/dynatrace/src/mocks/problems.json new file mode 100644 index 0000000000..b1894bef56 --- /dev/null +++ b/plugins/dynatrace/src/mocks/problems.json @@ -0,0 +1,135 @@ +{ + "totalCount": 0, + "pageSize": 0, + "nextPageKey": "AQAAABQBAAAABQ==", + "problems": [ + { + "managementZones": [ + { + "name": "string", + "id": "string" + } + ], + "severityLevel": "AVAILABILITY", + "entityTags": [ + { + "stringRepresentation": "string", + "value": "string", + "key": "string", + "context": "string" + } + ], + "problemId": "string", + "displayId": "string", + "affectedEntities": [ + { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "my-service" + }, + { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "example-service-3" + } + ], + "rootCauseEntity": { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "example-service" + }, + "impactedEntities": [ + { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "HELP ME" + }, + { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "HELP ME 2" + } + ], + "linkedProblemInfo": { + "problemId": "string", + "displayId": "string" + }, + "problemFilters": [ + { + "name": "string", + "id": "string" + } + ], + "evidenceDetails": { + "totalCount": 0, + "details": [ + { + "evidenceType": "AVAILABILITY_EVIDENCE", + "displayName": "string", + "entity": { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "string" + }, + "groupingEntity": { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "string" + }, + "rootCauseRelevant": true, + "startTime": 0 + } + ] + }, + "recentComments": { + "comments": [ + { + "createdAtTimestamp": 0, + "authorName": "string", + "context": "string", + "id": "string", + "content": "string" + } + ], + "totalCount": 0, + "pageSize": 0, + "nextPageKey": "AQAAABQBAAAABQ==" + }, + "impactAnalysis": { + "impacts": [ + { + "impactType": "APPLICATION", + "impactedEntity": { + "entityId": { + "id": "string", + "type": "string" + }, + "name": "string" + }, + "estimatedAffectedUsers": 0 + } + ] + }, + "impactLevel": "APPLICATION", + "status": "OPEN", + "startTime": 0, + "endTime": 0, + "title": "this IS a big problem" + } + ], + "warnings": ["string"] +} diff --git a/plugins/dynatrace/src/plugin.test.ts b/plugins/dynatrace/src/plugin.test.ts new file mode 100644 index 0000000000..94dc2da765 --- /dev/null +++ b/plugins/dynatrace/src/plugin.test.ts @@ -0,0 +1,22 @@ +/* + * Copyright 2022 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 { dynatracePlugin } from './plugin'; + +describe('dynatrace', () => { + it('should export plugin', () => { + expect(dynatracePlugin).toBeDefined(); + }); +}); diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts new file mode 100644 index 0000000000..74e5544341 --- /dev/null +++ b/plugins/dynatrace/src/plugin.ts @@ -0,0 +1,61 @@ +/* + * Copyright 2022 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 { dynatraceApiRef, DynatraceClient } from './api'; +import { + createApiFactory, + createPlugin, + discoveryApiRef, + identityApiRef, + createRoutableExtension, +} from '@backstage/core-plugin-api'; + +import { Entity } from '@backstage/catalog-model'; +import { DYNATRACE_ID_ANNOTATION } from './constants'; + +import { rootRouteRef } from './routes'; + +export const dynatracePlugin = createPlugin({ + id: 'dynatrace', + routes: { + root: rootRouteRef, + }, + apis: [ + createApiFactory({ + api: dynatraceApiRef, + deps: { + discoveryApi: discoveryApiRef, + identityApi: identityApiRef, + }, + factory: ({ discoveryApi, identityApi }) => + new DynatraceClient({ + discoveryApi, + identityApi, + }), + }), + ], +}); + +export const isDynatraceAvailable = (entity: Entity) => + Boolean(entity.metadata.annotations?.[DYNATRACE_ID_ANNOTATION]); + +export const DynatraceTab = dynatracePlugin.provide( + createRoutableExtension({ + name: 'DynatraceTab', + component: () => + import('./components/DynatraceTab').then(m => m.DynatraceTab), + mountPoint: rootRouteRef, + }), +); diff --git a/plugins/dynatrace/src/routes.ts b/plugins/dynatrace/src/routes.ts new file mode 100644 index 0000000000..73f7b573b7 --- /dev/null +++ b/plugins/dynatrace/src/routes.ts @@ -0,0 +1,20 @@ +/* + * Copyright 2022 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 { createRouteRef } from '@backstage/core-plugin-api'; + +export const rootRouteRef = createRouteRef({ + id: 'dynatrace', +}); diff --git a/plugins/dynatrace/src/setupTests.ts b/plugins/dynatrace/src/setupTests.ts new file mode 100644 index 0000000000..9bb3e72355 --- /dev/null +++ b/plugins/dynatrace/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 '@testing-library/jest-dom'; +import 'cross-fetch/polyfill'; From 70027d09aa53693b8486a34c5f2c87786e329cec Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Tue, 31 May 2022 10:59:27 -0700 Subject: [PATCH 060/550] chore: add changeset Signed-off-by: Isaiah Thiessen --- .changeset/many-yaks-occur.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/many-yaks-occur.md diff --git a/.changeset/many-yaks-occur.md b/.changeset/many-yaks-occur.md new file mode 100644 index 0000000000..5989222c9c --- /dev/null +++ b/.changeset/many-yaks-occur.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-dynatrace': minor +'example-app': patch +--- + +Adds dynatrace plugin From b157c2eb1c379a08e8687a55c5d342c3cc7560ec Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Tue, 31 May 2022 11:15:17 -0700 Subject: [PATCH 061/550] Use identityApi to provide auth token for pagerduty API calls. Signed-off-by: Isaiah Thiessen Co-authored-by: Joel Cayne --- .changeset/eight-ducks-beg.md | 5 +++++ plugins/pagerduty/api-report.md | 2 ++ plugins/pagerduty/src/api/client.ts | 10 +++++++++- plugins/pagerduty/src/api/types.ts | 3 ++- plugins/pagerduty/src/plugin.ts | 11 ++++++++--- 5 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 .changeset/eight-ducks-beg.md diff --git a/.changeset/eight-ducks-beg.md b/.changeset/eight-ducks-beg.md new file mode 100644 index 0000000000..729c1992fa --- /dev/null +++ b/.changeset/eight-ducks-beg.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-pagerduty': patch +--- + +Use identityApi to provide auth token for pagerduty API calls. diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index bd26531da6..86b917c6eb 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -10,6 +10,7 @@ import { BackstagePlugin } from '@backstage/core-plugin-api'; import { ConfigApi } from '@backstage/core-plugin-api'; import { DiscoveryApi } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; +import { IdentityApi } from '@backstage/core-plugin-api'; import { ReactNode } from 'react'; // Warning: (ae-missing-release-tag) "EntityPagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -45,6 +46,7 @@ export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, discoveryApi: DiscoveryApi, + identityApi: IdentityApi, ): PagerDutyClient; // Warning: (ae-forgotten-export) The symbol "ChangeEvent" needs to be exported by the entry point index.d.ts // diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 81d3792ecf..43c6165c91 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -29,6 +29,7 @@ import { createApiRef, DiscoveryApi, ConfigApi, + IdentityApi, } from '@backstage/core-plugin-api'; export class UnauthorizedError extends Error {} @@ -38,13 +39,18 @@ export const pagerDutyApiRef = createApiRef({ }); export class PagerDutyClient implements PagerDutyApi { - static fromConfig(configApi: ConfigApi, discoveryApi: DiscoveryApi) { + static fromConfig( + configApi: ConfigApi, + discoveryApi: DiscoveryApi, + identityApi: IdentityApi, + ) { const eventsBaseUrl: string = configApi.getOptionalString('pagerDuty.eventsBaseUrl') ?? 'https://events.pagerduty.com/v2'; return new PagerDutyClient({ eventsBaseUrl, discoveryApi, + identityApi, }); } constructor(private readonly config: ClientApiConfig) {} @@ -124,11 +130,13 @@ export class PagerDutyClient implements PagerDutyApi { } private async getByUrl(url: string): Promise { + const { token: idToken } = await this.config.identityApi.getCredentials(); const options = { method: 'GET', headers: { Accept: 'application/vnd.pagerduty+json;version=2', 'Content-Type': 'application/json', + ...(idToken && { Authorization: `Bearer ${idToken}` }), }, }; const response = await this.request(url, options); diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index a11cc9d63b..8acd24f033 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -15,7 +15,7 @@ */ import { Incident, ChangeEvent, OnCall, Service } from '../components/types'; -import { DiscoveryApi } from '@backstage/core-plugin-api'; +import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; export type TriggerAlarmRequest = { integrationKey: string; @@ -74,6 +74,7 @@ export type OnCallsResponse = { export type ClientApiConfig = { eventsBaseUrl?: string; discoveryApi: DiscoveryApi; + identityApi: IdentityApi; }; export type RequestOptions = { diff --git a/plugins/pagerduty/src/plugin.ts b/plugins/pagerduty/src/plugin.ts index d1c4e6d35b..32093015ff 100644 --- a/plugins/pagerduty/src/plugin.ts +++ b/plugins/pagerduty/src/plugin.ts @@ -21,6 +21,7 @@ import { discoveryApiRef, configApiRef, createComponentExtension, + identityApiRef, } from '@backstage/core-plugin-api'; export const rootRouteRef = createRouteRef({ @@ -32,9 +33,13 @@ export const pagerDutyPlugin = createPlugin({ apis: [ createApiFactory({ api: pagerDutyApiRef, - deps: { discoveryApi: discoveryApiRef, configApi: configApiRef }, - factory: ({ configApi, discoveryApi }) => - PagerDutyClient.fromConfig(configApi, discoveryApi), + deps: { + discoveryApi: discoveryApiRef, + configApi: configApiRef, + identityApi: identityApiRef, + }, + factory: ({ configApi, discoveryApi, identityApi }) => + PagerDutyClient.fromConfig(configApi, discoveryApi, identityApi), }), ], }); From dc9443195debfc2dd0cc6e74416a7aea243a323b Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Tue, 31 May 2022 11:33:10 -0700 Subject: [PATCH 062/550] fix: changeset Signed-off-by: Isaiah Thiessen --- .changeset/many-yaks-occur.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.changeset/many-yaks-occur.md b/.changeset/many-yaks-occur.md index 5989222c9c..d4535c4913 100644 --- a/.changeset/many-yaks-occur.md +++ b/.changeset/many-yaks-occur.md @@ -1,6 +1,5 @@ --- '@backstage/plugin-dynatrace': minor -'example-app': patch --- Adds dynatrace plugin From 9bc45604e7052e164bf3a9e9e8a819b1a4b9e474 Mon Sep 17 00:00:00 2001 From: Guillermo Manzo Date: Sun, 29 May 2022 17:42:00 -0700 Subject: [PATCH 063/550] Update ADOPTERS.md Signed-off-by: Guillermo Manzo --- ADOPTERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 3762fddbea..e3f73f7dac 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -21,7 +21,7 @@ _If you're using Backstage in your organization, please try to add your company | [Fiverr](https://www.fiverr.com) | [@nirga](https://github.com/nirga) | Unifying separate tools that developers are using today (i.e. monitoring, dead letter queues management, etc.) into a single platform. | | [Zalando SE](https://www.zalando.de) | [@leviferreira](https://github.com/leviferreira) | Building V2 of the Internal Development Portal. | | [LegalZoom](https://legalzoom.com) | [@backjo](https://github.com/backjo) | Developer portal - hub for all engineering projects and metadata. | -| [Expedia Group](https://www.expediagroup.com) | [Mike Turner](mailto:miturner@expediagroup.com), [Sneha Kumar](mailto:snkumar@expediagroup.com), [@guillermomanzo](https://github.com/guillermomanzo), [Erik Lindgren](https://github.com/lindgren) | EG Common Developer Toolkit | +| [Expedia Group](https://www.expediagroup.com) | [@guillermomanzo](https://github.com/guillermomanzo), [Sheena Sharma](mailto:shesharma@expediagroup.com) | EG Common Developer Toolkit | | [Paddle.com](https://paddle.com) | [Ioannis Georgoulas](https://github.com/geototti21) | Developer portal (Tech Docs, Service Catalog, Internal Tooling), we use vanilla Backstage FE and custom BE implementation in Go | | [Acast.com](https://acast.com) | [Olle Lundberg](https://github.com/lndbrg) | Developer portal with tech docs, service catalog and a bunch of other internal tooling | | [Lunar](https://lunar.app) | [Jacob Valdemar](https://github.com/JacobValdemar) | Internal developer portal for service overview and insights, API documentation, technical guides, onboarding guides and RFC's. | From 6e1f2ced0513fdbec7649494be1c835aa03c095b Mon Sep 17 00:00:00 2001 From: Robert Cen Date: Wed, 1 Jun 2022 10:28:42 +1000 Subject: [PATCH 064/550] Add SafetyCulture to ADOPTERS.md Signed-off-by: Robert Cen --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index aa1f994830..0f64c929ac 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -134,3 +134,4 @@ _If you're using Backstage in your organization, please try to add your company | [Brandwatch](https://brandwatch.com)| [Stefan Buck](https://github.com/stefanbuck) | Our primary focus is on the service catalog. Backstage is replacing our homemade service catalog. The switch was quite simple due to the catalog processor API. | [Laybuy](https://www.laybuy.com)| [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. | [Sendinblue](https://engineering.sendinblue.com/)| [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | +| [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | From b4ba6f8048b50e6316ced23b3684e429253aed3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 Jun 2022 00:41:52 +0000 Subject: [PATCH 065/550] build(deps): bump eventsource from 1.0.7 to 1.1.1 in /microsite Bumps [eventsource](https://github.com/EventSource/eventsource) from 1.0.7 to 1.1.1. - [Release notes](https://github.com/EventSource/eventsource/releases) - [Changelog](https://github.com/EventSource/eventsource/blob/master/HISTORY.md) - [Commits](https://github.com/EventSource/eventsource/compare/v1.0.7...v1.1.1) --- updated-dependencies: - dependency-name: eventsource dependency-type: indirect ... Signed-off-by: dependabot[bot] --- microsite/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/microsite/yarn.lock b/microsite/yarn.lock index 448647da15..84a93573bd 100644 --- a/microsite/yarn.lock +++ b/microsite/yarn.lock @@ -2477,9 +2477,9 @@ etag@~1.8.1: integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= eventsource@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" - integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== + version "1.1.1" + resolved "https://registry.npmjs.org/eventsource/-/eventsource-1.1.1.tgz#4544a35a57d7120fba4fa4c86cb4023b2c09df2f" + integrity sha512-qV5ZC0h7jYIAOhArFJgSfdyz6rALJyb270714o7ZtNnw2WSJ+eexhKtE0O8LYPRsHZHf2osHKZBxGPvm3kPkCA== dependencies: original "^1.0.0" From 7820cd5eba28afeb3c5d9ba3bcd169b70ea351a4 Mon Sep 17 00:00:00 2001 From: Jason Nguyen Date: Tue, 31 May 2022 19:50:09 -0600 Subject: [PATCH 066/550] Update 20220525.yaml correct youtubeUrl Signed-off-by: Jason Nguyen --- microsite/data/on-demand/20220525.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/on-demand/20220525.yaml b/microsite/data/on-demand/20220525.yaml index d39e113439..f9a3f87a8a 100644 --- a/microsite/data/on-demand/20220525.yaml +++ b/microsite/data/on-demand/20220525.yaml @@ -3,7 +3,7 @@ title: Contributor Community Sessions date: May 25, 2022 category: Meetup description: Join the maintainers and contributors for the Contributor Community Sessions -youtubeUrl: https://youtu.be/evf_LV0KzIk +youtubeUrl: https://youtu.be/neNipVE5ffY youtubeImgUrl: https://backstage.io/img/b-sessions.png rsvpUrl: https://calendar.google.com/calendar/embed?src=c_qup9gbhn9sqpuao6trttd8mk5s@group.calendar.google.com eventUrl: https://github.com/backstage/community/issues/46 From e16aac65d28a4201bc2e16a4a3c8a9132f0a3ab3 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 1 Jun 2022 10:01:00 +0200 Subject: [PATCH 067/550] chore: bump timeout to 10 minutes Signed-off-by: blam --- .github/workflows/verify_e2e-windows.yml | 2 +- .../templates/default-app/packages/app/package.json.hbs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/verify_e2e-windows.yml b/.github/workflows/verify_e2e-windows.yml index 0514742700..934ef8f06c 100644 --- a/.github/workflows/verify_e2e-windows.yml +++ b/.github/workflows/verify_e2e-windows.yml @@ -56,4 +56,4 @@ jobs: run: yarn e2e-test run env: DEBUG: zombie - CYPRESS_VERIFY_TIMEOUT: 60000 + CYPRESS_VERIFY_TIMEOUT: 600000 diff --git a/packages/create-app/templates/default-app/packages/app/package.json.hbs b/packages/create-app/templates/default-app/packages/app/package.json.hbs index a7e79cbe3d..54cd516058 100644 --- a/packages/create-app/templates/default-app/packages/app/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/app/package.json.hbs @@ -50,7 +50,7 @@ "@types/node": "^14.14.32", "@types/react-dom": "*", "cross-env": "^7.0.0", - "cypress": "^9.5.0", + "cypress": "^9.7.0", "eslint-plugin-cypress": "^2.10.3", "start-server-and-test": "^1.10.11" }, From 2aad8de70fc292ef030b6fb4aa93f8b0b3bad886 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 1 Jun 2022 10:09:01 +0200 Subject: [PATCH 068/550] ADOPTERS.md: add new adopters Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index f3248254f2..5865c0f44a 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -135,3 +135,22 @@ _If you're using Backstage in your organization, please try to add your company | [Laybuy](https://www.laybuy.com)| [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. | [Sendinblue](https://engineering.sendinblue.com/)| [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | | [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | +|[Sana Life Science](sanalifescience.com)|[Joe Hillyard](mailto:joe@sanalifescience.com)|API Catalog, Tools Management & Control Hub +|[Ndustrial](https://ndustrial.io)|[Jonathan Skubic](mailto:jonathan@ndustrial.io)|Software Project Catalog +|[TUI Musement](https://www.musement.com/uk/)|[Simone Fumagalli](mailto:simone.fumagalli@musement.com)|We are importing our catalog into it to keep it under control. The next step is start using templates +|[Kambi AB](https://www.kambi.com)|[Martin Norum](mailto:martin.norum@kambi.com)|We want to kick ass at speed, so we're currently building up a catalog of our existing software, and looking into how Backstage can support us in our journey towards autonomous product teams. Both to improve speed to market and operational awareness. +|[ANZ](https://www.anz.com.au/personal/)|[Elliot Jackson](mailto:elliot.jackson@anz.com)|Catalog, tech docs and automation +|[Genie Solutions](https://www.geniesolutionssoftware.com.au)|[Zainab Bagasrawala](mailto:zainabbagasrawala@geniesolutions.com.au)|Developer Portal to track our projects, documentation, observability tools and more +|[MadeiraMadeira](https://www.madeiramadeira.com.br)|[Paulo Eduardo Peixoto](mailto:paulo.peixoto@madeiramadeira.com.br)|As a support tool for developers, following the principles of "Developer Experience". In order to make the developer's day to day more practical, efficient and, why not, happy. +|[Sonatype](https://www.sonatype.com)|[Srikar Ananthula](mailto:sananthula@sonatype.com)|Centralize services used internally with many plugins +|[CVS Health](https://www.cvshealth.com)|[Ari Ben-Elazar](mailto:abenelazar@gmail.com)|Cataloging and documenting our service offerings to offer our internal developers a better operational journey +|[Yatra.com](https://www.yatra.com)|[Matiur Rahman Maitur](mailto:arifrahman4u@gmail.com)|Easy to find out Project details, ownership, dependent services, Documentation, it is very useful for developer. +|[Yotpo](https://www.yotpo.com)|[Liran Yogev](mailto:lyogev@yotpo.com)|Services exploration, documentation and project generator +|[Mainsail Industries](https://www.mainsailindustries.com)|[Brad Sollar](mailto:brad@mainsailindustries.com)|Internal tool management and docs +|[Prisma](prismamp.com)|[Sebastian Gravina](mailto:sgravina@prismamp.com)|Is part of our IDP +|[Syndetic](syndetic.io)|[John Feminella](mailto:robots+swag@syndetic.io)|We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. +|[Imagine Learning](https://www.imaginelearning.com/en/us)|[Jared Stehler](mailto:jared.stehler@imaginelearning.com)|Software catalog, product dependency visualization +|[Alef Education](https://www.alefeducation.com)|[Belal Juma](mailto:belal.juma@alefeducation.com)|We use backstage as a Service Catalog and rely on the TechDocs feature +|[Zego](https://www.zego.com)|[Sean Kenny](mailto:sean.kenny@zego.com)|Single pane of glass for organisational and operational information for all services across our systems. +|[Absa Group Limited](https://www.absa.africa/absaafrica/)|[Chris Kieser](mailto:chris.kieser@absa.africa)|Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more +|[Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au)|[Jan Quijano](mailto:jan.quijano@nutrien.com.au)|Software Project Catalog From 0b9623a58e481a8dc3036d453052c6b90ff281aa Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 1 Jun 2022 10:09:22 +0200 Subject: [PATCH 069/550] format ADOPTERS.md Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 64 ++++++++++++++++++++++++++--------------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 5865c0f44a..83449cb588 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -21,7 +21,7 @@ _If you're using Backstage in your organization, please try to add your company | [Fiverr](https://www.fiverr.com) | [@nirga](https://github.com/nirga) | Unifying separate tools that developers are using today (i.e. monitoring, dead letter queues management, etc.) into a single platform. | | [Zalando SE](https://www.zalando.de) | [@leviferreira](https://github.com/leviferreira) | Building V2 of the Internal Development Portal. | | [LegalZoom](https://legalzoom.com) | [@backjo](https://github.com/backjo) | Developer portal - hub for all engineering projects and metadata. | -| [Expedia Group](https://www.expediagroup.com) | [@guillermomanzo](https://github.com/guillermomanzo), [Sheena Sharma](mailto:shesharma@expediagroup.com) | EG Common Developer Toolkit | +| [Expedia Group](https://www.expediagroup.com) | [@guillermomanzo](https://github.com/guillermomanzo), [Sheena Sharma](mailto:shesharma@expediagroup.com) | EG Common Developer Toolkit | | [Paddle.com](https://paddle.com) | [Ioannis Georgoulas](https://github.com/geototti21) | Developer portal (Tech Docs, Service Catalog, Internal Tooling), we use vanilla Backstage FE and custom BE implementation in Go | | [Acast.com](https://acast.com) | [Olle Lundberg](https://github.com/lndbrg) | Developer portal with tech docs, service catalog and a bunch of other internal tooling | | [Lunar](https://lunar.app) | [Jacob Valdemar](https://github.com/JacobValdemar) | Internal developer portal for service overview and insights, API documentation, technical guides, onboarding guides and RFC's. | @@ -122,35 +122,35 @@ _If you're using Backstage in your organization, please try to add your company | [World Fuel Services](https://www.wfscorp.com/) | [Anirudh Kurapathi](https://github.com/anirudhkurapati), [Alex Kwon](https://github.com/alexkwon), [Lester Hernandez](https://github.com/lhernandez-wfscorp), [Avi Boru](https://github.com/aviboru), [Vardhan Annapureddy](https://github.com/harshaaws) | Internal Developer Portal, service catalog product, API's, Software Templates, tech docs and more. | | [leboncoin](https://www.leboncoin.fr/) | [Andy Ladjadj](https://github.com/aladjadj) | Centralize our multiple UI in a single portal. Simplify onbording, new features and harmonize how people search information. Core features (catalog,api,docs,scafolder) are good to start the adoption. status: internal beta. | | [Contentful](https://www.contentful.com) | [James Bourne](https://github.com/jamesmbourne) | Centralized documentation of service ownership, APIs, and documentation, and new service creation with a custom scaffolder - [full case study with Roadie](https://roadie.io/case-studies/maintaining-velocity-through-hypergrowth-contentful/). | -| [Back Market](https://www.backmarket.com) | [Sami Farhat](https://github.com/skfarhat) | Internal Developer Portal featuring catalog, tech-radar, ownership management, component creation (scaffolder) and centralized infrastructure management -- probably more to come. | -| [Avalia Systems](https://avalia.io) | [Olivier Liechti](https://github.com/wasadigi), [Fabio Velloso](https://github.com/fabiovelloso) | Innersource, software analytics, knowledge base for 360 software assessments, collaborative applications, hub for tracking and sharing IP assets. | -| [Albert Heijn](https://ah.technology) | [Joost Hofman](https://github.com/joosthofman), [Reindrich Geerman](https://github.com/reinst) | Single point of entry for all our engineers (Developer portal), Tech radar, catalog, templates (paved roads) and tech documentation. | -| [Wise, formerly TransferWise](https://wise.com) | [Andrew Beveridge](https://github.com/beveradb) | It's early days for us, we're trying to start small with catalog, tech docs and unified search. Future ambitious vision includes scaffolder for one-click component addition, building out integrations with CI/CD tooling, kubernetes clusters, monitoring/alerting tooling etc. and aiming for a frictionless "golden path" for engineers! 🚀 | -|[Happy Money](http://happymoney.com/)|[Akshit Lomash](mailto:alomash@happymoney.com)|We are moving from a monolith to microservices-based architecture. We are developing a developer portal based on Backstage to create a service catalog for our new services. All the services created are onboarded Backstage and engineering teams are using a cookie-cutter-based template from backstage to initiate a new service. -|[Lightspeed](http://lightspeedhq.com/)|[Marcus Crane](mailto:marcus.crane@lightspeedhq.com)|We use it within our X-Series division (https://vendhq.com) to catalog ~100+ systems and ~350 components! -|[Siemens](https://www.siemens.com/global/en.html)|[Nizar Chaouch](mailto:nizar.chaouch@siemens.com)|We are using Backstage as our Developer portal -|[The Warehouse Group](https://www.thewarehouse.co.nz)|[Matt Law](mailto:matt.law@thewarehouse.co.nz)|Backstage enables us to bootstrap our middleware environment of new services for our Dev teams in a matter of seconds. CI, CD, testing, logging, deployments are all taken care of to get them up and running in less than 60 seconds. +| [Back Market](https://www.backmarket.com) | [Sami Farhat](https://github.com/skfarhat) | Internal Developer Portal featuring catalog, tech-radar, ownership management, component creation (scaffolder) and centralized infrastructure management -- probably more to come. | +| [Avalia Systems](https://avalia.io) | [Olivier Liechti](https://github.com/wasadigi), [Fabio Velloso](https://github.com/fabiovelloso) | Innersource, software analytics, knowledge base for 360 software assessments, collaborative applications, hub for tracking and sharing IP assets. | +| [Albert Heijn](https://ah.technology) | [Joost Hofman](https://github.com/joosthofman), [Reindrich Geerman](https://github.com/reinst) | Single point of entry for all our engineers (Developer portal), Tech radar, catalog, templates (paved roads) and tech documentation. | +| [Wise, formerly TransferWise](https://wise.com) | [Andrew Beveridge](https://github.com/beveradb) | It's early days for us, we're trying to start small with catalog, tech docs and unified search. Future ambitious vision includes scaffolder for one-click component addition, building out integrations with CI/CD tooling, kubernetes clusters, monitoring/alerting tooling etc. and aiming for a frictionless "golden path" for engineers! 🚀 | +| [Happy Money](http://happymoney.com/) | [Akshit Lomash](mailto:alomash@happymoney.com) | We are moving from a monolith to microservices-based architecture. We are developing a developer portal based on Backstage to create a service catalog for our new services. All the services created are onboarded Backstage and engineering teams are using a cookie-cutter-based template from backstage to initiate a new service. | +| [Lightspeed](http://lightspeedhq.com/) | [Marcus Crane](mailto:marcus.crane@lightspeedhq.com) | We use it within our X-Series division (https://vendhq.com) to catalog ~100+ systems and ~350 components! | +| [Siemens](https://www.siemens.com/global/en.html) | [Nizar Chaouch](mailto:nizar.chaouch@siemens.com) | We are using Backstage as our Developer portal | +| [The Warehouse Group](https://www.thewarehouse.co.nz) | [Matt Law](mailto:matt.law@thewarehouse.co.nz) | Backstage enables us to bootstrap our middleware environment of new services for our Dev teams in a matter of seconds. CI, CD, testing, logging, deployments are all taken care of to get them up and running in less than 60 seconds. | | [Tink](https://tink.com/) | [Sebastian Olsson](https://github.com/Sebelino), [Błażej Szum](https://github.com/blazejszumtink), [Anders Eurenius Runvald](https://github.com/anders-er-at-tink) | Internal developer portal which provides templates for creating new Java or Go microservices seamlessly. Also includes a tech radar and a visualization of our CD pipeline. | -| [Brandwatch](https://brandwatch.com)| [Stefan Buck](https://github.com/stefanbuck) | Our primary focus is on the service catalog. Backstage is replacing our homemade service catalog. The switch was quite simple due to the catalog processor API. -| [Laybuy](https://www.laybuy.com)| [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. -| [Sendinblue](https://engineering.sendinblue.com/)| [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | -| [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | -|[Sana Life Science](sanalifescience.com)|[Joe Hillyard](mailto:joe@sanalifescience.com)|API Catalog, Tools Management & Control Hub -|[Ndustrial](https://ndustrial.io)|[Jonathan Skubic](mailto:jonathan@ndustrial.io)|Software Project Catalog -|[TUI Musement](https://www.musement.com/uk/)|[Simone Fumagalli](mailto:simone.fumagalli@musement.com)|We are importing our catalog into it to keep it under control. The next step is start using templates -|[Kambi AB](https://www.kambi.com)|[Martin Norum](mailto:martin.norum@kambi.com)|We want to kick ass at speed, so we're currently building up a catalog of our existing software, and looking into how Backstage can support us in our journey towards autonomous product teams. Both to improve speed to market and operational awareness. -|[ANZ](https://www.anz.com.au/personal/)|[Elliot Jackson](mailto:elliot.jackson@anz.com)|Catalog, tech docs and automation -|[Genie Solutions](https://www.geniesolutionssoftware.com.au)|[Zainab Bagasrawala](mailto:zainabbagasrawala@geniesolutions.com.au)|Developer Portal to track our projects, documentation, observability tools and more -|[MadeiraMadeira](https://www.madeiramadeira.com.br)|[Paulo Eduardo Peixoto](mailto:paulo.peixoto@madeiramadeira.com.br)|As a support tool for developers, following the principles of "Developer Experience". In order to make the developer's day to day more practical, efficient and, why not, happy. -|[Sonatype](https://www.sonatype.com)|[Srikar Ananthula](mailto:sananthula@sonatype.com)|Centralize services used internally with many plugins -|[CVS Health](https://www.cvshealth.com)|[Ari Ben-Elazar](mailto:abenelazar@gmail.com)|Cataloging and documenting our service offerings to offer our internal developers a better operational journey -|[Yatra.com](https://www.yatra.com)|[Matiur Rahman Maitur](mailto:arifrahman4u@gmail.com)|Easy to find out Project details, ownership, dependent services, Documentation, it is very useful for developer. -|[Yotpo](https://www.yotpo.com)|[Liran Yogev](mailto:lyogev@yotpo.com)|Services exploration, documentation and project generator -|[Mainsail Industries](https://www.mainsailindustries.com)|[Brad Sollar](mailto:brad@mainsailindustries.com)|Internal tool management and docs -|[Prisma](prismamp.com)|[Sebastian Gravina](mailto:sgravina@prismamp.com)|Is part of our IDP -|[Syndetic](syndetic.io)|[John Feminella](mailto:robots+swag@syndetic.io)|We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. -|[Imagine Learning](https://www.imaginelearning.com/en/us)|[Jared Stehler](mailto:jared.stehler@imaginelearning.com)|Software catalog, product dependency visualization -|[Alef Education](https://www.alefeducation.com)|[Belal Juma](mailto:belal.juma@alefeducation.com)|We use backstage as a Service Catalog and rely on the TechDocs feature -|[Zego](https://www.zego.com)|[Sean Kenny](mailto:sean.kenny@zego.com)|Single pane of glass for organisational and operational information for all services across our systems. -|[Absa Group Limited](https://www.absa.africa/absaafrica/)|[Chris Kieser](mailto:chris.kieser@absa.africa)|Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more -|[Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au)|[Jan Quijano](mailto:jan.quijano@nutrien.com.au)|Software Project Catalog +| [Brandwatch](https://brandwatch.com) | [Stefan Buck](https://github.com/stefanbuck) | Our primary focus is on the service catalog. Backstage is replacing our homemade service catalog. The switch was quite simple due to the catalog processor API. | +| [Laybuy](https://www.laybuy.com) | [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. | +| [Sendinblue](https://engineering.sendinblue.com/) | [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | +| [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | +| [Sana Life Science](sanalifescience.com) | [Joe Hillyard](mailto:joe@sanalifescience.com) | API Catalog, Tools Management & Control Hub | +| [Ndustrial](https://ndustrial.io) | [Jonathan Skubic](mailto:jonathan@ndustrial.io) | Software Project Catalog | +| [TUI Musement](https://www.musement.com/uk/) | [Simone Fumagalli](mailto:simone.fumagalli@musement.com) | We are importing our catalog into it to keep it under control. The next step is start using templates | +| [Kambi AB](https://www.kambi.com) | [Martin Norum](mailto:martin.norum@kambi.com) | We want to kick ass at speed, so we're currently building up a catalog of our existing software, and looking into how Backstage can support us in our journey towards autonomous product teams. Both to improve speed to market and operational awareness. | +| [ANZ](https://www.anz.com.au/personal/) | [Elliot Jackson](mailto:elliot.jackson@anz.com) | Catalog, tech docs and automation | +| [Genie Solutions](https://www.geniesolutionssoftware.com.au) | [Zainab Bagasrawala](mailto:zainabbagasrawala@geniesolutions.com.au) | Developer Portal to track our projects, documentation, observability tools and more | +| [MadeiraMadeira](https://www.madeiramadeira.com.br) | [Paulo Eduardo Peixoto](mailto:paulo.peixoto@madeiramadeira.com.br) | As a support tool for developers, following the principles of "Developer Experience". In order to make the developer's day to day more practical, efficient and, why not, happy. | +| [Sonatype](https://www.sonatype.com) | [Srikar Ananthula](mailto:sananthula@sonatype.com) | Centralize services used internally with many plugins | +| [CVS Health](https://www.cvshealth.com) | [Ari Ben-Elazar](mailto:abenelazar@gmail.com) | Cataloging and documenting our service offerings to offer our internal developers a better operational journey | +| [Yatra.com](https://www.yatra.com) | [Matiur Rahman Maitur](mailto:arifrahman4u@gmail.com) | Easy to find out Project details, ownership, dependent services, Documentation, it is very useful for developer. | +| [Yotpo](https://www.yotpo.com) | [Liran Yogev](mailto:lyogev@yotpo.com) | Services exploration, documentation and project generator | +| [Mainsail Industries](https://www.mainsailindustries.com) | [Brad Sollar](mailto:brad@mainsailindustries.com) | Internal tool management and docs | +| [Prisma](prismamp.com) | [Sebastian Gravina](mailto:sgravina@prismamp.com) | Is part of our IDP | +| [Syndetic](syndetic.io) | [John Feminella](mailto:robots+swag@syndetic.io) | We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. | +| [Imagine Learning](https://www.imaginelearning.com/en/us) | [Jared Stehler](mailto:jared.stehler@imaginelearning.com) | Software catalog, product dependency visualization | +| [Alef Education](https://www.alefeducation.com) | [Belal Juma](mailto:belal.juma@alefeducation.com) | We use backstage as a Service Catalog and rely on the TechDocs feature | +| [Zego](https://www.zego.com) | [Sean Kenny](mailto:sean.kenny@zego.com) | Single pane of glass for organisational and operational information for all services across our systems. | +| [Absa Group Limited](https://www.absa.africa/absaafrica/) | [Chris Kieser](mailto:chris.kieser@absa.africa) | Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more | +| [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | From e487242d70e52aa7b6a48266a09caebbcc433080 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 1 Jun 2022 10:29:35 +0200 Subject: [PATCH 070/550] ADOPTERS.md: update link format Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 83449cb588..50a2f5e755 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -135,7 +135,7 @@ _If you're using Backstage in your organization, please try to add your company | [Laybuy](https://www.laybuy.com) | [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. | | [Sendinblue](https://engineering.sendinblue.com/) | [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | | [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | -| [Sana Life Science](sanalifescience.com) | [Joe Hillyard](mailto:joe@sanalifescience.com) | API Catalog, Tools Management & Control Hub | +| [Sana Life Science](https://sanalifescience.com) | [Joe Hillyard](mailto:joe@sanalifescience.com) | API Catalog, Tools Management & Control Hub | | [Ndustrial](https://ndustrial.io) | [Jonathan Skubic](mailto:jonathan@ndustrial.io) | Software Project Catalog | | [TUI Musement](https://www.musement.com/uk/) | [Simone Fumagalli](mailto:simone.fumagalli@musement.com) | We are importing our catalog into it to keep it under control. The next step is start using templates | | [Kambi AB](https://www.kambi.com) | [Martin Norum](mailto:martin.norum@kambi.com) | We want to kick ass at speed, so we're currently building up a catalog of our existing software, and looking into how Backstage can support us in our journey towards autonomous product teams. Both to improve speed to market and operational awareness. | @@ -147,8 +147,8 @@ _If you're using Backstage in your organization, please try to add your company | [Yatra.com](https://www.yatra.com) | [Matiur Rahman Maitur](mailto:arifrahman4u@gmail.com) | Easy to find out Project details, ownership, dependent services, Documentation, it is very useful for developer. | | [Yotpo](https://www.yotpo.com) | [Liran Yogev](mailto:lyogev@yotpo.com) | Services exploration, documentation and project generator | | [Mainsail Industries](https://www.mainsailindustries.com) | [Brad Sollar](mailto:brad@mainsailindustries.com) | Internal tool management and docs | -| [Prisma](prismamp.com) | [Sebastian Gravina](mailto:sgravina@prismamp.com) | Is part of our IDP | -| [Syndetic](syndetic.io) | [John Feminella](mailto:robots+swag@syndetic.io) | We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. | +| [Prisma](https://prismamp.com) | [Sebastian Gravina](mailto:sgravina@prismamp.com) | Is part of our IDP | +| [Syndetic](https://syndetic.io) | [John Feminella](mailto:robots+swag@syndetic.io) | We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. | | [Imagine Learning](https://www.imaginelearning.com/en/us) | [Jared Stehler](mailto:jared.stehler@imaginelearning.com) | Software catalog, product dependency visualization | | [Alef Education](https://www.alefeducation.com) | [Belal Juma](mailto:belal.juma@alefeducation.com) | We use backstage as a Service Catalog and rely on the TechDocs feature | | [Zego](https://www.zego.com) | [Sean Kenny](mailto:sean.kenny@zego.com) | Single pane of glass for organisational and operational information for all services across our systems. | From aaf76520843a7a91cf68ebb2cf404ab5d660d7c0 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 1 Jun 2022 10:32:28 +0200 Subject: [PATCH 071/550] chore: added changeset Signed-off-by: blam --- .changeset/sixty-rats-talk.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .changeset/sixty-rats-talk.md diff --git a/.changeset/sixty-rats-talk.md b/.changeset/sixty-rats-talk.md new file mode 100644 index 0000000000..ad2575f83e --- /dev/null +++ b/.changeset/sixty-rats-talk.md @@ -0,0 +1,10 @@ +--- +'@backstage/create-app': patch +--- + +Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. + +```diff +- "cypress": "^7.3.0", ++ "cypress": "^9.7.0", +``` From 582003a0596a16d4d37e119afe2b0420504af699 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 1 Jun 2022 10:42:47 +0200 Subject: [PATCH 072/550] chore: split out the changeset into two seperate ones Signed-off-by: blam --- .changeset/poor-zebras-design.md | 7 +++++++ .changeset/rich-zebras-design.md | 7 +++---- 2 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 .changeset/poor-zebras-design.md diff --git a/.changeset/poor-zebras-design.md b/.changeset/poor-zebras-design.md new file mode 100644 index 0000000000..8b618610d1 --- /dev/null +++ b/.changeset/poor-zebras-design.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-scaffolder-backend': minor +--- + +- Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` +- Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` +- Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter diff --git a/.changeset/rich-zebras-design.md b/.changeset/rich-zebras-design.md index fc121349aa..916226787a 100644 --- a/.changeset/rich-zebras-design.md +++ b/.changeset/rich-zebras-design.md @@ -1,8 +1,7 @@ --- '@backstage/plugin-scaffolder': minor -'@backstage/plugin-scaffolder-backend': minor --- -- Add `listTasks` option to get tasks optionally filtered by `createdBy` - -- Added a new page under `/create/tasks` to show those tasks, optionally grouped by the current signed in user. +- Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. +- Ability to filter these tasks by the signed in user, and all tasks. +- Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. From 27da227990893fd5ab2cfae114f43712ca8a1362 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 09:26:54 +0000 Subject: [PATCH 073/550] chore(deps): update dependency puppeteer to v14.1.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f30da76b2b..471dc9487d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20825,9 +20825,9 @@ pupa@^2.1.1: escape-goat "^2.0.0" puppeteer@^14.0.0: - version "14.1.0" - resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.1.0.tgz#319560e20ff451890158d7146c79ab589c6e7031" - integrity sha512-T3eB4f6k9HVttYvyy8drGIKb04M+vxhepqM7qqcVCBTNT3T6M9cUaJT4k7P+a6wSonObJSJUP98JkPDQG+3fJw== + version "14.1.2" + resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.1.2.tgz#bde2ca5585fb56ed906bccced898d551778f5c5d" + integrity sha512-Nsyy1f7pT2KyBb15u8DHi4q3FfrIqOptAV0r4Bd1lAp2pHz8T0o4DO+On1yWZ7jFbcx1w3AqZ/e7nKqnc3Vwyg== dependencies: cross-fetch "3.1.5" debug "4.3.4" From 9a6d0ebd0d9f4d18284e67c4b3bfbb309142b22b Mon Sep 17 00:00:00 2001 From: Himanshu Mishra Date: Wed, 1 Jun 2022 11:46:23 +0200 Subject: [PATCH 074/550] fix broken cost insights example Signed-off-by: Himanshu Mishra --- plugins/cost-insights/README.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/plugins/cost-insights/README.md b/plugins/cost-insights/README.md index c78f4d4b6d..c874fee82d 100644 --- a/plugins/cost-insights/README.md +++ b/plugins/cost-insights/README.md @@ -171,16 +171,15 @@ costInsights: name: Some Other Cloud Product icon: data currencies: - metricA: - currencyA: - label: Currency A - unit: Unit A - currencyB: - label: Currency B - kind: CURRENCY_B - unit: Unit B - prefix: B - rate: 3.5 + currencyA: + label: Currency A + unit: Unit A + currencyB: + label: Currency B + kind: CURRENCY_B + unit: Unit B + prefix: B + rate: 3.5 ``` ## Alerts From bf3b97e535d23d444478b50f3a764877ceb8ea13 Mon Sep 17 00:00:00 2001 From: Himanshu Mishra Date: Wed, 1 Jun 2022 11:47:45 +0200 Subject: [PATCH 075/550] add a tip about example cost insights client Signed-off-by: Himanshu Mishra --- plugins/cost-insights/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/cost-insights/README.md b/plugins/cost-insights/README.md index c874fee82d..295cfcccd2 100644 --- a/plugins/cost-insights/README.md +++ b/plugins/cost-insights/README.md @@ -26,6 +26,8 @@ yarn add --cwd packages/app @backstage/plugin-cost-insights 2. Create a CostInsights client. Clients must implement the [CostInsightsApi](https://github.com/backstage/backstage/blob/master/plugins/cost-insights/src/api/CostInsightsApi.ts) interface. Create your own or [use a template](https://github.com/backstage/backstage/blob/master/plugins/cost-insights/src/example/templates/CostInsightsClient.ts) to get started. +Tip: You can also use the `ExampleCostInsightsClient` from `@backstage/plugin-cost-insights` to see how the plugin looks with some mock data. + ```ts // path/to/CostInsightsClient.ts import { CostInsightsApi } from '@backstage/plugin-cost-insights'; From 2fc98ac50c89a2ffb06c8951d35cbd62b294ff53 Mon Sep 17 00:00:00 2001 From: Himanshu Mishra Date: Wed, 1 Jun 2022 11:55:41 +0200 Subject: [PATCH 076/550] add changeset Signed-off-by: Himanshu Mishra --- .changeset/good-squids-rest.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/good-squids-rest.md diff --git a/.changeset/good-squids-rest.md b/.changeset/good-squids-rest.md new file mode 100644 index 0000000000..dc9f9129e2 --- /dev/null +++ b/.changeset/good-squids-rest.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-cost-insights': patch +--- + +Fix broken app-config in the example in the README From 306d0b4fddf2b0baf0cc29133eebb26f86ddcf18 Mon Sep 17 00:00:00 2001 From: kielosz Date: Wed, 1 Jun 2022 12:21:01 +0200 Subject: [PATCH 077/550] Add filter param to MyGroupsSidebarItem Signed-off-by: kielosz --- .changeset/spicy-forks-return.md | 5 ++ .../MyGroupsSidebarItem.test.tsx | 88 +++++++++++++++++++ .../MyGroupsSidebarItem.tsx | 11 ++- 3 files changed, 102 insertions(+), 2 deletions(-) create mode 100644 .changeset/spicy-forks-return.md diff --git a/.changeset/spicy-forks-return.md b/.changeset/spicy-forks-return.md new file mode 100644 index 0000000000..d23ce6995b --- /dev/null +++ b/.changeset/spicy-forks-return.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-org': patch +--- + +Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component diff --git a/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.test.tsx b/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.test.tsx index d290001eb8..bd212bf972 100644 --- a/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.test.tsx +++ b/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.test.tsx @@ -196,4 +196,92 @@ describe('MyGroupsSidebarItem Test', () => { expect(rendered.getByLabelText('My Squads')).toBeInTheDocument(); }); }); + + describe('When an additional filter is not provided', () => { + it('catalogApi.getEntities() should be called with the default filter', async () => { + const identityApi: Partial = { + getBackstageIdentity: async () => ({ + type: 'user', + userEntityRef: 'user:default/guest', + ownershipEntityRefs: ['user:default/guest'], + }), + }; + const mockCatalogApi: Partial = { + getEntities: jest.fn(), + }; + await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + }, + }, + ); + expect(mockCatalogApi.getEntities).toHaveBeenCalledWith({ + filter: [ + { + kind: 'group', + 'relations.hasMember': 'user:default/guest', + }, + ], + fields: ['metadata', 'kind'], + }); + }); + }); + + describe('When an additional filter is provided', () => { + it('catalogApi.getEntities() should be called with an additional filter item', async () => { + const identityApi: Partial = { + getBackstageIdentity: async () => ({ + type: 'user', + userEntityRef: 'user:default/guest', + ownershipEntityRefs: ['user:default/guest'], + }), + }; + const mockCatalogApi: Partial = { + getEntities: jest.fn(), + }; + await renderInTestApp( + + + , + { + mountedRoutes: { + '/catalog/:namespace/:kind/:name': entityRouteRef, + }, + }, + ); + expect(mockCatalogApi.getEntities).toHaveBeenCalledWith({ + filter: [ + { + kind: 'group', + 'relations.hasMember': 'user:default/guest', + 'spec.type': 'team', + }, + ], + fields: ['metadata', 'kind'], + }); + }); + }); }); diff --git a/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.tsx b/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.tsx index 5a3cc42628..fa8f8405ff 100644 --- a/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.tsx +++ b/plugins/org/src/components/MyGroupsSidebarItem/MyGroupsSidebarItem.tsx @@ -45,8 +45,9 @@ export const MyGroupsSidebarItem = (props: { singularTitle: string; pluralTitle: string; icon: IconComponent; + filter?: Record; }) => { - const { singularTitle, pluralTitle, icon } = props; + const { singularTitle, pluralTitle, icon, filter } = props; const identityApi = useApi(identityApiRef); const catalogApi: CatalogApi = useApi(catalogApiRef); @@ -56,7 +57,13 @@ export const MyGroupsSidebarItem = (props: { const profile = await identityApi.getBackstageIdentity(); const response = await catalogApi.getEntities({ - filter: [{ kind: 'group', 'relations.hasMember': profile.userEntityRef }], + filter: [ + { + kind: 'group', + 'relations.hasMember': profile.userEntityRef, + ...(filter ?? {}), + }, + ], fields: ['metadata', 'kind'], }); From c20bbc9f12d8d53da97bd3e82dca3a5555bcec54 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 10:31:05 +0000 Subject: [PATCH 078/550] fix(deps): update dependency isomorphic-git to v1.17.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 471dc9487d..56b49066ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15237,9 +15237,9 @@ isomorphic-form-data@^2.0.0: form-data "^2.3.2" isomorphic-git@^1.8.0: - version "1.17.2" - resolved "https://registry.npmjs.org/isomorphic-git/-/isomorphic-git-1.17.2.tgz#d49eda3122dfa3b860f0c68d651297c6403b715f" - integrity sha512-KtYyJye7Ad1XSgObsw7dwn3OaEcGUy04BHv6D+qBz2BWY7T7q7HXBzoSOiVvVMbOo+K2EZ2MUT+g2QkpJCPQLQ== + version "1.17.3" + resolved "https://registry.npmjs.org/isomorphic-git/-/isomorphic-git-1.17.3.tgz#d4a4e7a2defc7e9c80d4d0bfd43c1e7d2bfb25ee" + integrity sha512-jEQtmg1lJ8ZiJLjJCCJDDIdXaeoHwqHFY7QCLgNw7GzZ6MktXLzKXnQsFRfIcm7sNYGt+w1/6FQTwO9zoHq/Fw== dependencies: async-lock "^1.1.0" clean-git-ref "^2.0.1" From 833dbea4df1435aaa9e9d31b184045c153f5af98 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 12:43:31 +0200 Subject: [PATCH 079/550] Make the color of the Entity Context Menu icon configurable Signed-off-by: Olivier Liechti --- .../EntityContextMenu/EntityContextMenu.tsx | 17 +++++++++++------ .../src/components/EntityContextMenu/index.ts | 18 ++++++++++++++++++ plugins/catalog/src/overridableComponents.ts | 2 ++ 3 files changed, 31 insertions(+), 6 deletions(-) create mode 100644 plugins/catalog/src/components/EntityContextMenu/index.ts diff --git a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx index 5664186ab1..0059d3118c 100644 --- a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx +++ b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx @@ -32,12 +32,17 @@ import { IconComponent } from '@backstage/core-plugin-api'; import { useEntityPermission } from '@backstage/plugin-catalog-react'; import { catalogEntityDeletePermission } from '@backstage/plugin-catalog-common'; -// TODO(freben): It should probably instead be the case that Header sets the theme text color to white inside itself unconditionally instead -const useStyles = makeStyles({ - button: { - color: 'white', - }, -}); +/** @public */ +export type EntityContextMenuClassKey = 'button'; + +const useStyles = makeStyles( + theme => ({ + button: { + color: 'white', + }, + }), + { name: 'PluginCatalogEntityContextMenu' }, +); // NOTE(freben): Intentionally not exported at this point, since it's part of // the unstable extra context menu items concept below diff --git a/plugins/catalog/src/components/EntityContextMenu/index.ts b/plugins/catalog/src/components/EntityContextMenu/index.ts new file mode 100644 index 0000000000..4a2deb20b4 --- /dev/null +++ b/plugins/catalog/src/components/EntityContextMenu/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2021 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 { EntityContextMenu } from './EntityContextMenu'; +export type { EntityContextMenuClassKey } from './EntityContextMenu'; diff --git a/plugins/catalog/src/overridableComponents.ts b/plugins/catalog/src/overridableComponents.ts index e76aafbb68..5cd82202d5 100644 --- a/plugins/catalog/src/overridableComponents.ts +++ b/plugins/catalog/src/overridableComponents.ts @@ -18,11 +18,13 @@ import { StyleRules } from '@material-ui/core/styles/withStyles'; import { EntityLinksEmptyStateClassKey } from './components/EntityLinksCard'; import { SystemDiagramCardClassKey } from './components/SystemDiagramCard'; +import { EntityContextMenuClassKey } from './components/EntityContextMenu'; /** @public */ export type PluginCatalogComponentsNameToClassKey = { PluginCatalogEntityLinksEmptyState: EntityLinksEmptyStateClassKey; PluginCatalogSystemDiagramCard: SystemDiagramCardClassKey; + PluginCatalogEntityContextMenu: EntityContextMenuClassKey; }; /** @public */ From bdc89c10e32f96eee975aeb87829f9963bf1a146 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 1 Jun 2022 13:42:35 +0200 Subject: [PATCH 080/550] chore: added retries to see if this helps Signed-off-by: blam --- .../create-app/templates/default-app/packages/app/cypress.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/create-app/templates/default-app/packages/app/cypress.json b/packages/create-app/templates/default-app/packages/app/cypress.json index 5de7ebffea..0cb845a86d 100644 --- a/packages/create-app/templates/default-app/packages/app/cypress.json +++ b/packages/create-app/templates/default-app/packages/app/cypress.json @@ -1,5 +1,6 @@ { "baseUrl": "http://localhost:3001", "fixturesFolder": false, - "pluginsFile": false + "pluginsFile": false, + "retries": 3 } From edcc4c778726daebdea07b9beded7c696521c6c1 Mon Sep 17 00:00:00 2001 From: blam Date: Wed, 1 Jun 2022 14:02:05 +0200 Subject: [PATCH 081/550] chore: run in chrome instead? Signed-off-by: blam --- .../templates/default-app/packages/app/package.json.hbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/create-app/templates/default-app/packages/app/package.json.hbs b/packages/create-app/templates/default-app/packages/app/package.json.hbs index 54cd516058..d3ba938960 100644 --- a/packages/create-app/templates/default-app/packages/app/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/app/package.json.hbs @@ -63,7 +63,7 @@ "test:e2e": "cross-env PORT=3001 start-server-and-test start http://localhost:3001 cy:dev", "test:e2e:ci": "cross-env PORT=3001 start-server-and-test start http://localhost:3001 cy:run", "cy:dev": "cypress open", - "cy:run": "cypress run" + "cy:run": "cypress run --browser chrome" }, "browserslist": { "production": [ From c558547ccffc203a20af8b72666a4d53a8349684 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 13:00:53 +0000 Subject: [PATCH 082/550] fix(deps): update dependency moment to v2.29.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 56b49066ee..378f0d7999 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18226,9 +18226,9 @@ modify-values@^1.0.0: integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== moment@^2.27.0, moment@^2.29.1: - version "2.29.2" - resolved "https://registry.npmjs.org/moment/-/moment-2.29.2.tgz#00910c60b20843bcba52d37d58c628b47b1f20e4" - integrity sha512-UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg== + version "2.29.3" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3" + integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw== morgan@^1.10.0: version "1.10.0" From d123afa618768c9d6723b48eb24811d713c3d1f3 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 13:01:39 +0000 Subject: [PATCH 083/550] fix(deps): update dependency postcss to v8.4.14 Signed-off-by: Renovate Bot --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 56b49066ee..dfc89cb697 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18433,7 +18433,7 @@ nanoid@^3.1.23: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== -nanoid@^3.3.3: +nanoid@^3.3.4: version "3.3.4" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== @@ -20436,11 +20436,11 @@ postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^ integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== postcss@^8.1.0, postcss@^8.4.7: - version "8.4.13" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz#7c87bc268e79f7f86524235821dfdf9f73e5d575" - integrity sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA== + version "8.4.14" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf" + integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig== dependencies: - nanoid "^3.3.3" + nanoid "^3.3.4" picocolors "^1.0.0" source-map-js "^1.0.2" From ee2cd642c55776cb739e1832e2c6b85e725e2ac3 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 13:02:07 +0000 Subject: [PATCH 084/550] fix(deps): update dependency rc-progress to v3.3.3 Signed-off-by: Renovate Bot --- .changeset/renovate-dd5df61.md | 7 +++++++ packages/core-components/package.json | 2 +- plugins/codescene/package.json | 2 +- plugins/sonarqube/package.json | 2 +- yarn.lock | 9 +++++++++ 5 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 .changeset/renovate-dd5df61.md diff --git a/.changeset/renovate-dd5df61.md b/.changeset/renovate-dd5df61.md new file mode 100644 index 0000000000..6b30209e68 --- /dev/null +++ b/.changeset/renovate-dd5df61.md @@ -0,0 +1,7 @@ +--- +'@backstage/core-components': patch +'@backstage/plugin-codescene': patch +'@backstage/plugin-sonarqube': patch +--- + +Updated dependency `rc-progress` to `3.3.3`. diff --git a/packages/core-components/package.json b/packages/core-components/package.json index 242b45d64e..867f17029e 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -56,7 +56,7 @@ "pluralize": "^8.0.0", "prop-types": "^15.7.2", "qs": "^6.9.4", - "rc-progress": "3.3.2", + "rc-progress": "3.3.3", "react-helmet": "6.1.0", "react-hook-form": "^7.12.2", "react-markdown": "^8.0.0", diff --git a/plugins/codescene/package.json b/plugins/codescene/package.json index 7ef9cf3705..34dfe23ac0 100644 --- a/plugins/codescene/package.json +++ b/plugins/codescene/package.json @@ -30,7 +30,7 @@ "@material-ui/core": "^4.9.10", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "^4.0.0-alpha.57", - "rc-progress": "3.3.2", + "rc-progress": "3.3.3", "react-router-dom": "6.0.0-beta.0", "react-use": "^17.2.4" }, diff --git a/plugins/sonarqube/package.json b/plugins/sonarqube/package.json index d4b35a4907..011b5ffe52 100644 --- a/plugins/sonarqube/package.json +++ b/plugins/sonarqube/package.json @@ -46,7 +46,7 @@ "@material-ui/lab": "4.0.0-alpha.57", "@material-ui/styles": "^4.10.0", "cross-fetch": "^3.1.5", - "rc-progress": "3.3.2", + "rc-progress": "3.3.3", "react-use": "^17.2.4" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index 56b49066ee..f4f7c005ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20993,6 +20993,15 @@ rc-progress@3.3.2: classnames "^2.2.6" rc-util "^5.16.1" +rc-progress@3.3.3: + version "3.3.3" + resolved "https://registry.npmjs.org/rc-progress/-/rc-progress-3.3.3.tgz#eb9bffbacab1534f2542f9f6861ce772254362b1" + integrity sha512-MDVNVHzGanYtRy2KKraEaWeZLri2ZHWIRyaE1a9MQ2MuJ09m+Wxj5cfcaoaR6z5iRpHpA59YeUxAlpML8N4PJw== + dependencies: + "@babel/runtime" "^7.10.1" + classnames "^2.2.6" + rc-util "^5.16.1" + rc-util@^5.16.1: version "5.16.1" resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.16.1.tgz#374db7cb735512f05165ddc3d6b2c61c21b8b4e3" From ce875b2df02d7c835f217fa3a3687202691567a2 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 13:02:50 +0000 Subject: [PATCH 085/550] fix(deps): update dependency react-query to v3.39.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 56b49066ee..3cd357d2b7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21199,9 +21199,9 @@ react-markdown@^8.0.0: vfile "^5.0.0" react-query@^3.34.16: - version "3.39.0" - resolved "https://registry.npmjs.org/react-query/-/react-query-3.39.0.tgz#0caca7b0da98e65008bbcd4df0d25618c2100050" - integrity sha512-Od0IkSuS79WJOhzWBx/ys0x13+7wFqgnn64vBqqAAnZ9whocVhl/y1padD5uuZ6EIkXbFbInax0qvY7zGM0thA== + version "3.39.1" + resolved "https://registry.npmjs.org/react-query/-/react-query-3.39.1.tgz#3876c0fdac7a3b5a84e195534e5fa8fbdd628847" + integrity sha512-qYKT1bavdDiQZbngWZyPotlBVzcBjDYEJg5RQLBa++5Ix5jjfbEYJmHSZRZD+USVHUSvl/ey9Hu+QfF1QAK80A== dependencies: "@babel/runtime" "^7.5.5" broadcast-channel "^3.4.1" From 99fe7287578398bd7ed4a114cdabcd5a659a119f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 13:38:58 +0000 Subject: [PATCH 086/550] chore(deps): update dependency @types/node to v16.11.38 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index edd2fbc609..3ebffb5b10 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6361,9 +6361,9 @@ integrity sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A== "@types/node@^16.0.0", "@types/node@^16.11.26", "@types/node@^16.9.2": - version "16.11.36" - resolved "https://registry.npmjs.org/@types/node/-/node-16.11.36.tgz#9ab9f8276987132ed2b225cace2218ba794fc751" - integrity sha512-FR5QJe+TaoZ2GsMHkjuwoNabr+UrJNRr2HNOo+r/7vhcuntM6Ee/pRPOnRhhL2XE9OOvX9VLEq+BcXl3VjNoWA== + version "16.11.38" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.38.tgz#be0edd097b23eace6c471c525a74b3f98803017f" + integrity sha512-hjO/0K140An3GWDw2HJfq7gko3wWeznbjXgg+rzPdVzhe198hp4x2i1dgveAOEiFKd8sOilAxzoSJiVv5P/CUg== "@types/normalize-package-data@^2.4.0": version "2.4.1" From bead6bc8fe077caee03b8f9d35281adc81db1d8f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 14:25:30 +0000 Subject: [PATCH 087/550] fix(deps): update dependency replace-in-file to v6.3.5 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ca186e75cb..d8fe244114 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21917,9 +21917,9 @@ replace-ext@^1.0.0: integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== replace-in-file@^6.0.0: - version "6.3.2" - resolved "https://registry.npmjs.org/replace-in-file/-/replace-in-file-6.3.2.tgz#0f19835137177c89932f45df319f3539a019484f" - integrity sha512-Dbt5pXKvFVPL3WAaEB3ZX+95yP0CeAtIPJDwYzHbPP5EAHn+0UoegH/Wg3HKflU9dYBH8UnBC2NvY3P+9EZtTg== + version "6.3.5" + resolved "https://registry.npmjs.org/replace-in-file/-/replace-in-file-6.3.5.tgz#ff956b0ab5bc96613207d603d197cd209400a654" + integrity sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg== dependencies: chalk "^4.1.2" glob "^7.2.0" From d82f66e7d6b4b38607aa950ff574464d73f11e92 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 14:26:16 +0000 Subject: [PATCH 088/550] fix(deps): update dependency rollup-plugin-dts to v4.2.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index ca186e75cb..7cdf2f7738 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22193,9 +22193,9 @@ roarr@^2.15.3: sprintf-js "^1.1.2" rollup-plugin-dts@^4.0.1: - version "4.2.1" - resolved "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.1.tgz#c17968a0f7c5ae70a9e0ab37e715f3ef63da01c7" - integrity sha512-eaxQZNUJ5iQcxNGlpJ1CUgG4OSVqWjDZ3nNSWBIoGrpcote2aNphSe1RJOaSYkb8dwn3o+rYm1vvld/5z3EGSQ== + version "4.2.2" + resolved "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.2.tgz#82876b8784213af29b02cf260b45e404ff835ce1" + integrity sha512-A3g6Rogyko/PXeKoUlkjxkP++8UDVpgA7C+Tdl77Xj4fgEaIjPSnxRmR53EzvoYy97VMVwLAOcWJudaVAuxneQ== dependencies: magic-string "^0.26.1" optionalDependencies: From b8884fd579e89187d293d6ff2dccc0557fcc6b08 Mon Sep 17 00:00:00 2001 From: goenning Date: Wed, 18 May 2022 22:20:45 +0100 Subject: [PATCH 089/550] introduce AzureDevOpsEntityProvider Signed-off-by: goenning --- .changeset/dry-tables-sniff.md | 62 ++++++ docs/integrations/azure/discovery.md | 73 +++++-- .../api-report.md | 21 ++ .../catalog-backend-module-azure/config.d.ts | 59 ++++++ .../catalog-backend-module-azure/package.json | 8 +- .../catalog-backend-module-azure/src/index.ts | 3 +- .../AzureDevOpsDiscoveryProcessor.test.ts | 4 +- .../AzureDevOpsDiscoveryProcessor.ts | 2 +- .../src/processors/index.ts | 17 ++ .../AzureDevOpsEntityProvider.test.ts | 193 ++++++++++++++++++ .../providers/AzureDevOpsEntityProvider.ts | 167 +++++++++++++++ .../src/providers/config.test.ts | 67 ++++++ .../src/providers/config.ts | 53 +++++ .../src/providers/index.ts | 17 ++ .../src/providers/types.ts | 24 +++ 15 files changed, 751 insertions(+), 19 deletions(-) create mode 100644 .changeset/dry-tables-sniff.md create mode 100644 plugins/catalog-backend-module-azure/config.d.ts rename plugins/catalog-backend-module-azure/src/{ => processors}/AzureDevOpsDiscoveryProcessor.test.ts (99%) rename plugins/catalog-backend-module-azure/src/{ => processors}/AzureDevOpsDiscoveryProcessor.ts (99%) create mode 100644 plugins/catalog-backend-module-azure/src/processors/index.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/config.test.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/config.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/index.ts create mode 100644 plugins/catalog-backend-module-azure/src/providers/types.ts diff --git a/.changeset/dry-tables-sniff.md b/.changeset/dry-tables-sniff.md new file mode 100644 index 0000000000..6dd0914d70 --- /dev/null +++ b/.changeset/dry-tables-sniff.md @@ -0,0 +1,62 @@ +--- +'@backstage/plugin-catalog-backend-module-azure': patch +--- + +Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. + +In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply +the following changes: + +**Before:** + +```yaml +# app-config.yaml + +catalog: + locations: + - type: azure-discovery + target: https://dev.azure.com/myorg/myproject +``` + +```ts +/* packages/backend/src/plugins/catalog.ts */ + +import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors ... */ +builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); +``` + +**After:** + +```yaml +# app-config.yaml + +catalog: + providers: + azureDevOps: + anyProviderId: + organization: myorg + project: myproject +``` + +```ts +/* packages/backend/src/plugins/catalog.ts */ + +import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors and/or providers ... */ +builder.addEntityProvider( + ...AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: Duration.fromObject({ minutes: 30 }), + timeout: Duration.fromObject({ minutes: 3 }), + }), + }), +); +``` + +Visit [https://backstage.io/docs/integrations/azure/discovery](https://backstage.io/docs/integrations/azure/discovery) for more details and options on configuration. diff --git a/docs/integrations/azure/discovery.md b/docs/integrations/azure/discovery.md index 9293b6d9d7..2295d7367f 100644 --- a/docs/integrations/azure/discovery.md +++ b/docs/integrations/azure/discovery.md @@ -6,25 +6,78 @@ sidebar_label: Discovery description: Automatically discovering catalog entities from repositories in an Azure DevOps organization --- -The Azure DevOps integration has a special discovery processor for discovering -catalog entities within an Azure DevOps. The processor will crawl the Azure +The Azure DevOps integration has a special entity provider for discovering +catalog entities within an Azure DevOps. The provider will crawl your Azure DevOps organization and register entities matching the configured path. This can be useful as an alternative to static locations or manually adding things to the catalog. ## Installation -You will have to add the processors in the catalog initialization code of your -backend. They are not installed by default, therefore you have to add a -dependency to `@backstage/plugin-catalog-backend-module-azure` to your backend -package. +At your configuration, you add one or more provider configs: + +```yaml +# app-config.yaml +catalog: + providers: + azureDevOps: + yourProviderId: # identifies your dataset / provider independent of config changes + organization: myorg + project: myproject + repository: service-* # this will match all repos starting with service-* + path: /catalog-info.yaml + anotherProviderId: # another identifier + organization: myorg + project: myproject + repository: '*' # this will match all repos starting with service-* + path: /src/*/catalog-info.yaml # this will search for files deep inside the /src folder + yetAotherProviderId: # guess, what? Another one :) + host: selfhostedazure.yourcompany.com + organization: myorg + project: myproject +``` + +The parameters available are: + +- `host:` Leave empty for Cloud hosted, otherwise set to your self-hosted instance host. +- `organization:` Your organization slug. Required. +- `project:` Your project slug. Required. +- `repository:` The repository name. Wildcards are supported as show on the examples above. If not set, all repositories will be searched. +- `path:` Where to find catalog-info.yaml files. Defaults to /catalog-info.yaml. + +To use the entity provider, you'll need an Azure integration +[set up](locations.md) with `host` and `token`. + +As this provider is not one of the default providers, you will first need to install +the Azure catalog plugin: ```bash # From your Backstage root directory yarn add --cwd packages/backend @backstage/plugin-catalog-backend-module-azure ``` -And then add the processors to your catalog builder: +Once you've done that, you'll also need to add the segment below to `packages/backend/src/plugins/catalog.ts`: + +```diff +/* packages/backend/src/plugins/catalog.ts */ ++import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors and/or providers ... */ ++builder.addEntityProvider( ++ ...AzureDevOpsEntityProvider.fromConfig(env.config, { ++ logger: env.logger, ++ schedule: env.scheduler.createScheduledTaskRunner({ ++ frequency: Duration.fromObject({ minutes: 30 }), ++ timeout: Duration.fromObject({ minutes: 3 }), ++ }), ++ }), ++); +``` + +## Alternative Processor + +As alternative to the entity provider `AzureDevOpsEntityProvider` you can still use the `AzureDevopsDiscoveryProcessor`. ```diff // In packages/backend/src/plugins/catalog.ts @@ -37,12 +90,6 @@ And then add the processors to your catalog builder: + builder.addProcessor(AzureDevOpsDiscoveryProcessor.fromConfig(env.config, { logger: env.logger })); ``` -## Configuration - -To use the discovery processor, you'll need a Azure integration -[set up](locations.md) with a `AZURE_TOKEN`. Then you can add a location target -to the catalog configuration: - ```yaml catalog: locations: diff --git a/plugins/catalog-backend-module-azure/api-report.md b/plugins/catalog-backend-module-azure/api-report.md index 139db6aab5..22f5015c9b 100644 --- a/plugins/catalog-backend-module-azure/api-report.md +++ b/plugins/catalog-backend-module-azure/api-report.md @@ -6,9 +6,12 @@ import { CatalogProcessor } from '@backstage/plugin-catalog-backend'; import { CatalogProcessorEmit } from '@backstage/plugin-catalog-backend'; import { Config } from '@backstage/config'; +import { EntityProvider } from '@backstage/plugin-catalog-backend'; +import { EntityProviderConnection } from '@backstage/plugin-catalog-backend'; import { LocationSpec } from '@backstage/plugin-catalog-backend'; import { Logger } from 'winston'; import { ScmIntegrationRegistry } from '@backstage/integration'; +import { TaskRunner } from '@backstage/backend-tasks'; // @public export class AzureDevOpsDiscoveryProcessor implements CatalogProcessor { @@ -32,4 +35,22 @@ export class AzureDevOpsDiscoveryProcessor implements CatalogProcessor { emit: CatalogProcessorEmit, ): Promise; } + +// @public +export class AzureDevOpsEntityProvider implements EntityProvider { + // (undocumented) + connect(connection: EntityProviderConnection): Promise; + // (undocumented) + static fromConfig( + configRoot: Config, + options: { + logger: Logger; + schedule: TaskRunner; + }, + ): AzureDevOpsEntityProvider[]; + // (undocumented) + getProviderName(): string; + // (undocumented) + refresh(logger: Logger): Promise; +} ``` diff --git a/plugins/catalog-backend-module-azure/config.d.ts b/plugins/catalog-backend-module-azure/config.d.ts new file mode 100644 index 0000000000..6e423c9415 --- /dev/null +++ b/plugins/catalog-backend-module-azure/config.d.ts @@ -0,0 +1,59 @@ +/* + * Copyright 2020 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. + */ + +interface AzureDevOpsConfig { + /** + * (Optional) The DevOps host; leave empty for `dev.azure.com`, otherwise set to your self-hosted instance host. + * @visibility backend + */ + host: string; + /** + * (Required) Your organization slug. + * @visibility backend + */ + organization: string; + /** + * (Required) Your project slug. + * @visibility backend + */ + project: string; + /** + * (Optional) The repository name. Wildcards are supported as show on the examples above. + * If not set, all repositories will be searched. + * @visibility backend + */ + repository?: string; + /** + * (Optional) Where to find catalog-info.yaml files. Wildcards are supported. + * If not set, defaults to /catalog-info.yaml. + * @visibility backend + */ + path?: string; +} + +export interface Config { + catalog?: { + /** + * List of provider-specific options and attributes + */ + providers?: { + /** + * AzureDevopsEntityProvider configuration + */ + azureDevOps?: Record; + }; + }; +} diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index ffaa368bff..ae919507a3 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -35,6 +35,7 @@ "dependencies": { "@backstage/backend-common": "^0.13.6-next.1", "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-tasks": "^0.3.1", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.1", @@ -42,6 +43,7 @@ "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", + "uuid": "^8.0.0", "node-fetch": "^2.6.7", "winston": "^3.2.1" }, @@ -51,6 +53,8 @@ "@types/lodash": "^4.14.151" }, "files": [ - "dist" - ] + "dist", + "config.d.ts" + ], + "configSchema": "config.d.ts" } diff --git a/plugins/catalog-backend-module-azure/src/index.ts b/plugins/catalog-backend-module-azure/src/index.ts index f6c61e52a5..a71c40ee6c 100644 --- a/plugins/catalog-backend-module-azure/src/index.ts +++ b/plugins/catalog-backend-module-azure/src/index.ts @@ -20,4 +20,5 @@ * @packageDocumentation */ -export { AzureDevOpsDiscoveryProcessor } from './AzureDevOpsDiscoveryProcessor'; +export { AzureDevOpsDiscoveryProcessor } from './processors'; +export { AzureDevOpsEntityProvider } from './providers'; diff --git a/plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.test.ts b/plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.test.ts similarity index 99% rename from plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.test.ts rename to plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.test.ts index e6eed8d976..9000b177fa 100644 --- a/plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.test.ts +++ b/plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.test.ts @@ -21,9 +21,9 @@ import { AzureDevOpsDiscoveryProcessor, parseUrl, } from './AzureDevOpsDiscoveryProcessor'; -import { codeSearch } from './lib'; +import { codeSearch } from '../lib'; -jest.mock('./lib'); +jest.mock('../lib'); const mockCodeSearch = codeSearch as jest.MockedFunction; describe('AzureDevOpsDiscoveryProcessor', () => { diff --git a/plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.ts b/plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.ts similarity index 99% rename from plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.ts rename to plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.ts index bdc7255f44..ad63fef810 100644 --- a/plugins/catalog-backend-module-azure/src/AzureDevOpsDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-azure/src/processors/AzureDevOpsDiscoveryProcessor.ts @@ -26,7 +26,7 @@ import { processingResult, } from '@backstage/plugin-catalog-backend'; import { Logger } from 'winston'; -import { codeSearch } from './lib'; +import { codeSearch } from '../lib'; /** * Extracts repositories out of an Azure DevOps org. diff --git a/plugins/catalog-backend-module-azure/src/processors/index.ts b/plugins/catalog-backend-module-azure/src/processors/index.ts new file mode 100644 index 0000000000..9c76336804 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/processors/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 { AzureDevOpsDiscoveryProcessor } from './AzureDevOpsDiscoveryProcessor'; diff --git a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts new file mode 100644 index 0000000000..e25073e2b3 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts @@ -0,0 +1,193 @@ +/* + * Copyright 2022 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 { getVoidLogger } from '@backstage/backend-common'; +import { TaskInvocationDefinition, TaskRunner } from '@backstage/backend-tasks'; +import { ConfigReader } from '@backstage/config'; +import { EntityProviderConnection } from '@backstage/plugin-catalog-backend'; +import { CodeSearchResultItem } from '../lib'; +import { AzureDevOpsEntityProvider } from './AzureDevOpsEntityProvider'; +import { codeSearch } from '../lib'; + +jest.mock('../lib'); +const mockCodeSearch = codeSearch as jest.MockedFunction; + +class PersistingTaskRunner implements TaskRunner { + private tasks: TaskInvocationDefinition[] = []; + + getTasks() { + return this.tasks; + } + + run(task: TaskInvocationDefinition): Promise { + this.tasks.push(task); + return Promise.resolve(undefined); + } +} + +const logger = getVoidLogger(); + +describe('AzureDevOpsEntityProvider', () => { + afterEach(() => { + mockCodeSearch.mockClear(); + }); + + const expectMutation = async ( + providerId: string, + providerConfig: object, + codeSearchResults: CodeSearchResultItem[], + expectedBaseUrl: string, + names: Record, + integrationConfig?: object, + ) => { + const config = new ConfigReader({ + integrations: { + azure: integrationConfig ? [integrationConfig] : [], + }, + catalog: { + providers: { + azureDevOps: { + [providerId]: providerConfig, + }, + }, + }, + }); + + mockCodeSearch.mockResolvedValueOnce(codeSearchResults); + + const schedule = new PersistingTaskRunner(); + const entityProviderConnection: EntityProviderConnection = { + applyMutation: jest.fn(), + }; + + const provider = AzureDevOpsEntityProvider.fromConfig(config, { + logger, + schedule, + })[0]; + expect(provider.getProviderName()).toEqual( + `azureDevOps-provider:${providerId}`, + ); + + await provider.connect(entityProviderConnection); + + const taskDef = schedule.getTasks()[0]; + expect(taskDef.id).toEqual(`azureDevOps-provider:${providerId}:refresh`); + await (taskDef.fn as () => Promise)(); + + const expectedEntities = codeSearchResults.map(item => { + const url = encodeURI( + `${expectedBaseUrl}/_git/${item.repository.name}?path=${item.path}`, + ); + return { + entity: { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Location', + metadata: { + annotations: { + 'backstage.io/managed-by-location': `url:${url}`, + 'backstage.io/managed-by-origin-location': `url:${url}`, + }, + name: names[`${item.repository.name}?path=${item.path}`], + }, + spec: { + presence: 'required', + target: `${url}`, + type: 'url', + }, + }, + locationKey: `azureDevOps-provider:${providerId}`, + }; + }); + + expect(entityProviderConnection.applyMutation).toBeCalledWith({ + type: 'full', + entities: expectedEntities, + }); + }; + + // eslint-disable-next-line jest/expect-expect + it('no mutation when repos are empty', async () => { + return expectMutation( + 'allRepos', + { + organization: 'myorganization', + project: 'myproject', + }, + [], + 'https://dev.azure.com/myorganization/myproject', + {}, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('single mutation when repos have 1 file found', async () => { + return expectMutation( + 'allReposSingleFile', + { + organization: 'myorganization', + project: 'myproject', + }, + [ + { + fileName: 'catalog-info.yaml', + path: '/catalog-info.yaml', + repository: { + name: 'myrepo', + }, + }, + ], + 'https://dev.azure.com/myorganization/myproject', + { + 'myrepo?path=/catalog-info.yaml': + 'generated-87865246726bb12a8c4fb4f914443f1fbb91648c', + }, + ); + }); + + // eslint-disable-next-line jest/expect-expect + it('single mutation when multiple repos have multiple files', async () => { + return expectMutation( + 'allReposMultipleFiles', + { + organization: 'myorganization', + project: 'myproject', + }, + [ + { + fileName: 'catalog-info.yaml', + path: '/catalog-info.yaml', + repository: { + name: 'myrepo', + }, + }, + { + fileName: 'catalog-info.yaml', + path: '/catalog-info.yaml', + repository: { + name: 'myotherrepo', + }, + }, + ], + 'https://dev.azure.com/myorganization/myproject', + { + 'myrepo?path=/catalog-info.yaml': + 'generated-87865246726bb12a8c4fb4f914443f1fbb91648c', + 'myotherrepo?path=/catalog-info.yaml': + 'generated-2deccac384c34d0dca37be0ebb4b1c8cf6913fe1', + }, + ); + }); +}); diff --git a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts new file mode 100644 index 0000000000..e2165c887d --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts @@ -0,0 +1,167 @@ +/* + * Copyright 2022 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 { TaskRunner } from '@backstage/backend-tasks'; +import { Config } from '@backstage/config'; +import { AzureIntegration, ScmIntegrations } from '@backstage/integration'; +import { + EntityProvider, + EntityProviderConnection, + LocationSpec, + locationSpecToLocationEntity, +} from '@backstage/plugin-catalog-backend'; +import { readAzureDevOpsConfigs } from './config'; +import { Logger } from 'winston'; +import { AzureDevOpsConfig } from './types'; +import * as uuid from 'uuid'; +import { codeSearch, CodeSearchResultItem } from '../lib'; + +/** + * Provider which discovers catalog files within an Azure DevOps repositories. + * + * Use `AzureDevOpsEntityProvider.fromConfig(...)` to create instances. + * + * @public + */ +export class AzureDevOpsEntityProvider implements EntityProvider { + private readonly logger: Logger; + private readonly scheduleFn: () => Promise; + private connection?: EntityProviderConnection; + + static fromConfig( + configRoot: Config, + options: { + logger: Logger; + schedule: TaskRunner; + }, + ): AzureDevOpsEntityProvider[] { + const providerConfigs = readAzureDevOpsConfigs(configRoot); + + return providerConfigs.map(providerConfig => { + const integration = ScmIntegrations.fromConfig(configRoot).azure.byHost( + providerConfig.host, + ); + + if (!integration) { + throw new Error( + `There is no Azure integration for host ${providerConfig.host}. Please add a configuration entry for it under integrations.azure`, + ); + } + + return new AzureDevOpsEntityProvider( + providerConfig, + integration, + options.logger, + options.schedule, + ); + }); + } + + private constructor( + private readonly config: AzureDevOpsConfig, + private readonly integration: AzureIntegration, + logger: Logger, + schedule: TaskRunner, + ) { + this.logger = logger.child({ + target: this.getProviderName(), + }); + + this.scheduleFn = this.createScheduleFn(schedule); + } + + private createScheduleFn(schedule: TaskRunner): () => Promise { + return async () => { + const taskId = `${this.getProviderName()}:refresh`; + return schedule.run({ + id: taskId, + fn: async () => { + const logger = this.logger.child({ + class: AzureDevOpsEntityProvider.prototype.constructor.name, + taskId, + taskInstanceId: uuid.v4(), + }); + + try { + await this.refresh(logger); + } catch (error) { + logger.error(error); + } + }, + }); + }; + } + + /** {@inheritdoc @backstage/plugin-catalog-backend#EntityProvider.getProviderName} */ + getProviderName(): string { + return `azureDevOps-provider:${this.config.id}`; + } + + /** {@inheritdoc @backstage/plugin-catalog-backend#EntityProvider.connect} */ + async connect(connection: EntityProviderConnection): Promise { + this.connection = connection; + await this.scheduleFn(); + } + + async refresh(logger: Logger) { + if (!this.connection) { + throw new Error('Not initialized'); + } + + logger.info('Discovering Azure DevOps catalog files'); + + const files = await codeSearch( + this.integration.config, + this.config.organization, + this.config.project, + this.config.repository, + this.config.path, + ); + + logger.info(`Discovered ${files.length} catalog files`); + + const locations = files.map(key => this.createLocationSpec(key)); + + await this.connection.applyMutation({ + type: 'full', + entities: locations.map(location => { + return { + locationKey: this.getProviderName(), + entity: locationSpecToLocationEntity({ location }), + }; + }), + }); + + logger.info( + `Committed ${locations.length} locations for AzureDevOps catalog files`, + ); + } + + private createLocationSpec(file: CodeSearchResultItem): LocationSpec { + return { + type: 'url', + target: this.createObjectUrl(file), + presence: 'required', + }; + } + + private createObjectUrl(file: CodeSearchResultItem): string { + const baseUrl = `https://${this.config.host}/${this.config.organization}/${this.config.project}`; + return encodeURI( + `${baseUrl}/_git/${file.repository.name}?path=${file.path}`, + ); + } +} diff --git a/plugins/catalog-backend-module-azure/src/providers/config.test.ts b/plugins/catalog-backend-module-azure/src/providers/config.test.ts new file mode 100644 index 0000000000..236c9a48d4 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/config.test.ts @@ -0,0 +1,67 @@ +/* + * Copyright 2020 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/config'; +import { readAzureDevOpsConfigs } from './config'; + +describe('readAzureDevOpsConfigs', () => { + it('reads all provider configs and set default values', () => { + const provider1 = { + host: 'azure.mycompany.com', + organization: 'mycompany', + project: 'myproject', + }; + const provider2 = { + organization: 'mycompany', + project: 'myproject', + }; + const provider3 = { + organization: 'mycompany', + project: 'myproject', + repository: 'service-*', + }; + const config = { + catalog: { + providers: { + azureDevOps: { provider1, provider2, provider3 }, + }, + }, + }; + + const actual = readAzureDevOpsConfigs(new ConfigReader(config)); + + expect(actual).toHaveLength(3); + expect(actual[0]).toEqual({ + ...provider1, + path: '/catalog-info.yaml', + repository: '*', + id: 'provider1', + }); + expect(actual[1]).toEqual({ + ...provider2, + host: 'dev.azure.com', + path: '/catalog-info.yaml', + repository: '*', + id: 'provider2', + }); + expect(actual[2]).toEqual({ + ...provider3, + host: 'dev.azure.com', + path: '/catalog-info.yaml', + id: 'provider3', + }); + }); +}); diff --git a/plugins/catalog-backend-module-azure/src/providers/config.ts b/plugins/catalog-backend-module-azure/src/providers/config.ts new file mode 100644 index 0000000000..1d143fc882 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/config.ts @@ -0,0 +1,53 @@ +/* + * Copyright 2022 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 { Config } from '@backstage/config'; +import { AzureDevOpsConfig } from './types'; + +export function readAzureDevOpsConfigs(config: Config): AzureDevOpsConfig[] { + const configs: AzureDevOpsConfig[] = []; + + const providerConfigs = config.getOptionalConfig( + 'catalog.providers.azureDevOps', + ); + + if (!providerConfigs) { + return configs; + } + + for (const id of providerConfigs.keys()) { + configs.push(readAzureDevOpsConfig(id, providerConfigs.getConfig(id))); + } + + return configs; +} + +function readAzureDevOpsConfig(id: string, config: Config): AzureDevOpsConfig { + const organization = config.getString('organization'); + const project = config.getString('project'); + const host = config.getOptionalString('host') || 'dev.azure.com'; + const repository = config.getOptionalString('repository') || '*'; + const path = config.getOptionalString('path') || '/catalog-info.yaml'; + + return { + id, + host, + organization, + project, + repository, + path, + }; +} diff --git a/plugins/catalog-backend-module-azure/src/providers/index.ts b/plugins/catalog-backend-module-azure/src/providers/index.ts new file mode 100644 index 0000000000..450fc0af27 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 { AzureDevOpsEntityProvider } from './AzureDevOpsEntityProvider'; diff --git a/plugins/catalog-backend-module-azure/src/providers/types.ts b/plugins/catalog-backend-module-azure/src/providers/types.ts new file mode 100644 index 0000000000..15ea00ff13 --- /dev/null +++ b/plugins/catalog-backend-module-azure/src/providers/types.ts @@ -0,0 +1,24 @@ +/* + * Copyright 2022 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 type AzureDevOpsConfig = { + id: string; + host: string; + organization: string; + project: string; + repository: string; + path: string; +}; From e69cd23e20551ee7eacc3582339720b4271c0a12 Mon Sep 17 00:00:00 2001 From: goenning Date: Sun, 22 May 2022 16:12:16 +0100 Subject: [PATCH 090/550] code review Signed-off-by: goenning --- .changeset/dry-tables-sniff.md | 6 +-- docs/integrations/azure/discovery.md | 37 +++++++++++-------- .../AzureDevOpsEntityProvider.test.ts | 8 ++-- .../providers/AzureDevOpsEntityProvider.ts | 2 +- 4 files changed, 31 insertions(+), 22 deletions(-) diff --git a/.changeset/dry-tables-sniff.md b/.changeset/dry-tables-sniff.md index 6dd0914d70..e433d00d62 100644 --- a/.changeset/dry-tables-sniff.md +++ b/.changeset/dry-tables-sniff.md @@ -49,11 +49,11 @@ import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-mod const builder = await CatalogBuilder.create(env); /** ... other processors and/or providers ... */ builder.addEntityProvider( - ...AzureDevOpsEntityProvider.fromConfig(env.config, { + AzureDevOpsEntityProvider.fromConfig(env.config, { logger: env.logger, schedule: env.scheduler.createScheduledTaskRunner({ - frequency: Duration.fromObject({ minutes: 30 }), - timeout: Duration.fromObject({ minutes: 3 }), + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, }), }), ); diff --git a/docs/integrations/azure/discovery.md b/docs/integrations/azure/discovery.md index 2295d7367f..ac6812fdf1 100644 --- a/docs/integrations/azure/discovery.md +++ b/docs/integrations/azure/discovery.md @@ -12,6 +12,22 @@ DevOps organization and register entities matching the configured path. This can be useful as an alternative to static locations or manually adding things to the catalog. +This guide explains how to install and configure the Azure DevOps Entity Provider (recommended) or the Azure DevOps Processor. + +## Dependencies + +### Code Search Feature + +Azure discovery is driven by the Code Search feature in Azure DevOps, this may not be enabled by default. For Azure +DevOps Services you can confirm this by looking at the installed extensions in your Organization Settings. For Azure +DevOps Server you'll find this information in your Collection Settings. + +If the Code Search extension is not listed then you can install it from the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=ms.vss-code-search&targetId=f9352dac-ba6e-434e-9241-a848a510ce3f&utm_source=vstsproduct&utm_medium=SearchExtStatus). + +### Azure Integration + +Setup [Azure integration](locations.md) with `host` and `token`. Host must be `dev.azure.com` for Cloud users, othersite set this to your on-premise hostname. + ## Installation At your configuration, you add one or more provider configs: @@ -40,13 +56,14 @@ catalog: The parameters available are: - `host:` Leave empty for Cloud hosted, otherwise set to your self-hosted instance host. -- `organization:` Your organization slug. Required. +- `organization:` Your Organization slug (or Collection for on-premise users). Required. - `project:` Your project slug. Required. - `repository:` The repository name. Wildcards are supported as show on the examples above. If not set, all repositories will be searched. - `path:` Where to find catalog-info.yaml files. Defaults to /catalog-info.yaml. -To use the entity provider, you'll need an Azure integration -[set up](locations.md) with `host` and `token`. +_Note:_ the path parameter follows the same rules as the search on Azure DevOps +web interface. For more details visit the +[official search documentation](https://docs.microsoft.com/en-us/azure/devops/project/search/get-started-search?view=azure-devops). As this provider is not one of the default providers, you will first need to install the Azure catalog plugin: @@ -65,7 +82,7 @@ Once you've done that, you'll also need to add the segment below to `packages/ba const builder = await CatalogBuilder.create(env); /** ... other processors and/or providers ... */ +builder.addEntityProvider( -+ ...AzureDevOpsEntityProvider.fromConfig(env.config, { ++ AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: Duration.fromObject({ minutes: 30 }), @@ -77,7 +94,7 @@ const builder = await CatalogBuilder.create(env); ## Alternative Processor -As alternative to the entity provider `AzureDevOpsEntityProvider` you can still use the `AzureDevopsDiscoveryProcessor`. +As an alternative to the entity provider `AzureDevOpsEntityProvider`, you can still use the `AzureDevopsDiscoveryProcessor`. ```diff // In packages/backend/src/plugins/catalog.ts @@ -117,13 +134,3 @@ When using a custom pattern, the target is composed of five parts: - The path within each repository to find the catalog YAML file. This will usually be `/catalog-info.yaml`, `/src/*/catalog-info.yaml` or a similar variation for catalog files stored in the root directory of each repository. - -_Note:_ the path parameter follows the same rules as the search on Azure DevOps -web interface. For more details visit the -[official search documentation](https://docs.microsoft.com/en-us/azure/devops/project/search/get-started-search?view=azure-devops). - -Azure discovery is driven by the Code Search feature in Azure DevOps, this may not be enabled by default. For Azure -DevOps Services you can confirm this by looking at the installed extensions in your Organization Settings. For Azure -DevOps Server you'll find this information in your Collection Settings. - -If the Code Search extension is not listed then you can install it from the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=ms.vss-code-search&targetId=f9352dac-ba6e-434e-9241-a848a510ce3f&utm_source=vstsproduct&utm_medium=SearchExtStatus). diff --git a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts index e25073e2b3..08379807d3 100644 --- a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts +++ b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.test.ts @@ -78,13 +78,15 @@ describe('AzureDevOpsEntityProvider', () => { schedule, })[0]; expect(provider.getProviderName()).toEqual( - `azureDevOps-provider:${providerId}`, + `AzureDevOpsEntityProvider:${providerId}`, ); await provider.connect(entityProviderConnection); const taskDef = schedule.getTasks()[0]; - expect(taskDef.id).toEqual(`azureDevOps-provider:${providerId}:refresh`); + expect(taskDef.id).toEqual( + `AzureDevOpsEntityProvider:${providerId}:refresh`, + ); await (taskDef.fn as () => Promise)(); const expectedEntities = codeSearchResults.map(item => { @@ -108,7 +110,7 @@ describe('AzureDevOpsEntityProvider', () => { type: 'url', }, }, - locationKey: `azureDevOps-provider:${providerId}`, + locationKey: `AzureDevOpsEntityProvider:${providerId}`, }; }); diff --git a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts index e2165c887d..aca30f367a 100644 --- a/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts +++ b/plugins/catalog-backend-module-azure/src/providers/AzureDevOpsEntityProvider.ts @@ -107,7 +107,7 @@ export class AzureDevOpsEntityProvider implements EntityProvider { /** {@inheritdoc @backstage/plugin-catalog-backend#EntityProvider.getProviderName} */ getProviderName(): string { - return `azureDevOps-provider:${this.config.id}`; + return `AzureDevOpsEntityProvider:${this.config.id}`; } /** {@inheritdoc @backstage/plugin-catalog-backend#EntityProvider.connect} */ From f881c3de858d96f697189d877e93d41bfda2a8fe Mon Sep 17 00:00:00 2001 From: goenning Date: Sun, 22 May 2022 16:19:03 +0100 Subject: [PATCH 091/550] code review Signed-off-by: goenning --- .changeset/dry-tables-sniff.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.changeset/dry-tables-sniff.md b/.changeset/dry-tables-sniff.md index e433d00d62..9f6dd72399 100644 --- a/.changeset/dry-tables-sniff.md +++ b/.changeset/dry-tables-sniff.md @@ -15,7 +15,7 @@ the following changes: catalog: locations: - type: azure-discovery - target: https://dev.azure.com/myorg/myproject + target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml ``` ```ts @@ -37,8 +37,11 @@ catalog: providers: azureDevOps: anyProviderId: - organization: myorg - project: myproject + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml ``` ```ts From 1d88d38a5601aa5ce26baee0baa76db10f8f2b07 Mon Sep 17 00:00:00 2001 From: goenning Date: Sun, 22 May 2022 16:19:50 +0100 Subject: [PATCH 092/550] fix indent Signed-off-by: goenning --- .changeset/dry-tables-sniff.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.changeset/dry-tables-sniff.md b/.changeset/dry-tables-sniff.md index 9f6dd72399..3c938935d6 100644 --- a/.changeset/dry-tables-sniff.md +++ b/.changeset/dry-tables-sniff.md @@ -37,11 +37,11 @@ catalog: providers: azureDevOps: anyProviderId: - host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com - organization: myorg # For on-premise this would be your Collection - project: myproject - repository: service-* - path: /catalog-info.yaml + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml ``` ```ts From b1f7d6c7e4b27783393dc23f27cd12f3dc7bb6e9 Mon Sep 17 00:00:00 2001 From: goenning Date: Tue, 31 May 2022 10:59:18 +0100 Subject: [PATCH 093/550] fix typo Signed-off-by: goenning --- docs/integrations/azure/discovery.md | 2 +- plugins/catalog-backend-module-azure/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/integrations/azure/discovery.md b/docs/integrations/azure/discovery.md index ac6812fdf1..c607a6550e 100644 --- a/docs/integrations/azure/discovery.md +++ b/docs/integrations/azure/discovery.md @@ -26,7 +26,7 @@ If the Code Search extension is not listed then you can install it from the [Vis ### Azure Integration -Setup [Azure integration](locations.md) with `host` and `token`. Host must be `dev.azure.com` for Cloud users, othersite set this to your on-premise hostname. +Setup [Azure integration](locations.md) with `host` and `token`. Host must be `dev.azure.com` for Cloud users, otherwise set this to your on-premise hostname. ## Installation diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index ae919507a3..bbc8e1d566 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -35,7 +35,7 @@ "dependencies": { "@backstage/backend-common": "^0.13.6-next.1", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/backend-tasks": "^0.3.1", + "@backstage/backend-tasks": "^0.3.2-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.1", From c0e81d340f40d5cd236a36771c36250a2a8b9115 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 15:30:13 +0000 Subject: [PATCH 094/550] fix(deps): update dependency typescript-json-schema to v0.53.1 Signed-off-by: Renovate Bot --- yarn.lock | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index f3ef22ca8c..7ec7da4904 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19798,6 +19798,11 @@ path-case@^3.0.4: dot-case "^3.0.4" tslib "^2.0.3" +path-equal@1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/path-equal/-/path-equal-1.1.2.tgz#260e7c449c4c2022f68cc5fa6e617e892858250d" + integrity sha512-p5kxPPwCdbf5AdXzT1bUBJomhgBlEjRBavYNr1XUpMFIE4Hnf2roueCMXudZK5tnaAu1tTmp3GPzqwJK45IHEA== + path-exists@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" @@ -24540,24 +24545,20 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript-json-schema@^0.53.0: - version "0.53.0" - resolved "https://registry.npmjs.org/typescript-json-schema/-/typescript-json-schema-0.53.0.tgz#ac5b89e4b0af55be422f475a041360e0556f88ea" - integrity sha512-BcFxC9nipQQOXxrBGI/jOWU31BwzVh6vqJR008G8VHKJtQ8YrZX6veriXfTK1l+L0/ff0yKl3mZigMLA6ZqkHg== + version "0.53.1" + resolved "https://registry.npmjs.org/typescript-json-schema/-/typescript-json-schema-0.53.1.tgz#9204547f3e145169b40928998366ff6d28b81d32" + integrity sha512-Hg+RnOKUd38MOzC0rDft03a8xvwO+gCcj1F77smw2tCoZYQpFoLtrXWBGdvCX+REliko5WYel2kux17HPFqjLQ== dependencies: "@types/json-schema" "^7.0.9" "@types/node" "^16.9.2" glob "^7.1.7" + path-equal "1.1.2" safe-stable-stringify "^2.2.0" ts-node "^10.2.1" - typescript "~4.5.0" + typescript "~4.6.0" yargs "^17.1.1" -typescript@~4.5.0: - version "4.5.5" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" - integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== - -typescript@~4.6.3, typescript@~4.6.4: +typescript@~4.6.0, typescript@~4.6.3, typescript@~4.6.4: version "4.6.4" resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz#caa78bbc3a59e6a5c510d35703f6a09877ce45e9" integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== From 36b045a529a84590fd073044d494eb9db60732a6 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 15:31:01 +0000 Subject: [PATCH 095/550] fix(deps): update dependency webpack-dev-server to v4.9.1 Signed-off-by: Renovate Bot --- yarn.lock | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index f3ef22ca8c..6516c5528f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22899,13 +22899,13 @@ socket.io@^2.2.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" -sockjs@^0.3.21: - version "0.3.21" - resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417" - integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw== +sockjs@^0.3.24: + version "0.3.24" + resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" + integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== dependencies: faye-websocket "^0.11.3" - uuid "^3.4.0" + uuid "^8.3.2" websocket-driver "^0.7.4" socks-proxy-agent@^5.0.0: @@ -25037,7 +25037,7 @@ uuid@8.3.2, uuid@^8.0.0, uuid@^8.2.0, uuid@^8.3.0, uuid@^8.3.2: resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== -uuid@^3.3.2, uuid@^3.4.0: +uuid@^3.3.2: version "3.4.0" resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -25317,9 +25317,9 @@ webpack-dev-middleware@^5.3.1: schema-utils "^4.0.0" webpack-dev-server@^4.7.3: - version "4.9.0" - resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.0.tgz#737dbf44335bb8bde68f8f39127fc401c97a1557" - integrity sha512-+Nlb39iQSOSsFv0lWUuUTim3jDQO8nhK3E68f//J2r5rIcp4lULHXz2oZ0UVdEeWXEh5lSzYUlzarZhDAeAVQw== + version "4.9.1" + resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.1.tgz#184607b0287c791aeaa45e58e8fe75fcb4d7e2a8" + integrity sha512-CTMfu2UMdR/4OOZVHRpdy84pNopOuigVIsRbGX3LVDMWNP8EUgC5mUBMErbwBlHTEX99ejZJpVqrir6EXAEajA== dependencies: "@types/bonjour" "^3.5.9" "@types/connect-history-api-fallback" "^1.3.5" @@ -25345,7 +25345,7 @@ webpack-dev-server@^4.7.3: schema-utils "^4.0.0" selfsigned "^2.0.1" serve-index "^1.9.1" - sockjs "^0.3.21" + sockjs "^0.3.24" spdy "^4.0.2" webpack-dev-middleware "^5.3.1" ws "^8.4.2" From 84504c846d1afddcc6b82c698b59aced94bd50d3 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Wed, 1 Jun 2022 09:14:01 -0700 Subject: [PATCH 096/550] docs: update changeset to say minor, **breaking** Signed-off-by: Isaiah Thiessen --- .changeset/eight-ducks-beg.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.changeset/eight-ducks-beg.md b/.changeset/eight-ducks-beg.md index 729c1992fa..ed61c305b2 100644 --- a/.changeset/eight-ducks-beg.md +++ b/.changeset/eight-ducks-beg.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-pagerduty': patch +'@backstage/plugin-pagerduty': minor --- -Use identityApi to provide auth token for pagerduty API calls. +**Breaking**: Use identityApi to provide auth token for pagerduty API calls. From be11212916960da149f47b7e5932ff22477eca89 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 16:19:47 +0000 Subject: [PATCH 097/550] chore(deps): update dependency @types/d3-shape to v3.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6516c5528f..11c7564811 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5845,9 +5845,9 @@ "@types/d3-path" "^2" "@types/d3-shape@^3.0.1": - version "3.0.2" - resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.0.2.tgz#4b1ca4ddaac294e76b712429726d40365cd1e8ca" - integrity sha512-5+ButCmIfNX8id5seZ7jKj3igdcxx+S9IDBiT35fQGTLZUfkFgTv+oBH34xgeoWDKpWcMITSzBILWQtBoN5Piw== + version "3.1.0" + resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.0.tgz#1d87a6ddcf28285ef1e5c278ca4bdbc0658f3505" + integrity sha512-jYIYxFFA9vrJ8Hd4Se83YI6XF+gzDL1aC5DCsldai4XYYiVNdhtpGbA/GM6iyQ8ayhSp3a148LY34hy7A4TxZA== dependencies: "@types/d3-path" "*" From a8944bcea5eb68515dbaecafc3b2202ea361aeda Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 16:20:35 +0000 Subject: [PATCH 098/550] chore(deps): update dependency @types/webpack-env to v1.17.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6516c5528f..b4aca9e3aa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6860,9 +6860,9 @@ "@types/node" "*" "@types/webpack-env@^1.15.2", "@types/webpack-env@^1.15.3": - version "1.16.4" - resolved "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.4.tgz#1f4969042bf76d7ef7b5914f59b3b60073f4e1f4" - integrity sha512-llS8qveOUX3wxHnSykP5hlYFFuMfJ9p5JvIyCiBgp7WTfl6K5ZcyHj8r8JsN/J6QODkAsRRCLIcTuOCu8etkUw== + version "1.17.0" + resolved "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.17.0.tgz#f99ce359f1bfd87da90cc4a57cab0a18f34a48d0" + integrity sha512-eHSaNYEyxRA5IAG0Ym/yCyf86niZUIF/TpWKofQI/CVfh5HsMEUyfE2kwFxha4ow0s5g0LfISQxpDKjbRDrizw== "@types/webpack@^5.28.0": version "5.28.0" From 4dcf3d05a550a75bf66697ae5f35b975423e146d Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Wed, 1 Jun 2022 09:29:29 -0700 Subject: [PATCH 099/550] fix: prettier, README capitalization Signed-off-by: Isaiah Thiessen --- app-config.yaml | 1 + plugins/dynatrace/README.md | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index 1c9bc66a45..63181b091d 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -114,6 +114,7 @@ proxy: allowedHeaders: ['Authorization'] headers: Authorization: Basic ${GOCD_AUTH_CREDENTIALS} + '/dynatrace': target: https://your.dynatrace.instance.com/api/v2 headers: diff --git a/plugins/dynatrace/README.md b/plugins/dynatrace/README.md index b6ed083832..ea6f8e8a07 100644 --- a/plugins/dynatrace/README.md +++ b/plugins/dynatrace/README.md @@ -1,4 +1,4 @@ -# dynatrace +# Dynatrace Welcome to the Dynatrace plugin! @@ -10,7 +10,7 @@ This plugin uses the Backstage proxy to communicate with Dynatrace's REST APIs. #### Dynatrace API Key -The dynatrace plugin will require the following information, to be used in the configuration options detailed below: +The Dynatrace plugin will require the following information, to be used in the configuration options detailed below: - Dynatrace API URL, e.g. `https://my-dynatrace-instance.dynatrace.com/api/v2` - Dynatrace API access token (see [documentation](https://www.dynatrace.com/support/help/dynatrace-api/basics/dynatrace-api-authentication)), with the following permissions: @@ -19,7 +19,7 @@ The dynatrace plugin will require the following information, to be used in the c #### Plugin Configuration -This plugin requires a proxy endpoint for dynatrace configured in `app-config.yaml` like so: +This plugin requires a proxy endpoint for Dynatrace configured in `app-config.yaml` like so: ```yaml proxy: @@ -38,7 +38,7 @@ dynatrace: #### Catalog Configuration -To show information from dynatrace for a catalog entity, add the following annotation to `catalog-info.yaml`: +To show information from Dynatrace for a catalog entity, add the following annotation to `catalog-info.yaml`: ```yaml # catalog-info.yaml @@ -49,7 +49,7 @@ metadata: # [...] ``` -The `DYNATRACE_ENTITY_ID` can be found in dynatrace by browsing to the entity (a service, synthetic, frontend, workload, etc.). It will be located in the browser address bar in the `id` paramater and has the format `ENTITY_TYPE-ENTITY_ID`, where `ENTITY_TYPE` will be one of `SERVICE`, `SYNTHETIC_TEST`, or other, and `ENTITY_ID` will be a string of characters containing uppercase letters and numbers. +The `DYNATRACE_ENTITY_ID` can be found in Dynatrace by browsing to the entity (a service, synthetic, frontend, workload, etc.). It will be located in the browser address bar in the `id` paramater and has the format `ENTITY_TYPE-ENTITY_ID`, where `ENTITY_TYPE` will be one of `SERVICE`, `SYNTHETIC_TEST`, or other, and `ENTITY_ID` will be a string of characters containing uppercase letters and numbers. ## Disclaimer From a139131db92acecc84d46cca2dc8ad363717c916 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 17:16:04 +0000 Subject: [PATCH 100/550] chore(deps): update dependency alpine to v3.16 Signed-off-by: Renovate Bot --- contrib/docker/cookiecutter-with-jinja2-extensions/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/docker/cookiecutter-with-jinja2-extensions/Dockerfile b/contrib/docker/cookiecutter-with-jinja2-extensions/Dockerfile index b854a00675..e41d324730 100644 --- a/contrib/docker/cookiecutter-with-jinja2-extensions/Dockerfile +++ b/contrib/docker/cookiecutter-with-jinja2-extensions/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.15 +FROM alpine:3.16 RUN apk add --update \ git \ From 994343a8db0f6f2be2de3089e6039130fb160776 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 17:16:56 +0000 Subject: [PATCH 101/550] chore(deps): update dependency cypress to v9.7.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 11c7564811..bba01309ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10431,9 +10431,9 @@ cypress-plugin-snapshots@^1.4.4: unidiff "1.0.2" cypress@^9.5.0: - version "9.6.1" - resolved "https://registry.npmjs.org/cypress/-/cypress-9.6.1.tgz#a7d6b5a53325b3dc4960181f5800a5ade0f085eb" - integrity sha512-ECzmV7pJSkk+NuAhEw6C3D+RIRATkSb2VAHXDY6qGZbca/F9mv5pPsj2LO6Ty6oIFVBTrwCyL9agl28MtJMe2g== + version "9.7.0" + resolved "https://registry.npmjs.org/cypress/-/cypress-9.7.0.tgz#bf55b2afd481f7a113ef5604aa8b693564b5e744" + integrity sha512-+1EE1nuuuwIt/N1KXRR2iWHU+OiIt7H28jJDyyI4tiUftId/DrXYEwoDa5+kH2pki1zxnA0r6HrUGHV5eLbF5Q== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" From d82e038aee88bca1a4ca72146bd70ac3a218066f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 18:06:40 +0000 Subject: [PATCH 102/550] chore(deps): update dependency lint-staged to v12.5.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c4b83083ea..e4b139560d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16625,9 +16625,9 @@ linkify-it@^3.0.1: uc.micro "^1.0.1" lint-staged@^12.2.0: - version "12.4.3" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-12.4.3.tgz#914fa468458364e14cc952145db552d87c8847b6" - integrity sha512-eH6SKOmdm/ZwCRMTZAmM3q3dPkpq6vco/BfrOw8iGun4Xs/thYegPD/MLIwKO+iPkzibkLJuQcRhRLXKvaKreg== + version "12.5.0" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz#d6925747480ae0e380d13988522f9dd8ef9126e3" + integrity sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g== dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" From 4dc99b9c6ebe526d656dc51202e04ac4bbe7b626 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 1 Jun 2022 19:09:51 +0000 Subject: [PATCH 103/550] fix(deps): update dependency core-js to v3.22.8 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e4b139560d..3d67453987 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9983,9 +9983,9 @@ core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.10: integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== core-js@^3.4.1, core-js@^3.6.5: - version "3.22.7" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.7.tgz#8d6c37f630f6139b8732d10f2c114c3f1d00024f" - integrity sha512-Jt8SReuDKVNZnZEzyEQT5eK6T2RRCXkfTq7Lo09kpm+fHjgGewSbNjV+Wt4yZMhPDdzz2x1ulI5z/w4nxpBseg== + version "3.22.8" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" + integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" From 758e20eb8749b51311eabf525ea9ee80e3dbe335 Mon Sep 17 00:00:00 2001 From: Danang Date: Thu, 2 Jun 2022 17:20:05 +1000 Subject: [PATCH 104/550] Fix the missing filter in the toolbar when passing a custom component in the core-components Table" Signed-off-by: Danang --- .../src/components/Table/Table.test.tsx | 51 +++++++++++++++++++ .../src/components/Table/Table.tsx | 2 + 2 files changed, 53 insertions(+) diff --git a/packages/core-components/src/components/Table/Table.test.tsx b/packages/core-components/src/components/Table/Table.test.tsx index 12431dea59..2582be8506 100644 --- a/packages/core-components/src/components/Table/Table.test.tsx +++ b/packages/core-components/src/components/Table/Table.test.tsx @@ -160,4 +160,55 @@ describe('
', () => { ); expect(rendered.getByText('EMPTY')).toBeInTheDocument(); }); + + describe('with custom components', () => { + const CustomRow = ({ data }) => { + return ( + + + + + ); + }; + + it('should not override the toolbar implementation', async () => { + const rendered = await renderInTestApp( +
customised cell {data.col1}customised cell {data.col2}
EMPTY} + columns={minProps.columns} + data={minProps.data} + filters={[ + { + column: column1.title, + type: 'select', + }, + ]} + components={{ + Row: CustomRow, + }} + />, + ); + + expect(rendered.getByText('Filters (0)')).toBeInTheDocument(); + }); + + it('should render the provided custom row component correctly', async () => { + const rendered = await renderInTestApp( +
EMPTY} + columns={minProps.columns} + data={minProps.data} + components={{ + Row: CustomRow, + }} + />, + ); + + expect( + rendered.getByText('customised cell first value, first row'), + ).toBeInTheDocument(); + }); + }); }); diff --git a/packages/core-components/src/components/Table/Table.tsx b/packages/core-components/src/components/Table/Table.tsx index 84e88ae01e..65edb5b69b 100644 --- a/packages/core-components/src/components/Table/Table.tsx +++ b/packages/core-components/src/components/Table/Table.tsx @@ -303,6 +303,7 @@ export function Table(props: TableProps) { initialState, emptyContent, onStateChange, + components, ...restProps } = props; const tableClasses = useTableStyles(); @@ -493,6 +494,7 @@ export function Table(props: TableProps) { Header: StyledMTableHeader, Toolbar, Body, + ...components, }} options={{ ...defaultOptions, ...options }} columns={MTColumns} From 7d355c4b3fee29f40fb074b110af4e2109ccd9f5 Mon Sep 17 00:00:00 2001 From: Danang Date: Thu, 2 Jun 2022 17:24:12 +1000 Subject: [PATCH 105/550] Add changeset Signed-off-by: Danang --- .changeset/smart-melons-think.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/smart-melons-think.md diff --git a/.changeset/smart-melons-think.md b/.changeset/smart-melons-think.md new file mode 100644 index 0000000000..2af8b1671f --- /dev/null +++ b/.changeset/smart-melons-think.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-components': patch +--- + +Fix the missing filter in the toolbar when passing a custom component in the core-components Table From bae8b41a519d4c8e3998f790fea2cd7c68f52c3b Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 07:31:02 +0000 Subject: [PATCH 106/550] fix(deps): update dependency @types/passport to v1.0.8 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e4b139560d..7112bf4e56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6448,9 +6448,9 @@ "@types/passport" "*" "@types/passport@*", "@types/passport@^1.0.3": - version "1.0.7" - resolved "https://registry.npmjs.org/@types/passport/-/passport-1.0.7.tgz#85892f14932168158c86aecafd06b12f5439467a" - integrity sha512-JtswU8N3kxBYgo+n9of7C97YQBT+AYPP2aBfNGTzABqPAZnK/WOAaKfh3XesUYMZRrXFuoPc2Hv0/G/nQFveHw== + version "1.0.8" + resolved "https://registry.npmjs.org/@types/passport/-/passport-1.0.8.tgz#cc3ee653777365ac02f630c3c08fb755567b7387" + integrity sha512-Gdcvis7+7G/Mobm+25AeFi+oe5teBhHzpbCOFWeN10Bj8tnoEE1L5lkraQjzmDEKkJQuM7xSJUGIFGl/giyRfQ== dependencies: "@types/express" "*" From 0cb2ee7944605eec789293ba1b485c17bb3faa16 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 07:47:18 +0000 Subject: [PATCH 107/550] fix(deps): update dependency terser-webpack-plugin to v5.3.3 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index 929c009ca5..aeb34fe9bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3276,6 +3276,14 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" +"@jridgewell/trace-mapping@^0.3.7": + version "0.3.13" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" + integrity sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jsdevtools/ono@^7.1.3": version "7.1.3" resolved "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" @@ -23961,14 +23969,14 @@ terminal-link@^2.0.0: supports-hyperlinks "^2.0.0" terser-webpack-plugin@*, terser-webpack-plugin@^5.1.3: - version "5.3.1" - resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.1.tgz#0320dcc270ad5372c1e8993fabbd927929773e54" - integrity sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g== + version "5.3.3" + resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.3.tgz#8033db876dd5875487213e87c627bca323e5ed90" + integrity sha512-Fx60G5HNYknNTNQnzQ1VePRuu89ZVYWfjRAeT5rITuCY/1b08s49e5kSQwHDirKZWuoKOBRFS98EUUoZ9kLEwQ== dependencies: + "@jridgewell/trace-mapping" "^0.3.7" jest-worker "^27.4.5" schema-utils "^3.1.1" serialize-javascript "^6.0.0" - source-map "^0.6.1" terser "^5.7.2" terser@^5.10.0, terser@^5.7.2: From 0904b2a090463a14a55d805172d71f61200aa07a Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 08:30:50 +0000 Subject: [PATCH 108/550] chore(deps): update dependency puppeteer to v14.2.0 Signed-off-by: Renovate Bot --- yarn.lock | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3e589bb2e9..6698c0cb27 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11070,10 +11070,10 @@ detect-port-alt@^1.1.6: address "^1.0.1" debug "^2.6.0" -devtools-protocol@0.0.982423: - version "0.0.982423" - resolved "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.982423.tgz#39ac3791d4c5b90ebb416d4384663b7b0cc44154" - integrity sha512-FnVW2nDbjGNw1uD/JRC+9U5768W7e1TfUwqbDTcSsAu1jXFjITSX8w3rkW5FEpHRMPPGpvNSmO1pOpqByiWscA== +devtools-protocol@0.0.1001819: + version "0.0.1001819" + resolved "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1001819.tgz#0a98f44cefdb02cc684f3d5e6bd898a1690231d9" + integrity sha512-G6OsIFnv/rDyxSqBa2lDLR6thp9oJioLsb2Gl+LbQlyoA9/OBAkrTU9jiCcQ8Pnh7z4d6slDiLaogR5hzgJLmQ== dezalgo@1.0.3, dezalgo@^1.0.0: version "1.0.3" @@ -20825,13 +20825,13 @@ pupa@^2.1.1: escape-goat "^2.0.0" puppeteer@^14.0.0: - version "14.1.2" - resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.1.2.tgz#bde2ca5585fb56ed906bccced898d551778f5c5d" - integrity sha512-Nsyy1f7pT2KyBb15u8DHi4q3FfrIqOptAV0r4Bd1lAp2pHz8T0o4DO+On1yWZ7jFbcx1w3AqZ/e7nKqnc3Vwyg== + version "14.2.0" + resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.2.0.tgz#edcb37b2e83c1892e630a830dd3daea040b1cd50" + integrity sha512-JLHGePg1W3V+CShk6veNug+Ip2BoeZmbIbJFJqS/L5YK/DCWRkJZpJ+4OzNY5Mf+lYR9srKp5pXV84bcBWnX7w== dependencies: cross-fetch "3.1.5" debug "4.3.4" - devtools-protocol "0.0.982423" + devtools-protocol "0.0.1001819" extract-zip "2.0.1" https-proxy-agent "5.0.1" pkg-dir "4.2.0" @@ -20840,7 +20840,7 @@ puppeteer@^14.0.0: rimraf "3.0.2" tar-fs "2.1.1" unbzip2-stream "1.4.3" - ws "8.6.0" + ws "8.7.0" q@^1.5.1: version "1.5.1" @@ -25676,16 +25676,21 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -ws@8.6.0, ws@^8.0.0, ws@^8.3.0: - version "8.6.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" - integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== +ws@8.7.0: + version "8.7.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" + integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== ws@^7.3.1, ws@^7.4.6: version "7.5.7" resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== +ws@^8.0.0, ws@^8.3.0: + version "8.6.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" + integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== + ws@^8.4.2: version "8.5.0" resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" From 2b68d6de73348cfb38b447bc9ee1d632ad0f68ea Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 08:44:46 +0000 Subject: [PATCH 109/550] chore(deps): update dependency ts-node to v10.8.0 Signed-off-by: Renovate Bot --- yarn.lock | 57 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/yarn.lock b/yarn.lock index 58ab5552b6..cb18821821 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1962,17 +1962,12 @@ resolved "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== -"@cspotcode/source-map-consumer@0.8.0": - version "0.8.0" - resolved "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" - integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== - -"@cspotcode/source-map-support@0.7.0": - version "0.7.0" - resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" - integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== dependencies: - "@cspotcode/source-map-consumer" "0.8.0" + "@jridgewell/trace-mapping" "0.3.9" "@cypress/request@^2.88.10": version "2.88.10" @@ -3259,14 +3254,22 @@ integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== "@jridgewell/resolve-uri@^3.0.3": - version "3.0.5" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" - integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== + version "3.0.7" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" + integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.11" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" - integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== + version "1.4.13" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" + integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping@^0.3.0": version "0.3.4" @@ -7382,12 +7385,12 @@ acorn@^7.1.1: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0: +acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.0: version "8.7.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== -acorn@^8.7.1: +acorn@^8.4.1, acorn@^8.7.1: version "8.7.1" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== @@ -24364,11 +24367,11 @@ ts-morph@^15.0.0: code-block-writer "^11.0.0" ts-node@^10.0.0, ts-node@^10.2.1, ts-node@^10.4.0: - version "10.7.0" - resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.7.0.tgz#35d503d0fab3e2baa672a0e94f4b40653c2463f5" - integrity sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A== + version "10.8.0" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.8.0.tgz#3ceb5ac3e67ae8025c1950626aafbdecb55d82ce" + integrity sha512-/fNd5Qh+zTt8Vt1KbYZjRHCE9sI5i7nqfD/dzBBRDeVXZXS6kToW6R7tTU6Nd4XavFs0mAVCg29Q//ML7WsZYA== dependencies: - "@cspotcode/source-map-support" "0.7.0" + "@cspotcode/source-map-support" "^0.8.0" "@tsconfig/node10" "^1.0.7" "@tsconfig/node12" "^1.0.7" "@tsconfig/node14" "^1.0.0" @@ -24379,7 +24382,7 @@ ts-node@^10.0.0, ts-node@^10.2.1, ts-node@^10.4.0: create-require "^1.1.0" diff "^4.0.1" make-error "^1.1.1" - v8-compile-cache-lib "^3.0.0" + v8-compile-cache-lib "^3.0.1" yn "3.1.1" ts-node@^9: @@ -25062,10 +25065,10 @@ uvu@^0.5.0: kleur "^4.0.3" sade "^1.7.3" -v8-compile-cache-lib@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8" - integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA== +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-compile-cache@^2.0.3: version "2.1.0" From 5a4ffaba0b48a04b95976d209eb26a10e260938f Mon Sep 17 00:00:00 2001 From: kielosz Date: Thu, 2 Jun 2022 11:16:56 +0200 Subject: [PATCH 110/550] Add api-report Signed-off-by: kielosz --- plugins/org/api-report.md | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/org/api-report.md b/plugins/org/api-report.md index 5f71be44bc..d020dfb438 100644 --- a/plugins/org/api-report.md +++ b/plugins/org/api-report.md @@ -50,6 +50,7 @@ export const MyGroupsSidebarItem: (props: { singularTitle: string; pluralTitle: string; icon: IconComponent; + filter?: Record; }) => JSX.Element | null; // @public (undocumented) From 9813ef27cecd3631f3283da6db74df9381c4ae23 Mon Sep 17 00:00:00 2001 From: kielosz Date: Thu, 2 Jun 2022 11:32:13 +0200 Subject: [PATCH 111/550] Add example Signed-off-by: kielosz --- .changeset/spicy-forks-return.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/.changeset/spicy-forks-return.md b/.changeset/spicy-forks-return.md index d23ce6995b..b36366639c 100644 --- a/.changeset/spicy-forks-return.md +++ b/.changeset/spicy-forks-return.md @@ -2,4 +2,25 @@ '@backstage/plugin-org': patch --- -Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component +Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: + +```diff +// app/src/components/Root/Root.tsx + + + //... + }> + {/* Global nav, not org-specific */} + //... + + + //... + + + +``` From bc98948d15fd525bad485e4d01ddc934f266ca9d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 09:34:16 +0000 Subject: [PATCH 112/550] chore(deps): update dependency typescript to ~4.7.0 Signed-off-by: Renovate Bot --- package.json | 2 +- yarn.lock | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 9596e55c1a..5ac8c2117c 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "semver": "^7.3.2", "shx": "^0.3.2", "ts-node": "^10.4.0", - "typescript": "~4.6.4", + "typescript": "~4.7.0", "yarn-lock-check": "^1.0.5" }, "prettier": "@spotify/prettier-config", diff --git a/yarn.lock b/yarn.lock index 5b58e178aa..8aef46ad67 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24575,11 +24575,16 @@ typescript-json-schema@^0.53.0: typescript "~4.6.0" yargs "^17.1.1" -typescript@~4.6.0, typescript@~4.6.3, typescript@~4.6.4: +typescript@~4.6.0, typescript@~4.6.3: version "4.6.4" resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz#caa78bbc3a59e6a5c510d35703f6a09877ce45e9" integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== +typescript@~4.7.0: + version "4.7.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4" + integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A== + ua-parser-js@^0.7.18: version "0.7.28" resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" From 35a3bb967840bab6b38af409545ada19fbeead62 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 09:35:05 +0000 Subject: [PATCH 113/550] chore(deps): update dependency ws to v8.7.0 Signed-off-by: Renovate Bot --- yarn.lock | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5b58e178aa..f3bebc0b97 100644 --- a/yarn.lock +++ b/yarn.lock @@ -25685,7 +25685,7 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -ws@8.7.0: +ws@8.7.0, ws@^8.0.0, ws@^8.3.0: version "8.7.0" resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== @@ -25695,11 +25695,6 @@ ws@^7.3.1, ws@^7.4.6: resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== -ws@^8.0.0, ws@^8.3.0: - version "8.6.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" - integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== - ws@^8.4.2: version "8.5.0" resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" From 2e6b24d53704cc15714df9965399f2b88ff8beb5 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 12:02:00 +0200 Subject: [PATCH 114/550] clean up api report for search-backend-node package Signed-off-by: Emma Indal --- plugins/search-backend-node/api-report.md | 43 ++++++++----------- .../search-backend-node/src/IndexBuilder.ts | 9 +++- plugins/search-backend-node/src/Scheduler.ts | 10 +++-- .../NewlineDelimitedJsonCollatorFactory.ts | 8 ++-- .../src/engines/LunrSearchEngine.ts | 9 ++-- .../src/engines/LunrSearchEngineIndexer.ts | 3 +- .../src/indexing/BatchSearchEngineIndexer.ts | 5 ++- .../src/indexing/DecoratorBase.ts | 2 +- .../src/test-utils/TestPipeline.ts | 4 +- plugins/search-backend-node/src/types.ts | 7 +-- 10 files changed, 54 insertions(+), 46 deletions(-) diff --git a/plugins/search-backend-node/api-report.md b/plugins/search-backend-node/api-report.md index 8c10b031a2..7649bc5d0f 100644 --- a/plugins/search-backend-node/api-report.md +++ b/plugins/search-backend-node/api-report.md @@ -24,7 +24,7 @@ import { Transform } from 'stream'; import { UrlReader } from '@backstage/backend-common'; import { Writable } from 'stream'; -// @beta +// @public export abstract class BatchSearchEngineIndexer extends Writable { constructor(options: BatchSearchEngineOptions); abstract finalize(): Promise; @@ -32,19 +32,19 @@ export abstract class BatchSearchEngineIndexer extends Writable { abstract initialize(): Promise; } -// @beta (undocumented) +// @public export type BatchSearchEngineOptions = { batchSize: number; }; -// @beta (undocumented) +// @public export type ConcreteLunrQuery = { lunrQueryBuilder: lunr_2.Index.QueryBuilder; documentTypes?: string[]; pageSize: number; }; -// @beta +// @public export abstract class DecoratorBase extends Transform { constructor(); abstract decorate( @@ -54,7 +54,7 @@ export abstract class DecoratorBase extends Transform { abstract initialize(): Promise; } -// @beta (undocumented) +// @public export class IndexBuilder { constructor({ logger, searchEngine }: IndexBuilderOptions); addCollator({ factory, schedule }: RegisterCollatorParameters): void; @@ -62,22 +62,20 @@ export class IndexBuilder { build(): Promise<{ scheduler: Scheduler; }>; - // (undocumented) getDocumentTypes(): Record; - // (undocumented) getSearchEngine(): SearchEngine; } -// @beta (undocumented) +// @public export type IndexBuilderOptions = { searchEngine: SearchEngine; logger: Logger; }; -// @beta (undocumented) +// @public export type LunrQueryTranslator = (query: SearchQuery) => ConcreteLunrQuery; -// @beta (undocumented) +// @public export class LunrSearchEngine implements SearchEngine { constructor({ logger }: { logger: Logger }); // (undocumented) @@ -100,7 +98,7 @@ export class LunrSearchEngine implements SearchEngine { protected translator: QueryTranslator; } -// @beta (undocumented) +// @public export class LunrSearchEngineIndexer extends BatchSearchEngineIndexer { constructor(); // (undocumented) @@ -115,7 +113,7 @@ export class LunrSearchEngineIndexer extends BatchSearchEngineIndexer { initialize(): Promise; } -// @beta +// @public export class NewlineDelimitedJsonCollatorFactory implements DocumentCollatorFactory { @@ -131,7 +129,7 @@ export class NewlineDelimitedJsonCollatorFactory readonly visibilityPermission: Permission | undefined; } -// @beta (undocumented) +// @public export type NewlineDelimitedJsonCollatorFactoryOptions = { type: string; searchPattern: string; @@ -140,18 +138,18 @@ export type NewlineDelimitedJsonCollatorFactoryOptions = { visibilityPermission?: Permission; }; -// @beta +// @public export interface RegisterCollatorParameters { factory: DocumentCollatorFactory; schedule: TaskRunner; } -// @beta +// @public export interface RegisterDecoratorParameters { factory: DocumentDecoratorFactory; } -// @beta (undocumented) +// @public export class Scheduler { constructor({ logger }: { logger: Logger }); addToSchedule({ id, task, scheduledRunner }: ScheduleTaskParameters): void; @@ -160,25 +158,22 @@ export class Scheduler { } // @public -export interface ScheduleTaskParameters { - // (undocumented) +export type ScheduleTaskParameters = { id: string; - // (undocumented) - scheduledRunner: TaskRunner; - // (undocumented) task: TaskFunction; -} + scheduledRunner: TaskRunner; +}; export { SearchEngine }; -// @beta +// @public export class TestPipeline { execute(): Promise; withDocuments(documents: IndexableDocument[]): TestPipeline; static withSubject(subject: Readable | Transform | Writable): TestPipeline; } -// @beta +// @public export type TestPipelineResult = { error: unknown; documents: IndexableDocument[]; diff --git a/plugins/search-backend-node/src/IndexBuilder.ts b/plugins/search-backend-node/src/IndexBuilder.ts index 2131c6937d..3e1dae1c2f 100644 --- a/plugins/search-backend-node/src/IndexBuilder.ts +++ b/plugins/search-backend-node/src/IndexBuilder.ts @@ -28,7 +28,8 @@ import { } from './types'; /** - * @beta + * Used for adding collators, decorators and compile them into tasks which are added to a scheduler returned to the caller. + * @public */ export class IndexBuilder { private collators: Record; @@ -45,10 +46,16 @@ export class IndexBuilder { this.searchEngine = searchEngine; } + /** + * Responsible for returning the registered search engine. + */ getSearchEngine(): SearchEngine { return this.searchEngine; } + /** + * Responsible for returning the registered document types. + */ getDocumentTypes(): Record { return this.documentTypes; } diff --git a/plugins/search-backend-node/src/Scheduler.ts b/plugins/search-backend-node/src/Scheduler.ts index 9f3d95b112..404823c53a 100644 --- a/plugins/search-backend-node/src/Scheduler.ts +++ b/plugins/search-backend-node/src/Scheduler.ts @@ -24,16 +24,18 @@ type TaskEnvelope = { }; /** - * @public ScheduleTaskParameters + * ScheduleTaskParameters + * @public */ -export interface ScheduleTaskParameters { +export type ScheduleTaskParameters = { id: string; task: TaskFunction; scheduledRunner: TaskRunner; -} +}; /** - * @beta + * Scheduler responsible for all search tasks. + * @public */ export class Scheduler { private logger: Logger; diff --git a/plugins/search-backend-node/src/collators/NewlineDelimitedJsonCollatorFactory.ts b/plugins/search-backend-node/src/collators/NewlineDelimitedJsonCollatorFactory.ts index 42c43818f1..fde6b9412a 100644 --- a/plugins/search-backend-node/src/collators/NewlineDelimitedJsonCollatorFactory.ts +++ b/plugins/search-backend-node/src/collators/NewlineDelimitedJsonCollatorFactory.ts @@ -23,7 +23,8 @@ import { Readable } from 'stream'; import { Logger } from 'winston'; /** - * @beta + * Options for instansiate NewlineDelimitedJsonCollatorFactory + * @public */ export type NewlineDelimitedJsonCollatorFactoryOptions = { type: string; @@ -60,15 +61,13 @@ export type NewlineDelimitedJsonCollatorFactoryOptions = { * }); * ``` * - * @beta + * @public */ export class NewlineDelimitedJsonCollatorFactory implements DocumentCollatorFactory { - /** {@inheritDoc @backstage/plugin-search-common#DocumentCollatorFactory."type"} */ readonly type: string; - /** {@inheritDoc @backstage/plugin-search-common#DocumentCollatorFactory.visibilityPermission} */ public readonly visibilityPermission: Permission | undefined; private constructor( @@ -123,7 +122,6 @@ export class NewlineDelimitedJsonCollatorFactory } } - /** {@inheritDoc @backstage/plugin-search-common#DocumentCollatorFactory.getCollator} */ async getCollator(): Promise { // Search for files matching the given pattern. const lastUrl = await this.lastUrl(); diff --git a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts index 656cd3e1eb..4a5f4cdd18 100644 --- a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts +++ b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts @@ -27,7 +27,8 @@ import { Logger } from 'winston'; import { LunrSearchEngineIndexer } from './LunrSearchEngineIndexer'; /** - * @beta + * Type of translated query for the Lunr Search Engine. + * @public */ export type ConcreteLunrQuery = { lunrQueryBuilder: lunr.Index.QueryBuilder; @@ -41,12 +42,14 @@ type LunrResultEnvelope = { }; /** - * @beta + * Translator repsonsible for translating search term and filters to a query that the Lunr Search Engine understands. + * @public */ export type LunrQueryTranslator = (query: SearchQuery) => ConcreteLunrQuery; /** - * @beta + * Lunr specific search engine implementation. + * @public */ export class LunrSearchEngine implements SearchEngine { protected lunrIndices: Record = {}; diff --git a/plugins/search-backend-node/src/engines/LunrSearchEngineIndexer.ts b/plugins/search-backend-node/src/engines/LunrSearchEngineIndexer.ts index 4da27be94b..e723957077 100644 --- a/plugins/search-backend-node/src/engines/LunrSearchEngineIndexer.ts +++ b/plugins/search-backend-node/src/engines/LunrSearchEngineIndexer.ts @@ -19,7 +19,8 @@ import lunr from 'lunr'; import { BatchSearchEngineIndexer } from '../indexing'; /** - * @beta + * Lunr specific search engine indexer + * @public */ export class LunrSearchEngineIndexer extends BatchSearchEngineIndexer { private schemaInitialized = false; diff --git a/plugins/search-backend-node/src/indexing/BatchSearchEngineIndexer.ts b/plugins/search-backend-node/src/indexing/BatchSearchEngineIndexer.ts index 6070a577ed..24b90c2a59 100644 --- a/plugins/search-backend-node/src/indexing/BatchSearchEngineIndexer.ts +++ b/plugins/search-backend-node/src/indexing/BatchSearchEngineIndexer.ts @@ -19,7 +19,8 @@ import { IndexableDocument } from '@backstage/plugin-search-common'; import { Writable } from 'stream'; /** - * @beta + * Options for {@link BatchSearchEngineIndexer} + * @public */ export type BatchSearchEngineOptions = { batchSize: number; @@ -28,7 +29,7 @@ export type BatchSearchEngineOptions = { /** * Base class encapsulating batch-based stream processing. Useful as a base * class for search engine indexers. - * @beta + * @public */ export abstract class BatchSearchEngineIndexer extends Writable { private batchSize: number; diff --git a/plugins/search-backend-node/src/indexing/DecoratorBase.ts b/plugins/search-backend-node/src/indexing/DecoratorBase.ts index 0541ab82d7..bcf5729674 100644 --- a/plugins/search-backend-node/src/indexing/DecoratorBase.ts +++ b/plugins/search-backend-node/src/indexing/DecoratorBase.ts @@ -21,7 +21,7 @@ import { Transform } from 'stream'; /** * Base class encapsulating simple async transformations. Useful as a base * class for Backstage search decorators. - * @beta + * @public */ export abstract class DecoratorBase extends Transform { private initialized: Promise; diff --git a/plugins/search-backend-node/src/test-utils/TestPipeline.ts b/plugins/search-backend-node/src/test-utils/TestPipeline.ts index 688cab55be..00dd9b3755 100644 --- a/plugins/search-backend-node/src/test-utils/TestPipeline.ts +++ b/plugins/search-backend-node/src/test-utils/TestPipeline.ts @@ -19,7 +19,7 @@ import { pipeline, Readable, Transform, Writable } from 'stream'; /** * Object resolved after a test pipeline is executed. - * @beta + * @public */ export type TestPipelineResult = { /** @@ -37,7 +37,7 @@ export type TestPipelineResult = { /** * Test utility for Backstage Search collators, decorators, and indexers. - * @beta + * @public */ export class TestPipeline { private collator?: Readable; diff --git a/plugins/search-backend-node/src/types.ts b/plugins/search-backend-node/src/types.ts index a92398e8c8..dfcf4d12ce 100644 --- a/plugins/search-backend-node/src/types.ts +++ b/plugins/search-backend-node/src/types.ts @@ -23,7 +23,8 @@ import { import { Logger } from 'winston'; /** - * @beta + * Options required to instantiate the index builder. + * @public */ export type IndexBuilderOptions = { searchEngine: SearchEngine; @@ -32,7 +33,7 @@ export type IndexBuilderOptions = { /** * Parameters required to register a collator. - * @beta + * @public */ export interface RegisterCollatorParameters { /** @@ -48,7 +49,7 @@ export interface RegisterCollatorParameters { /** * Parameters required to register a decorator - * @beta + * @public */ export interface RegisterDecoratorParameters { /** From 52cc4d852523d6f7dd257cf7e631224a82f7a6ec Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 12:02:58 +0200 Subject: [PATCH 115/550] clean up api report for search-backend package Signed-off-by: Emma Indal --- plugins/search-backend/api-report.md | 4 ---- plugins/search-backend/src/service/router.ts | 6 ++++++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/plugins/search-backend/api-report.md b/plugins/search-backend/api-report.md index c5c8eb7a13..eed61069da 100644 --- a/plugins/search-backend/api-report.md +++ b/plugins/search-backend/api-report.md @@ -11,13 +11,9 @@ import { PermissionAuthorizer } from '@backstage/plugin-permission-common'; import { PermissionEvaluator } from '@backstage/plugin-permission-common'; import { SearchEngine } from '@backstage/plugin-search-backend-node'; -// Warning: (ae-missing-release-tag) "createRouter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export function createRouter(options: RouterOptions): Promise; -// Warning: (ae-missing-release-tag) "RouterOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export type RouterOptions = { engine: SearchEngine; diff --git a/plugins/search-backend/src/service/router.ts b/plugins/search-backend/src/service/router.ts index e42a31981c..f54c2d388f 100644 --- a/plugins/search-backend/src/service/router.ts +++ b/plugins/search-backend/src/service/router.ts @@ -51,6 +51,9 @@ const jsonObjectSchema: z.ZodSchema = z.lazy(() => { return z.record(jsonValueSchema); }); +/** + * @public + */ export type RouterOptions = { engine: SearchEngine; types: Record; @@ -61,6 +64,9 @@ export type RouterOptions = { const allowedLocationProtocols = ['http:', 'https:']; +/** + * @public + */ export async function createRouter( options: RouterOptions, ): Promise { From 72bf15db0ea9c1ef5b8b9ad472025c528615a6f7 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 10:07:11 +0000 Subject: [PATCH 116/550] chore(deps): update storybook monorepo to v6.5.6 Signed-off-by: Renovate Bot --- storybook/yarn.lock | 3495 ++++++++++++++++++++++++------------------- 1 file changed, 1928 insertions(+), 1567 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 8c6380c291..db4c28460f 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -3,11 +3,12 @@ "@ampproject/remapping@^2.1.0": - version "2.1.2" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" - integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg== + version "2.2.0" + resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== dependencies: - "@jridgewell/trace-mapping" "^0.3.0" + "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/trace-mapping" "^0.3.9" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.5.5", "@babel/code-frame@^7.8.3": version "7.16.7" @@ -16,10 +17,10 @@ dependencies: "@babel/highlight" "^7.16.7" -"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.8", "@babel/compat-data@^7.17.0", "@babel/compat-data@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2" - integrity sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ== +"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.17.10": + version "7.17.10" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" + integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw== "@babel/core@7.12.9": version "7.12.9" @@ -44,34 +45,34 @@ source-map "^0.5.0" "@babel/core@^7.12.10", "@babel/core@^7.7.5": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz#6bae81a06d95f4d0dec5bb9d74bbc1f58babdcfe" - integrity sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw== + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz#87b2fcd7cce9becaa7f5acebdc4f09f3dd19d876" + integrity sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ== dependencies: "@ampproject/remapping" "^2.1.0" "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.17.9" - "@babel/helper-compilation-targets" "^7.17.7" - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helpers" "^7.17.9" - "@babel/parser" "^7.17.9" + "@babel/generator" "^7.18.2" + "@babel/helper-compilation-targets" "^7.18.2" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helpers" "^7.18.2" + "@babel/parser" "^7.18.0" "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.9" - "@babel/types" "^7.17.0" + "@babel/traverse" "^7.18.2" + "@babel/types" "^7.18.2" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.1" semver "^6.3.0" -"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz#f4af9fd38fa8de143c29fce3f71852406fc1e2fc" - integrity sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ== +"@babel/generator@^7.12.11", "@babel/generator@^7.12.5", "@babel/generator@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz#33873d6f89b21efe2da63fe554460f3df1c5880d" + integrity sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw== dependencies: - "@babel/types" "^7.17.0" + "@babel/types" "^7.18.2" + "@jridgewell/gen-mapping" "^0.3.0" jsesc "^2.5.1" - source-map "^0.5.0" "@babel/helper-annotate-as-pure@^7.16.7": version "7.16.7" @@ -88,20 +89,20 @@ "@babel/helper-explode-assignable-expression" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.7", "@babel/helper-compilation-targets@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz#a3c2924f5e5f0379b356d4cfb313d1414dc30e46" - integrity sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w== +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.16.7", "@babel/helper-compilation-targets@^7.17.10", "@babel/helper-compilation-targets@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz#67a85a10cbd5fc7f1457fec2e7f45441dc6c754b" + integrity sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ== dependencies: - "@babel/compat-data" "^7.17.7" + "@babel/compat-data" "^7.17.10" "@babel/helper-validator-option" "^7.16.7" - browserslist "^4.17.5" + browserslist "^4.20.2" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.6", "@babel/helper-create-class-features-plugin@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.9.tgz#71835d7fb9f38bd9f1378e40a4c0902fdc2ea49d" - integrity sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ== +"@babel/helper-create-class-features-plugin@^7.17.12", "@babel/helper-create-class-features-plugin@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz#fac430912606331cb075ea8d82f9a4c145a4da19" + integrity sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" "@babel/helper-environment-visitor" "^7.16.7" @@ -111,10 +112,10 @@ "@babel/helper-replace-supers" "^7.16.7" "@babel/helper-split-export-declaration" "^7.16.7" -"@babel/helper-create-regexp-features-plugin@^7.16.7": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz#1dcc7d40ba0c6b6b25618997c5dbfd310f186fe1" - integrity sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA== +"@babel/helper-create-regexp-features-plugin@^7.16.7", "@babel/helper-create-regexp-features-plugin@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz#bb37ca467f9694bbe55b884ae7a5cc1e0084e4fd" + integrity sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" regexpu-core "^5.0.1" @@ -147,12 +148,10 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-environment-visitor@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" - integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== - dependencies: - "@babel/types" "^7.16.7" +"@babel/helper-environment-visitor@^7.16.7", "@babel/helper-environment-visitor@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz#8a6d2dedb53f6bf248e31b4baf38739ee4a637bd" + integrity sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ== "@babel/helper-explode-assignable-expression@^7.16.7": version "7.16.7" @@ -176,24 +175,24 @@ dependencies: "@babel/types" "^7.16.7" -"@babel/helper-member-expression-to-functions@^7.16.7", "@babel/helper-member-expression-to-functions@^7.17.7": +"@babel/helper-member-expression-to-functions@^7.17.7": version "7.17.7" resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz#a34013b57d8542a8c4ff8ba3f747c02452a4d8c4" integrity sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw== dependencies: "@babel/types" "^7.17.0" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7": +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== dependencies: "@babel/types" "^7.16.7" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.16.7", "@babel/helper-module-transforms@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz#3943c7f777139e7954a5355c815263741a9c1cbd" - integrity sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw== +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz#baf05dec7a5875fb9235bd34ca18bad4e21221cd" + integrity sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA== dependencies: "@babel/helper-environment-visitor" "^7.16.7" "@babel/helper-module-imports" "^7.16.7" @@ -201,8 +200,8 @@ "@babel/helper-split-export-declaration" "^7.16.7" "@babel/helper-validator-identifier" "^7.16.7" "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.3" - "@babel/types" "^7.17.0" + "@babel/traverse" "^7.18.0" + "@babel/types" "^7.18.0" "@babel/helper-optimise-call-expression@^7.16.7": version "7.16.7" @@ -216,10 +215,10 @@ resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" - integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.17.12", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz#86c2347da5acbf5583ba0a10aed4c9bf9da9cf96" + integrity sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA== "@babel/helper-remap-async-to-generator@^7.16.8": version "7.16.8" @@ -230,23 +229,23 @@ "@babel/helper-wrap-function" "^7.16.8" "@babel/types" "^7.16.8" -"@babel/helper-replace-supers@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz#e9f5f5f32ac90429c1a4bdec0f231ef0c2838ab1" - integrity sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw== +"@babel/helper-replace-supers@^7.16.7", "@babel/helper-replace-supers@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.2.tgz#41fdfcc9abaf900e18ba6e5931816d9062a7b2e0" + integrity sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q== dependencies: - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-member-expression-to-functions" "^7.16.7" + "@babel/helper-environment-visitor" "^7.18.2" + "@babel/helper-member-expression-to-functions" "^7.17.7" "@babel/helper-optimise-call-expression" "^7.16.7" - "@babel/traverse" "^7.16.7" - "@babel/types" "^7.16.7" + "@babel/traverse" "^7.18.2" + "@babel/types" "^7.18.2" -"@babel/helper-simple-access@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz#aaa473de92b7987c6dfa7ce9a7d9674724823367" - integrity sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA== +"@babel/helper-simple-access@^7.17.7", "@babel/helper-simple-access@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.2.tgz#4dc473c2169ac3a1c9f4a51cfcd091d1c36fcff9" + integrity sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ== dependencies: - "@babel/types" "^7.17.0" + "@babel/types" "^7.18.2" "@babel/helper-skip-transparent-expression-wrappers@^7.16.0": version "7.16.0" @@ -282,81 +281,81 @@ "@babel/traverse" "^7.16.8" "@babel/types" "^7.16.8" -"@babel/helpers@^7.12.5", "@babel/helpers@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz#b2af120821bfbe44f9907b1826e168e819375a1a" - integrity sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q== +"@babel/helpers@^7.12.5", "@babel/helpers@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz#970d74f0deadc3f5a938bfa250738eb4ac889384" + integrity sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg== dependencies: "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.9" - "@babel/types" "^7.17.0" + "@babel/traverse" "^7.18.2" + "@babel/types" "^7.18.2" "@babel/highlight@^7.16.7": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz#61b2ee7f32ea0454612def4fccdae0de232b73e3" - integrity sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg== + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz#257de56ee5afbd20451ac0a75686b6b404257351" + integrity sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg== dependencies: "@babel/helper-validator-identifier" "^7.16.7" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz#9c94189a6062f0291418ca021077983058e171ef" - integrity sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg== +"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.16.7", "@babel/parser@^7.18.0": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz#6774231779dd700e0af29f6ad8d479582d7ce5ef" + integrity sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow== -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" - integrity sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz#1dca338caaefca368639c9ffb095afbd4d420b1e" + integrity sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz#cc001234dfc139ac45f6bcf801866198c8c72ff9" - integrity sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz#0d498ec8f0374b1e2eb54b9cb2c4c78714c77753" + integrity sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" - "@babel/plugin-proposal-optional-chaining" "^7.16.7" + "@babel/plugin-proposal-optional-chaining" "^7.17.12" -"@babel/plugin-proposal-async-generator-functions@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz#3bdd1ebbe620804ea9416706cd67d60787504bc8" - integrity sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ== +"@babel/plugin-proposal-async-generator-functions@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz#094a417e31ce7e692d84bab06c8e2a607cbeef03" + integrity sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-remap-async-to-generator" "^7.16.8" "@babel/plugin-syntax-async-generators" "^7.8.4" -"@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz#925cad7b3b1a2fcea7e59ecc8eb5954f961f91b0" - integrity sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww== +"@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz#84f65c0cc247d46f40a6da99aadd6438315d80a4" + integrity sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.17.12" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-proposal-class-static-block@^7.16.7": - version "7.17.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz#164e8fd25f0d80fa48c5a4d1438a6629325ad83c" - integrity sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA== +"@babel/plugin-proposal-class-static-block@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz#7d02253156e3c3793bdb9f2faac3a1c05f0ba710" + integrity sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.17.6" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-proposal-decorators@^7.12.12": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.17.9.tgz#67a1653be9c77ce5b6c318aa90c8287b87831619" - integrity sha512-EfH2LZ/vPa2wuPwJ26j+kYRkaubf89UlwxKXtxqEm57HrgSEYDB8t4swFP+p8LcI9yiP9ZRJJjo/58hS6BnaDA== + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.18.2.tgz#dbe4086d2d42db489399783c3aa9272e9700afd4" + integrity sha512-kbDISufFOxeczi0v4NQP3p5kIeW6izn/6klfWBrIIdGZZe4UpHR+QU03FAoWjGGd9SUXAwbw2pup1kaL4OQsJQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.17.9" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/helper-replace-supers" "^7.18.2" "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/plugin-syntax-decorators" "^7.17.0" + "@babel/plugin-syntax-decorators" "^7.17.12" charcodes "^0.2.0" "@babel/plugin-proposal-dynamic-import@^7.16.7": @@ -368,43 +367,43 @@ "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-proposal-export-default-from@^7.12.1": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.16.7.tgz#a40ab158ca55627b71c5513f03d3469026a9e929" - integrity sha512-+cENpW1rgIjExn+o5c8Jw/4BuH4eGKKYvkMB8/0ZxFQ9mC0t4z09VsPIwNg6waF69QYC81zxGeAsREGuqQoKeg== + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.17.12.tgz#df785e638618d8ffa14e08c78c44d9695d083b73" + integrity sha512-LpsTRw725eBAXXKUOnJJct+SEaOzwR78zahcLuripD2+dKc2Sj+8Q2DzA+GC/jOpOu/KlDXuxrzG214o1zTauQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-export-default-from" "^7.16.7" -"@babel/plugin-proposal-export-namespace-from@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz#09de09df18445a5786a305681423ae63507a6163" - integrity sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA== +"@babel/plugin-proposal-export-namespace-from@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz#b22864ccd662db9606edb2287ea5fd1709f05378" + integrity sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-proposal-json-strings@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz#9732cb1d17d9a2626a08c5be25186c195b6fa6e8" - integrity sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ== +"@babel/plugin-proposal-json-strings@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz#f4642951792437233216d8c1af370bb0fbff4664" + integrity sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-proposal-logical-assignment-operators@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz#be23c0ba74deec1922e639832904be0bea73cdea" - integrity sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg== +"@babel/plugin-proposal-logical-assignment-operators@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz#c64a1bcb2b0a6d0ed2ff674fd120f90ee4b88a23" + integrity sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz#141fc20b6857e59459d430c850a0011e36561d99" - integrity sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz#1e93079bbc2cbc756f6db6a1925157c4a92b94be" + integrity sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" "@babel/plugin-proposal-numeric-separator@^7.16.7": @@ -424,16 +423,16 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-transform-parameters" "^7.12.1" -"@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.16.7": - version "7.17.3" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz#d9eb649a54628a51701aef7e0ea3d17e2b9dd390" - integrity sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw== +"@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz#79f2390c892ba2a68ec112eb0d895cfbd11155e8" + integrity sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw== dependencies: - "@babel/compat-data" "^7.17.0" - "@babel/helper-compilation-targets" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/compat-data" "^7.17.10" + "@babel/helper-compilation-targets" "^7.17.10" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.16.7" + "@babel/plugin-transform-parameters" "^7.17.12" "@babel/plugin-proposal-optional-catch-binding@^7.16.7": version "7.16.7" @@ -443,40 +442,40 @@ "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" -"@babel/plugin-proposal-optional-chaining@^7.12.7", "@babel/plugin-proposal-optional-chaining@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz#7cd629564724816c0e8a969535551f943c64c39a" - integrity sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA== +"@babel/plugin-proposal-optional-chaining@^7.12.7", "@babel/plugin-proposal-optional-chaining@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz#f96949e9bacace3a9066323a5cf90cfb9de67174" + integrity sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.16.11": - version "7.16.11" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz#e8df108288555ff259f4527dbe84813aac3a1c50" - integrity sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw== +"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz#c2ca3a80beb7539289938da005ad525a038a819c" + integrity sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.10" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.17.12" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-proposal-private-property-in-object@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz#b0b8cef543c2c3d57e59e2c611994861d46a3fce" - integrity sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ== +"@babel/plugin-proposal-private-property-in-object@^7.12.1", "@babel/plugin-proposal-private-property-in-object@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz#b02efb7f106d544667d91ae97405a9fd8c93952d" + integrity sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-create-class-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.17.12" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-proposal-unicode-property-regex@^7.16.7", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz#635d18eb10c6214210ffc5ff4932552de08188a2" - integrity sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg== +"@babel/plugin-proposal-unicode-property-regex@^7.17.12", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz#3dbd7a67bd7f94c8238b394da112d86aaf32ad4d" + integrity sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-regexp-features-plugin" "^7.17.12" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -499,12 +498,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-decorators@^7.17.0": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.17.0.tgz#a2be3b2c9fe7d78bd4994e790896bc411e2f166d" - integrity sha512-qWe85yCXsvDEluNP0OyeQjH63DlhAR3W7K9BxxU1MvbDb48tgBG+Ao6IJJ6smPDrrVzSQZrbF6donpkFBMcs3A== +"@babel/plugin-syntax-decorators@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.17.12.tgz#02e8f678602f0af8222235271efea945cfdb018a" + integrity sha512-D1Hz0qtGTza8K2xGyEdVNCYLdVHukAcbQr4K3/s6r/esadyEriZovpJimQOpu8ju4/jV8dW/1xdaE0UpDroidw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" @@ -527,12 +526,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.16.7.tgz#202b147e5892b8452bbb0bb269c7ed2539ab8832" - integrity sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ== +"@babel/plugin-syntax-flow@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.17.12.tgz#23d852902acd19f42923fca9d0f196984d124e73" + integrity sha512-B8QIgBvkIG6G2jgsOHQUist7Sm0EBLDCx8sen072IwqNuzMegZNXrYnSv77cYzA8mLDZAfQYqsLIhimiP1s2HQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" + +"@babel/plugin-syntax-import-assertions@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz#58096a92b11b2e4e54b24c6a0cc0e5e607abcedd" + integrity sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw== + dependencies: + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" @@ -548,12 +554,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-jsx@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz#50b6571d13f764266a113d77c82b4a6508bbe665" - integrity sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q== +"@babel/plugin-syntax-jsx@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.17.12.tgz#834035b45061983a491f60096f61a2e7c5674a47" + integrity sha512-spyY3E3AURfxh/RHtjx5j6hs8am5NbUBGfcZ2vB3uShSpZdQyXSf5rR5Mk76vbtlAZOelyVQ71Fg0x9SG4fsog== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" @@ -611,27 +617,27 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8" - integrity sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A== +"@babel/plugin-syntax-typescript@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.17.12.tgz#b54fc3be6de734a56b87508f99d6428b5b605a7b" + integrity sha512-TYY0SXFiO31YXtNg3HtFwNJHjLsAyIIhAhNWkQ5whPPS7HWUFlg9z0Ta4qAQNjQbP1wsSt/oKkmZ/4/WWdMUpw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz#44125e653d94b98db76369de9c396dc14bef4154" - integrity sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ== +"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz#dddd783b473b1b1537ef46423e3944ff24898c45" + integrity sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-async-to-generator@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz#b83dff4b970cf41f1b819f8b49cc0cfbaa53a808" - integrity sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg== +"@babel/plugin-transform-async-to-generator@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz#dbe5511e6b01eee1496c944e35cdfe3f58050832" + integrity sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ== dependencies: "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-remap-async-to-generator" "^7.16.8" "@babel/plugin-transform-block-scoped-functions@^7.16.7": @@ -641,40 +647,40 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz#f50664ab99ddeaee5bc681b8f3a6ea9d72ab4f87" - integrity sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ== +"@babel/plugin-transform-block-scoping@^7.12.12", "@babel/plugin-transform-block-scoping@^7.17.12": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz#7988627b3e9186a13e4d7735dc9c34a056613fb9" + integrity sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz#8f4b9562850cd973de3b498f1218796eb181ce00" - integrity sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ== +"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.17.12": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz#51310b812a090b846c784e47087fa6457baef814" + integrity sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" + "@babel/helper-environment-visitor" "^7.18.2" + "@babel/helper-function-name" "^7.17.9" "@babel/helper-optimise-call-expression" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/helper-replace-supers" "^7.18.2" "@babel/helper-split-export-declaration" "^7.16.7" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz#66dee12e46f61d2aae7a73710f591eb3df616470" - integrity sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw== +"@babel/plugin-transform-computed-properties@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz#bca616a83679698f3258e892ed422546e531387f" + integrity sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.16.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz#49dc2675a7afa9a5e4c6bdee636061136c3408d1" - integrity sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ== +"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz#dc4f92587e291b4daa78aa20cc2d7a63aa11e858" + integrity sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-dotall-regex@^7.16.7", "@babel/plugin-transform-dotall-regex@^7.4.4": version "7.16.7" @@ -684,12 +690,12 @@ "@babel/helper-create-regexp-features-plugin" "^7.16.7" "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-duplicate-keys@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz#2207e9ca8f82a0d36a5a67b6536e7ef8b08823c9" - integrity sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw== +"@babel/plugin-transform-duplicate-keys@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz#a09aa709a3310013f8e48e0e23bc7ace0f21477c" + integrity sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-exponentiation-operator@^7.16.7": version "7.16.7" @@ -699,20 +705,20 @@ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.7" "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-flow-strip-types@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.16.7.tgz#291fb140c78dabbf87f2427e7c7c332b126964b8" - integrity sha512-mzmCq3cNsDpZZu9FADYYyfZJIOrSONmHcop2XEKPdBNMa4PDC4eEvcOvzZaCNcjKu72v0XQlA5y1g58aLRXdYg== +"@babel/plugin-transform-flow-strip-types@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.17.12.tgz#5e070f99a4152194bd9275de140e83a92966cab3" + integrity sha512-g8cSNt+cHCpG/uunPQELdq/TeV3eg1OLJYwxypwHtAWo9+nErH3lQx9CSO2uI9lF74A0mR0t4KoMjs1snSgnTw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-flow" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/plugin-syntax-flow" "^7.17.12" -"@babel/plugin-transform-for-of@^7.12.1", "@babel/plugin-transform-for-of@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz#649d639d4617dff502a9a158c479b3b556728d8c" - integrity sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg== +"@babel/plugin-transform-for-of@^7.12.1", "@babel/plugin-transform-for-of@^7.18.1": + version "7.18.1" + resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz#ed14b657e162b72afbbb2b4cdad277bf2bb32036" + integrity sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-function-name@^7.16.7": version "7.16.7" @@ -723,12 +729,12 @@ "@babel/helper-function-name" "^7.16.7" "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz#254c9618c5ff749e87cb0c0cef1a0a050c0bdab1" - integrity sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ== +"@babel/plugin-transform-literals@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz#97131fbc6bbb261487105b4b3edbf9ebf9c830ae" + integrity sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-member-expression-literals@^7.16.7": version "7.16.7" @@ -737,57 +743,58 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-modules-amd@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz#b28d323016a7daaae8609781d1f8c9da42b13186" - integrity sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g== +"@babel/plugin-transform-modules-amd@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz#7ef1002e67e36da3155edc8bf1ac9398064c02ed" + integrity sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA== dependencies: - "@babel/helper-module-transforms" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.16.8": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz#274be1a2087beec0254d4abd4d86e52442e1e5b6" - integrity sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw== +"@babel/plugin-transform-modules-commonjs@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz#1aa8efa2e2a6e818b6a7f2235fceaf09bdb31e9e" + integrity sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ== dependencies: - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-simple-access" "^7.17.7" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/helper-simple-access" "^7.18.2" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.16.7": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz#81fd834024fae14ea78fbe34168b042f38703859" - integrity sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw== +"@babel/plugin-transform-modules-systemjs@^7.18.0": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.4.tgz#3d6fd9868c735cce8f38d6ae3a407fb7e61e6d46" + integrity sha512-lH2UaQaHVOAeYrUUuZ8i38o76J/FnO8vu21OE+tD1MyP9lxdZoSfz+pDbWkq46GogUrdrMz3tiz/FYGB+bVThg== dependencies: "@babel/helper-hoist-variables" "^7.16.7" - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-validator-identifier" "^7.16.7" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-umd@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz#23dad479fa585283dbd22215bff12719171e7618" - integrity sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ== +"@babel/plugin-transform-modules-umd@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz#56aac64a2c2a1922341129a4597d1fd5c3ff020f" + integrity sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA== dependencies: - "@babel/helper-module-transforms" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-named-capturing-groups-regex@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz#7f860e0e40d844a02c9dcf9d84965e7dfd666252" - integrity sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw== +"@babel/plugin-transform-named-capturing-groups-regex@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz#9c4a5a5966e0434d515f2675c227fd8cc8606931" + integrity sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-create-regexp-features-plugin" "^7.17.12" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-new-target@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz#9967d89a5c243818e0800fdad89db22c5f514244" - integrity sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg== +"@babel/plugin-transform-new-target@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.17.12.tgz#10842cd605a620944e81ea6060e9e65c265742e3" + integrity sha512-CaOtzk2fDYisbjAD4Sd1MTKGVIpRtx9bWLyj24Y/k6p4s4gQ3CqDGJauFJxt8M/LEx003d0i3klVqnN73qvK3w== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-object-super@^7.16.7": version "7.16.7" @@ -797,12 +804,12 @@ "@babel/helper-plugin-utils" "^7.16.7" "@babel/helper-replace-supers" "^7.16.7" -"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz#a1721f55b99b736511cb7e0152f61f17688f331f" - integrity sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw== +"@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz#eb467cd9586ff5ff115a9880d6fdbd4a846b7766" + integrity sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-property-literals@^7.16.7": version "7.16.7" @@ -825,38 +832,39 @@ dependencies: "@babel/plugin-transform-react-jsx" "^7.16.7" -"@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.16.7": - version "7.17.3" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.3.tgz#eac1565da176ccb1a715dae0b4609858808008c1" - integrity sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ== +"@babel/plugin-transform-react-jsx@^7.12.12", "@babel/plugin-transform-react-jsx@^7.16.7", "@babel/plugin-transform-react-jsx@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.12.tgz#2aa20022709cd6a3f40b45d60603d5f269586dba" + integrity sha512-Lcaw8bxd1DKht3thfD4A12dqo1X16he1Lm8rIv8sTwjAYNInRS1qHa9aJoqvzpscItXvftKDCfaEQzwoVyXpEQ== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-jsx" "^7.16.7" - "@babel/types" "^7.17.0" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/plugin-syntax-jsx" "^7.17.12" + "@babel/types" "^7.17.12" "@babel/plugin-transform-react-pure-annotations@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz#232bfd2f12eb551d6d7d01d13fe3f86b45eb9c67" - integrity sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA== + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.0.tgz#ef82c8e310913f3522462c9ac967d395092f1954" + integrity sha512-6+0IK6ouvqDn9bmEG7mEyF/pwlJXVj5lwydybpyyH3D0A7Hftk+NCTdYjnLNZksn261xaOV5ksmp20pQEmc2RQ== dependencies: "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-regenerator@^7.16.7": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz#0a33c3a61cf47f45ed3232903683a0afd2d3460c" - integrity sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ== +"@babel/plugin-transform-regenerator@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz#44274d655eb3f1af3f3a574ba819d3f48caf99d5" + integrity sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw== dependencies: + "@babel/helper-plugin-utils" "^7.17.12" regenerator-transform "^0.15.0" -"@babel/plugin-transform-reserved-words@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz#1d798e078f7c5958eec952059c460b220a63f586" - integrity sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg== +"@babel/plugin-transform-reserved-words@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz#7dbd349f3cdffba751e817cf40ca1386732f652f" + integrity sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-shorthand-properties@^7.12.1", "@babel/plugin-transform-shorthand-properties@^7.16.7": version "7.16.7" @@ -865,12 +873,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz#a303e2122f9f12e0105daeedd0f30fb197d8ff44" - integrity sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg== +"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz#c112cad3064299f03ea32afed1d659223935d1f5" + integrity sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" "@babel/plugin-transform-sticky-regex@^7.16.7": @@ -880,28 +888,28 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz#f3d1c45d28967c8e80f53666fc9c3e50618217ab" - integrity sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA== +"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz#31ed6915721864847c48b656281d0098ea1add28" + integrity sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-typeof-symbol@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz#9cdbe622582c21368bd482b660ba87d5545d4f7e" - integrity sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ== +"@babel/plugin-transform-typeof-symbol@^7.17.12": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz#0f12f57ac35e98b35b4ed34829948d42bd0e6889" + integrity sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-typescript@^7.16.7": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz#591ce9b6b83504903fa9dd3652c357c2ba7a1ee0" - integrity sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ== +"@babel/plugin-transform-typescript@^7.17.12": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.18.4.tgz#587eaf6a39edb8c06215e550dc939faeadd750bf" + integrity sha512-l4vHuSLUajptpHNEOUDEGsnpl9pfRLsN1XUoDQDD/YBuXTM+v37SHGS+c6n4jdcZy96QtuUuSvZYMLSSsjH8Mw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-typescript" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.18.0" + "@babel/helper-plugin-utils" "^7.17.12" + "@babel/plugin-syntax-typescript" "^7.17.12" "@babel/plugin-transform-unicode-escapes@^7.16.7": version "7.16.7" @@ -919,36 +927,37 @@ "@babel/helper-plugin-utils" "^7.16.7" "@babel/preset-env@^7.12.11": - version "7.16.11" - resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz#5dd88fd885fae36f88fd7c8342475c9f0abe2982" - integrity sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g== + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.2.tgz#f47d3000a098617926e674c945d95a28cb90977a" + integrity sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q== dependencies: - "@babel/compat-data" "^7.16.8" - "@babel/helper-compilation-targets" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/compat-data" "^7.17.10" + "@babel/helper-compilation-targets" "^7.18.2" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-validator-option" "^7.16.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.7" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.7" - "@babel/plugin-proposal-async-generator-functions" "^7.16.8" - "@babel/plugin-proposal-class-properties" "^7.16.7" - "@babel/plugin-proposal-class-static-block" "^7.16.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.17.12" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.17.12" + "@babel/plugin-proposal-async-generator-functions" "^7.17.12" + "@babel/plugin-proposal-class-properties" "^7.17.12" + "@babel/plugin-proposal-class-static-block" "^7.18.0" "@babel/plugin-proposal-dynamic-import" "^7.16.7" - "@babel/plugin-proposal-export-namespace-from" "^7.16.7" - "@babel/plugin-proposal-json-strings" "^7.16.7" - "@babel/plugin-proposal-logical-assignment-operators" "^7.16.7" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.7" + "@babel/plugin-proposal-export-namespace-from" "^7.17.12" + "@babel/plugin-proposal-json-strings" "^7.17.12" + "@babel/plugin-proposal-logical-assignment-operators" "^7.17.12" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.17.12" "@babel/plugin-proposal-numeric-separator" "^7.16.7" - "@babel/plugin-proposal-object-rest-spread" "^7.16.7" + "@babel/plugin-proposal-object-rest-spread" "^7.18.0" "@babel/plugin-proposal-optional-catch-binding" "^7.16.7" - "@babel/plugin-proposal-optional-chaining" "^7.16.7" - "@babel/plugin-proposal-private-methods" "^7.16.11" - "@babel/plugin-proposal-private-property-in-object" "^7.16.7" - "@babel/plugin-proposal-unicode-property-regex" "^7.16.7" + "@babel/plugin-proposal-optional-chaining" "^7.17.12" + "@babel/plugin-proposal-private-methods" "^7.17.12" + "@babel/plugin-proposal-private-property-in-object" "^7.17.12" + "@babel/plugin-proposal-unicode-property-regex" "^7.17.12" "@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.17.12" "@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" @@ -958,54 +967,54 @@ "@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-transform-arrow-functions" "^7.16.7" - "@babel/plugin-transform-async-to-generator" "^7.16.8" + "@babel/plugin-transform-arrow-functions" "^7.17.12" + "@babel/plugin-transform-async-to-generator" "^7.17.12" "@babel/plugin-transform-block-scoped-functions" "^7.16.7" - "@babel/plugin-transform-block-scoping" "^7.16.7" - "@babel/plugin-transform-classes" "^7.16.7" - "@babel/plugin-transform-computed-properties" "^7.16.7" - "@babel/plugin-transform-destructuring" "^7.16.7" + "@babel/plugin-transform-block-scoping" "^7.17.12" + "@babel/plugin-transform-classes" "^7.17.12" + "@babel/plugin-transform-computed-properties" "^7.17.12" + "@babel/plugin-transform-destructuring" "^7.18.0" "@babel/plugin-transform-dotall-regex" "^7.16.7" - "@babel/plugin-transform-duplicate-keys" "^7.16.7" + "@babel/plugin-transform-duplicate-keys" "^7.17.12" "@babel/plugin-transform-exponentiation-operator" "^7.16.7" - "@babel/plugin-transform-for-of" "^7.16.7" + "@babel/plugin-transform-for-of" "^7.18.1" "@babel/plugin-transform-function-name" "^7.16.7" - "@babel/plugin-transform-literals" "^7.16.7" + "@babel/plugin-transform-literals" "^7.17.12" "@babel/plugin-transform-member-expression-literals" "^7.16.7" - "@babel/plugin-transform-modules-amd" "^7.16.7" - "@babel/plugin-transform-modules-commonjs" "^7.16.8" - "@babel/plugin-transform-modules-systemjs" "^7.16.7" - "@babel/plugin-transform-modules-umd" "^7.16.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.8" - "@babel/plugin-transform-new-target" "^7.16.7" + "@babel/plugin-transform-modules-amd" "^7.18.0" + "@babel/plugin-transform-modules-commonjs" "^7.18.2" + "@babel/plugin-transform-modules-systemjs" "^7.18.0" + "@babel/plugin-transform-modules-umd" "^7.18.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.17.12" + "@babel/plugin-transform-new-target" "^7.17.12" "@babel/plugin-transform-object-super" "^7.16.7" - "@babel/plugin-transform-parameters" "^7.16.7" + "@babel/plugin-transform-parameters" "^7.17.12" "@babel/plugin-transform-property-literals" "^7.16.7" - "@babel/plugin-transform-regenerator" "^7.16.7" - "@babel/plugin-transform-reserved-words" "^7.16.7" + "@babel/plugin-transform-regenerator" "^7.18.0" + "@babel/plugin-transform-reserved-words" "^7.17.12" "@babel/plugin-transform-shorthand-properties" "^7.16.7" - "@babel/plugin-transform-spread" "^7.16.7" + "@babel/plugin-transform-spread" "^7.17.12" "@babel/plugin-transform-sticky-regex" "^7.16.7" - "@babel/plugin-transform-template-literals" "^7.16.7" - "@babel/plugin-transform-typeof-symbol" "^7.16.7" + "@babel/plugin-transform-template-literals" "^7.18.2" + "@babel/plugin-transform-typeof-symbol" "^7.17.12" "@babel/plugin-transform-unicode-escapes" "^7.16.7" "@babel/plugin-transform-unicode-regex" "^7.16.7" "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.16.8" + "@babel/types" "^7.18.2" babel-plugin-polyfill-corejs2 "^0.3.0" babel-plugin-polyfill-corejs3 "^0.5.0" babel-plugin-polyfill-regenerator "^0.3.0" - core-js-compat "^3.20.2" + core-js-compat "^3.22.1" semver "^6.3.0" "@babel/preset-flow@^7.12.1": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.16.7.tgz#7fd831323ab25eeba6e4b77a589f680e30581cbd" - integrity sha512-6ceP7IyZdUYQ3wUVqyRSQXztd1YmFHWI4Xv11MIqAlE4WqxBSd/FZ61V9k+TS5Gd4mkHOtQtPp9ymRpxH4y1Ug== + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.17.12.tgz#664a5df59190260939eee862800a255bef3bd66f" + integrity sha512-7QDz7k4uiaBdu7N89VKjUn807pJRXmdirQu0KyR9LXnQrr5Jt41eIMKTS7ljej+H29erwmMrwq9Io9mJHLI3Lw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-validator-option" "^7.16.7" - "@babel/plugin-transform-flow-strip-types" "^7.16.7" + "@babel/plugin-transform-flow-strip-types" "^7.17.12" "@babel/preset-modules@^0.1.5": version "0.1.5" @@ -1019,25 +1028,25 @@ esutils "^2.0.2" "@babel/preset-react@^7.12.10": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz#4c18150491edc69c183ff818f9f2aecbe5d93852" - integrity sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA== + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.17.12.tgz#62adbd2d1870c0de3893095757ed5b00b492ab3d" + integrity sha512-h5U+rwreXtZaRBEQhW1hOJLMq8XNJBQ/9oymXiCXTuT/0uOwpbT0gUt+sXeOqoXBgNuUKI7TaObVwoEyWkpFgA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-validator-option" "^7.16.7" "@babel/plugin-transform-react-display-name" "^7.16.7" - "@babel/plugin-transform-react-jsx" "^7.16.7" + "@babel/plugin-transform-react-jsx" "^7.17.12" "@babel/plugin-transform-react-jsx-development" "^7.16.7" "@babel/plugin-transform-react-pure-annotations" "^7.16.7" "@babel/preset-typescript@^7.12.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.16.7.tgz#ab114d68bb2020afc069cd51b37ff98a046a70b9" - integrity sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ== + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.17.12.tgz#40269e0a0084d56fc5731b6c40febe1c9a4a3e8c" + integrity sha512-S1ViF8W2QwAKUGJXxP9NAfNaqGDdEBJKpYkxHf5Yy2C4NPPzXGeR3Lhk7G8xJaaLcFTRfNjVbtbVtm8Gb0mqvg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.17.12" "@babel/helper-validator-option" "^7.16.7" - "@babel/plugin-transform-typescript" "^7.16.7" + "@babel/plugin-transform-typescript" "^7.17.12" "@babel/register@^7.12.1": version "7.17.7" @@ -1050,10 +1059,10 @@ pirates "^4.0.5" source-map-support "^0.5.16" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.8", "@babel/runtime@^7.17.8", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72" - integrity sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg== +"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.17.8", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.0", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.4": + version "7.18.3" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz#c7b654b57f6f63cf7f8b418ac9ca04408c4579f4" + integrity sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug== dependencies: regenerator-runtime "^0.13.4" @@ -1066,30 +1075,35 @@ "@babel/parser" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.3", "@babel/traverse@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz#1f9b207435d9ae4a8ed6998b2b82300d83c37a0d" - integrity sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw== +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.18.0", "@babel/traverse@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz#b77a52604b5cc836a9e1e08dca01cba67a12d2e8" + integrity sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA== dependencies: "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.17.9" - "@babel/helper-environment-visitor" "^7.16.7" + "@babel/generator" "^7.18.2" + "@babel/helper-environment-visitor" "^7.18.2" "@babel/helper-function-name" "^7.17.9" "@babel/helper-hoist-variables" "^7.16.7" "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/parser" "^7.17.9" - "@babel/types" "^7.17.0" + "@babel/parser" "^7.18.0" + "@babel/types" "^7.18.2" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.2.0", "@babel/types@^7.4.4": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" - integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== +"@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.17.12", "@babel/types@^7.18.0", "@babel/types@^7.18.2", "@babel/types@^7.2.0", "@babel/types@^7.4.4": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz#27eae9b9fd18e9dccc3f9d6ad051336f307be354" + integrity sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw== dependencies: "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" +"@base2/pretty-print-object@1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz#371ba8be66d556812dc7fb169ebc3c08378f69d4" + integrity sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA== + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -1105,132 +1119,60 @@ resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== -"@emotion/cache@^10.0.27": - version "10.0.29" - resolved "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz#87e7e64f412c060102d589fe7c6dc042e6f9d1e0" - integrity sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ== - dependencies: - "@emotion/sheet" "0.9.4" - "@emotion/stylis" "0.8.5" - "@emotion/utils" "0.11.3" - "@emotion/weak-memoize" "0.2.5" - -"@emotion/core@^10.1.1": - version "10.3.1" - resolved "https://registry.npmjs.org/@emotion/core/-/core-10.3.1.tgz#4021b6d8b33b3304d48b0bb478485e7d7421c69d" - integrity sha512-447aUEjPIm0MnE6QYIaFz9VQOHSXf4Iu6EWOIqq11EAPqinkSZmfymPTmlOE3QjLv846lH4JVZBUOtwGbuQoww== - dependencies: - "@babel/runtime" "^7.5.5" - "@emotion/cache" "^10.0.27" - "@emotion/css" "^10.0.27" - "@emotion/serialize" "^0.11.15" - "@emotion/sheet" "0.9.4" - "@emotion/utils" "0.11.3" - -"@emotion/css@^10.0.27": - version "10.0.27" - resolved "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz#3a7458198fbbebb53b01b2b87f64e5e21241e14c" - integrity sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw== - dependencies: - "@emotion/serialize" "^0.11.15" - "@emotion/utils" "0.11.3" - babel-plugin-emotion "^10.0.27" - -"@emotion/hash@0.8.0": - version "0.8.0" - resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" - integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== - -"@emotion/is-prop-valid@0.8.8", "@emotion/is-prop-valid@^0.8.6": - version "0.8.8" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz#db28b1c4368a259b60a97311d6a952d4fd01ac1a" - integrity sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA== - dependencies: - "@emotion/memoize" "0.7.4" - -"@emotion/memoize@0.7.4": - version "0.7.4" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" - integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== - -"@emotion/serialize@^0.11.15", "@emotion/serialize@^0.11.16": - version "0.11.16" - resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz#dee05f9e96ad2fb25a5206b6d759b2d1ed3379ad" - integrity sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg== - dependencies: - "@emotion/hash" "0.8.0" - "@emotion/memoize" "0.7.4" - "@emotion/unitless" "0.7.5" - "@emotion/utils" "0.11.3" - csstype "^2.5.7" - -"@emotion/sheet@0.9.4": - version "0.9.4" - resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz#894374bea39ec30f489bbfc3438192b9774d32e5" - integrity sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA== - -"@emotion/styled-base@^10.3.0": - version "10.3.0" - resolved "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.3.0.tgz#9aa2c946100f78b47316e4bc6048321afa6d4e36" - integrity sha512-PBRqsVKR7QRNkmfH78hTSSwHWcwDpecH9W6heujWAcyp2wdz/64PP73s7fWS1dIPm8/Exc8JAzYS8dEWXjv60w== - dependencies: - "@babel/runtime" "^7.5.5" - "@emotion/is-prop-valid" "0.8.8" - "@emotion/serialize" "^0.11.15" - "@emotion/utils" "0.11.3" - -"@emotion/styled@^10.0.27": - version "10.3.0" - resolved "https://registry.npmjs.org/@emotion/styled/-/styled-10.3.0.tgz#8ee959bf75730789abb5f67f7c3ded0c30aec876" - integrity sha512-GgcUpXBBEU5ido+/p/mCT2/Xx+Oqmp9JzQRuC+a4lYM4i4LBBn/dWvc0rQ19N9ObA8/T4NWMrPNe79kMBDJqoQ== - dependencies: - "@emotion/styled-base" "^10.3.0" - babel-plugin-emotion "^10.0.27" - -"@emotion/stylis@0.8.5": - version "0.8.5" - resolved "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" - integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== - -"@emotion/unitless@0.7.5": - version "0.7.5" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" - integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== - -"@emotion/utils@0.11.3": - version "0.11.3" - resolved "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz#a759863867befa7e583400d322652a3f44820924" - integrity sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw== - -"@emotion/weak-memoize@0.2.5": - version "0.2.5" - resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" - integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== - "@gar/promisify@^1.0.1": version "1.1.3" resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== -"@istanbuljs/schema@^0.1.2": +"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": version "0.1.3" resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + +"@jridgewell/gen-mapping@^0.3.0": + version "0.3.1" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz#cf92a983c83466b8c0ce9124fadeaf09f7c66ea9" + integrity sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/resolve-uri@^3.0.3": - version "3.0.5" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" - integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== + version "3.0.7" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" + integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== + +"@jridgewell/set-array@^1.0.0": + version "1.1.1" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea" + integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ== + +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.11" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" - integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== + version "1.4.13" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" + integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== -"@jridgewell/trace-mapping@^0.3.0": - version "0.3.4" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" - integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== +"@jridgewell/trace-mapping@^0.3.7", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.13" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" + integrity sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" @@ -1315,10 +1257,10 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@pmmmwh/react-refresh-webpack-plugin@^0.5.1": - version "0.5.5" - resolved "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.5.tgz#e77aac783bd079f548daa0a7f080ab5b5a9741ca" - integrity sha512-RbG7h6TuP6nFFYKJwbcToA1rjC1FyPg25NR2noAZ0vKI+la01KTSRPkuVPE+U88jXv7javx2JHglUcL1MHcshQ== +"@pmmmwh/react-refresh-webpack-plugin@^0.5.3": + version "0.5.7" + resolved "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz#58f8217ba70069cc6a73f5d7e05e85b458c150e2" + integrity sha512-bcKCAzF0DV2IIROp9ZHkRJa6O4jy7NlnHdWL3GmcUxYWNjLXkK5kfELELwEfSP5hXPfVL/qOGMAROuMQb9GG8Q== dependencies: ansi-html-community "^0.0.8" common-path-prefix "^3.0.0" @@ -1330,24 +1272,19 @@ schema-utils "^3.0.0" source-map "^0.7.3" -"@popperjs/core@^2.5.4", "@popperjs/core@^2.6.0": - version "2.11.5" - resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.5.tgz#db5a11bf66bdab39569719555b0f76e138d7bd64" - integrity sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw== - "@storybook/addon-a11y@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.4.22.tgz#df75f1a82c83973c165984e8b0944ceed64c30e9" - integrity sha512-y125LDx5VR6JmiHB6/0RHWudwhe9QcFXqoAqGqWIj4zRv0kb9AyDPDtWvtDOSImCDXIPRmd8P05xTOnYH0ET3w== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.6.tgz#fb87c49f7d878f1f89cca7cfe7193614ba661c9c" + integrity sha512-h9HPDVWbVMzwplthYVj3JokCMxEzVVIuSOqr2sJ7OsYhPqeJCvanJG7ZHGR3fzEdPkIaJ9X+ePHKdXzi+PtEvg== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/theming" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.6" axe-core "^4.2.0" core-js "^3.8.2" global "^4.4.0" @@ -1358,57 +1295,58 @@ util-deprecate "^1.0.2" "@storybook/addon-actions@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.4.22.tgz#ec1b4332e76a8021dc0a1375dfd71a0760457588" - integrity sha512-t2w3iLXFul+R/1ekYxIEzUOZZmvEa7EzUAVAuCHP4i6x0jBnTTZ7sAIUVRaxVREPguH5IqI/2OklYhKanty2Yw== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.6.tgz#0e980a0a6d8d47db8031108ffa1fd51cc627a466" + integrity sha512-AGtzpWOU/B0FxcqFDM7E/KSHQyr6tMbVts77JlAKCIbwqEncD1LIQoz9CyMdbr1jynkep0Ck0JjcDdmp7CXVoQ== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/theming" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.6" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" lodash "^4.17.21" - polished "^4.0.5" + polished "^4.2.2" prop-types "^15.7.2" react-inspector "^5.1.0" regenerator-runtime "^0.13.7" - telejson "^5.3.2" + telejson "^6.0.8" ts-dedent "^2.0.0" util-deprecate "^1.0.2" uuid-browser "^3.1.0" "@storybook/addon-controls@^6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.4.22.tgz#42c7f426eb7ba6d335e8e14369d6d13401878665" - integrity sha512-f/M/W+7UTEUnr/L6scBMvksq+ZA8GTfh3bomE5FtWyOyaFppq9k8daKAvdYNlzXAOrUUsoZVJDgpb20Z2VBiSQ== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.6.tgz#bca1e33dd1edb059b6d6b1e1616c60ecdc9eb294" + integrity sha512-pJz2ltdL8d9/2wX1XOMdXeGwMNoBX5hIXkNfBCvBfOCmeVEXOczPOZARvwx4QTqmMSu1KikhFIGT64wwoETmBg== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/core-common" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/node-logger" "6.4.22" - "@storybook/store" "6.4.22" - "@storybook/theming" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/core-common" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/node-logger" "6.5.6" + "@storybook/store" "6.5.6" + "@storybook/theming" "6.5.6" core-js "^3.8.2" lodash "^4.17.21" ts-dedent "^2.0.0" "@storybook/addon-links@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.4.22.tgz#c0ed9e9ef6505cf1562e1476bbc5064c82dadbe2" - integrity sha512-OSOyDnTXnmcplJHlXTYUTMkrfpLqxtHp2R69IXfAyI1e8WNDb79mXflrEXDA/RSNEliLkqYwCyYby7gDMGds5Q== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.6.tgz#1074d239c3c9c8b7168d20c9cc20b8918e4993a6" + integrity sha512-a4+9HLc6+M9qv5Fvezoc8AJYze8HDfHlsEFvCY1AtQiyVEmxFRNBdAp6w+/teNzihXWY78EKRcGM0jjyt+9mWg== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/router" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.6" "@types/qs" "^6.9.5" core-js "^3.8.2" global "^4.4.0" @@ -1418,54 +1356,53 @@ ts-dedent "^2.0.0" "@storybook/addon-storysource@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.4.22.tgz#c2fc80e90476495ecacf74986e3cf81f25379f53" - integrity sha512-BFZ+/+CytET1CQzRe5qbg6Ca7pUKHa7C+pMQkq8M+tFG1f0Ov2Np5OvqXmZQcJeOpK1HDF0EaJv2ESg0CH8ytw== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.6.tgz#6d53e1d99972863265ecde9023367660636dbd33" + integrity sha512-QGGqo7ZaBaWPkKyaXm1uDNnV1+1idoFDTbFl9D3h82foDcvcgAp5PROcWAtXwUE4B3+wkjA/xTwwayKdjWO8Rw== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/router" "6.4.22" - "@storybook/source-loader" "6.4.22" - "@storybook/theming" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/router" "6.5.6" + "@storybook/source-loader" "6.5.6" + "@storybook/theming" "6.5.6" core-js "^3.8.2" estraverse "^5.2.0" loader-utils "^2.0.0" - prettier ">=2.2.1 <=2.3.0" prop-types "^15.7.2" - react-syntax-highlighter "^13.5.3" + react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" -"@storybook/addons@6.4.22", "@storybook/addons@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.4.22.tgz#e165407ca132c2182de2d466b7ff7c5644b6ad7b" - integrity sha512-P/R+Jsxh7pawKLYo8MtE3QU/ilRFKbtCewV/T1o5U/gm8v7hKQdFz3YdRMAra4QuCY8bQIp7MKd2HrB5aH5a1A== +"@storybook/addons@6.5.6", "@storybook/addons@^6.4.21": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.6.tgz#ed7ab72ac3a4e2d74e2ba4d10b4a0721d66cd1cd" + integrity sha512-Ktv7Pk4iq+8+6yifXu3bOiC1ii9VXD93mmha7XcrdW+wl8jti9Ll5jLKEN0lAhd+Qupz4R0g9+znpRXk5n0pBg== dependencies: - "@storybook/api" "6.4.22" - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/router" "6.4.22" - "@storybook/theming" "6.4.22" + "@storybook/api" "6.5.6" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.6" + "@storybook/theming" "6.5.6" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" global "^4.4.0" regenerator-runtime "^0.13.7" -"@storybook/api@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/api/-/api-6.4.22.tgz#d63f7ad3ffdd74af01ae35099bff4c39702cf793" - integrity sha512-lAVI3o2hKupYHXFTt+1nqFct942up5dHH6YD7SZZJGyW21dwKC3HK1IzCsTawq3fZAKkgWFgmOO649hKk60yKg== +"@storybook/api@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.6.tgz#7f7c7bc561b3888033eb7074a8c9ecce9f07cb54" + integrity sha512-GHhjb6mji+R+FWytx7MIOKqca49ZXjvnIPpyp5zXAtgdk2Yn2j8C0MRPO1ovh4nHKWVvx6larmhskRxfUjk06g== dependencies: - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/router" "6.4.22" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/router" "6.5.6" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.4.22" + "@storybook/theming" "6.5.6" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1473,58 +1410,36 @@ memoizerific "^1.11.3" regenerator-runtime "^0.13.7" store2 "^2.12.0" - telejson "^5.3.2" + telejson "^6.0.8" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.4.22.tgz#d3384b146e97a2b3a6357c6eb8279ff0f1c7f8f5" - integrity sha512-A+GgGtKGnBneRFSFkDarUIgUTI8pYFdLmUVKEAGdh2hL+vLXAz9A46sEY7C8LQ85XWa8TKy3OTDxqR4+4iWj3A== +"@storybook/builder-webpack4@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.6.tgz#49eb7272402ff185ae12ffc679aef4677c48537d" + integrity sha512-/nACQ5SoddCs1geGUKXrrXiYDvYdTVXWXc0L6mXawjYANBeWIkAKFlhRpoXGN/KiFuuExO2+UgNCKlUyD0a51Q== dependencies: "@babel/core" "^7.12.10" - "@babel/plugin-proposal-class-properties" "^7.12.1" - "@babel/plugin-proposal-decorators" "^7.12.12" - "@babel/plugin-proposal-export-default-from" "^7.12.1" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" - "@babel/plugin-proposal-object-rest-spread" "^7.12.1" - "@babel/plugin-proposal-optional-chaining" "^7.12.7" - "@babel/plugin-proposal-private-methods" "^7.12.1" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-transform-arrow-functions" "^7.12.1" - "@babel/plugin-transform-block-scoping" "^7.12.12" - "@babel/plugin-transform-classes" "^7.12.1" - "@babel/plugin-transform-destructuring" "^7.12.1" - "@babel/plugin-transform-for-of" "^7.12.1" - "@babel/plugin-transform-parameters" "^7.12.1" - "@babel/plugin-transform-shorthand-properties" "^7.12.1" - "@babel/plugin-transform-spread" "^7.12.1" - "@babel/plugin-transform-template-literals" "^7.12.1" - "@babel/preset-env" "^7.12.11" - "@babel/preset-react" "^7.12.10" - "@babel/preset-typescript" "^7.12.7" - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/channel-postmessage" "6.4.22" - "@storybook/channels" "6.4.22" - "@storybook/client-api" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/core-common" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/node-logger" "6.4.22" - "@storybook/preview-web" "6.4.22" - "@storybook/router" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/channel-postmessage" "6.5.6" + "@storybook/channels" "6.5.6" + "@storybook/client-api" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/core-common" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/node-logger" "6.5.6" + "@storybook/preview-web" "6.5.6" + "@storybook/router" "6.5.6" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.4.22" - "@storybook/theming" "6.4.22" - "@storybook/ui" "6.4.22" - "@types/node" "^14.0.10" + "@storybook/store" "6.5.6" + "@storybook/theming" "6.5.6" + "@storybook/ui" "6.5.6" + "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" babel-loader "^8.0.0" - babel-plugin-macros "^2.8.0" - babel-plugin-polyfill-corejs3 "^0.1.0" case-sensitive-paths-webpack-plugin "^2.3.0" core-js "^3.8.2" css-loader "^3.6.0" @@ -1552,51 +1467,51 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.2.2" -"@storybook/channel-postmessage@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.4.22.tgz#8be0be1ea1e667a49fb0f09cdfdeeb4a45829637" - integrity sha512-gt+0VZLszt2XZyQMh8E94TqjHZ8ZFXZ+Lv/Mmzl0Yogsc2H+6VzTTQO4sv0IIx6xLbpgG72g5cr8VHsxW5kuDQ== +"@storybook/channel-postmessage@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.6.tgz#3cfaef29c9ff62321152924de478058fdfd9d812" + integrity sha512-kyYO84hItSE1SaEI1xpMYqJOM3MJ2Y2WHx1Hxu5prq2T2cIgUGURyNf3+5G0BLTf2XGNEN/7YYv9rHmQ9GUz8g== dependencies: - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" - telejson "^5.3.2" + telejson "^6.0.8" -"@storybook/channel-websocket@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.4.22.tgz#d541f69125873123c453757e2b879a75a9266c65" - integrity sha512-Bm/FcZ4Su4SAK5DmhyKKfHkr7HiHBui6PNutmFkASJInrL9wBduBfN8YQYaV7ztr8ezoHqnYRx8sj28jpwa6NA== +"@storybook/channel-websocket@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.6.tgz#9d31ef139f6d86b29278452e9977a47fd3cc9706" + integrity sha512-d09LfP4zVYCCeuCBn+R41jINUBzhRt78tKk5e1wEsMklV5p+l8Zoi3oJD/UQ/EgtMcnC1dKi3WfAPyx3U/wdgg== dependencies: - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" core-js "^3.8.2" global "^4.4.0" - telejson "^5.3.2" + telejson "^6.0.8" -"@storybook/channels@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.4.22.tgz#710f732763d63f063f615898ab1afbe74e309596" - integrity sha512-cfR74tu7MLah1A8Rru5sak71I+kH2e/sY6gkpVmlvBj4hEmdZp4Puj9PTeaKcMXh9DgIDPNA5mb8yvQH6VcyxQ== +"@storybook/channels@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.6.tgz#a373127f0dd841dabfc31607e5cdac6245444b6c" + integrity sha512-rS0Dk9fSiMBsPvkiMo9CuvDCoXbGmYKiX/juS3F4u+sedhH+XtH4jFf49lJWoNVAE6eJPFyXATU4p1mm8Z85kQ== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.4.22.tgz#df14f85e7900b94354c26c584bab53a67c47eae9" - integrity sha512-sO6HJNtrrdit7dNXQcZMdlmmZG1k6TswH3gAyP/DoYajycrTwSJ6ovkarzkO+0QcJ+etgra4TEdTIXiGHBMe/A== +"@storybook/client-api@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.6.tgz#935026e682d41f8f9cd122dccd8a9ae3ebc3b613" + integrity sha512-+PV3eZ0Hr15volHE/ds6pxsoitsHkUuwGMVLUGvX5JuepDlhWOkQzCxPw2BuABJl6x40/w/Pj2DIyTrg37ZThg== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/channel-postmessage" "6.4.22" - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/store" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/channel-postmessage" "6.5.6" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.6" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" @@ -1611,59 +1526,44 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.4.22.tgz#51abedb7d3c9bc21921aeb153ac8a19abc625cd6" - integrity sha512-LXhxh/lcDsdGnK8kimqfhu3C0+D2ylCSPPQNbU0IsLRmTfbpQYMdyl0XBjPdHiRVwlL7Gkw5OMjYemQgJ02zlw== +"@storybook/client-logger@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.6.tgz#6ce56c687dcd7772247ffa3915b44737a62f729c" + integrity sha512-hJzhn5EO0S4fUAZkKzBGNACJfupV9n+7TSIaU4mpVP+/ImS9uPdorAAtyqp5HC6R6vA67POoSgX0+qPgZnWvaw== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/components/-/components-6.4.22.tgz#4d425280240702883225b6a1f1abde7dc1a0e945" - integrity sha512-dCbXIJF9orMvH72VtAfCQsYbe57OP7fAADtR6YTwfCw9Sm1jFuZr8JbblQ1HcrXEoJG21nOyad3Hm5EYVb/sBw== +"@storybook/components@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.6.tgz#83f03967bdd1c509e5d18111b924a8cb0789718a" + integrity sha512-Qh40wMkqWD3ZbGqxqa0pi5JFWazIbcZWbqUakH9zARgLk+LBrpJvPuu7GmQrDUtJTA33H4tD/4ujt6AibnaQwQ== dependencies: - "@popperjs/core" "^2.6.0" - "@storybook/client-logger" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/theming" "6.4.22" - "@types/color-convert" "^2.0.0" - "@types/overlayscrollbars" "^1.12.0" + "@storybook/client-logger" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/theming" "6.5.6" "@types/react-syntax-highlighter" "11.0.5" - color-convert "^2.0.1" core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" - lodash "^4.17.21" - markdown-to-jsx "^7.1.3" - memoizerific "^1.11.3" - overlayscrollbars "^1.13.1" - polished "^4.0.5" - prop-types "^15.7.2" - react-colorful "^5.1.2" - react-popper-tooltip "^3.1.1" - react-syntax-highlighter "^13.5.3" - react-textarea-autosize "^8.3.0" + qs "^6.10.0" + react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" - ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/core-client@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.4.22.tgz#9079eda8a9c8e6ba24b84962a749b1c99668cb2a" - integrity sha512-uHg4yfCBeM6eASSVxStWRVTZrAnb4FT6X6v/xDqr4uXCpCttZLlBzrSDwPBLNNLtCa7ntRicHM8eGKIOD5lMYQ== +"@storybook/core-client@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.6.tgz#d09d144745c6d8a24dd002ae60ffa9b0c500ae54" + integrity sha512-Xmjt95GYYVRp7ra49Y955BLH/FYlOmuLC4aFTGurjmCay7zUqvExxFk9AUKOkyBb1/S/8iQCG59D0ES6YWoMRw== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/channel-postmessage" "6.4.22" - "@storybook/channel-websocket" "6.4.22" - "@storybook/client-api" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/preview-web" "6.4.22" - "@storybook/store" "6.4.22" - "@storybook/ui" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/channel-postmessage" "6.5.6" + "@storybook/channel-websocket" "6.5.6" + "@storybook/client-api" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/preview-web" "6.5.6" + "@storybook/store" "6.5.6" + "@storybook/ui" "6.5.6" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -1675,10 +1575,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.4.22.tgz#b00fa3c0625e074222a50be3196cb8052dd7f3bf" - integrity sha512-PD3N/FJXPNRHeQS2zdgzYFtqPLdi3MLwAicbnw+U3SokcsspfsAuyYHZOYZgwO8IAEKy6iCc7TpBdiSJZ/vAKQ== +"@storybook/core-common@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.6.tgz#12c717f2fb9cad77b38e122fb89c15566130798a" + integrity sha512-+k+D9CzyFHNAy59jt2sfKnb/KU/nXO1hvBVaJAhdocjrDMvHtwYuXWWQrWYX3/VGp9wCa9TC0JG1kz+DWSYXaQ== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -1688,6 +1588,7 @@ "@babel/plugin-proposal-object-rest-spread" "^7.12.1" "@babel/plugin-proposal-optional-chaining" "^7.12.7" "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-proposal-private-property-in-object" "^7.12.1" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-transform-arrow-functions" "^7.12.1" "@babel/plugin-transform-block-scoping" "^7.12.12" @@ -1701,9 +1602,9 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.4.22" + "@storybook/node-logger" "6.5.6" "@storybook/semver" "^7.3.2" - "@types/node" "^14.0.10" + "@types/node" "^14.0.10 || ^16.0.0" "@types/pretty-hrtime" "^1.0.0" babel-loader "^8.0.0" babel-plugin-macros "^3.0.1" @@ -1725,35 +1626,36 @@ pretty-hrtime "^1.0.3" resolve-from "^5.0.0" slash "^3.0.0" - telejson "^5.3.2" + telejson "^6.0.8" ts-dedent "^2.0.0" util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.4.22.tgz#c09b0571951affd4254028b8958a4d8652700989" - integrity sha512-5GYY5+1gd58Gxjqex27RVaX6qbfIQmJxcbzbNpXGNSqwqAuIIepcV1rdCVm6I4C3Yb7/AQ3cN5dVbf33QxRIwA== +"@storybook/core-events@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.6.tgz#b4e9150216810621ba00d8d1eb3f9414493d6e61" + integrity sha512-bzktgM1i0QPrayH1ANbKb7nYpehSpi5QHWps2vVQbvtpI/pGlTtpde1e87vfAt74Bvsvd3/9IpQkQKteDODAkA== dependencies: core-js "^3.8.2" -"@storybook/core-server@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.4.22.tgz#254409ec2ba49a78b23f5e4a4c0faea5a570a32b" - integrity sha512-wFh3e2fa0un1d4+BJP+nd3FVWUO7uHTqv3OGBfOmzQMKp4NU1zaBNdSQG7Hz6mw0fYPBPZgBjPfsJRwIYLLZyw== +"@storybook/core-server@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.6.tgz#4fe464847297117089900d5f9cc9acc08d638723" + integrity sha512-65kwbSXsKPl/0BKjGr9RTihv6jYGGIG/prfLscZPtm3u4/Z8ZxCX94rznztxcUatjLlUfKJ8iimizhUOIa0FJA== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.4.22" - "@storybook/core-client" "6.4.22" - "@storybook/core-common" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/csf-tools" "6.4.22" - "@storybook/manager-webpack4" "6.4.22" - "@storybook/node-logger" "6.4.22" + "@storybook/builder-webpack4" "6.5.6" + "@storybook/core-client" "6.5.6" + "@storybook/core-common" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/csf-tools" "6.5.6" + "@storybook/manager-webpack4" "6.5.6" + "@storybook/node-logger" "6.5.6" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.4.22" - "@types/node" "^14.0.10" + "@storybook/store" "6.5.6" + "@storybook/telemetry" "6.5.6" + "@types/node" "^14.0.10 || ^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" "@types/webpack" "^4.41.26" @@ -1767,36 +1669,38 @@ cpy "^8.1.2" detect-port "^1.3.0" express "^4.17.1" - file-system-cache "^1.0.5" fs-extra "^9.0.1" + global "^4.4.0" globby "^11.0.2" - ip "^1.1.5" + ip "^2.0.0" lodash "^4.17.21" - node-fetch "^2.6.1" + node-fetch "^2.6.7" + open "^8.4.0" pretty-hrtime "^1.0.3" prompts "^2.4.0" regenerator-runtime "^0.13.7" serve-favicon "^2.5.0" slash "^3.0.0" - telejson "^5.3.3" + telejson "^6.0.8" ts-dedent "^2.0.0" util-deprecate "^1.0.2" watchpack "^2.2.0" webpack "4" ws "^8.2.3" + x-default-browser "^0.4.0" -"@storybook/core@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/core/-/core-6.4.22.tgz#cf14280d7831b41d5dea78f76b414bdfde5918f0" - integrity sha512-KZYJt7GM5NgKFXbPRZZZPEONZ5u/tE/cRbMdkn/zWN3He8+VP+65/tz8hbriI/6m91AWVWkBKrODSkeq59NgRA== +"@storybook/core@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.6.tgz#bc1792154ea010500950f0d43c78ae554ea4f9ec" + integrity sha512-DS6Q8SrEXBDoDS2K865NoWggSXEg8L9p+jx8sILLkLrr2QXJT0x6YIFSwEh6rGwkahxDV5ikON/rW39Wlxzk1w== dependencies: - "@storybook/core-client" "6.4.22" - "@storybook/core-server" "6.4.22" + "@storybook/core-client" "6.5.6" + "@storybook/core-server" "6.5.6" -"@storybook/csf-tools@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.4.22.tgz#f6d64bcea1b36114555972acae66a1dbe9e34b5c" - integrity sha512-LMu8MZAiQspJAtMBLU2zitsIkqQv7jOwX7ih5JrXlyaDticH7l2j6Q+1mCZNWUOiMTizj0ivulmUsSaYbpToSw== +"@storybook/csf-tools@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.6.tgz#147ced43313ee217c41b00d5fe32a80cb29b03bd" + integrity sha512-Gfah+5mEUoVG7v+E23svRjKAh546KCPIcwAvGU3m26j3hNbpvKq8edKDr+CCMfehG8VEGSZWfZPsgX04c/ItcA== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -1805,39 +1709,49 @@ "@babel/preset-env" "^7.12.11" "@babel/traverse" "^7.12.11" "@babel/types" "^7.12.11" - "@mdx-js/mdx" "^1.6.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/mdx1-csf" "^0.0.1" core-js "^3.8.2" fs-extra "^9.0.1" global "^4.4.0" - js-string-escape "^1.0.1" - lodash "^4.17.21" - prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" ts-dedent "^2.0.0" -"@storybook/csf@0.0.2--canary.87bc651.0": - version "0.0.2--canary.87bc651.0" - resolved "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.2--canary.87bc651.0.tgz#c7b99b3a344117ef67b10137b6477a3d2750cf44" - integrity sha512-ajk1Uxa+rBpFQHKrCcTmJyQBXZ5slfwHVEaKlkuFaW77it8RgbPJp/ccna3sgoi8oZ7FkkOyvv1Ve4SmwFqRqw== +"@storybook/csf@0.0.2--canary.4566f4d.1": + version "0.0.2--canary.4566f4d.1" + resolved "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.2--canary.4566f4d.1.tgz#dac52a21c40ef198554e71fe4d20d61e17f65327" + integrity sha512-9OVvMVh3t9znYZwb0Svf/YQoxX2gVOeQTGe2bses2yj+a3+OJnCrUF3/hGv6Em7KujtOdL2LL+JnG49oMVGFgQ== dependencies: lodash "^4.17.15" -"@storybook/manager-webpack4@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.4.22.tgz#eabd674beee901c7f755d9b679e9f969cbab636d" - integrity sha512-nzhDMJYg0vXdcG0ctwE6YFZBX71+5NYaTGkxg3xT7gbgnP1YFXn9gVODvgq3tPb3gcRapjyOIxUa20rV+r8edA== +"@storybook/docs-tools@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.6.tgz#cf27e06ce25c55327048662f833628d2e329a140" + integrity sha512-QwOFWVzce4m5fQaC39rSUBVzNplpcSfGyIN3rBBen4wHllj43y7i30A69jSW24M15CKdcJmfDaLwN00s7y3ZHQ== + dependencies: + "@babel/core" "^7.12.10" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.6" + core-js "^3.8.2" + doctrine "^3.0.0" + lodash "^4.17.21" + regenerator-runtime "^0.13.7" + +"@storybook/manager-webpack4@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.6.tgz#3a356ee52cb972533a98e4da426bc6cc3b8abaf3" + integrity sha512-GaUT1bNmGebq8Ci52M07XF0Zn9Ak7L8ZaKn8rdBJ4VSPhg0vEAeo7trD3aur3+h/3gLQmK64LhiNSOfvZfQDAw== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.4.22" - "@storybook/core-client" "6.4.22" - "@storybook/core-common" "6.4.22" - "@storybook/node-logger" "6.4.22" - "@storybook/theming" "6.4.22" - "@storybook/ui" "6.4.22" - "@types/node" "^14.0.10" + "@storybook/addons" "6.5.6" + "@storybook/core-client" "6.5.6" + "@storybook/core-common" "6.5.6" + "@storybook/node-logger" "6.5.6" + "@storybook/theming" "6.5.6" + "@storybook/ui" "6.5.6" + "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" babel-loader "^8.0.0" case-sensitive-paths-webpack-plugin "^2.3.0" @@ -1846,17 +1760,16 @@ css-loader "^3.6.0" express "^4.17.1" file-loader "^6.2.0" - file-system-cache "^1.0.5" find-up "^5.0.0" fs-extra "^9.0.1" html-webpack-plugin "^4.0.0" - node-fetch "^2.6.1" + node-fetch "^2.6.7" pnp-webpack-plugin "1.6.4" read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" resolve-from "^5.0.0" style-loader "^1.3.0" - telejson "^5.3.2" + telejson "^6.0.8" terser-webpack-plugin "^4.2.3" ts-dedent "^2.0.0" url-loader "^4.1.1" @@ -1865,10 +1778,27 @@ webpack-dev-middleware "^3.7.3" webpack-virtual-modules "^0.2.2" -"@storybook/node-logger@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.4.22.tgz#c4ec00f8714505f44eda7671bc88bb44abf7ae59" - integrity sha512-sUXYFqPxiqM7gGH7gBXvO89YEO42nA4gBicJKZjj9e+W4QQLrftjF9l+mAw2K0mVE10Bn7r4pfs5oEZ0aruyyA== +"@storybook/mdx1-csf@^0.0.1": + version "0.0.1" + resolved "https://registry.npmjs.org/@storybook/mdx1-csf/-/mdx1-csf-0.0.1.tgz#d4184e3f6486fade9f7a6bfaf934d9bc07718d5b" + integrity sha512-4biZIWWzoWlCarMZmTpqcJNgo/RBesYZwGFbQeXiGYsswuvfWARZnW9RE9aUEMZ4XPn7B1N3EKkWcdcWe/K2tg== + dependencies: + "@babel/generator" "^7.12.11" + "@babel/parser" "^7.12.11" + "@babel/preset-env" "^7.12.11" + "@babel/types" "^7.12.11" + "@mdx-js/mdx" "^1.6.22" + "@types/lodash" "^4.14.167" + js-string-escape "^1.0.1" + loader-utils "^2.0.0" + lodash "^4.17.21" + prettier ">=2.2.1 <=2.3.0" + ts-dedent "^2.0.0" + +"@storybook/node-logger@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.6.tgz#24422886f894978b10c2e23feb6bf0657f5e514f" + integrity sha512-bT0R0skDWW9iJS8AIG9zfSF8XzTffdc8hRlpXUF9+VQKds+8H9FyoV4tl8ySCuNNunt8Ic9GvW3Fakq49FUcgw== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -1876,17 +1806,17 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/preview-web@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.4.22.tgz#58bfc6492503ff4265b50f42a27ea8b0bfcf738a" - integrity sha512-sWS+sgvwSvcNY83hDtWUUL75O2l2LY/GTAS0Zp2dh3WkObhtuJ/UehftzPZlZmmv7PCwhb4Q3+tZDKzMlFxnKQ== +"@storybook/preview-web@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.6.tgz#d4cf4a90a27819aa3315b48b21df6a515bb49b7a" + integrity sha512-fjWfe1ZqtMMS3UFiL6XDYVR0T5QVhXIp/Ax19tuW2VJ/NL/zl4+c9v9lx5jSY5iD5tKwYYRrbH8VS2Pm/CNAzA== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/channel-postmessage" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/store" "6.4.22" + "@storybook/addons" "6.5.6" + "@storybook/channel-postmessage" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/store" "6.5.6" ansi-to-html "^0.6.11" core-js "^3.8.2" global "^4.4.0" @@ -1898,65 +1828,68 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/react-docgen-typescript-plugin@1.0.2-canary.253f8c1.0": - version "1.0.2-canary.253f8c1.0" - resolved "https://registry.npmjs.org/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.253f8c1.0.tgz#f2da40e6aae4aa586c2fb284a4a1744602c3c7fa" - integrity sha512-mmoRG/rNzAiTbh+vGP8d57dfcR2aP+5/Ll03KKFyfy5FqWFm/Gh7u27ikx1I3LmVMI8n6jh5SdWMkMKon7/tDw== +"@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0": + version "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" + resolved "https://registry.npmjs.org/@storybook/react-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0.tgz#3103532ff494fb7dc3cf835f10740ecf6a26c0f9" + integrity sha512-eVg3BxlOm2P+chijHBTByr90IZVUtgRW56qEOLX7xlww2NBuKrcavBlcmn+HH7GIUktquWkMPtvy6e0W0NgA5w== dependencies: debug "^4.1.1" endent "^2.0.1" find-cache-dir "^3.3.1" flat-cache "^3.0.4" micromatch "^4.0.2" - react-docgen-typescript "^2.0.0" + react-docgen-typescript "^2.1.1" tslib "^2.0.0" "@storybook/react@^6.4.21": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/react/-/react-6.4.22.tgz#5940e5492bc87268555b47f12aff4be4b67eae54" - integrity sha512-5BFxtiguOcePS5Ty/UoH7C6odmvBYIZutfiy4R3Ua6FYmtxac5vP9r5KjCz1IzZKT8mCf4X+PuK1YvDrPPROgQ== + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.6.tgz#9b7ddc678790a8af100c26b8d47c332bc6f4fc84" + integrity sha512-lU2ggvZe9PbKWK4cbwHI6eDT7tlRAqdx489kLrfKhGTUVE8zhc/uosVEMpxbxS/zf1YYnXumr2DH1Uw2S3JeqA== dependencies: "@babel/preset-flow" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@pmmmwh/react-refresh-webpack-plugin" "^0.5.1" - "@storybook/addons" "6.4.22" - "@storybook/core" "6.4.22" - "@storybook/core-common" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" - "@storybook/node-logger" "6.4.22" - "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.253f8c1.0" + "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" + "@storybook/addons" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core" "6.5.6" + "@storybook/core-common" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" + "@storybook/docs-tools" "6.5.6" + "@storybook/node-logger" "6.5.6" + "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.4.22" + "@storybook/store" "6.5.6" + "@types/estree" "^0.0.51" + "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" + acorn "^7.4.1" + acorn-jsx "^5.3.1" + acorn-walk "^7.2.0" babel-plugin-add-react-displayname "^0.0.5" - babel-plugin-named-asset-import "^0.3.1" babel-plugin-react-docgen "^4.2.1" core-js "^3.8.2" + escodegen "^2.0.0" + fs-extra "^9.0.1" global "^4.4.0" + html-tags "^3.1.0" lodash "^4.17.21" prop-types "^15.7.2" + react-element-to-jsx-string "^14.3.4" react-refresh "^0.11.0" read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" ts-dedent "^2.0.0" - webpack "4" + util-deprecate "^1.0.2" + webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/router/-/router-6.4.22.tgz#e3cc5cd8595668a367e971efb9695bbc122ed95e" - integrity sha512-zeuE8ZgFhNerQX8sICQYNYL65QEi3okyzw7ynF58Ud6nRw4fMxSOHcj2T+nZCIU5ufozRL4QWD/Rg9P2s/HtLw== +"@storybook/router@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.6.tgz#83b442635c5a32a0eb0b4cd3f2da8b7cbecc32e7" + integrity sha512-SL9X/+bkJxafH5V9r65liMgs+EvGddMCQ/4JP/p3GIu6+2G3pW613Ww5sqCBCB1R4zoYcsMT7F1q/D5NWByVHg== dependencies: - "@storybook/client-logger" "6.4.22" + "@storybook/client-logger" "6.5.6" core-js "^3.8.2" - fast-deep-equal "^3.1.3" - global "^4.4.0" - history "5.0.0" - lodash "^4.17.21" - memoizerific "^1.11.3" - qs "^6.10.0" - react-router "^6.0.0" - react-router-dom "^6.0.0" - ts-dedent "^2.0.0" + regenerator-runtime "^0.13.7" "@storybook/semver@^7.3.2": version "7.3.2" @@ -1966,14 +1899,14 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.4.22.tgz#c931b81cf1bd63f79b51bfa9311de7f5a04a7b77" - integrity sha512-O4RxqPgRyOgAhssS6q1Rtc8LiOvPBpC1EqhCYWRV3K+D2EjFarfQMpjgPj18hC+QzpUSfzoBZYqsMECewEuLNw== +"@storybook/source-loader@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.6.tgz#e20c6a827c2021bbbab05d0bb2c1e6fb66e133a9" + integrity sha512-KsV9DU3JucYjWHq55f1bOu52mprgSpTIRUnvK2BojQdjY+kqN2ow0pP/I9FZzNpEKKsGFWdnREfYM5dYHZyvLw== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" + "@storybook/addons" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" estraverse "^5.2.0" global "^4.4.0" @@ -1982,15 +1915,15 @@ prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" -"@storybook/store@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/store/-/store-6.4.22.tgz#f291fbe3639f14d25f875cac86abb209a97d4e2a" - integrity sha512-lrmcZtYJLc2emO+1l6AG4Txm9445K6Pyv9cGAuhOJ9Kks0aYe0YtvMkZVVry0RNNAIv6Ypz72zyKc/QK+tZLAQ== +"@storybook/store@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.6.tgz#0250d92f10d9590f4df2f7e6e11a07103055c350" + integrity sha512-ftU40jN5IV26Mj4QjqgsooWFYXDNtcwByH9JrbIlZv7L8HySqVHqeOMrk2Bbt2EkM3urhc5yd0Bbr8EuKlbZVQ== dependencies: - "@storybook/addons" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/csf" "0.0.2--canary.87bc651.0" + "@storybook/addons" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -2003,57 +1936,50 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/theming@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.4.22.tgz#19097eec0366447ddd0d6917b0e0f81d0ec5e51e" - integrity sha512-NVMKH/jxSPtnMTO4VCN1k47uztq+u9fWv4GSnzq/eezxdGg9ceGL4/lCrNGoNajht9xbrsZ4QvsJ/V2sVGM8wA== +"@storybook/telemetry@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.6.tgz#a7da1fa0019b307ceac24e65ff1e14ee0f36a8a5" + integrity sha512-l0vbStCgVA9u0ITvowZ1LNxmf32vAAdnPqSmB9DdA3ZO2wCpttW9rPyg1O4OV8c5uq7QJZ7mrKZ04p9SLo8wrw== dependencies: - "@emotion/core" "^10.1.1" - "@emotion/is-prop-valid" "^0.8.6" - "@emotion/styled" "^10.0.27" - "@storybook/client-logger" "6.4.22" + "@storybook/client-logger" "6.5.6" + "@storybook/core-common" "6.5.6" + chalk "^4.1.0" core-js "^3.8.2" - deep-object-diff "^1.1.0" - emotion-theming "^10.0.27" + detect-package-manager "^2.0.1" + fetch-retry "^5.0.2" + fs-extra "^9.0.1" global "^4.4.0" - memoizerific "^1.11.3" - polished "^4.0.5" - resolve-from "^5.0.0" - ts-dedent "^2.0.0" + isomorphic-unfetch "^3.1.0" + nanoid "^3.3.1" + read-pkg-up "^7.0.1" + regenerator-runtime "^0.13.7" -"@storybook/ui@6.4.22": - version "6.4.22" - resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.4.22.tgz#49badd7994465d78d984ca4c42533c1c22201c46" - integrity sha512-UVjMoyVsqPr+mkS1L7m30O/xrdIEgZ5SCWsvqhmyMUok3F3tRB+6M+OA5Yy+cIVfvObpA7MhxirUT1elCGXsWQ== +"@storybook/theming@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.6.tgz#519e1675a7ff5c780f5a41b05b4b679c37b62fe8" + integrity sha512-JEKl9gdVD2Ef9xSwRtaq6EpjJD5xe7X2OP/4e61ucrp/rSOk7SOpYUZYQh6PhYLGhnGbgQkedVVc9CUhK8bs6Q== dependencies: - "@emotion/core" "^10.1.1" - "@storybook/addons" "6.4.22" - "@storybook/api" "6.4.22" - "@storybook/channels" "6.4.22" - "@storybook/client-logger" "6.4.22" - "@storybook/components" "6.4.22" - "@storybook/core-events" "6.4.22" - "@storybook/router" "6.4.22" - "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.4.22" - copy-to-clipboard "^3.3.1" + "@storybook/client-logger" "6.5.6" + core-js "^3.8.2" + regenerator-runtime "^0.13.7" + +"@storybook/ui@6.5.6": + version "6.5.6" + resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.6.tgz#3b312728c11d1bdba9cac41d18d91b6806496028" + integrity sha512-EU/YGczcA/v7jHlXIJ7CytK+FH2X9tlsjQbcQW8niPkwtk/gvG7vTfNhanbDlWMKnDLuFWhyHJ33nrW2mIyqkw== + dependencies: + "@storybook/addons" "6.5.6" + "@storybook/api" "6.5.6" + "@storybook/channels" "6.5.6" + "@storybook/client-logger" "6.5.6" + "@storybook/components" "6.5.6" + "@storybook/core-events" "6.5.6" + "@storybook/router" "6.5.6" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.5.6" core-js "^3.8.2" - core-js-pure "^3.8.2" - downshift "^6.0.15" - emotion-theming "^10.0.27" - fuse.js "^3.6.1" - global "^4.4.0" - lodash "^4.17.21" - markdown-to-jsx "^7.1.3" - memoizerific "^1.11.3" - polished "^4.0.5" - qs "^6.10.0" - react-draggable "^4.4.3" - react-helmet-async "^1.0.7" - react-sizeme "^3.0.1" regenerator-runtime "^0.13.7" resolve-from "^5.0.0" - store2 "^2.12.0" "@sucrase/webpack-loader@^2.0.0": version "2.0.0" @@ -2062,17 +1988,26 @@ dependencies: loader-utils "^1.1.0" -"@types/color-convert@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz#8f5ee6b9e863dcbee5703f5a517ffb13d3ea4e22" - integrity sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ== +"@types/eslint-scope@^3.7.3": + version "3.7.3" + resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.3.tgz#125b88504b61e3c8bc6f870882003253005c3224" + integrity sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g== dependencies: - "@types/color-name" "*" + "@types/eslint" "*" + "@types/estree" "*" -"@types/color-name@*": - version "1.1.1" - resolved "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== +"@types/eslint@*": + version "8.4.2" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz#48f2ac58ab9c631cb68845c3d956b28f79fad575" + integrity sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*", "@types/estree@^0.0.51": + version "0.0.51" + resolved "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" + integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== "@types/glob@*", "@types/glob@^7.1.1": version "7.2.0" @@ -2104,11 +2039,16 @@ resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== -"@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8": +"@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8": version "7.0.11" resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== +"@types/lodash@^4.14.167": + version "4.14.182" + resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz#05301a4d5e62963227eaafe0ce04dd77c54ea5c2" + integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q== + "@types/mdast@^3.0.0": version "3.0.10" resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" @@ -2130,14 +2070,14 @@ form-data "^3.0.0" "@types/node@*": - version "17.0.25" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.25.tgz#527051f3c2f77aa52e5dc74e45a3da5fb2301448" - integrity sha512-wANk6fBrUwdpY4isjWrKTufkrXdu1D2YHCot2fD/DfWxF5sMrVSA+KN7ydckvaTCh0HiqX9IVl0L5/ZoXg5M7w== + version "17.0.38" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.38.tgz#f8bb07c371ccb1903f3752872c89f44006132947" + integrity sha512-5jY9RhV7c0Z4Jy09G+NIDTsCZ5G0L5n+Z+p+Y7t5VJHM30bgwzSjVtlcBxqAj+6L/swIlvtOSzr8rBk/aNyV2g== -"@types/node@^14.0.10": - version "14.18.13" - resolved "https://registry.npmjs.org/@types/node/-/node-14.18.13.tgz#6ad4d9db59e6b3faf98dcfe4ca9d2aec84443277" - integrity sha512-Z6/KzgyWOga3pJNS42A+zayjhPbf2zM3hegRQaOPnLOzEi86VV++6FLDWgR1LGrVCRufP/ph2daa3tEa5br1zA== +"@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": + version "16.11.38" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.38.tgz#be0edd097b23eace6c471c525a74b3f98803017f" + integrity sha512-hjO/0K140An3GWDw2HJfq7gko3wWeznbjXgg+rzPdVzhe198hp4x2i1dgveAOEiFKd8sOilAxzoSJiVv5P/CUg== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -2149,11 +2089,6 @@ resolved "https://registry.npmjs.org/@types/npmlog/-/npmlog-4.1.4.tgz#30eb872153c7ead3e8688c476054ddca004115f6" integrity sha512-WKG4gTr8przEZBiJ5r3s8ZIAoMXNbOgQ+j/d5O4X3x6kZJRLNvyUJuUK/KoG3+8BaOHPhp2m7WC6JKKeovDSzQ== -"@types/overlayscrollbars@^1.12.0": - version "1.12.1" - resolved "https://registry.npmjs.org/@types/overlayscrollbars/-/overlayscrollbars-1.12.1.tgz#fb637071b545834fb12aea94ee309a2ff4cdc0a8" - integrity sha512-V25YHbSoKQN35UasHf0EKD9U2vcmexRSp78qa8UglxFH8H3D+adEa9zGZwrqpH4TdvqeMrgMqVqsLB4woAryrQ== - "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" @@ -2187,9 +2122,9 @@ "@types/react" "*" "@types/react@*": - version "18.0.5" - resolved "https://registry.npmjs.org/@types/react/-/react-18.0.5.tgz#1a4d4b705ae6af5aed369dec22800b20f89f5301" - integrity sha512-UPxNGInDCIKlfqBrm8LDXYWNfLHwIdisWcsH5GpMyGjhEDLFgTtlRBaoWuCua9HcyuE0rMkmAeZ3FXV1pYLIYQ== + version "18.0.10" + resolved "https://registry.npmjs.org/@types/react/-/react-18.0.10.tgz#5692944d4a45e204fb7a981eb1388afe919cf4d0" + integrity sha512-dIugadZuIPrRzvIEevIu7A1smqOAjkSMv8qOfwPt9Ve6i6JT/FQcCHyk2qIAxwsQNKZt5/oGR0T4z9h2dXRAkg== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -2211,9 +2146,9 @@ integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== "@types/uglify-js@*": - version "3.13.2" - resolved "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.2.tgz#1044c1713fb81cb1ceef29ad8a9ee1ce08d690ef" - integrity sha512-/xFrPIo+4zOeNGtVMbf9rUm0N+i4pDf1ynExomqtokIJmVzR3962lJ1UE+MmexMkA0cmN9oTzg5Xcbwge0Ij2Q== + version "3.13.3" + resolved "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.3.tgz#556fd2ac75cc649aba21f87e0be7b1a7e9915bfe" + integrity sha512-9dmBYXt/rKxedUXfCvXSxyiPvpDXLkiRlv17DnqdhS+pRustL1967rI1jZVt1xysTO+xJGMoZzcy3cWC9+b6Tw== dependencies: source-map "^0.6.1" @@ -2223,9 +2158,9 @@ integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== "@types/webpack-env@^1.16.0": - version "1.16.4" - resolved "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.4.tgz#1f4969042bf76d7ef7b5914f59b3b60073f4e1f4" - integrity sha512-llS8qveOUX3wxHnSykP5hlYFFuMfJ9p5JvIyCiBgp7WTfl6K5ZcyHj8r8JsN/J6QODkAsRRCLIcTuOCu8etkUw== + version "1.17.0" + resolved "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.17.0.tgz#f99ce359f1bfd87da90cc4a57cab0a18f34a48d0" + integrity sha512-eHSaNYEyxRA5IAG0Ym/yCyf86niZUIF/TpWKofQI/CVfh5HsMEUyfE2kwFxha4ow0s5g0LfISQxpDKjbRDrizw== "@types/webpack-sources@*": version "3.2.0" @@ -2248,6 +2183,14 @@ anymatch "^3.0.0" source-map "^0.6.0" +"@webassemblyjs/ast@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" + integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ast@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" @@ -2257,16 +2200,31 @@ "@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/wast-parser" "1.9.0" +"@webassemblyjs/floating-point-hex-parser@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" + integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== + "@webassemblyjs/floating-point-hex-parser@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== +"@webassemblyjs/helper-api-error@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== + "@webassemblyjs/helper-api-error@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== +"@webassemblyjs/helper-buffer@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== + "@webassemblyjs/helper-buffer@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" @@ -2291,11 +2249,35 @@ dependencies: "@webassemblyjs/ast" "1.9.0" +"@webassemblyjs/helper-numbers@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" + integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== + "@webassemblyjs/helper-wasm-bytecode@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== +"@webassemblyjs/helper-wasm-section@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" + integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/helper-wasm-section@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" @@ -2306,6 +2288,13 @@ "@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/wasm-gen" "1.9.0" +"@webassemblyjs/ieee754@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" + integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== + dependencies: + "@xtuc/ieee754" "^1.2.0" + "@webassemblyjs/ieee754@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" @@ -2313,6 +2302,13 @@ dependencies: "@xtuc/ieee754" "^1.2.0" +"@webassemblyjs/leb128@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" + integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== + dependencies: + "@xtuc/long" "4.2.2" + "@webassemblyjs/leb128@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" @@ -2320,11 +2316,30 @@ dependencies: "@xtuc/long" "4.2.2" +"@webassemblyjs/utf8@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" + integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== + "@webassemblyjs/utf8@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== +"@webassemblyjs/wasm-edit@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" + integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/helper-wasm-section" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-opt" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wast-printer" "1.11.1" + "@webassemblyjs/wasm-edit@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" @@ -2339,6 +2354,17 @@ "@webassemblyjs/wasm-parser" "1.9.0" "@webassemblyjs/wast-printer" "1.9.0" +"@webassemblyjs/wasm-gen@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + "@webassemblyjs/wasm-gen@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" @@ -2350,6 +2376,16 @@ "@webassemblyjs/leb128" "1.9.0" "@webassemblyjs/utf8" "1.9.0" +"@webassemblyjs/wasm-opt@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wasm-opt@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" @@ -2360,6 +2396,18 @@ "@webassemblyjs/wasm-gen" "1.9.0" "@webassemblyjs/wasm-parser" "1.9.0" +"@webassemblyjs/wasm-parser@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" + integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + "@webassemblyjs/wasm-parser@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" @@ -2384,6 +2432,14 @@ "@webassemblyjs/helper-fsm" "1.9.0" "@xtuc/long" "4.2.2" +"@webassemblyjs/wast-printer@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" + integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@xtuc/long" "4.2.2" + "@webassemblyjs/wast-printer@1.9.0": version "1.9.0" resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" @@ -2411,20 +2467,40 @@ accepts@~1.3.5, accepts@~1.3.8: mime-types "~2.1.34" negotiator "0.6.3" +acorn-import-assertions@^1.7.6: + version "1.8.0" + resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^7.2.0: + version "7.2.0" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + acorn@^6.4.1: version "6.4.2" resolved "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^8.5.0: - version "8.7.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" - integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== +acorn@^7.4.1: + version "7.4.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.4.1, acorn@^8.5.0: + version "8.7.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" + integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== address@^1.0.1: - version "1.1.2" - resolved "https://registry.npmjs.org/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== + version "1.2.0" + resolved "https://registry.npmjs.org/address/-/address-1.2.0.tgz#d352a62c92fee90f89a693eccd2a8b2139ab02d9" + integrity sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig== aggregate-error@^3.0.0: version "3.1.0" @@ -2497,7 +2573,7 @@ ansi-html-community@0.0.8, ansi-html-community@^0.0.8: ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^5.0.1: version "5.0.1" @@ -2549,7 +2625,7 @@ anymatch@^3.0.0, anymatch@~3.1.2: app-root-dir@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/app-root-dir/-/app-root-dir-1.0.2.tgz#38187ec2dea7577fff033ffcb12172692ff6e118" - integrity sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg= + integrity sha512-jlpIfsOoNoafl92Sz//64uQHGSyMrD2vYG5d8o2a4qGvyNCvXur7bzIsWtAC/6flI2RYAp3kv8rsfBtaLm7w0g== "aproba@^1.0.3 || ^2.0.0": version "2.0.0" @@ -2572,7 +2648,7 @@ are-we-there-yet@^2.0.0: arr-diff@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-flatten@^1.1.0: version "1.1.0" @@ -2582,28 +2658,33 @@ arr-flatten@^1.1.0: arr-union@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw== array-flatten@1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== array-includes@^3.0.3: - version "3.1.4" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" - integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== + version "3.1.5" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" + integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" get-intrinsic "^1.1.1" is-string "^1.0.7" array-union@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== dependencies: array-uniq "^1.0.1" @@ -2615,12 +2696,12 @@ array-union@^2.1.0: array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== array-unique@^0.3.2: version "0.3.2" resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== array.prototype.flat@^1.2.1: version "1.3.0" @@ -2653,6 +2734,17 @@ array.prototype.map@^1.0.4: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" +array.prototype.reduce@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz#8167e80089f78bff70a99e20bd4201d4663b0a6f" + integrity sha512-WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.2" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + arrify@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" @@ -2679,7 +2771,7 @@ assert@^1.1.1: assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== ast-types@^0.14.2: version "0.14.2" @@ -2696,7 +2788,7 @@ async-each@^1.0.1: asynckit@^0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== at-least-node@^1.0.0: version "1.0.0" @@ -2722,14 +2814,14 @@ autoprefixer@^9.8.6: postcss-value-parser "^4.1.0" axe-core@^4.2.0: - version "4.4.1" - resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz#7dbdc25989298f9ad006645cd396782443757413" - integrity sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw== + version "4.4.2" + resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.2.tgz#dcf7fb6dea866166c3eab33d68208afe4d5f670c" + integrity sha512-LVAaGp/wkkgYJcjmHsoKx4juT1aQvJyPcW09MLCjVTh3V2cc6PnyempiLMNH5iMdfIX/zdbjUx2KDjMLCTdPeA== babel-loader@^8.0.0: - version "8.2.4" - resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.4.tgz#95f5023c791b2e9e2ca6f67b0984f39c82ff384b" - integrity sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A== + version "8.2.5" + resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz#d45f585e654d5a5d90f5350a779d7647c5ed512e" + integrity sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ== dependencies: find-cache-dir "^3.3.1" loader-utils "^2.0.0" @@ -2739,7 +2831,7 @@ babel-loader@^8.0.0: babel-plugin-add-react-displayname@^0.0.5: version "0.0.5" resolved "https://registry.npmjs.org/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz#339d4cddb7b65fd62d1df9db9fe04de134122bd5" - integrity sha1-M51M3be2X9YtHfnbn+BN4TQSK9U= + integrity sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw== babel-plugin-apply-mdx-type-prop@1.6.22: version "1.6.22" @@ -2756,22 +2848,6 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" -babel-plugin-emotion@^10.0.27: - version "10.2.2" - resolved "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz#a1fe3503cff80abfd0bdda14abd2e8e57a79d17d" - integrity sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@emotion/hash" "0.8.0" - "@emotion/memoize" "0.7.4" - "@emotion/serialize" "^0.11.16" - babel-plugin-macros "^2.0.0" - babel-plugin-syntax-jsx "^6.18.0" - convert-source-map "^1.5.0" - escape-string-regexp "^1.0.5" - find-root "^1.1.0" - source-map "^0.5.7" - babel-plugin-extract-import-names@1.6.22: version "1.6.22" resolved "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc" @@ -2779,15 +2855,6 @@ babel-plugin-extract-import-names@1.6.22: dependencies: "@babel/helper-plugin-utils" "7.10.4" -babel-plugin-macros@^2.0.0, babel-plugin-macros@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" - integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== - dependencies: - "@babel/runtime" "^7.7.2" - cosmiconfig "^6.0.0" - resolve "^1.12.0" - babel-plugin-macros@^3.0.1: version "3.1.0" resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" @@ -2797,11 +2864,6 @@ babel-plugin-macros@^3.0.1: cosmiconfig "^7.0.0" resolve "^1.19.0" -babel-plugin-named-asset-import@^0.3.1: - version "0.3.8" - resolved "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz#6b7fa43c59229685368683c28bc9734f24524cc2" - integrity sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q== - babel-plugin-polyfill-corejs2@^0.3.0: version "0.3.1" resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz#440f1b70ccfaabc6b676d196239b138f8a2cfba5" @@ -2843,11 +2905,6 @@ babel-plugin-react-docgen@^4.2.1: lodash "^4.17.15" react-docgen "^5.0.0" -babel-plugin-syntax-jsx@^6.18.0: - version "6.18.0" - resolved "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= - bail@^1.0.0: version "1.0.5" resolved "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" @@ -2879,7 +2936,7 @@ base@^0.11.1: batch-processor@1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz#75c95c32b748e0850d10c2b168f6bdbe9891ace8" - integrity sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg= + integrity sha512-xoLQD8gmmR32MeuBHgH0Tzd5PuSZx71ZsbhVxOCRbgktZEPe4SQy7s9Z50uPp0F/f7iw2XmkHN2xkgbMfckMDA== better-opn@^2.1.1: version "2.1.1" @@ -2888,6 +2945,11 @@ better-opn@^2.1.1: dependencies: open "^7.0.3" +big-integer@^1.6.7: + version "1.6.51" + resolved "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" + integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== + big.js@^5.2.2: version "5.2.2" resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" @@ -2910,7 +2972,7 @@ bindings@^1.5.0: dependencies: file-uri-to-path "1.0.0" -bluebird@^3.3.5, bluebird@^3.5.5: +bluebird@^3.5.5: version "3.7.2" resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -2921,30 +2983,32 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== bn.js@^5.0.0, bn.js@^5.1.1: - version "5.2.0" - resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== + version "5.2.1" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -body-parser@1.19.2: - version "1.19.2" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" - integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== +body-parser@1.20.0: + version "1.20.0" + resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" + integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== dependencies: bytes "3.1.2" content-type "~1.0.4" debug "2.6.9" - depd "~1.1.2" - http-errors "1.8.1" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" iconv-lite "0.4.24" - on-finished "~2.3.0" - qs "6.9.7" - raw-body "2.4.3" + on-finished "2.4.1" + qs "6.10.3" + raw-body "2.5.1" type-is "~1.6.18" + unpipe "1.0.0" boolbase@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== boxen@^5.1.2: version "5.1.2" @@ -2960,6 +3024,13 @@ boxen@^5.1.2: widest-line "^3.1.0" wrap-ansi "^7.0.0" +bplist-parser@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.1.1.tgz#d60d5dcc20cba6dc7e1f299b35d3e1f95dafbae6" + integrity sha512-2AEM0FXy8ZxVLBuqX0hqt1gDwcnz2zygEkQ6zaD5Wko/sB9paUNwlpawrFtKeHUAQUOzjVy9AO4oeonqIHKA9Q== + dependencies: + big-integer "^1.6.7" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2994,7 +3065,7 @@ braces@^3.0.2, braces@~3.0.2: brorand@^1.0.1, brorand@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== browserify-aes@^1.0.0, browserify-aes@^1.0.4: version "1.2.0" @@ -3057,15 +3128,15 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.12.0, browserslist@^4.17.5, browserslist@^4.20.2: - version "4.20.2" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz#567b41508757ecd904dab4d1c646c612cd3d4f88" - integrity sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA== +browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.2, browserslist@^4.20.3: + version "4.20.3" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" + integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== dependencies: - caniuse-lite "^1.0.30001317" - electron-to-chromium "^1.4.84" + caniuse-lite "^1.0.30001332" + electron-to-chromium "^1.4.118" escalade "^3.1.1" - node-releases "^2.0.2" + node-releases "^2.0.3" picocolors "^1.0.0" buffer-from@^1.0.0: @@ -3076,7 +3147,7 @@ buffer-from@^1.0.0: buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== buffer@^4.3.0: version "4.9.2" @@ -3090,12 +3161,12 @@ buffer@^4.3.0: builtin-status-codes@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= + integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== bytes@3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== bytes@3.1.2: version "3.1.2" @@ -3103,22 +3174,22 @@ bytes@3.1.2: integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== c8@^7.6.0: - version "7.11.0" - resolved "https://registry.npmjs.org/c8/-/c8-7.11.0.tgz#b3ab4e9e03295a102c47ce11d4ef6d735d9a9ac9" - integrity sha512-XqPyj1uvlHMr+Y1IeRndC2X5P7iJzJlEJwBpCdBbq2JocXOgJfr+JVfJkyNMGROke5LfKrhSFXGFXnwnRJAUJw== + version "7.11.3" + resolved "https://registry.npmjs.org/c8/-/c8-7.11.3.tgz#88c8459c1952ed4f701b619493c9ae732b057163" + integrity sha512-6YBmsaNmqRm9OS3ZbIiL2EZgi1+Xc4O24jL3vMYGE6idixYuGdy76rIfIdltSKDj9DpLNrcXSonUTR1miBD0wA== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@istanbuljs/schema" "^0.1.2" + "@istanbuljs/schema" "^0.1.3" find-up "^5.0.0" foreground-child "^2.0.0" - istanbul-lib-coverage "^3.0.1" + istanbul-lib-coverage "^3.2.0" istanbul-lib-report "^3.0.0" - istanbul-reports "^3.0.2" - rimraf "^3.0.0" + istanbul-reports "^3.1.4" + rimraf "^3.0.2" test-exclude "^6.0.0" - v8-to-istanbul "^8.0.0" + v8-to-istanbul "^9.0.0" yargs "^16.2.0" - yargs-parser "^20.2.7" + yargs-parser "^20.2.9" cacache@^12.0.2: version "12.0.4" @@ -3191,7 +3262,7 @@ call-bind@^1.0.0, call-bind@^1.0.2: call-me-maybe@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= + integrity sha512-wCyFsDQkKPwwF8BDwOiWNx/9K45L/hvggQiDbve+viMNMQnWhrlYIuBk09offfwCRtCO9P6XwUttufzU11WCVw== callsites@^3.0.0: version "3.1.0" @@ -3211,6 +3282,19 @@ camelcase-css@2.0.1: resolved "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + integrity sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ== + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw== + camelcase@^5.3.1: version "5.3.1" resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -3221,10 +3305,10 @@ camelcase@^6.2.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001317: - version "1.0.30001332" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz#39476d3aa8d83ea76359c70302eafdd4a1d727dd" - integrity sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw== +caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001332: + version "1.0.30001346" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001346.tgz#e895551b46b9cc9cc9de852facd42f04839a8fbe" + integrity sha512-q6ibZUO2t88QCIPayP/euuDREq+aMAxFE5S70PkrLh0iTDj/zEhgvJRKC2+CvXY6EWc6oQwUR48lL5vCW6jiXQ== case-sensitive-paths-webpack-plugin@^2.3.0: version "2.4.0" @@ -3384,11 +3468,6 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clsx@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== - collapse-white-space@^1.0.2: version "1.0.6" resolved "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" @@ -3397,7 +3476,7 @@ collapse-white-space@^1.0.2: collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" object-visit "^1.0.0" @@ -3419,7 +3498,7 @@ color-convert@^2.0.1: color-name@1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@~1.1.4: version "1.1.4" @@ -3466,7 +3545,7 @@ common-path-prefix@^3.0.0: commondir@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== component-emitter@^1.2.1: version "1.3.0" @@ -3493,15 +3572,10 @@ compression@^1.7.4: safe-buffer "5.1.2" vary "~1.1.2" -compute-scroll-into-view@^1.0.17: - version "1.0.17" - resolved "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz#6a88f18acd9d42e9cf4baa6bec7e0522607ab7ab" - integrity sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg== - concat-map@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^1.5.0: version "1.6.2" @@ -3521,12 +3595,12 @@ console-browserify@^1.1.0: console-control-strings@^1.0.0, console-control-strings@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= + integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== content-disposition@0.5.4: version "0.5.4" @@ -3540,7 +3614,7 @@ content-type@~1.0.4: resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.8.0" resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== @@ -3550,12 +3624,12 @@ convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.4.2: - version "0.4.2" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" - integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== +cookie@0.5.0: + version "0.5.0" + resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== copy-concurrently@^1.0.0: version "1.0.5" @@ -3572,32 +3646,25 @@ copy-concurrently@^1.0.0: copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== -copy-to-clipboard@^3.3.1: - version "3.3.1" - resolved "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" - integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw== +core-js-compat@^3.21.0, core-js-compat@^3.22.1, core-js-compat@^3.8.1: + version "3.22.8" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.8.tgz#46fa34ce1ddf742acd7f95f575f66bbb21e05d62" + integrity sha512-pQnwg4xtuvc2Bs/5zYQPaEYYSuTxsF7LBWF0SvnVhthZo/Qe+rJpcEekrdNK5DWwDJ0gv0oI9NNX5Mppdy0ctg== dependencies: - toggle-selection "^1.0.6" - -core-js-compat@^3.20.2, core-js-compat@^3.21.0, core-js-compat@^3.8.1: - version "3.22.0" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.0.tgz#7ce17ab57c378be2c717c7c8ed8f82a50a25b3e4" - integrity sha512-WwA7xbfRGrk8BGaaHlakauVXrlYmAIkk8PNGb1FDQS+Rbrewc3pgFfwJFRw6psmJVAll7Px9UHRYE16oRQnwAQ== - dependencies: - browserslist "^4.20.2" + browserslist "^4.20.3" semver "7.0.0" -core-js-pure@^3.8.1, core-js-pure@^3.8.2: - version "3.22.0" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.0.tgz#0eaa54b6d1f4ebb4d19976bb4916dfad149a3747" - integrity sha512-ylOC9nVy0ak1N+fPIZj00umoZHgUVqmucklP5RT5N+vJof38klKn8Ze6KGyvchdClvEBr6LcQqJpI216LUMqYA== +core-js-pure@^3.8.1: + version "3.22.8" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.8.tgz#f2157793b58719196ccf9673cc14f3683adc0957" + integrity sha512-bOxbZIy9S5n4OVH63XaLVXZ49QKicjowDx/UELyJ68vxfCRpYsbyh/WNZNfEfAk+ekA8vSjt+gCDpvh672bc3w== core-js@^3.0.4, core-js@^3.6.5, core-js@^3.8.2: - version "3.22.0" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.0.tgz#b52007870c5e091517352e833b77f0b2d2b259f3" - integrity sha512-8h9jBweRjMiY+ORO7bdWSeWfHhLPO7whobj7Z2Bl0IDo00C228EdGgH7FE4jGumbEjzcFfkfW8bXgdkEDhnwHQ== + version "3.22.8" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" + integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== core-util-is@~1.0.0: version "1.0.3" @@ -3682,7 +3749,7 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" -cross-spawn@^7.0.0: +cross-spawn@^7.0.0, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -3748,20 +3815,22 @@ cssesc@^3.0.0: resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@^2.5.7: - version "2.6.20" - resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda" - integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA== - csstype@^3.0.2: - version "3.0.11" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33" - integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw== + version "3.1.0" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz#4ddcac3718d787cf9df0d1b7d15033925c8f29f2" + integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA== + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng== + dependencies: + array-find-index "^1.0.1" cyclist@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= + integrity sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A== debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0: version "2.6.9" @@ -3784,27 +3853,46 @@ debug@^4.1.0, debug@^4.1.1: dependencies: ms "2.1.2" +decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== dedent@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== -deep-object-diff@^1.1.0: - version "1.1.7" - resolved "https://registry.npmjs.org/deep-object-diff/-/deep-object-diff-1.1.7.tgz#348b3246f426427dd633eaa50e1ed1fc2eafc7e4" - integrity sha512-QkgBca0mL08P6HiOjoqvmm6xOAl2W6CT2+34Ljhg0OeFan8cwlcdq8jrLKsBBuUFAZLsN5b6y491KdKEoSo9lg== +deep-is@~0.1.3: + version "0.1.4" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.2.2" resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -define-properties@^1.1.2, define-properties@^1.1.3: +default-browser-id@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/default-browser-id/-/default-browser-id-1.0.4.tgz#e59d09a5d157b828b876c26816e61c3d2a2c203a" + integrity sha512-qPy925qewwul9Hifs+3sx1ZYn14obHxpkX+mPD369w4Rzg+YkJBgi3SOvwUq81nWSjqGUegIgEPwD8u+HUnxlw== + dependencies: + bplist-parser "^0.1.0" + meow "^3.1.0" + untildify "^2.0.0" + +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== + +define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== @@ -3815,14 +3903,14 @@ define-properties@^1.1.2, define-properties@^1.1.3: define-property@^0.2.5: version "0.2.5" resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: is-descriptor "^0.1.0" define-property@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" @@ -3837,17 +3925,17 @@ define-property@^2.0.2: delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== delegates@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= +depd@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== des.js@^1.0.0: version "1.0.1" @@ -3857,10 +3945,10 @@ des.js@^1.0.0: inherits "^2.0.1" minimalistic-assert "^1.0.0" -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detab@2.0.4: version "2.0.4" @@ -3869,6 +3957,13 @@ detab@2.0.4: dependencies: repeat-string "^1.5.4" +detect-package-manager@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/detect-package-manager/-/detect-package-manager-2.0.1.tgz#6b182e3ae5e1826752bfef1de9a7b828cffa50d8" + integrity sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A== + dependencies: + execa "^5.1.1" + detect-port@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/detect-port/-/detect-port-1.3.0.tgz#d9c40e9accadd4df5cac6a782aefd014d573d1f1" @@ -3972,17 +4067,6 @@ dotenv@^8.0.0: resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== -downshift@^6.0.15: - version "6.1.7" - resolved "https://registry.npmjs.org/downshift/-/downshift-6.1.7.tgz#fdb4c4e4f1d11587985cd76e21e8b4b3fa72e44c" - integrity sha512-cVprZg/9Lvj/uhYRxELzlu1aezRcgPWBjTvspiGTVEU64gF5pRdSRKFVLcxqsZC637cLAGMbL40JavEfWnqgNg== - dependencies: - "@babel/runtime" "^7.14.8" - compute-scroll-into-view "^1.0.17" - prop-types "^15.7.2" - react-is "^17.0.2" - tslib "^2.3.0" - duplexify@^3.4.2, duplexify@^3.6.0: version "3.7.1" resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" @@ -3996,12 +4080,12 @@ duplexify@^3.4.2, duplexify@^3.6.0: ee-first@1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.4.84: - version "1.4.113" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.113.tgz#b3425c086e2f4fc31e9e53a724c6f239e3adb8b9" - integrity sha512-s30WKxp27F3bBH6fA07FYL2Xm/FYnYrKpMjHr3XVCTUb9anAyZn/BeZfPWgTZGAbJeT4NxNwISSbLcYZvggPMA== +electron-to-chromium@^1.4.118: + version "1.4.144" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.144.tgz#9a5d1f41452ecc65b686d529ae919248da44f406" + integrity sha512-R3RV3rU1xWwFJlSClVWDvARaOk6VUO/FubHLodIASDB3Mc2dzuWvNdfOgH9bwHUTqT79u92qw60NWfwUdzAqdg== element-resize-detector@^1.2.2: version "1.2.4" @@ -4033,19 +4117,10 @@ emojis-list@^3.0.0: resolved "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== -emotion-theming@^10.0.27: - version "10.3.0" - resolved "https://registry.npmjs.org/emotion-theming/-/emotion-theming-10.3.0.tgz#7f84d7099581d7ffe808aab5cd870e30843db72a" - integrity sha512-mXiD2Oj7N9b6+h/dC6oLf9hwxbtKHQjoIqtodEyL8CpkN4F3V4IK/BT4D0C7zSs4BBFOu4UlPJbvvBLa88SGEA== - dependencies: - "@babel/runtime" "^7.5.5" - "@emotion/weak-memoize" "0.2.5" - hoist-non-react-statics "^3.3.0" - encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" @@ -4072,6 +4147,14 @@ enhanced-resolve@^4.5.0: memory-fs "^0.5.0" tapable "^1.0.0" +enhanced-resolve@^5.9.3: + version "5.9.3" + resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.3.tgz#44a342c012cbc473254af5cc6ae20ebd0aae5d88" + integrity sha512-Bq9VSor+kjvW3f9/MiiR4eE3XYgOl7/rS8lnSxbRbF3kS0B2r+Y9w5krBWxZgDxASVZbdYrn5wT4j/Wb0J9qow== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + entities@^2.0.0: version "2.2.0" resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" @@ -4084,7 +4167,7 @@ errno@^0.1.3, errno@~0.1.7: dependencies: prr "~1.0.1" -error-ex@^1.3.1: +error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== @@ -4098,17 +4181,19 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.1.1" -es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2: - version "1.19.5" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.5.tgz#a2cb01eb87f724e815b278b0dd0d00f36ca9a7f1" - integrity sha512-Aa2G2+Rd3b6kxEUKTF4TaW67czBLyAv3z7VOhYRU50YBx+bbsYZ9xQP4lMNazePuFlybXI0V4MruPos7qUo5fA== +es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5, es-abstract@^1.20.1: + version "1.20.1" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" + integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== dependencies: call-bind "^1.0.2" es-to-primitive "^1.2.1" function-bind "^1.1.1" + function.prototype.name "^1.1.5" get-intrinsic "^1.1.1" get-symbol-description "^1.0.0" has "^1.0.3" + has-property-descriptors "^1.0.0" has-symbols "^1.0.3" internal-slot "^1.0.3" is-callable "^1.2.4" @@ -4120,9 +4205,10 @@ es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2: object-inspect "^1.12.0" object-keys "^1.1.1" object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" + regexp.prototype.flags "^1.4.3" + string.prototype.trimend "^1.0.5" + string.prototype.trimstart "^1.0.5" + unbox-primitive "^1.0.2" es-array-method-boxes-properly@^1.0.0: version "1.0.0" @@ -4143,6 +4229,11 @@ es-get-iterator@^1.0.2: is-string "^1.0.5" isarray "^2.0.5" +es-module-lexer@^0.9.0: + version "0.9.3" + resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" + integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== + es-shim-unscopables@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" @@ -4160,9 +4251,9 @@ es-to-primitive@^1.2.1: is-symbol "^1.0.2" es5-shim@^4.5.13: - version "4.6.5" - resolved "https://registry.npmjs.org/es5-shim/-/es5-shim-4.6.5.tgz#2124bb073b7cede2ed23b122a1fd87bb7b0bb724" - integrity sha512-vfQ4UAai8szn0sAubCy97xnZ4sJVDD1gt/Grn736hg8D7540wemIb1YPrYZSTqlM2H69EQX1or4HU/tSwRTI3w== + version "4.6.7" + resolved "https://registry.npmjs.org/es5-shim/-/es5-shim-4.6.7.tgz#bc67ae0fc3dd520636e0a1601cc73b450ad3e955" + integrity sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ== es6-shim@^0.35.5: version "0.35.6" @@ -4177,12 +4268,32 @@ escalade@^3.1.1: escape-html@~1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + dependencies: + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +eslint-scope@5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" eslint-scope@^4.0.3: version "4.0.3" @@ -4192,7 +4303,12 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -esrecurse@^4.1.0: +esprima@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esrecurse@^4.1.0, esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== @@ -4226,9 +4342,9 @@ esutils@^2.0.2: etag@~1.8.1: version "1.8.1" resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -events@^3.0.0: +events@^3.0.0, events@^3.2.0: version "3.3.0" resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== @@ -4241,10 +4357,25 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: md5.js "^1.3.4" safe-buffer "^5.1.1" +execa@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" define-property "^0.2.5" @@ -4255,37 +4386,38 @@ expand-brackets@^2.1.4: to-regex "^3.0.1" express@^4.17.1: - version "4.17.3" - resolved "https://registry.npmjs.org/express/-/express-4.17.3.tgz#f6c7302194a4fb54271b73a1fe7a06478c8f85a1" - integrity sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg== + version "4.18.1" + resolved "https://registry.npmjs.org/express/-/express-4.18.1.tgz#7797de8b9c72c857b9cd0e14a5eea80666267caf" + integrity sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.19.2" + body-parser "1.20.0" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.4.2" + cookie "0.5.0" cookie-signature "1.0.6" debug "2.6.9" - depd "~1.1.2" + depd "2.0.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "~1.1.2" + finalhandler "1.2.0" fresh "0.5.2" + http-errors "2.0.0" merge-descriptors "1.0.1" methods "~1.1.2" - on-finished "~2.3.0" + on-finished "2.4.1" parseurl "~1.3.3" path-to-regexp "0.1.7" proxy-addr "~2.0.7" - qs "6.9.7" + qs "6.10.3" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.17.2" - serve-static "1.14.2" + send "0.18.0" + serve-static "1.15.0" setprototypeof "1.2.0" - statuses "~1.5.0" + statuses "2.0.1" type-is "~1.6.18" utils-merge "1.0.1" vary "~1.1.2" @@ -4293,14 +4425,14 @@ express@^4.17.1: extend-shallow@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: is-extendable "^0.1.0" extend-shallow@^3.0.0, extend-shallow@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" @@ -4362,7 +4494,7 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -4381,6 +4513,11 @@ fault@^1.0.0: dependencies: format "^0.2.0" +fetch-retry@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/fetch-retry/-/fetch-retry-5.0.2.tgz#4c55663a7c056cb45f182394e479464f0ff8f3e3" + integrity sha512-57Hmu+1kc6pKFUGVIobT7qw3NeAzY/uNN26bSevERLVvf6VGFR/ooDCOFBHMNDgAxBiU2YJq1D0vFzc6U1DcPw== + figgy-pudding@^3.5.1: version "3.5.2" resolved "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" @@ -4395,13 +4532,12 @@ file-loader@^6.2.0: schema-utils "^3.0.0" file-system-cache@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/file-system-cache/-/file-system-cache-1.0.5.tgz#84259b36a2bbb8d3d6eb1021d3132ffe64cfff4f" - integrity sha1-hCWbNqK7uNPW6xAh0xMv/mTP/08= + version "1.1.0" + resolved "https://registry.npmjs.org/file-system-cache/-/file-system-cache-1.1.0.tgz#984de17b976b75a77a27e08d6828137c1aa80fa1" + integrity sha512-IzF5MBq+5CR0jXx5RxPe4BICl/oEhBSXKaL9fLhAXrIfIUS77Hr4vzrYyqYMHN6uTt+BOqi3fDCTjjEBCjERKw== dependencies: - bluebird "^3.3.5" - fs-extra "^0.30.0" - ramda "^0.21.0" + fs-extra "^10.1.0" + ramda "^0.28.0" file-uri-to-path@1.0.0: version "1.0.0" @@ -4411,7 +4547,7 @@ file-uri-to-path@1.0.0: fill-range@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" is-number "^3.0.0" @@ -4425,17 +4561,17 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== +finalhandler@1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== dependencies: debug "2.6.9" encodeurl "~1.0.2" escape-html "~1.0.3" - on-finished "~2.3.0" + on-finished "2.4.1" parseurl "~1.3.3" - statuses "~1.5.0" + statuses "2.0.1" unpipe "~1.0.0" find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: @@ -4456,10 +4592,13 @@ find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" -find-root@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" - integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" find-up@^3.0.0: version "3.0.0" @@ -4508,7 +4647,7 @@ flush-write-stream@^1.0.0: for-in@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== foreground-child@^2.0.0: version "2.0.0" @@ -4532,9 +4671,9 @@ fork-ts-checker-webpack-plugin@^4.1.6: worker-rpc "^0.1.0" fork-ts-checker-webpack-plugin@^6.0.4: - version "6.5.1" - resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.1.tgz#fd689e2d9de6ac76abb620909eea56438cd0f232" - integrity sha512-x1wumpHOEf4gDROmKTaB6i4/Q6H3LwmjVO7fIX47vBwlZbtPjU33hgoMuD/Q/y6SU8bnuYSoN6ZQOLshGp0T/g== + version "6.5.2" + resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz#4f67183f2f9eb8ba7df7177ce3cf3e75cdafb340" + integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== dependencies: "@babel/code-frame" "^7.8.3" "@types/json-schema" "^7.0.5" @@ -4562,7 +4701,7 @@ form-data@^3.0.0: format@^0.2.0: version "0.2.2" resolved "https://registry.npmjs.org/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" - integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs= + integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== forwarded@0.2.0: version "0.2.0" @@ -4572,33 +4711,31 @@ forwarded@0.2.0: fragment-cache@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fresh@0.5.2: version "0.5.2" resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== from2@^2.1.0: version "2.3.0" resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== dependencies: inherits "^2.0.1" readable-stream "^2.0.0" -fs-extra@^0.30.0: - version "0.30.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" - integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A= +fs-extra@^10.1.0: + version "10.1.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: - graceful-fs "^4.1.2" - jsonfile "^2.1.0" - klaw "^1.0.0" - path-is-absolute "^1.0.0" - rimraf "^2.2.8" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" fs-extra@^9.0.0, fs-extra@^9.0.1: version "9.1.0" @@ -4625,7 +4762,7 @@ fs-monkey@1.0.3: fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= + integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA== dependencies: graceful-fs "^4.1.2" iferr "^0.1.5" @@ -4635,7 +4772,7 @@ fs-write-stream-atomic@^1.0.8: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^1.2.7: version "1.2.13" @@ -4655,7 +4792,7 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.0: +function.prototype.name@^1.1.0, function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== @@ -4666,14 +4803,9 @@ function.prototype.name@^1.1.0: functions-have-names "^1.2.2" functions-have-names@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz#98d93991c39da9361f8e50b337c4f6e41f120e21" - integrity sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA== - -fuse.js@^3.6.1: - version "3.6.1" - resolved "https://registry.npmjs.org/fuse.js/-/fuse.js-3.6.1.tgz#7de85fdd6e1b3377c23ce010892656385fd9b10c" - integrity sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw== + version "1.2.3" + resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== gauge@^3.0.0: version "3.0.2" @@ -4709,6 +4841,16 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: has "^1.0.3" has-symbols "^1.0.1" +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== + +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + get-symbol-description@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" @@ -4720,12 +4862,12 @@ get-symbol-description@^1.0.0: get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" @@ -4747,7 +4889,7 @@ glob-promise@^3.4.0: glob-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= + integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== glob-to-regexp@^0.4.1: version "0.4.1" @@ -4767,14 +4909,14 @@ glob@7.1.6: path-is-absolute "^1.0.0" glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: - version "7.2.0" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== + version "7.2.3" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^3.1.1" once "^1.3.0" path-is-absolute "^1.0.0" @@ -4792,9 +4934,9 @@ globals@^11.1.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globalthis@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz#2a235d34f4d8036219f7e34929b5de9e18166b8b" - integrity sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ== + version "1.0.3" + resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== dependencies: define-properties "^1.1.3" @@ -4824,7 +4966,7 @@ globby@^9.2.0: pify "^4.0.1" slash "^2.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -4841,15 +4983,15 @@ handlebars@^4.7.7: optionalDependencies: uglify-js "^3.1.4" -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-flag@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" @@ -4859,7 +5001,7 @@ has-flag@^4.0.0: has-glob@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-glob/-/has-glob-1.0.0.tgz#9aaa9eedbffb1ba3990a7b0010fb678ee0081207" - integrity sha1-mqqe7b/7G6OZCnsAEPtnjuAIEgc= + integrity sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g== dependencies: is-glob "^3.0.0" @@ -4885,12 +5027,12 @@ has-tostringtag@^1.0.0: has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== has-value@^0.3.1: version "0.3.1" resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" has-values "^0.1.4" @@ -4899,7 +5041,7 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" has-values "^1.0.0" @@ -4908,12 +5050,12 @@ has-value@^1.0.0: has-values@^0.1.4: version "0.1.4" resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== has-values@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" kind-of "^4.0.0" @@ -5015,29 +5157,15 @@ he@^1.2.0: resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -highlight.js@^10.1.1, highlight.js@~10.7.0: +highlight.js@^10.4.1, highlight.js@~10.7.0: version "10.7.3" resolved "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== -history@5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/history/-/history-5.0.0.tgz#0cabbb6c4bbf835addb874f8259f6d25101efd08" - integrity sha512-3NyRMKIiFSJmIPdq7FxkNMJkQ7ZEtVblOQ38VtKaA0zZMW1Eo6Q6W8oDKEflr1kNNTItSnk4JMCO1deeSgbLLg== - dependencies: - "@babel/runtime" "^7.7.6" - -history@^5.2.0: - version "5.3.0" - resolved "https://registry.npmjs.org/history/-/history-5.3.0.tgz#1548abaa245ba47992f063a0783db91ef201c73b" - integrity sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ== - dependencies: - "@babel/runtime" "^7.7.6" - hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== dependencies: hash.js "^1.0.3" minimalistic-assert "^1.0.0" @@ -5078,6 +5206,11 @@ html-minifier-terser@^5.0.1: relateurl "^0.2.7" terser "^4.6.3" +html-tags@^3.1.0: + version "3.2.0" + resolved "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz#dbb3518d20b726524e4dd43de397eb0a95726961" + integrity sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg== + html-void-elements@^1.0.0: version "1.0.5" resolved "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" @@ -5108,21 +5241,26 @@ htmlparser2@^6.1.0: domutils "^2.5.2" entities "^2.0.0" -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: - depd "~1.1.2" + depd "2.0.0" inherits "2.0.4" setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" + statuses "2.0.1" toidentifier "1.0.1" https-browserify@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= + integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== iconv-lite@0.4.24: version "0.4.24" @@ -5146,7 +5284,7 @@ ieee754@^1.1.4: iferr@^0.1.5: version "0.1.5" resolved "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= + integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== ignore@^4.0.3: version "4.0.6" @@ -5169,7 +5307,14 @@ import-fresh@^3.1.0, import-fresh@^3.2.1: imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + integrity sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg== + dependencies: + repeating "^2.0.0" indent-string@^4.0.0: version "4.0.0" @@ -5184,7 +5329,7 @@ infer-owner@^1.0.3, infer-owner@^1.0.4: inflight@^1.0.4: version "1.0.6" resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" @@ -5197,12 +5342,12 @@ inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, i inherits@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= + integrity sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA== inherits@2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== inline-style-parser@0.1.1: version "0.1.1" @@ -5230,10 +5375,10 @@ invariant@^2.2.4: dependencies: loose-envify "^1.0.0" -ip@^1.1.5: - version "1.1.5" - resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= +ip@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" + integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== ipaddr.js@1.9.1: version "1.9.1" @@ -5243,7 +5388,7 @@ ipaddr.js@1.9.1: is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== dependencies: kind-of "^3.0.2" @@ -5278,7 +5423,7 @@ is-arguments@^1.1.0: is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-bigint@^1.0.1: version "1.0.4" @@ -5290,7 +5435,7 @@ is-bigint@^1.0.1: is-binary-path@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== dependencies: binary-extensions "^1.0.0" @@ -5325,16 +5470,16 @@ is-callable@^1.1.4, is-callable@^1.2.4: integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== is-core-module@^2.8.1: - version "2.8.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + version "2.9.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" + integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== dependencies: has "^1.0.3" is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== dependencies: kind-of "^3.0.2" @@ -5375,7 +5520,7 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-data-descriptor "^1.0.0" kind-of "^6.0.2" -is-docker@^2.0.0: +is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== @@ -5391,7 +5536,7 @@ is-dom@^1.0.0: is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" @@ -5403,7 +5548,12 @@ is-extendable@^1.0.1: is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-finite@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" + integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -5418,7 +5568,7 @@ is-function@^1.0.2: is-glob@^3.0.0, is-glob@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" @@ -5454,7 +5604,7 @@ is-number-object@^1.0.4: is-number@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" @@ -5473,6 +5623,11 @@ is-plain-obj@^2.0.0: resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== +is-plain-object@5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -5500,6 +5655,11 @@ is-shared-array-buffer@^1.0.2: dependencies: call-bind "^1.0.2" +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" @@ -5514,6 +5674,11 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== + is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -5529,7 +5694,7 @@ is-whitespace-character@^1.0.0: is-window@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" - integrity sha1-LIlspT25feRdPDMTOmXYyfVjSA0= + integrity sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg== is-windows@^1.0.2: version "1.0.2" @@ -5544,9 +5709,9 @@ is-word-character@^1.0.0: is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= + integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== -is-wsl@^2.1.1: +is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== @@ -5556,7 +5721,7 @@ is-wsl@^2.1.1: isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isarray@^2.0.5: version "2.0.5" @@ -5566,26 +5731,34 @@ isarray@^2.0.5: isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== dependencies: isarray "1.0.0" isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isobject@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.0.1: +isomorphic-unfetch@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" + integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== + dependencies: + node-fetch "^2.6.1" + unfetch "^4.2.0" + +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== @@ -5599,7 +5772,7 @@ istanbul-lib-report@^3.0.0: make-dir "^3.0.0" supports-color "^7.1.0" -istanbul-reports@^3.0.2: +istanbul-reports@^3.1.4: version "3.1.4" resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== @@ -5629,10 +5802,19 @@ jest-worker@^26.5.0: merge-stream "^2.0.0" supports-color "^7.0.0" +jest-worker@^27.4.5: + version "27.5.1" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + js-string-escape@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" - integrity sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8= + integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -5647,14 +5829,14 @@ jsesc@^2.5.1: jsesc@~0.5.0: version "0.5.0" resolved "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-parse-better-errors@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -json-parse-even-better-errors@^2.3.0: +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== @@ -5676,13 +5858,6 @@ json5@^2.1.2, json5@^2.1.3, json5@^2.2.1: resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== -jsonfile@^2.1.0: - version "2.4.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug= - optionalDependencies: - graceful-fs "^4.1.6" - jsonfile@^6.0.1: version "6.1.0" resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" @@ -5700,14 +5875,14 @@ junk@^3.1.0: kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: is-buffer "^1.1.5" kind-of@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" @@ -5721,13 +5896,6 @@ kind-of@^6.0.0, kind-of@^6.0.2: resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -klaw@^1.0.0: - version "1.3.1" - resolved "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= - optionalDependencies: - graceful-fs "^4.1.9" - kleur@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -5749,16 +5917,40 @@ lazy-universal-dotenv@^3.0.1: dotenv "^8.0.0" dotenv-expand "^5.1.0" +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + lines-and-columns@^1.1.6: version "1.2.4" resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + loader-runner@^2.4.0: version "2.4.0" resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== +loader-runner@^4.2.0: + version "4.3.0" + resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + loader-utils@^1.1.0, loader-utils@^1.2.3: version "1.4.0" resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" @@ -5802,12 +5994,12 @@ locate-path@^6.0.0: lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash.uniq@4.5.0: version "4.5.0" resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" @@ -5821,6 +6013,14 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ== + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + lower-case@^2.0.2: version "2.0.2" resolved "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -5828,7 +6028,7 @@ lower-case@^2.0.2: dependencies: tslib "^2.0.3" -lowlight@^1.14.0: +lowlight@^1.17.0: version "1.20.0" resolved "https://registry.npmjs.org/lowlight/-/lowlight-1.20.0.tgz#ddb197d33462ad0d93bf19d17b6c301aa3941888" integrity sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw== @@ -5868,17 +6068,22 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: map-cache@^0.2.2: version "0.2.2" resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== map-or-similar@^1.5.0: version "1.5.0" resolved "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08" - integrity sha1-beJlMXSt+12e3DPGnT6Sobdvrwg= + integrity sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg== map-visit@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" @@ -5887,11 +6092,6 @@ markdown-escapes@^1.0.0: resolved "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== -markdown-to-jsx@^7.1.3: - version "7.1.7" - resolved "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.1.7.tgz#a5f22102fb12241c8cea1ca6a4050bb76b23a25d" - integrity sha512-VI3TyyHlGkO8uFle0IOibzpO1c1iJDcXcS/zBrQrXQQvJ2tpdwVzVZ7XdKsyRz1NdRmre4dqQkMZzUHaKIG/1w== - md5.js@^1.3.4: version "1.3.5" resolved "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -5932,31 +6132,31 @@ mdast-util-to-hast@10.0.1: mdurl@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== media-typer@0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== memfs@^3.1.2: - version "3.4.1" - resolved "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz#b78092f466a0dce054d63d39275b24c71d3f1305" - integrity sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw== + version "3.4.4" + resolved "https://registry.npmjs.org/memfs/-/memfs-3.4.4.tgz#e8973cd8060548916adcca58a248e7805c715e89" + integrity sha512-W4gHNUE++1oSJVn8Y68jPXi+mkx3fXR5ITE/Ubz6EQ3xRpCN5k2CQ4AUR8094Z7211F876TyoBACGsIveqgiGA== dependencies: fs-monkey "1.0.3" memoizerific@^1.11.3: version "1.11.3" resolved "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a" - integrity sha1-fIekZGREwy11Q4VwkF8tvRsagFo= + integrity sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog== dependencies: map-or-similar "^1.5.0" memory-fs@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= + integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ== dependencies: errno "^0.1.3" readable-stream "^2.0.1" @@ -5969,10 +6169,26 @@ memory-fs@^0.5.0: errno "^0.1.3" readable-stream "^2.0.1" +meow@^3.1.0: + version "3.7.0" + resolved "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + integrity sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA== + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== merge-stream@^2.0.0: version "2.0.0" @@ -5987,7 +6203,7 @@ merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1: methods@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== microevent.ts@~0.1.1: version "0.1.1" @@ -6051,10 +6267,15 @@ mime@^2.4.4: resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + min-document@^2.19.0: version "2.19.0" resolved "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== dependencies: dom-walk "^0.1.0" @@ -6071,16 +6292,16 @@ minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: minimalistic-crypto-utils@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -minimatch@^3.0.2, minimatch@^3.0.4: +minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: version "1.2.6" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== @@ -6160,7 +6381,7 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= + integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ== dependencies: aproba "^1.1.1" copy-concurrently "^1.0.0" @@ -6172,7 +6393,7 @@ move-concurrently@^1.0.1: ms@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.1: version "2.1.1" @@ -6199,9 +6420,14 @@ mz@^2.7.0: thenify-all "^1.0.0" nan@^2.12.1: - version "2.15.0" - resolved "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" - integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== + version "2.16.0" + resolved "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916" + integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA== + +nanoid@^3.3.1: + version "3.3.4" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== nanomatch@^1.2.9: version "1.2.13" @@ -6225,7 +6451,7 @@ negotiator@0.6.3: resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: +neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1, neo-async@^2.6.2: version "2.6.2" resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== @@ -6246,11 +6472,11 @@ no-case@^3.0.4: node-dir@^0.1.10: version "0.1.17" resolved "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" - integrity sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU= + integrity sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg== dependencies: minimatch "^3.0.2" -node-fetch@^2.6.1: +node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== @@ -6286,12 +6512,12 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-releases@^2.0.2: - version "2.0.3" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz#225ee7488e4a5e636da8da52854844f9d716ca96" - integrity sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw== +node-releases@^2.0.3: + version "2.0.5" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" + integrity sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q== -normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -6304,7 +6530,7 @@ normalize-package-data@^2.5.0: normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" @@ -6316,7 +6542,14 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: normalize-range@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" npmlog@^5.0.1: version "5.0.1" @@ -6329,35 +6562,35 @@ npmlog@^5.0.1: set-blocking "^2.0.0" nth-check@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" - integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== + version "2.1.1" + resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: boolbase "^1.0.0" num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== object-assign@^4.0.1, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-copy@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" define-property "^0.2.5" kind-of "^3.0.3" object-inspect@^1.12.0, object-inspect@^1.9.0: - version "1.12.0" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" - integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== + version "1.12.2" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" + integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== object-keys@^1.1.1: version "1.1.1" @@ -6367,7 +6600,7 @@ object-keys@^1.1.1: object-visit@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" @@ -6400,18 +6633,19 @@ object.entries@^1.1.0: es-abstract "^1.19.1" object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.2: - version "2.1.3" - resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" - integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== + version "2.1.4" + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz#7965e6437a57278b587383831a9b829455a4bc37" + integrity sha512-sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ== dependencies: + array.prototype.reduce "^1.0.4" call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.20.1" object.pick@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" @@ -6429,10 +6663,10 @@ objectorarray@^1.0.5: resolved "https://registry.npmjs.org/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5" integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg== -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" @@ -6444,10 +6678,17 @@ on-headers@~1.0.2: once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + open@^7.0.3: version "7.4.2" resolved "https://registry.npmjs.org/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" @@ -6456,15 +6697,36 @@ open@^7.0.3: is-docker "^2.0.0" is-wsl "^2.1.1" +open@^8.4.0: + version "8.4.0" + resolved "https://registry.npmjs.org/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" + integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + os-browserify@^0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= + integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== -overlayscrollbars@^1.13.1: - version "1.13.1" - resolved "https://registry.npmjs.org/overlayscrollbars/-/overlayscrollbars-1.13.1.tgz#0b840a88737f43a946b9d87875a2f9e421d0338a" - integrity sha512-gIQfzgGgu1wy80EB4/6DaJGHMEGmizq27xHIESrzXq0Y/J0Ay1P3DWk6tuVmEPIZH15zaBlxeEJOqdJKmowHCQ== +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== p-all@^2.1.0: version "2.1.0" @@ -6490,7 +6752,7 @@ p-filter@^2.1.0: p-finally@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" @@ -6610,6 +6872,13 @@ parse-entities@^2.0.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== + dependencies: + error-ex "^1.2.0" + parse-json@^5.0.0: version "5.2.0" resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -6641,7 +6910,7 @@ pascal-case@^3.1.2: pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== path-browserify@0.0.1: version "0.0.1" @@ -6651,12 +6920,19 @@ path-browserify@0.0.1: path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== + dependencies: + pinkie-promise "^2.0.0" path-exists@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: version "4.0.0" @@ -6666,9 +6942,9 @@ path-exists@^4.0.0: path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -path-key@^3.1.0: +path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== @@ -6681,7 +6957,16 @@ path-parse@^1.0.7: path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" path-type@^3.0.0: version "3.0.0" @@ -6721,16 +7006,33 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.0, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +pify@^2.0.0: + version "2.3.0" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== + pify@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== pify@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== + pirates@^4.0.1: version "4.0.4" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.4.tgz#07df81e61028e402735cdd49db701e4885b4e6e6" @@ -6769,7 +7071,7 @@ pnp-webpack-plugin@1.6.4: dependencies: ts-pnp "^1.1.6" -polished@^4.0.5: +polished@^4.2.2: version "4.2.2" resolved "https://registry.npmjs.org/polished/-/polished-4.2.2.tgz#2529bb7c3198945373c52e34618c8fe7b1aa84d1" integrity sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ== @@ -6779,7 +7081,7 @@ polished@^4.0.5: posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== postcss-flexbugs-fixes@^4.2.1: version "4.2.1" @@ -6853,6 +7155,11 @@ postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.36, postcss@^7.0 picocolors "^0.2.1" source-map "^0.6.1" +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== + "prettier@>=2.2.1 <=2.3.0": version "2.3.0" resolved "https://registry.npmjs.org/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" @@ -6869,9 +7176,9 @@ pretty-error@^2.1.1: pretty-hrtime@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + integrity sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A== -prismjs@^1.21.0: +prismjs@^1.27.0: version "1.28.0" resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz#0d8f561fa0f7cf6ebca901747828b149147044b6" integrity sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw== @@ -6889,12 +7196,12 @@ process-nextick-args@~2.0.0: process@^0.11.10: version "0.11.10" resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== promise-inflight@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== promise.allsettled@^1.0.0: version "1.0.5" @@ -6925,7 +7232,7 @@ prompts@^2.4.0: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.0.0, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.7.2: +prop-types@^15.0.0, prop-types@^15.6.1, prop-types@^15.7.2: version "15.8.1" resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -6952,7 +7259,7 @@ proxy-addr@~2.0.7: prr@~1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== public-encrypt@^4.0.0: version "4.0.3" @@ -6994,24 +7301,19 @@ pumpify@^1.3.3: punycode@1.3.2: version "1.3.2" resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== punycode@^1.2.4: version "1.4.1" resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== punycode@^2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -qs@6.9.7: - version "6.9.7" - resolved "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" - integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== - -qs@^6.10.0: +qs@6.10.3, qs@^6.10.0: version "6.10.3" resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== @@ -7021,12 +7323,12 @@ qs@^6.10.0: querystring-es3@^0.2.0: version "0.2.1" resolved "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= + integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== querystring@0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== querystring@^0.2.0: version "0.2.1" @@ -7038,10 +7340,10 @@ queue-microtask@^1.2.2: resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -ramda@^0.21.0: - version "0.21.0" - resolved "https://registry.npmjs.org/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35" - integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= +ramda@^0.28.0: + version "0.28.0" + resolved "https://registry.npmjs.org/ramda/-/ramda-0.28.0.tgz#acd785690100337e8b063cab3470019be427cc97" + integrity sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA== randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" @@ -7063,13 +7365,13 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.4.3: - version "2.4.3" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" - integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== +raw-body@2.5.1: + version "2.5.1" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== dependencies: bytes "3.1.2" - http-errors "1.8.1" + http-errors "2.0.0" iconv-lite "0.4.24" unpipe "1.0.0" @@ -7081,20 +7383,15 @@ raw-loader@^4.0.2: loader-utils "^2.0.0" schema-utils "^3.0.0" -react-colorful@^5.1.2: - version "5.5.1" - resolved "https://registry.npmjs.org/react-colorful/-/react-colorful-5.5.1.tgz#29d9c4e496f2ca784dd2bb5053a3a4340cfaf784" - integrity sha512-M1TJH2X3RXEt12sWkpa6hLc/bbYS0H6F4rIqjQZ+RxNBstpY67d9TrFXtqdZwhpmBXcCwEi7stKqFue3ZRkiOg== - -react-docgen-typescript@^2.0.0: +react-docgen-typescript@^2.1.1: version "2.2.2" resolved "https://registry.npmjs.org/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz#4611055e569edc071204aadb20e1c93e1ab1659c" integrity sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg== react-docgen@^5.0.0: - version "5.4.0" - resolved "https://registry.npmjs.org/react-docgen/-/react-docgen-5.4.0.tgz#2cd7236720ec2769252ef0421f23250b39a153a1" - integrity sha512-JBjVQ9cahmNlfjMGxWUxJg919xBBKAoy3hgDgKERbR+BcF4ANpDuzWAScC7j27hZfd8sJNmMPOLWo9+vB/XJEQ== + version "5.4.1" + resolved "https://registry.npmjs.org/react-docgen/-/react-docgen-5.4.1.tgz#867168accce39e25095a23a922eaa90722e9d182" + integrity sha512-TZqD1aApirw86NV6tHrmDoxUn8wlinkVyutFarzbdwuhEurAzDN0y5sSj64o+BrHLPqjwpH9tunpfwgy+3Uyww== dependencies: "@babel/core" "^7.7.5" "@babel/generator" "^7.12.11" @@ -7116,29 +7413,14 @@ react-dom@^17.0.2: object-assign "^4.1.1" scheduler "^0.20.2" -react-draggable@^4.4.3: - version "4.4.4" - resolved "https://registry.npmjs.org/react-draggable/-/react-draggable-4.4.4.tgz#5b26d9996be63d32d285a426f41055de87e59b2f" - integrity sha512-6e0WdcNLwpBx/YIDpoyd2Xb04PB0elrDrulKUgdrIlwuYvxh5Ok9M+F8cljm8kPXXs43PmMzek9RrB1b7mLMqA== +react-element-to-jsx-string@^14.3.4: + version "14.3.4" + resolved "https://registry.npmjs.org/react-element-to-jsx-string/-/react-element-to-jsx-string-14.3.4.tgz#709125bc72f06800b68f9f4db485f2c7d31218a8" + integrity sha512-t4ZwvV6vwNxzujDQ+37bspnLwA4JlgUPWhLjBJWsNIDceAf6ZKUTCjdm08cN6WeZ5pTMKiCJkmAYnpmR4Bm+dg== dependencies: - clsx "^1.1.1" - prop-types "^15.6.0" - -react-fast-compare@^3.0.1, react-fast-compare@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb" - integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== - -react-helmet-async@^1.0.7: - version "1.3.0" - resolved "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz#7bd5bf8c5c69ea9f02f6083f14ce33ef545c222e" - integrity sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg== - dependencies: - "@babel/runtime" "^7.12.5" - invariant "^2.2.4" - prop-types "^15.7.2" - react-fast-compare "^3.2.0" - shallowequal "^1.1.0" + "@base2/pretty-print-object" "1.0.1" + is-plain-object "5.0.0" + react-is "17.0.2" react-hot-loader@^4.13.0: version "4.13.0" @@ -7163,58 +7445,26 @@ react-inspector@^5.1.0: is-dom "^1.0.0" prop-types "^15.0.0" +react-is@17.0.2: + version "17.0.2" + resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^17.0.2: - version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== - react-lifecycles-compat@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== -react-popper-tooltip@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/react-popper-tooltip/-/react-popper-tooltip-3.1.1.tgz#329569eb7b287008f04fcbddb6370452ad3f9eac" - integrity sha512-EnERAnnKRptQBJyaee5GJScWNUKQPDD2ywvzZyUjst/wj5U64C8/CnSYLNEmP2hG0IJ3ZhtDxE8oDN+KOyavXQ== - dependencies: - "@babel/runtime" "^7.12.5" - "@popperjs/core" "^2.5.4" - react-popper "^2.2.4" - -react-popper@^2.2.4: - version "2.2.5" - resolved "https://registry.npmjs.org/react-popper/-/react-popper-2.2.5.tgz#1214ef3cec86330a171671a4fbcbeeb65ee58e96" - integrity sha512-kxGkS80eQGtLl18+uig1UIf9MKixFSyPxglsgLBxlYnyDf65BiY9B3nZSc6C9XUNDgStROB0fMQlTEz1KxGddw== - dependencies: - react-fast-compare "^3.0.1" - warning "^4.0.2" - react-refresh@^0.11.0: version "0.11.0" resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== -react-router-dom@^6.0.0: - version "6.3.0" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.3.0.tgz#a0216da813454e521905b5fa55e0e5176123f43d" - integrity sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw== - dependencies: - history "^5.2.0" - react-router "6.3.0" - -react-router@6.3.0, react-router@^6.0.0: - version "6.3.0" - resolved "https://registry.npmjs.org/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557" - integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== - dependencies: - history "^5.2.0" - react-sizeme@^3.0.1: version "3.0.2" resolved "https://registry.npmjs.org/react-sizeme/-/react-sizeme-3.0.2.tgz#4a2f167905ba8f8b8d932a9e35164e459f9020e4" @@ -7225,25 +7475,16 @@ react-sizeme@^3.0.1: shallowequal "^1.1.0" throttle-debounce "^3.0.1" -react-syntax-highlighter@^13.5.3: - version "13.5.3" - resolved "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-13.5.3.tgz#9712850f883a3e19eb858cf93fad7bb357eea9c6" - integrity sha512-crPaF+QGPeHNIblxxCdf2Lg936NAHKhNhuMzRL3F9ct6aYXL3NcZtCL0Rms9+qVo6Y1EQLdXGypBNSbPL/r+qg== +react-syntax-highlighter@^15.4.5: + version "15.5.0" + resolved "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-15.5.0.tgz#4b3eccc2325fa2ec8eff1e2d6c18fa4a9e07ab20" + integrity sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg== dependencies: "@babel/runtime" "^7.3.1" - highlight.js "^10.1.1" - lowlight "^1.14.0" - prismjs "^1.21.0" - refractor "^3.1.0" - -react-textarea-autosize@^8.3.0: - version "8.3.3" - resolved "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.3.tgz#f70913945369da453fd554c168f6baacd1fa04d8" - integrity sha512-2XlHXK2TDxS6vbQaoPbMOfQ8GK7+irc2fVK6QFIcC8GOnH3zI/v481n+j1L0WaPVvKxwesnY93fEfH++sus2rQ== - dependencies: - "@babel/runtime" "^7.10.2" - use-composed-ref "^1.0.0" - use-latest "^1.0.0" + highlight.js "^10.4.1" + lowlight "^1.17.0" + prismjs "^1.27.0" + refractor "^3.6.0" react@^17.0.2: version "17.0.2" @@ -7253,6 +7494,14 @@ react@^17.0.2: loose-envify "^1.1.0" object-assign "^4.1.1" +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -7262,6 +7511,15 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + read-pkg@^5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" @@ -7310,7 +7568,15 @@ readdirp@~3.6.0: dependencies: picomatch "^2.2.1" -refractor@^3.1.0: +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +refractor@^3.6.0: version "3.6.0" resolved "https://registry.npmjs.org/refractor/-/refractor-3.6.0.tgz#ac318f5a0715ead790fcfb0c71f4dd83d977935a" integrity sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA== @@ -7351,7 +7617,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.4.1: +regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: version "1.4.3" resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== @@ -7463,6 +7729,13 @@ repeat-string@^1.5.4, repeat-string@^1.6.1: resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + dependencies: + is-finite "^1.0.0" + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -7483,7 +7756,7 @@ resolve-url@^0.2.1: resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@^1.10.0, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.3.2: +resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.3.2: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -7502,14 +7775,14 @@ reusify@^1.0.4: resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.3: +rimraf@^2.5.4, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -7600,7 +7873,7 @@ schema-utils@^2.6.5, schema-utils@^2.7.0: ajv "^6.12.4" ajv-keywords "^3.5.2" -schema-utils@^3.0.0: +schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== @@ -7631,24 +7904,24 @@ semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: dependencies: lru-cache "^6.0.0" -send@0.17.2: - version "0.17.2" - resolved "https://registry.npmjs.org/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" - integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== +send@0.18.0: + version "0.18.0" + resolved "https://registry.npmjs.org/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" + 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 "1.8.1" + http-errors "2.0.0" mime "1.6.0" ms "2.1.3" - on-finished "~2.3.0" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" + statuses "2.0.1" serialize-javascript@^4.0.0: version "4.0.0" @@ -7664,6 +7937,13 @@ serialize-javascript@^5.0.1: dependencies: randombytes "^2.1.0" +serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" + serve-favicon@^2.5.0: version "2.5.0" resolved "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" @@ -7675,15 +7955,15 @@ serve-favicon@^2.5.0: parseurl "~1.3.2" safe-buffer "5.1.1" -serve-static@1.14.2: - version "1.14.2" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz#722d6294b1d62626d41b43a013ece4598d292bfa" - integrity sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ== +serve-static@1.15.0: + version "1.15.0" + resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.17.2" + send "0.18.0" set-blocking@^2.0.0: version "2.0.0" @@ -7751,7 +8031,7 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.7" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -7830,7 +8110,7 @@ source-map-url@^0.4.0: resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== -source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: +source-map@^0.5.0, source-map@^0.5.6: version "0.5.7" resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -7840,7 +8120,7 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3, source-map@~0.7.2: +source-map@^0.7.3: version "0.7.3" resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== @@ -7920,10 +8200,10 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== store2@^2.12.0: version "2.13.2" @@ -8011,21 +8291,23 @@ string.prototype.padstart@^3.0.0: define-properties "^1.1.3" es-abstract "^1.19.1" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== +string.prototype.trimend@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" + integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +string.prototype.trimstart@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" + integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" @@ -8055,6 +8337,25 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + dependencies: + is-utf8 "^0.2.0" + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + dependencies: + get-stdin "^4.0.1" + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -8103,6 +8404,13 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" @@ -8128,6 +8436,11 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== +tapable@^2.1.1, tapable@^2.2.0: + version "2.2.1" + resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== + tar@^6.0.2: version "6.1.11" resolved "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" @@ -8140,10 +8453,10 @@ tar@^6.0.2: mkdirp "^1.0.3" yallist "^4.0.0" -telejson@^5.3.2, telejson@^5.3.3: - version "5.3.3" - resolved "https://registry.npmjs.org/telejson/-/telejson-5.3.3.tgz#fa8ca84543e336576d8734123876a9f02bf41d2e" - integrity sha512-PjqkJZpzEggA9TBpVtJi1LVptP7tYtXB6rEubwlHap76AMjzvOdKX41CxyaW7ahhzDU1aftXnMCx5kAPDZTQBA== +telejson@^6.0.8: + version "6.0.8" + resolved "https://registry.npmjs.org/telejson/-/telejson-6.0.8.tgz#1c432db7e7a9212c1fbd941c3e5174ec385148f7" + integrity sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg== dependencies: "@types/is-function" "^1.0.0" global "^4.4.0" @@ -8184,6 +8497,17 @@ terser-webpack-plugin@^4.2.3: terser "^5.3.4" webpack-sources "^1.4.3" +terser-webpack-plugin@^5.1.3: + version "5.3.3" + resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.3.tgz#8033db876dd5875487213e87c627bca323e5ed90" + integrity sha512-Fx60G5HNYknNTNQnzQ1VePRuu89ZVYWfjRAeT5rITuCY/1b08s49e5kSQwHDirKZWuoKOBRFS98EUUoZ9kLEwQ== + dependencies: + "@jridgewell/trace-mapping" "^0.3.7" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.0" + terser "^5.7.2" + terser@^4.1.2, terser@^4.6.3: version "4.8.0" resolved "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" @@ -8193,14 +8517,14 @@ terser@^4.1.2, terser@^4.6.3: source-map "~0.6.1" source-map-support "~0.5.12" -terser@^5.3.4: - version "5.12.1" - resolved "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz#4cf2ebed1f5bceef5c83b9f60104ac4a78b49e9c" - integrity sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ== +terser@^5.3.4, terser@^5.7.2: + version "5.14.0" + resolved "https://registry.npmjs.org/terser/-/terser-5.14.0.tgz#eefeec9af5153f55798180ee2617f390bdd285e2" + integrity sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g== dependencies: + "@jridgewell/source-map" "^0.3.2" acorn "^8.5.0" commander "^2.20.0" - source-map "~0.7.2" source-map-support "~0.5.20" test-exclude@^6.0.0: @@ -8288,11 +8612,6 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" -toggle-selection@^1.0.6: - version "1.0.6" - resolved "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" - integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= - toidentifier@1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" @@ -8303,6 +8622,11 @@ tr46@~0.0.3: resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + trim-trailing-lines@^1.0.0: version "1.1.4" resolved "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" @@ -8333,16 +8657,23 @@ ts-pnp@^1.1.6: resolved "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== -tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.3.0: - version "2.3.1" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" - integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== +tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3: + version "2.4.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" + integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + type-fest@^0.20.2: version "0.20.2" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" @@ -8372,18 +8703,18 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= uglify-js@^3.1.4: - version "3.15.4" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz#fa95c257e88f85614915b906204b9623d4fa340d" - integrity sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA== + version "3.15.5" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.5.tgz#2b10f9e0bfb3f5c15a8e8404393b6361eaeb33b3" + integrity sha512-hNM5q5GbBRB5xB+PMqVRcgYe4c8jbyZ1pzZhS6jbq54/4F2gFK869ZheiE5A8/t+W5jtTNpWef/5Q9zk639FNQ== -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" unfetch@^4.2.0: @@ -8534,6 +8865,13 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" +untildify@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" + integrity sha1-F+soB5h/dpUunASF/DEdBqgmouA= + dependencies: + os-homedir "^1.0.0" + upath@^1.1.1: version "1.2.0" resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" @@ -8568,23 +8906,6 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" -use-composed-ref@^1.0.0: - version "1.2.1" - resolved "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.2.1.tgz#9bdcb5ccd894289105da2325e1210079f56bf849" - integrity sha512-6+X1FLlIcjvFMAeAD/hcxDT8tmyrWnbSPMU0EnxQuDLIxokuFzWliXBiYZuGIx+mrAMLBw0WFfCkaPw8ebzAhw== - -use-isomorphic-layout-effect@^1.0.0: - version "1.1.2" - resolved "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" - integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== - -use-latest@^1.0.0: - version "1.2.0" - resolved "https://registry.npmjs.org/use-latest/-/use-latest-1.2.0.tgz#a44f6572b8288e0972ec411bdd0840ada366f232" - integrity sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw== - dependencies: - use-isomorphic-layout-effect "^1.0.0" - use@^3.1.0: version "3.1.1" resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -8637,14 +8958,14 @@ uuid@^3.3.2: resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -v8-to-istanbul@^8.0.0: - version "8.1.1" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" - integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== +v8-to-istanbul@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.0.tgz#be0dae58719fc53cb97e5c7ac1d7e6d4f5b19511" + integrity sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw== dependencies: + "@jridgewell/trace-mapping" "^0.3.7" "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" - source-map "^0.7.3" validate-npm-package-license@^3.0.1: version "3.0.4" @@ -8687,13 +9008,6 @@ vm-browserify@^1.0.1: resolved "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -warning@^4.0.2: - version "4.0.3" - resolved "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" - integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w== - dependencies: - loose-envify "^1.0.0" - watchpack-chokidar2@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" @@ -8712,7 +9026,7 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.1" -watchpack@^2.2.0: +watchpack@^2.2.0, watchpack@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" integrity sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA== @@ -8772,6 +9086,11 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: source-list-map "^2.0.0" source-map "~0.6.1" +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== + webpack-virtual-modules@^0.2.2: version "0.2.2" resolved "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz#20863dc3cb6bb2104729fff951fbe14b18bd0299" @@ -8808,6 +9127,36 @@ webpack@4: watchpack "^1.7.4" webpack-sources "^1.4.1" +"webpack@>=4.43.0 <6.0.0": + version "5.72.1" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.72.1.tgz#3500fc834b4e9ba573b9f430b2c0a61e1bb57d13" + integrity sha512-dXG5zXCLspQR4krZVR6QgajnZOjW2K/djHvdcRaDQvsjV9z9vaW6+ja5dZOYbqBBjF6kGXka/2ZyxNdc+8Jung== + dependencies: + "@types/eslint-scope" "^3.7.3" + "@types/estree" "^0.0.51" + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/wasm-edit" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + acorn "^8.4.1" + acorn-import-assertions "^1.7.6" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.9.3" + es-module-lexer "^0.9.0" + eslint-scope "5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.9" + json-parse-even-better-errors "^2.3.1" + loader-runner "^4.2.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + schema-utils "^3.1.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.1.3" + watchpack "^2.3.1" + webpack-sources "^3.2.3" + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -8848,6 +9197,11 @@ widest-line@^3.1.0: dependencies: string-width "^4.0.0" +word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + wordwrap@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" @@ -8882,9 +9236,16 @@ wrappy@1: integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= ws@^8.2.3: - version "8.5.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" - integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== + version "8.7.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" + integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== + +x-default-browser@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/x-default-browser/-/x-default-browser-0.4.0.tgz#70cf0da85da7c0ab5cb0f15a897f2322a6bdd481" + integrity sha1-cM8NqF2nwKtcsPFaiX8jIqa91IE= + optionalDependencies: + default-browser-id "^1.0.4" xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.2" @@ -8916,7 +9277,7 @@ yaml@^1.10.0, yaml@^1.7.2: resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@^20.2.2, yargs-parser@^20.2.7: +yargs-parser@^20.2.2, yargs-parser@^20.2.9: version "20.2.9" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== From 819b3db98101ad5fbd5c4c41fcfb527c64752760 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 10:23:31 +0000 Subject: [PATCH 117/550] fix(deps): update apollo graphql packages to v3.8.1 Signed-off-by: Renovate Bot --- yarn.lock | 95 +++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 68 insertions(+), 27 deletions(-) diff --git a/yarn.lock b/yarn.lock index b2ae2cae23..db6bd5d645 100644 --- a/yarn.lock +++ b/yarn.lock @@ -44,11 +44,50 @@ "@types/node" "^10.1.0" long "^4.0.0" +"@apollo/utils.dropunuseddefinitions@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz#02b04006442eaf037f4c4624146b12775d70d929" + integrity sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg== + "@apollo/utils.logger@^1.0.0": version "1.0.0" resolved "https://registry.npmjs.org/@apollo/utils.logger/-/utils.logger-1.0.0.tgz#6e3460a2250c2ef7c2c3b0be6b5e148a1596f12b" integrity sha512-dx9XrjyisD2pOa+KsB5RcDbWIAdgC91gJfeyLCgy0ctJMjQe7yZK5kdWaWlaOoCeX0z6YI9iYlg7vMPyMpQF3Q== +"@apollo/utils.printwithreducedwhitespace@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@apollo/utils.printwithreducedwhitespace/-/utils.printwithreducedwhitespace-1.1.0.tgz#c466299a4766eef8577a2a64c8f27712e8bd7e30" + integrity sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q== + +"@apollo/utils.removealiases@1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@apollo/utils.removealiases/-/utils.removealiases-1.0.0.tgz#75f6d83098af1fcae2d3beb4f515ad4a8452a8c1" + integrity sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A== + +"@apollo/utils.sortast@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@apollo/utils.sortast/-/utils.sortast-1.1.0.tgz#93218c7008daf3e2a0725196085a33f5aab5ad07" + integrity sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA== + dependencies: + lodash.sortby "^4.7.0" + +"@apollo/utils.stripsensitiveliterals@^1.2.0": + version "1.2.0" + resolved "https://registry.npmjs.org/@apollo/utils.stripsensitiveliterals/-/utils.stripsensitiveliterals-1.2.0.tgz#4920651f36beee8e260e12031a0c5863ad0c7b28" + integrity sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w== + +"@apollo/utils.usagereporting@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@apollo/utils.usagereporting/-/utils.usagereporting-1.0.0.tgz#b81df180f4ca78b91a22cb49105174a7f070db1e" + integrity sha512-5PL7hJMkTPmdo3oxPtigRrIyPxDk/ddrUryHPDaezL1lSFExpNzsDd2f1j0XJoHOg350GRd3LyD64caLA2PU1w== + dependencies: + "@apollo/utils.dropunuseddefinitions" "^1.1.0" + "@apollo/utils.printwithreducedwhitespace" "^1.1.0" + "@apollo/utils.removealiases" "1.0.0" + "@apollo/utils.sortast" "^1.1.0" + "@apollo/utils.stripsensitiveliterals" "^1.2.0" + apollo-reporting-protobuf "^3.3.1" + "@apollographql/apollo-tools@^0.5.3": version "0.5.3" resolved "https://registry.npmjs.org/@apollographql/apollo-tools/-/apollo-tools-0.5.3.tgz#ba241d50f0849150ca0de54fd2927160033bc0bc" @@ -7626,12 +7665,13 @@ apollo-server-caching@^3.3.0: dependencies: lru-cache "^6.0.0" -apollo-server-core@^3.7.0: - version "3.7.0" - resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.7.0.tgz#7ec060d269d73d6761cd1eb3d419436e09fa6974" - integrity sha512-xUCDjrBzPVbttbh/HenuQdivco/dcXE2oIDYwCU6FU2RBXqxWFmuCl2Xe7VPA/5Frw/4snJDLCyVte9PA5edww== +apollo-server-core@^3.8.1: + version "3.8.1" + resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.8.1.tgz#51baba3a1073ad7aa950ffbfc5e3bbb5740d013c" + integrity sha512-7A6F+HWmz/1gIW/MvE/0yq/UwrYG/dQCyfk2areoWkvSmg86oV2umuvlnEvTbLE2LiJHBoDP4T+PIqv6pnlLGw== dependencies: "@apollo/utils.logger" "^1.0.0" + "@apollo/utils.usagereporting" "^1.0.0" "@apollographql/apollo-tools" "^0.5.3" "@apollographql/graphql-playground-html" "1.6.29" "@graphql-tools/mock" "^8.1.2" @@ -7642,12 +7682,11 @@ apollo-server-core@^3.7.0: apollo-server-caching "^3.3.0" apollo-server-env "^4.2.1" apollo-server-errors "^3.3.1" - apollo-server-plugin-base "^3.5.3" - apollo-server-types "^3.5.3" + apollo-server-plugin-base "^3.6.0" + apollo-server-types "^3.6.0" async-retry "^1.2.1" fast-json-stable-stringify "^2.1.0" graphql-tag "^2.11.0" - lodash.sortby "^4.7.0" loglevel "^1.6.8" lru-cache "^6.0.0" sha.js "^2.4.11" @@ -7666,10 +7705,10 @@ apollo-server-errors@^3.3.1: resolved "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz#ba5c00cdaa33d4cbd09779f8cb6f47475d1cd655" integrity sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA== -apollo-server-express@^3.0.0, apollo-server-express@^3.7.0: - version "3.7.0" - resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.7.0.tgz#dc4cacc25f9528d3a18e2557b52990bf000b454c" - integrity sha512-176LSK7YBxwfleurtbfr5SYMheNNJSHrQa2h4QuosLqhfFJkfTpI2iBW56N737U47QfyueCOvkjNZVq86e3n2g== +apollo-server-express@^3.0.0, apollo-server-express@^3.8.1: + version "3.8.1" + resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.8.1.tgz#79a979c60a6e6d49ae5396c13aeb467389831500" + integrity sha512-58QJFFbLoBfQ3SOp+0PHOqJWVxHf2WzjB3DU2MlVxHi/CfrDbjf7EYjuWTtuvIuzuoEG6kAWLGn2zEDlLmXk1A== dependencies: "@types/accepts" "^1.3.5" "@types/body-parser" "1.19.2" @@ -7677,35 +7716,37 @@ apollo-server-express@^3.0.0, apollo-server-express@^3.7.0: "@types/express" "4.17.13" "@types/express-serve-static-core" "4.17.28" accepts "^1.3.5" - apollo-server-core "^3.7.0" - apollo-server-types "^3.5.3" + apollo-server-core "^3.8.1" + apollo-server-types "^3.6.0" body-parser "^1.19.0" cors "^2.8.5" parseurl "^1.3.3" -apollo-server-plugin-base@^3.5.3: - version "3.5.3" - resolved "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.5.3.tgz#620ca8e9337e5d661c3915375bd6720d0aa205ce" - integrity sha512-zojm3qiUGYtM5k1PPrCJnLZSDNqvWvmIDvqBjCu3wI3iNZqNm3MOA86eYGFfaBi/WNu3qYIj6QE3T7w0XjRV1A== +apollo-server-plugin-base@^3.6.0: + version "3.6.0" + resolved "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.6.0.tgz#f85e19fa4a33866ef1b4235077397a63a9a7343e" + integrity sha512-GtXhczRGpTLQyFPWeWSnX1VcN2JaaAU7WT8PzoTQuJKYJ/Aj5mPebHbfG+PXQlDmI8IgyCKf7B1HIRnJqvAZbg== dependencies: - apollo-server-types "^3.5.3" + apollo-server-types "^3.6.0" -apollo-server-types@^3.5.3: - version "3.5.3" - resolved "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.5.3.tgz#e874bd99135c5c6550fe5f904b3b521b340e6ea3" - integrity sha512-Qf5mMVTDyABEeyjGecwMsk0y0km4KuW8/j/UwBDQkAAW1QRy+w8nqi+wvSoA5hNXiYCdJN4U4nxTxm9+2eiT4w== +apollo-server-types@^3.6.0: + version "3.6.0" + resolved "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.6.0.tgz#29fd8369aad99d42f72b760eb12bfe2c888da901" + integrity sha512-zISCkwXvwTHK2AysWSfLAUvDLSDJ0xj8pnfxDv34hqA+G9JqsLbykJdSL1Y1kT53HU4RWF6ymTuTwwOmmBiAWA== dependencies: + "@apollo/utils.logger" "^1.0.0" apollo-reporting-protobuf "^3.3.1" apollo-server-caching "^3.3.0" apollo-server-env "^4.2.1" apollo-server@^3.0.0: - version "3.7.0" - resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.7.0.tgz#8755c1e1f08825a61003667551e5915373db9f87" - integrity sha512-sMD9V0cScsuXKtqtpLBpeU3s0eRyG12n3HtHGg9LNBanYkxS4/I1i0JozO0r0e2kO5yyJ1gc6UWim9+NDxUrnA== + version "3.8.1" + resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.8.1.tgz#ff607983344d56a9288a1df457d61ad3fa1afdeb" + integrity sha512-y6g3ISeUbsLao06lt2ZIhtR+cXtIYZspl0UIv2vA2eyp8hHGk6ocKm4+joQzzugqEdV1wusUswWsL4klECq5jg== dependencies: - apollo-server-core "^3.7.0" - apollo-server-express "^3.7.0" + "@types/express" "4.17.13" + apollo-server-core "^3.8.1" + apollo-server-express "^3.8.1" express "^4.17.1" aproba@^1.0.3: From fa622f376189644dbf0872dec36cfeee3d24fbeb Mon Sep 17 00:00:00 2001 From: dinesh-lendingkart Date: Thu, 2 Jun 2022 15:36:48 +0530 Subject: [PATCH 118/550] Added Lendingkart as Adopter Signed-off-by: dinesh-lendingkart --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 50a2f5e755..8900c6eb24 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -154,3 +154,4 @@ _If you're using Backstage in your organization, please try to add your company | [Zego](https://www.zego.com) | [Sean Kenny](mailto:sean.kenny@zego.com) | Single pane of glass for organisational and operational information for all services across our systems. | | [Absa Group Limited](https://www.absa.africa/absaafrica/) | [Chris Kieser](mailto:chris.kieser@absa.africa) | Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more | | [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | +| [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lenndingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. From 53c1c587b79c92ac9f6789525aaaac620a24eda5 Mon Sep 17 00:00:00 2001 From: dinesh-lendingkart Date: Thu, 2 Jun 2022 16:06:22 +0530 Subject: [PATCH 119/550] Fixed the email Signed-off-by: dinesh-lendingkart --- ADOPTERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 8900c6eb24..68ecc42767 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -154,4 +154,4 @@ _If you're using Backstage in your organization, please try to add your company | [Zego](https://www.zego.com) | [Sean Kenny](mailto:sean.kenny@zego.com) | Single pane of glass for organisational and operational information for all services across our systems. | | [Absa Group Limited](https://www.absa.africa/absaafrica/) | [Chris Kieser](mailto:chris.kieser@absa.africa) | Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more | | [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | -| [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lenndingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. +| [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. From 0afede342d39dc7b3e0467f979f93a5e5e798ee3 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 13:10:40 +0200 Subject: [PATCH 120/550] clean up api report for search-backend-module-elasticsearch package Signed-off-by: Emma Indal --- .../api-report.md | 127 ++++++++++++++---- .../src/engines/ElasticSearchClientOptions.ts | 20 ++- .../src/engines/ElasticSearchSearchEngine.ts | 17 ++- .../ElasticSearchSearchEngineIndexer.ts | 8 ++ .../src/engines/index.ts | 9 ++ .../src/index.ts | 8 ++ 6 files changed, 160 insertions(+), 29 deletions(-) diff --git a/plugins/search-backend-module-elasticsearch/api-report.md b/plugins/search-backend-module-elasticsearch/api-report.md index 7ef026745f..77ce0af61e 100644 --- a/plugins/search-backend-module-elasticsearch/api-report.md +++ b/plugins/search-backend-module-elasticsearch/api-report.md @@ -15,17 +15,44 @@ import { Logger } from 'winston'; import { SearchEngine } from '@backstage/plugin-search-common'; import { SearchQuery } from '@backstage/plugin-search-common'; -// Warning: (ae-missing-release-tag) "ElasticSearchClientOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// Warning: (ae-unresolved-link) The @link reference could not be resolved: The package "@backstage/plugin-search-backend-module-elasticsearch" does not have an export "ElasticSearchEngine" -// +// @public +export type ConcreteElasticSearchQuery = { + documentTypes?: string[]; + elasticSearchQuery: Object; + pageSize: number; +}; + +// @public (undocumented) +export interface ElasticSearchAgentOptions { + // (undocumented) + keepAlive?: boolean; + // (undocumented) + keepAliveMsecs?: number; + // (undocumented) + maxFreeSockets?: number; + // (undocumented) + maxSockets?: number; +} + +// @public (undocumented) +export type ElasticSearchAuth = + | { + username: string; + password: string; + } + | { + apiKey: + | string + | { + id: string; + api_key: string; + }; + }; + // @public export interface ElasticSearchClientOptions { - // Warning: (ae-forgotten-export) The symbol "ElasticSearchAgentOptions" needs to be exported by the entry point index.d.ts - // // (undocumented) agent?: ElasticSearchAgentOptions | ((opts?: any) => unknown) | false; - // Warning: (ae-forgotten-export) The symbol "ElasticSearchAuth" needs to be exported by the entry point index.d.ts - // // (undocumented) auth?: ElasticSearchAuth; // (undocumented) @@ -36,8 +63,6 @@ export interface ElasticSearchClientOptions { }; // (undocumented) compression?: 'gzip'; - // Warning: (ae-forgotten-export) The symbol "ElasticSearchConnectionConstructor" needs to be exported by the entry point index.d.ts - // // (undocumented) Connection?: ElasticSearchConnectionConstructor; // (undocumented) @@ -50,8 +75,6 @@ export interface ElasticSearchClientOptions { maxRetries?: number; // (undocumented) name?: string | symbol; - // Warning: (ae-forgotten-export) The symbol "ElasticSearchNodeOptions" needs to be exported by the entry point index.d.ts - // // (undocumented) node?: | string @@ -92,12 +115,28 @@ export interface ElasticSearchClientOptions { ssl?: ConnectionOptions; // (undocumented) suggestCompression?: boolean; - // Warning: (ae-forgotten-export) The symbol "ElasticSearchTransportConstructor" needs to be exported by the entry point index.d.ts - // // (undocumented) Transport?: ElasticSearchTransportConstructor; } +// @public (undocumented) +export interface ElasticSearchConnectionConstructor { + // (undocumented) + new (opts?: any): any; + // (undocumented) + roles: { + MASTER: string; + DATA: string; + INGEST: string; + ML: string; + }; + // (undocumented) + statuses: { + ALIVE: string; + DEAD: string; + }; +} + // @public (undocumented) export type ElasticSearchHighlightConfig = { fragmentDelimiter: string; @@ -115,6 +154,41 @@ export type ElasticSearchHighlightOptions = { }; // @public (undocumented) +export interface ElasticSearchNodeOptions { + // (undocumented) + agent?: ElasticSearchAgentOptions; + // (undocumented) + headers?: Record; + // (undocumented) + id?: string; + // (undocumented) + roles?: { + master: boolean; + data: boolean; + ingest: boolean; + ml: boolean; + }; + // (undocumented) + ssl?: ConnectionOptions; + // (undocumented) + url: URL; +} + +// @public +export type ElasticSearchOptions = { + logger: Logger; + config: Config; + aliasPostfix?: string; + indexPrefix?: string; +}; + +// @public +export type ElasticSearchQueryTranslator = ( + query: SearchQuery, + options?: ElasticSearchQueryTranslatorOptions, +) => ConcreteElasticSearchQuery; + +// @public export type ElasticSearchQueryTranslatorOptions = { highlightOptions?: ElasticSearchHighlightConfig; }; @@ -128,8 +202,6 @@ export class ElasticSearchSearchEngine implements SearchEngine { logger: Logger, highlightOptions?: ElasticSearchHighlightOptions, ); - // Warning: (ae-forgotten-export) The symbol "ElasticSearchOptions" needs to be exported by the entry point index.d.ts - // // (undocumented) static fromConfig({ logger, @@ -142,12 +214,8 @@ export class ElasticSearchSearchEngine implements SearchEngine { newClient(create: (options: ElasticSearchClientOptions) => T): T; // (undocumented) query(query: SearchQuery): Promise; - // Warning: (ae-forgotten-export) The symbol "ElasticSearchQueryTranslator" needs to be exported by the entry point index.d.ts - // // (undocumented) setTranslator(translator: ElasticSearchQueryTranslator): void; - // Warning: (ae-forgotten-export) The symbol "ConcreteElasticSearchQuery" needs to be exported by the entry point index.d.ts - // // (undocumented) protected translator( query: SearchQuery, @@ -155,9 +223,7 @@ export class ElasticSearchSearchEngine implements SearchEngine { ): ConcreteElasticSearchQuery; } -// Warning: (ae-missing-release-tag) "ElasticSearchSearchEngineIndexer" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export class ElasticSearchSearchEngineIndexer extends BatchSearchEngineIndexer { constructor(options: ElasticSearchSearchEngineIndexerOptions); // (undocumented) @@ -170,9 +236,7 @@ export class ElasticSearchSearchEngineIndexer extends BatchSearchEngineIndexer { initialize(): Promise; } -// Warning: (ae-missing-release-tag) "ElasticSearchSearchEngineIndexerOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export type ElasticSearchSearchEngineIndexerOptions = { type: string; indexPrefix: string; @@ -181,4 +245,17 @@ export type ElasticSearchSearchEngineIndexerOptions = { logger: Logger; elasticSearchClient: Client; }; + +// @public (undocumented) +export interface ElasticSearchTransportConstructor { + // (undocumented) + new (opts?: any): any; + // (undocumented) + sniffReasons: { + SNIFF_ON_START: string; + SNIFF_INTERVAL: string; + SNIFF_ON_CONNECTION_FAULT: string; + DEFAULT: string; + }; +} ``` diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchClientOptions.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchClientOptions.ts index 73cb149c0a..c5d1f11b0c 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchClientOptions.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchClientOptions.ts @@ -18,10 +18,12 @@ import type { ConnectionOptions as TLSConnectionOptions } from 'tls'; /** * Options used to configure the `@elastic/elasticsearch` client and * are what will be passed as an argument to the - * {@link ElasticSearchEngine.newClient} method + * {@link ElasticSearchSearchEngine.newClient} method * * They are drawn from the `ClientOptions` class of `@elastic/elasticsearch`, * but are maintained separately so that this interface is not coupled to + * + * @public */ export interface ElasticSearchClientOptions { provider?: 'aws' | 'elastic'; @@ -65,6 +67,9 @@ export interface ElasticSearchClientOptions { disablePrototypePoisoningProtection?: boolean | 'proto' | 'constructor'; } +/** + * @public + */ export type ElasticSearchAuth = | { username: string; @@ -79,6 +84,9 @@ export type ElasticSearchAuth = }; }; +/** + * @public + */ export interface ElasticSearchNodeOptions { url: URL; id?: string; @@ -93,6 +101,9 @@ export interface ElasticSearchNodeOptions { }; } +/** + * @public + */ export interface ElasticSearchAgentOptions { keepAlive?: boolean; keepAliveMsecs?: number; @@ -100,6 +111,9 @@ export interface ElasticSearchAgentOptions { maxFreeSockets?: number; } +/** + * @public + */ export interface ElasticSearchConnectionConstructor { new (opts?: any): any; statuses: { @@ -113,7 +127,9 @@ export interface ElasticSearchConnectionConstructor { ML: string; }; } - +/** + * @public + */ export interface ElasticSearchTransportConstructor { new (opts?: any): any; sniffReasons: { diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index 70b085e5a7..621fe1cd55 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -36,6 +36,10 @@ import { ElasticSearchSearchEngineIndexer } from './ElasticSearchSearchEngineInd export type { ElasticSearchClientOptions }; +/** + * Search query that the elasticsearch engine understands. + * @public + */ export type ConcreteElasticSearchQuery = { documentTypes?: string[]; elasticSearchQuery: Object; @@ -43,18 +47,27 @@ export type ConcreteElasticSearchQuery = { }; /** + * Options available for the Elasticsearch specific query translator. * @public */ export type ElasticSearchQueryTranslatorOptions = { highlightOptions?: ElasticSearchHighlightConfig; }; -type ElasticSearchQueryTranslator = ( +/** + * Elasticsearch specific query translator. + * @public + */ +export type ElasticSearchQueryTranslator = ( query: SearchQuery, options?: ElasticSearchQueryTranslatorOptions, ) => ConcreteElasticSearchQuery; -type ElasticSearchOptions = { +/** + * Options for instansiate ElasticSearchSearchEngine + * @public + */ +export type ElasticSearchOptions = { logger: Logger; config: Config; aliasPostfix?: string; diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngineIndexer.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngineIndexer.ts index 2a738e1506..fd16d0c963 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngineIndexer.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngineIndexer.ts @@ -20,6 +20,10 @@ import { Client } from '@elastic/elasticsearch'; import { Readable } from 'stream'; import { Logger } from 'winston'; +/** + * Options for instansiate ElasticSearchSearchEngineIndexer + * @public + */ export type ElasticSearchSearchEngineIndexerOptions = { type: string; indexPrefix: string; @@ -35,6 +39,10 @@ function duration(startTimestamp: [number, number]): string { return `${seconds.toFixed(1)}s`; } +/** + * Elasticsearch specific search engine indexer. + * @public + */ export class ElasticSearchSearchEngineIndexer extends BatchSearchEngineIndexer { private received: number = 0; private processed: number = 0; diff --git a/plugins/search-backend-module-elasticsearch/src/engines/index.ts b/plugins/search-backend-module-elasticsearch/src/engines/index.ts index c5628776ef..625c0d9b60 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/index.ts @@ -15,12 +15,21 @@ */ export { ElasticSearchSearchEngine } from './ElasticSearchSearchEngine'; +export type { + ElasticSearchAgentOptions, + ElasticSearchConnectionConstructor, + ElasticSearchTransportConstructor, + ElasticSearchNodeOptions, + ElasticSearchAuth, +} from './ElasticSearchClientOptions'; export type { ConcreteElasticSearchQuery, ElasticSearchClientOptions, ElasticSearchHighlightConfig, ElasticSearchHighlightOptions, + ElasticSearchQueryTranslator, ElasticSearchQueryTranslatorOptions, + ElasticSearchOptions, } from './ElasticSearchSearchEngine'; export type { ElasticSearchSearchEngineIndexer, diff --git a/plugins/search-backend-module-elasticsearch/src/index.ts b/plugins/search-backend-module-elasticsearch/src/index.ts index 744e12f8c8..3cfb3c403f 100644 --- a/plugins/search-backend-module-elasticsearch/src/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/index.ts @@ -22,10 +22,18 @@ export { ElasticSearchSearchEngine } from './engines'; export type { + ElasticSearchAgentOptions, + ConcreteElasticSearchQuery, ElasticSearchClientOptions, ElasticSearchHighlightConfig, ElasticSearchHighlightOptions, + ElasticSearchQueryTranslator, ElasticSearchQueryTranslatorOptions, + ElasticSearchConnectionConstructor, + ElasticSearchTransportConstructor, + ElasticSearchNodeOptions, + ElasticSearchOptions, + ElasticSearchAuth, ElasticSearchSearchEngineIndexer, ElasticSearchSearchEngineIndexerOptions, } from './engines'; From b39d3ee4991aa49ae42e37f6e093499c50acdcc5 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 13:11:42 +0200 Subject: [PATCH 121/550] add additional search packages to api-extractor NO_WARNING_PACKAGES list Signed-off-by: Emma Indal --- scripts/api-extractor.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index ae74848af6..33933cbb21 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -256,7 +256,9 @@ const NO_WARNING_PACKAGES = [ 'plugins/scaffolder-backend-module-rails', 'plugins/scaffolder-backend-module-yeoman', 'plugins/scaffolder-common', + 'plugins/search-backend', 'plugins/search-backend-node', + 'plugins/search-backend-module-elasticsearch', 'plugins/search-common', 'plugins/search-react', 'plugins/techdocs', From 6e35f1935868795f73fd08d1b3d186d5888763a2 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 11:19:47 +0000 Subject: [PATCH 122/550] fix(deps): update dependency aws-sdk to v2.1147.0 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 92c625b205..63d5a31051 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8085,9 +8085,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1137.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1137.0.tgz#505e51b3c9ed31d54bbd620cb70d005e6086f23b" - integrity sha512-iOm81glo7Y3bj6bO6pUEhFlclfANe0ExBJOZ8TxFx2mE8KsaPkofAy8dSzwbn357yOyVxur9tkZgXM2f05ynlA== + version "2.1147.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1147.0.tgz#5d279abee153a0627ae502cdbb57d321388b534c" + integrity sha512-+CO8FnBgqHgxMJH0s8fv17Xqrh6V0lJ8zKOt3lHU+8QTiSoX5aLgr8zwmi0m7msHtyVeDWh50kiWAlvUs7U8Gw== dependencies: buffer "4.9.2" events "1.1.1" @@ -8096,7 +8096,7 @@ aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: querystring "0.2.0" sax "1.2.1" url "0.10.3" - uuid "3.3.2" + uuid "8.0.0" xml2js "0.4.19" aws-sign2@~0.7.0: @@ -25089,10 +25089,10 @@ utils-merge@1.0.1, utils-merge@1.x.x: resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@3.3.2: - version "3.3.2" - resolved "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== +uuid@8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" + integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== uuid@8.3.2, uuid@^8.0.0, uuid@^8.2.0, uuid@^8.3.0, uuid@^8.3.2: version "8.3.2" From 18e05f2b54d24e18dcdd9a203227f31514128100 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 13:19:51 +0200 Subject: [PATCH 123/550] clean up api reports for search-common package Signed-off-by: Emma Indal --- plugins/search-common/api-report.md | 32 ++++++++++++++--------------- plugins/search-common/src/types.ts | 32 ++++++++++++++--------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/plugins/search-common/api-report.md b/plugins/search-common/api-report.md index 495d77ed26..bb049742f7 100644 --- a/plugins/search-common/api-report.md +++ b/plugins/search-common/api-report.md @@ -11,46 +11,46 @@ import { Readable } from 'stream'; import { Transform } from 'stream'; import { Writable } from 'stream'; -// @beta +// @public export interface DocumentCollatorFactory { getCollator(): Promise; readonly type: string; readonly visibilityPermission?: Permission; } -// @beta +// @public export interface DocumentDecoratorFactory { getDecorator(): Promise; readonly types?: string[]; } -// @beta +// @public export type DocumentTypeInfo = { visibilityPermission?: Permission; }; -// @beta +// @public export type IndexableDocument = SearchDocument & { authorization?: { resourceRef: string; }; }; -// @beta (undocumented) +// @public (undocumented) export type IndexableResult = Result; -// @beta (undocumented) +// @public (undocumented) export type IndexableResultSet = ResultSet; -// @beta +// @public export type QueryRequestOptions = { token?: string; }; -// @beta +// @public export type QueryTranslator = (query: SearchQuery) => unknown; -// @beta (undocumented) +// @public (undocumented) export interface Result { // (undocumented) document: TDocument; @@ -60,7 +60,7 @@ export interface Result { type: string; } -// @beta +// @public export interface ResultHighlight { // (undocumented) fields: { @@ -70,7 +70,7 @@ export interface ResultHighlight { preTag: string; } -// @beta (undocumented) +// @public (undocumented) export interface ResultSet { // (undocumented) nextPageCursor?: string; @@ -80,14 +80,14 @@ export interface ResultSet { results: Result[]; } -// @beta +// @public export interface SearchDocument { location: string; text: string; title: string; } -// @beta +// @public export interface SearchEngine { getIndexer(type: string): Promise; query( @@ -97,7 +97,7 @@ export interface SearchEngine { setTranslator(translator: QueryTranslator): void; } -// @beta (undocumented) +// @public (undocumented) export interface SearchQuery { // (undocumented) filters?: JsonObject; @@ -109,9 +109,9 @@ export interface SearchQuery { types?: string[]; } -// @beta (undocumented) +// @public (undocumented) export type SearchResult = Result; -// @beta (undocumented) +// @public (undocumented) export type SearchResultSet = ResultSet; ``` diff --git a/plugins/search-common/src/types.ts b/plugins/search-common/src/types.ts index f77e819364..fdcc06287c 100644 --- a/plugins/search-common/src/types.ts +++ b/plugins/search-common/src/types.ts @@ -19,7 +19,7 @@ import { JsonObject } from '@backstage/types'; import { Readable, Transform, Writable } from 'stream'; /** - * @beta + * @public */ export interface SearchQuery { term: string; @@ -29,10 +29,10 @@ export interface SearchQuery { } /** - * @beta * Metadata for result relevant document fields with matched terms highlighted * via wrapping in associated pre/post tags. The UI is expected to parse these * field excerpts by replacing wrapping tags with applicable UI elements for rendering. + * @public */ export interface ResultHighlight { /** @@ -53,7 +53,7 @@ export interface ResultHighlight { } /** - * @beta + * @public */ export interface Result { type: string; @@ -62,7 +62,7 @@ export interface Result { } /** - * @beta + * @public */ export interface ResultSet { results: Result[]; @@ -71,28 +71,28 @@ export interface ResultSet { } /** - * @beta + * @public */ export type SearchResult = Result; /** - * @beta + * @public */ export type SearchResultSet = ResultSet; /** - * @beta + * @public */ export type IndexableResult = Result; /** - * @beta + * @public */ export type IndexableResultSet = ResultSet; /** * Base properties that all search documents must include. - * @beta + * @public */ export interface SearchDocument { /** @@ -117,7 +117,7 @@ export interface SearchDocument { * backends working directly with documents being inserted or retrieved from * search indexes. When dealing with documents in the frontend, use * {@link SearchDocument}. - * @beta + * @public */ export type IndexableDocument = SearchDocument & { /** @@ -136,7 +136,7 @@ export type IndexableDocument = SearchDocument & { * Information about a specific document type. Intended to be used in the * {@link @backstage/plugin-search-backend-node#IndexBuilder} to collect information * about the types stored in the index. - * @beta + * @public */ export type DocumentTypeInfo = { /** @@ -148,7 +148,7 @@ export type DocumentTypeInfo = { /** * Factory class for instantiating collators. - * @beta + * @public */ export interface DocumentCollatorFactory { /** @@ -171,7 +171,7 @@ export interface DocumentCollatorFactory { /** * Factory class for instantiating decorators. - * @beta + * @public */ export interface DocumentDecoratorFactory { /** @@ -190,13 +190,13 @@ export interface DocumentDecoratorFactory { /** * A type of function responsible for translating an abstract search query into * a concrete query relevant to a particular search engine. - * @beta + * @public */ export type QueryTranslator = (query: SearchQuery) => unknown; /** * Options when querying a search engine. - * @beta + * @public */ export type QueryRequestOptions = { token?: string; @@ -206,7 +206,7 @@ export type QueryRequestOptions = { * Interface that must be implemented by specific search engines, responsible * for performing indexing and querying and translating abstract queries into * concrete, search engine-specific queries. - * @beta + * @public */ export interface SearchEngine { /** From 73fa59f6b20d34fd183ca6dc06a2c838267f1c84 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 13:20:29 +0200 Subject: [PATCH 124/550] replace all usages of @backstage/search-common with @backstage/plugin-search-common Signed-off-by: Emma Indal --- .changeset/pre.json | 1 - contrib/search/confluence/ConfluenceCollator.md | 2 +- contrib/search/confluence/ConfluenceResultListItem.md | 2 +- plugins/catalog-common/package.json | 2 +- plugins/catalog-common/src/search/CatalogEntityDocument.ts | 2 +- 5 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index a7ee74e62c..4d4f1e0623 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -25,7 +25,6 @@ "@backstage/integration": "1.2.0", "@backstage/integration-react": "1.1.0", "@backstage/release-manifests": "0.0.3", - "@backstage/search-common": "0.3.4", "@techdocs/cli": "1.1.1", "techdocs-cli-embedded-app": "0.2.70", "@backstage/techdocs-common": "0.11.15", diff --git a/contrib/search/confluence/ConfluenceCollator.md b/contrib/search/confluence/ConfluenceCollator.md index f636ae88ea..7d7c8641f3 100644 --- a/contrib/search/confluence/ConfluenceCollator.md +++ b/contrib/search/confluence/ConfluenceCollator.md @@ -1,7 +1,7 @@ ConfluenceCollator.ts reference ```ts -import { DocumentCollator } from '@backstage/search-common'; +import { DocumentCollator } from '@backstage/plugin-search-common'; import fetch from 'cross-fetch'; export class ConfluenceCollator implements DocumentCollator { diff --git a/contrib/search/confluence/ConfluenceResultListItem.md b/contrib/search/confluence/ConfluenceResultListItem.md index ba7c4f91a9..059048d731 100644 --- a/contrib/search/confluence/ConfluenceResultListItem.md +++ b/contrib/search/confluence/ConfluenceResultListItem.md @@ -3,7 +3,7 @@ ConfluenceResultListItem.tsx reference ```tsx import React from 'react'; import { Link } from '@backstage/core-components'; -import { IndexableDocument } from '@backstage/search-common'; +import { IndexableDocument } from '@backstage/plugin-search-common'; import { Divider, ListItem, diff --git a/plugins/catalog-common/package.json b/plugins/catalog-common/package.json index 0e14a01006..c53acd3dd9 100644 --- a/plugins/catalog-common/package.json +++ b/plugins/catalog-common/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/search-common": "^0.3.5-next.0" + "@backstage/plugin-search-common": "^0.3.4" }, "devDependencies": { "@backstage/cli": "^0.17.2-next.1" diff --git a/plugins/catalog-common/src/search/CatalogEntityDocument.ts b/plugins/catalog-common/src/search/CatalogEntityDocument.ts index 834dde2568..0c53c369cf 100644 --- a/plugins/catalog-common/src/search/CatalogEntityDocument.ts +++ b/plugins/catalog-common/src/search/CatalogEntityDocument.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { IndexableDocument } from '@backstage/search-common'; +import { IndexableDocument } from '@backstage/plugin-search-common'; /** * The Document format for an Entity in the Catalog for search From df60a7ac991b92624d3c2a8d2a429d0c2b7208d9 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 11:20:43 +0000 Subject: [PATCH 125/550] fix(deps): update dependency commander to v9.3.0 Signed-off-by: Renovate Bot --- yarn.lock | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 92c625b205..8b9216f47f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9637,12 +9637,7 @@ commander@^7.2.0: resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commander@^9.1.0: - version "9.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" - integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== - -commander@^9.3.0: +commander@^9.1.0, commander@^9.3.0: version "9.3.0" resolved "https://registry.npmjs.org/commander/-/commander-9.3.0.tgz#f619114a5a2d2054e0d9ff1b31d5ccf89255e26b" integrity sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw== From 55647ec7df87d52bc87b4ddab7ed0da9644b756f Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 2 Jun 2022 13:23:35 +0200 Subject: [PATCH 126/550] backend-common: prevent expired backend tokens from being used Signed-off-by: Patrik Oldsberg --- .changeset/metal-items-mix.md | 5 +++ .../src/tokens/ServerTokenManager.test.ts | 44 ++++++++++++++++--- .../src/tokens/ServerTokenManager.ts | 34 ++++---------- 3 files changed, 50 insertions(+), 33 deletions(-) create mode 100644 .changeset/metal-items-mix.md diff --git a/.changeset/metal-items-mix.md b/.changeset/metal-items-mix.md new file mode 100644 index 0000000000..6299e479e6 --- /dev/null +++ b/.changeset/metal-items-mix.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-common': minor +--- + +**BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. diff --git a/packages/backend-common/src/tokens/ServerTokenManager.test.ts b/packages/backend-common/src/tokens/ServerTokenManager.test.ts index 6a72b99908..cc7854b2ee 100644 --- a/packages/backend-common/src/tokens/ServerTokenManager.test.ts +++ b/packages/backend-common/src/tokens/ServerTokenManager.test.ts @@ -171,7 +171,6 @@ describe('ServerTokenManager', () => { it('should throw for expired tokens, and re-issue new ones', async () => { jest.useFakeTimers(); - const warn = jest.spyOn(logger, 'warn'); const tokenManager = ServerTokenManager.fromConfig(configWithSecret, { logger, @@ -179,14 +178,12 @@ describe('ServerTokenManager', () => { const { token: token1 } = await tokenManager.getToken(); await expect(tokenManager.authenticate(token1)).resolves.not.toThrow(); - expect(warn.mock.calls.length).toBe(0); // Right before the reissue timeout, it still returns the same token jest.advanceTimersByTime(9 * 60 * 1000); const { token: token1Again } = await tokenManager.getToken(); expect(token1).toEqual(token1Again); await expect(tokenManager.authenticate(token1)).resolves.not.toThrow(); - expect(warn.mock.calls.length).toBe(0); // Right after the reissue timeout, the old ones are still valid but returning a new token jest.advanceTimersByTime(2 * 60 * 1000); @@ -194,14 +191,47 @@ describe('ServerTokenManager', () => { expect(token1).not.toEqual(token2); await expect(tokenManager.authenticate(token1)).resolves.not.toThrow(); await expect(tokenManager.authenticate(token2)).resolves.not.toThrow(); - expect(warn.mock.calls.length).toBe(0); // After expiry of the first one, it gets warnings but the newest one is still valid jest.advanceTimersByTime(52 * 60 * 1000); - await expect(tokenManager.authenticate(token1)).resolves.not.toThrow(); + await expect(tokenManager.authenticate(token1)).rejects.toThrow( + 'Invalid server token; caused by JWTExpired: "exp" claim timestamp check failed', + ); await expect(tokenManager.authenticate(token2)).resolves.not.toThrow(); - expect(warn.mock.calls[0][0]).toMatchInlineSnapshot( - '"#### DEPRECATION WARNING: #### Server-to-server token had an expired exp claim, support for this has been deprecated and will result in errors in a future release"', + }); + + it('should work with a manually crafted JWT', async () => { + const secret = 'a1b2c3'; + const token = await new jose.SignJWT({}) + .setProtectedHeader({ alg: 'HS256' }) + .setSubject('backstage-server') + .setExpirationTime(Date.now() + 1000 * 60 * 60) + .sign(jose.base64url.decode(secret)); + + const tokenManager = ServerTokenManager.fromConfig( + new ConfigReader({ + backend: { auth: { keys: [{ secret }] } }, + }), + { logger }, + ); + await expect(tokenManager.authenticate(token)).resolves.toBeUndefined(); + }); + + it('should reject tokens without exp claim', async () => { + const secret = 'a1b2c3'; + const token = await new jose.SignJWT({}) + .setProtectedHeader({ alg: 'HS256' }) + .setSubject('backstage-server') + .sign(jose.base64url.decode(secret)); + + const tokenManager = ServerTokenManager.fromConfig( + new ConfigReader({ + backend: { auth: { keys: [{ secret }] } }, + }), + { logger }, + ); + await expect(tokenManager.authenticate(token)).rejects.toThrow( + 'Invalid server token; caused by AuthenticationError: Server-to-server token had no exp claim', ); }); }); diff --git a/packages/backend-common/src/tokens/ServerTokenManager.ts b/packages/backend-common/src/tokens/ServerTokenManager.ts index 329c2f164c..970dcfb83d 100644 --- a/packages/backend-common/src/tokens/ServerTokenManager.ts +++ b/packages/backend-common/src/tokens/ServerTokenManager.ts @@ -15,7 +15,7 @@ */ import { Config } from '@backstage/config'; -import { AuthenticationError, NotAllowedError } from '@backstage/errors'; +import { AuthenticationError } from '@backstage/errors'; import { base64url, exportJWK, generateSecret, jwtVerify, SignJWT } from 'jose'; import { DateTime, Duration } from 'luxon'; import { Logger } from 'winston'; @@ -64,8 +64,6 @@ export class ServerTokenManager implements TokenManager { private signingKey: Uint8Array; private privateKeyPromise: Promise | undefined; private currentTokenPromise: Promise<{ token: string }> | undefined; - private warnedForMissingExpClaim = false; - private warnedForExpiredExpClaim = false; /** * Creates a token manager that issues static dummy tokens and never fails @@ -184,36 +182,20 @@ export class ServerTokenManager implements TokenManager { const { protectedHeader: { alg }, payload: { sub, exp }, - } = await jwtVerify(token, key, { - // TODO(freben): Holding on to tokens and reusing them is deprecated; remove this tolerance in a future release - clockTolerance: 3e9, - }); + } = await jwtVerify(token, key); if (alg !== TOKEN_ALG) { - throw new NotAllowedError(`Illegal alg "${alg}"`); + throw new AuthenticationError(`Illegal alg "${alg}"`); } if (sub !== TOKEN_SUB) { - throw new NotAllowedError(`Illegal sub "${sub}"`); + throw new AuthenticationError(`Illegal sub "${sub}"`); } - // TODO(freben): Passing in tokens without an exp is deprecated; change this warning to an error in a future release if (typeof exp !== 'number') { - if (!this.warnedForMissingExpClaim) { - this.warnedForMissingExpClaim = true; - this.options.logger.warn( - `#### DEPRECATION WARNING: #### Server-to-server token had no exp claim, support for this has been deprecated and will result in errors in a future release`, - ); - } - } - // TODO(freben): Holding on to tokens and reusing them is deprecated; remove this tolerance in a future release - else if (exp * 1000 < Date.now()) { - if (!this.warnedForExpiredExpClaim) { - this.warnedForExpiredExpClaim = true; - this.options.logger.warn( - `#### DEPRECATION WARNING: #### Server-to-server token had an expired exp claim, support for this has been deprecated and will result in errors in a future release`, - ); - } + throw new AuthenticationError( + 'Server-to-server token had no exp claim', + ); } return; } catch (e) { @@ -222,6 +204,6 @@ export class ServerTokenManager implements TokenManager { } } - throw new AuthenticationError(`Invalid server token: ${verifyError}`); + throw new AuthenticationError('Invalid server token', verifyError); } } From 16b6603493bc95db1d55c504810f5446bcc741df Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 12:21:45 +0000 Subject: [PATCH 127/550] fix(deps): update dependency cronstrue to v2.9.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 63d5a31051..c55e194570 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10153,9 +10153,9 @@ cron@^2.0.0: luxon "^1.23.x" cronstrue@^2.2.0: - version "2.5.0" - resolved "https://registry.npmjs.org/cronstrue/-/cronstrue-2.5.0.tgz#1d69bd53520ce536789fb666d9fd562065b491c6" - integrity sha512-2uhcYEmXEH52Prn1biZ1HSaQwGwUy4fxFiq3U3vKwLYngL14j8f4pZeQt9f1J6tWDaLFeLRgcCHtO45r78ECyw== + version "2.9.0" + resolved "https://registry.npmjs.org/cronstrue/-/cronstrue-2.9.0.tgz#f63c376060c8e019d748564d6eb128d6cac76210" + integrity sha512-PZSsUZU7O+R0JdsquKMXlm41tm62oO5fVYoXi6QI/eRAYxgbkPJ/OcLrVxUM+JNRy5yv0QEI84YG1mUjEo4RLA== cross-env@^7.0.0: version "7.0.3" From 7a8dbea0f73812eab20ba294b39d5eca2e909a33 Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 2 Jun 2022 14:47:34 +0200 Subject: [PATCH 128/550] chore: fix html references Signed-off-by: blam --- scripts/api-extractor.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index ae74848af6..34de576c7e 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -40,7 +40,7 @@ import { TSDocTagSyntaxKind, } from '@microsoft/tsdoc'; import { TSDocConfigFile } from '@microsoft/tsdoc-config'; -import { ApiPackage, ApiModel } from '@microsoft/api-extractor-model'; +import { ApiPackage, ApiModel, ApiItem } from '@microsoft/api-extractor-model'; import { IMarkdownDocumenterOptions, MarkdownDocumenter, @@ -939,6 +939,16 @@ async function buildDocs({ this._markdownEmitter = new CustomCustomMarkdownEmitter(newModel); } + private _getFilenameForApiItem(apiItem: ApiItem): string { + const filename: string = super._getFilenameForApiItem(apiItem); + + if (filename.endsWith('.html.md')) { + return `${filename.substring(0, filename.length - 8)}._html.md`; + } + + return filename; + } + // We don't really get many chances to modify the generated AST // so we hook in wherever we can. In this case we add the front matter // just before writing the breadcrumbs at the top. From 77f60d0397c65986502863b9e02de48c91de3f0f Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 2 Jun 2022 15:01:45 +0200 Subject: [PATCH 129/550] chore: fix all occurences of .html. Signed-off-by: blam --- scripts/api-extractor.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index 34de576c7e..c3b77e4a32 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -942,8 +942,8 @@ async function buildDocs({ private _getFilenameForApiItem(apiItem: ApiItem): string { const filename: string = super._getFilenameForApiItem(apiItem); - if (filename.endsWith('.html.md')) { - return `${filename.substring(0, filename.length - 8)}._html.md`; + if (filename.includes('.html.')) { + return filename.replaceAll('.html.', '._html.'); } return filename; From 1c9a0e478739cd120c438ebf52bc3b8782d10d4d Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 2 Jun 2022 15:13:41 +0200 Subject: [PATCH 130/550] chore: replace all on node14 Signed-off-by: blam --- scripts/api-extractor.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index c3b77e4a32..d11a781407 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -943,7 +943,7 @@ async function buildDocs({ const filename: string = super._getFilenameForApiItem(apiItem); if (filename.includes('.html.')) { - return filename.replaceAll('.html.', '._html.'); + return filename.replace(/\.html\./g, '._html.'); } return filename; From f8276b6734ea415b4909da699e940e27078df18d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 13:42:29 +0000 Subject: [PATCH 131/550] fix(deps): update dependency eslint to v8.16.0 Signed-off-by: Renovate Bot --- yarn.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index e951411232..53c0b3461d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2138,15 +2138,15 @@ dependencies: tiny-lru "7.0.6" -"@eslint/eslintrc@^1.2.3": - version "1.2.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz#fcaa2bcef39e13d6e9e7f6271f4cc7cae1174886" - integrity sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA== +"@eslint/eslintrc@^1.3.0": + version "1.3.0" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz#29f92c30bb3e771e4a2048c95fa6855392dfac4f" + integrity sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw== dependencies: ajv "^6.12.4" debug "^4.3.2" espree "^9.3.2" - globals "^13.9.0" + globals "^13.15.0" ignore "^5.2.0" import-fresh "^3.2.1" js-yaml "^4.1.0" @@ -12046,11 +12046,11 @@ eslint-webpack-plugin@^3.1.1: schema-utils "^3.1.1" eslint@^8.6.0: - version "8.15.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.15.0.tgz#fea1d55a7062da48d82600d2e0974c55612a11e9" - integrity sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA== + version "8.16.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.16.0.tgz#6d936e2d524599f2a86c708483b4c372c5d3bbae" + integrity sha512-MBndsoXY/PeVTDJeWsYj7kLZ5hQpJOfMYLsF6LicLHQWbRDG19lK5jOix4DPl8yY4SUFcE3txy86OzFLWT+yoA== dependencies: - "@eslint/eslintrc" "^1.2.3" + "@eslint/eslintrc" "^1.3.0" "@humanwhocodes/config-array" "^0.9.2" ajv "^6.10.0" chalk "^4.0.0" @@ -12068,7 +12068,7 @@ eslint@^8.6.0: file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" glob-parent "^6.0.1" - globals "^13.6.0" + globals "^13.15.0" ignore "^5.2.0" import-fresh "^3.0.0" imurmurhash "^0.1.4" @@ -13497,10 +13497,10 @@ globals@^11.1.0, globals@^11.12.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.6.0, globals@^13.9.0: - version "13.9.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb" - integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== +globals@^13.15.0: + version "13.15.0" + resolved "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz#38113218c907d2f7e98658af246cef8b77e90bac" + integrity sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog== dependencies: type-fest "^0.20.2" From fd4dc882877e5370440e05ec4b0b1283dd85fd0f Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 16:01:31 +0200 Subject: [PATCH 132/550] generate api report for @backstage/plugin-catalog-common Signed-off-by: Emma Indal --- plugins/catalog-common/api-report.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/catalog-common/api-report.md b/plugins/catalog-common/api-report.md index c15cbae103..ab540d446b 100644 --- a/plugins/catalog-common/api-report.md +++ b/plugins/catalog-common/api-report.md @@ -4,7 +4,7 @@ ```ts import { BasicPermission } from '@backstage/plugin-permission-common'; -import { IndexableDocument } from '@backstage/search-common'; +import { IndexableDocument } from '@backstage/plugin-search-common'; import { ResourcePermission } from '@backstage/plugin-permission-common'; // @alpha From 7d8acfc32eafea91779ebcfd80b3616187c7b369 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 16:10:29 +0200 Subject: [PATCH 133/550] add changesets Signed-off-by: Emma Indal --- .changeset/famous-cups-clap.md | 5 +++++ .changeset/hip-pears-shout.md | 5 +++++ .changeset/nervous-ravens-smash.md | 5 +++++ .changeset/seven-readers-drop.md | 14 ++++++++++++++ .changeset/twenty-mangos-clap.md | 5 +++++ 5 files changed, 34 insertions(+) create mode 100644 .changeset/famous-cups-clap.md create mode 100644 .changeset/hip-pears-shout.md create mode 100644 .changeset/nervous-ravens-smash.md create mode 100644 .changeset/seven-readers-drop.md create mode 100644 .changeset/twenty-mangos-clap.md diff --git a/.changeset/famous-cups-clap.md b/.changeset/famous-cups-clap.md new file mode 100644 index 0000000000..206aec9177 --- /dev/null +++ b/.changeset/famous-cups-clap.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-common': patch +--- + +`@beta` exports now replaced with `@public` exports diff --git a/.changeset/hip-pears-shout.md b/.changeset/hip-pears-shout.md new file mode 100644 index 0000000000..61cb7c52a0 --- /dev/null +++ b/.changeset/hip-pears-shout.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-common': patch +--- + +Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` diff --git a/.changeset/nervous-ravens-smash.md b/.changeset/nervous-ravens-smash.md new file mode 100644 index 0000000000..b9d7546d44 --- /dev/null +++ b/.changeset/nervous-ravens-smash.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-backend': patch +--- + +`RouterOptions` and `createRouter` now marked as public exports diff --git a/.changeset/seven-readers-drop.md b/.changeset/seven-readers-drop.md new file mode 100644 index 0000000000..174b8984e0 --- /dev/null +++ b/.changeset/seven-readers-drop.md @@ -0,0 +1,14 @@ +--- +'@backstage/plugin-search-backend-module-elasticsearch': patch +--- + +Additional types now exported publicly: + +- ElasticSearchAgentOptions +- ConcreteElasticSearchQuery +- ElasticSearchQueryTranslator +- ElasticSearchConnectionConstructor, +- ElasticSearchTransportConstructor, +- ElasticSearchNodeOptions, +- ElasticSearchOptions, +- ElasticSearchAuth, diff --git a/.changeset/twenty-mangos-clap.md b/.changeset/twenty-mangos-clap.md new file mode 100644 index 0000000000..5cb4284711 --- /dev/null +++ b/.changeset/twenty-mangos-clap.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-backend-node': patch +--- + +Replaced all `@beta` exports with `@public` exports From 6c42c1216441728267b93dbab895e36752490964 Mon Sep 17 00:00:00 2001 From: goenning Date: Thu, 2 Jun 2022 15:14:19 +0100 Subject: [PATCH 134/550] update docs Signed-off-by: goenning --- docs/features/kubernetes/installation.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/features/kubernetes/installation.md b/docs/features/kubernetes/installation.md index ec0355c7d8..3b0895dd23 100644 --- a/docs/features/kubernetes/installation.md +++ b/docs/features/kubernetes/installation.md @@ -33,10 +33,14 @@ const serviceEntityPage = ( {/* other tabs... */} - + ``` +**Notes:** + +- The optional `refreshIntervalMs` property on the `EntityKubernetesContent` defines the interval in which the content automatically refreshes, if not set this will default to 10 seconds. + That's it! But now, we need the Kubernetes Backend plugin for the frontend to work. From ed360f6bd2efe7bd21122a26968e396eb9d50f7c Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Thu, 2 Jun 2022 16:22:23 +0200 Subject: [PATCH 135/550] depend on the right version of @backstage/plugin-search-common Signed-off-by: Emma Indal --- plugins/catalog-common/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/catalog-common/package.json b/plugins/catalog-common/package.json index c53acd3dd9..f520a36c9b 100644 --- a/plugins/catalog-common/package.json +++ b/plugins/catalog-common/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.4" + "@backstage/plugin-search-common": "^0.3.5-next.0" }, "devDependencies": { "@backstage/cli": "^0.17.2-next.1" From 61fba6e50b31ee4559344ca53abaee3addd2b23a Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 2 Jun 2022 16:25:27 +0200 Subject: [PATCH 136/550] Limit concurrent local TechDocs builds. Signed-off-by: Eric Peterson --- .changeset/techdocs-everybody-to-the-limit.md | 5 +++ .../src/service/DocsSynchronizer.test.ts | 31 +++++++++++++++++++ .../src/service/DocsSynchronizer.ts | 7 ++++- 3 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 .changeset/techdocs-everybody-to-the-limit.md diff --git a/.changeset/techdocs-everybody-to-the-limit.md b/.changeset/techdocs-everybody-to-the-limit.md new file mode 100644 index 0000000000..9167838d03 --- /dev/null +++ b/.changeset/techdocs-everybody-to-the-limit.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs-backend': patch +--- + +In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. diff --git a/plugins/techdocs-backend/src/service/DocsSynchronizer.test.ts b/plugins/techdocs-backend/src/service/DocsSynchronizer.test.ts index fff35bedc0..0ab124c26d 100644 --- a/plugins/techdocs-backend/src/service/DocsSynchronizer.test.ts +++ b/plugins/techdocs-backend/src/service/DocsSynchronizer.test.ts @@ -159,6 +159,37 @@ describe('DocsSynchronizer', () => { expect(DocsBuilder.prototype.build).toBeCalledTimes(1); }); + it('should limit concurrent updates', async () => { + // Given a build implementation that runs long... + MockedDocsBuilder.prototype.build.mockImplementation( + () => new Promise(() => {}), + ); + (shouldCheckForUpdate as jest.Mock).mockReturnValue(true); + const entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + uid: '0', + name: 'test', + namespace: 'default', + }, + }; + + // When more than 10 syncs are attempted... + for (let i = 0; i < 12; i++) { + docsSynchronizer.doSync({ + responseHandler: mockResponseHandler, + entity, + preparers, + generators, + }); + } + + // Then still only 10 builds should have been triggered. + await new Promise(resolve => resolve()); + expect(DocsBuilder.prototype.build).toHaveBeenCalledTimes(10); + }); + it('should not check for an update too often', async () => { (shouldCheckForUpdate as jest.Mock).mockReturnValue(false); diff --git a/plugins/techdocs-backend/src/service/DocsSynchronizer.ts b/plugins/techdocs-backend/src/service/DocsSynchronizer.ts index 6c377381e0..647447a612 100644 --- a/plugins/techdocs-backend/src/service/DocsSynchronizer.ts +++ b/plugins/techdocs-backend/src/service/DocsSynchronizer.ts @@ -25,6 +25,7 @@ import { PublisherBase, } from '@backstage/plugin-techdocs-node'; import fetch from 'node-fetch'; +import pLimit, { Limit } from 'p-limit'; import { PassThrough } from 'stream'; import * as winston from 'winston'; import { TechDocsCache } from '../cache'; @@ -47,6 +48,7 @@ export class DocsSynchronizer { private readonly config: Config; private readonly scmIntegrations: ScmIntegrationRegistry; private readonly cache: TechDocsCache | undefined; + private readonly buildLimiter: Limit; constructor({ publisher, @@ -69,6 +71,9 @@ export class DocsSynchronizer { this.publisher = publisher; this.scmIntegrations = scmIntegrations; this.cache = cache; + + // Single host/process: limit concurrent builds up to 10 at a time. + this.buildLimiter = pLimit(10); } async doSync({ @@ -123,7 +128,7 @@ export class DocsSynchronizer { cache: this.cache, }); - const updated = await docsBuilder.build(); + const updated = await this.buildLimiter(() => docsBuilder.build()); if (!updated) { finish({ updated: false }); From cad881229d1bd66ace4409c28996237b49087c6e Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 14:36:21 +0000 Subject: [PATCH 137/550] chore(deps): update dependency puppeteer to v14.2.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 53c0b3461d..093cb1cd6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20877,9 +20877,9 @@ pupa@^2.1.1: escape-goat "^2.0.0" puppeteer@^14.0.0: - version "14.2.0" - resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.2.0.tgz#edcb37b2e83c1892e630a830dd3daea040b1cd50" - integrity sha512-JLHGePg1W3V+CShk6veNug+Ip2BoeZmbIbJFJqS/L5YK/DCWRkJZpJ+4OzNY5Mf+lYR9srKp5pXV84bcBWnX7w== + version "14.2.1" + resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.2.1.tgz#e343379061e0211b4c02d0c535883c26a39f825e" + integrity sha512-cIEsAbEbNYqHbkvdZY4+YSdxVwh4YFqOHSezuLpu46XAYlKkQeAMdJQ+mDAxg9v77gIn8PHJ6PlftIVsWKRACA== dependencies: cross-fetch "3.1.5" debug "4.3.4" From f9e8545aa9330235fc582410a28f6bb6176f9398 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 14:38:05 +0000 Subject: [PATCH 138/550] fix(deps): update dependency diff to v5.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 53c0b3461d..4cd9ef341d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5927,14 +5927,7 @@ "@types/ms" "*" "@types/diff@^5.0.0": - version "5.0.2" - resolved "https://registry.npmjs.org/@types/diff/-/diff-5.0.2.tgz#dd565e0086ccf8bc6522c6ebafd8a3125c91c12b" - integrity sha512-uw8eYMIReOwstQ0QKF0sICefSy8cNO/v7gOTiIy9SbwuHyEecJUm7qlgueOO5S1udZ5I/irVydHVwMchgzbKTg== - -"@types/docker-modem@*": - version "3.0.2" - resolved "https://registry.npmjs.org/@types/docker-modem/-/docker-modem-3.0.2.tgz#c49c902e17364fc724e050db5c1d2b298c6379d4" - integrity sha512-qC7prjoEYR2QEe6SmCVfB1x3rfcQtUr1n4x89+3e0wSTMQ/KYCyf+/RAA9n2tllkkNc6//JMUZePdFRiGIWfaQ== + version "5.1.0" dependencies: "@types/node" "*" "@types/ssh2" "*" From bf90af17e3c77eb15a7b84c7c22e84d4d78aabe8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 15:36:15 +0000 Subject: [PATCH 139/550] fix(deps): update dependency @graphql-tools/schema to v8.3.13 Signed-off-by: Renovate Bot --- yarn.lock | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index 442bf68f8b..093cb1cd6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5927,7 +5927,14 @@ "@types/ms" "*" "@types/diff@^5.0.0": - version "5.1.0" + version "5.0.2" + resolved "https://registry.npmjs.org/@types/diff/-/diff-5.0.2.tgz#dd565e0086ccf8bc6522c6ebafd8a3125c91c12b" + integrity sha512-uw8eYMIReOwstQ0QKF0sICefSy8cNO/v7gOTiIy9SbwuHyEecJUm7qlgueOO5S1udZ5I/irVydHVwMchgzbKTg== + +"@types/docker-modem@*": + version "3.0.2" + resolved "https://registry.npmjs.org/@types/docker-modem/-/docker-modem-3.0.2.tgz#c49c902e17364fc724e050db5c1d2b298c6379d4" + integrity sha512-qC7prjoEYR2QEe6SmCVfB1x3rfcQtUr1n4x89+3e0wSTMQ/KYCyf+/RAA9n2tllkkNc6//JMUZePdFRiGIWfaQ== dependencies: "@types/node" "*" "@types/ssh2" "*" From b1b1aae566d694220b86d2740807695aff2c666f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 15:37:01 +0000 Subject: [PATCH 140/550] fix(deps): update dependency @maxim_mazurok/gapi.client.calendar to v3.0.20220527 Signed-off-by: Renovate Bot --- yarn.lock | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index 442bf68f8b..d30b126a20 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4242,9 +4242,9 @@ react-is "^16.8.0 || ^17.0.0" "@maxim_mazurok/gapi.client.calendar@^3.0.20220408": - version "3.0.20220520" - resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220520.tgz#b79cecaa73bfc8a95ba03dcc1ce6a98f76af9d11" - integrity sha512-AfwT996ExOgjpVGyxWslOLPDvDx+gAmWQwywnljya3nBMuRdvfmJHbJu1r89G4MVkl/2hLvl8rGwyDhU1THYQA== + version "3.0.20220527" + resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220527.tgz#0fab1e9c874037d5aa02fadff25590f436768265" + integrity sha512-Yx+zwL8TSUySr7e1iuvUlPdobAxFzstGYQQwEfS54dHIoAuorOj4CMxL4g47H+45Z0fpER8NfvGFEHLkA9ECsA== dependencies: "@types/gapi.client" "*" @@ -5927,7 +5927,14 @@ "@types/ms" "*" "@types/diff@^5.0.0": - version "5.1.0" + version "5.0.2" + resolved "https://registry.npmjs.org/@types/diff/-/diff-5.0.2.tgz#dd565e0086ccf8bc6522c6ebafd8a3125c91c12b" + integrity sha512-uw8eYMIReOwstQ0QKF0sICefSy8cNO/v7gOTiIy9SbwuHyEecJUm7qlgueOO5S1udZ5I/irVydHVwMchgzbKTg== + +"@types/docker-modem@*": + version "3.0.2" + resolved "https://registry.npmjs.org/@types/docker-modem/-/docker-modem-3.0.2.tgz#c49c902e17364fc724e050db5c1d2b298c6379d4" + integrity sha512-qC7prjoEYR2QEe6SmCVfB1x3rfcQtUr1n4x89+3e0wSTMQ/KYCyf+/RAA9n2tllkkNc6//JMUZePdFRiGIWfaQ== dependencies: "@types/node" "*" "@types/ssh2" "*" From 3acdb139d42bcc3ee6906492b815a8eb58e389d2 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 15:38:05 +0000 Subject: [PATCH 141/550] fix(deps): update dependency eslint-plugin-react to v7.30.0 Signed-off-by: Renovate Bot --- yarn.lock | 205 +++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 174 insertions(+), 31 deletions(-) diff --git a/yarn.lock b/yarn.lock index 442bf68f8b..cf7e9a4c53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5927,7 +5927,14 @@ "@types/ms" "*" "@types/diff@^5.0.0": - version "5.1.0" + version "5.0.2" + resolved "https://registry.npmjs.org/@types/diff/-/diff-5.0.2.tgz#dd565e0086ccf8bc6522c6ebafd8a3125c91c12b" + integrity sha512-uw8eYMIReOwstQ0QKF0sICefSy8cNO/v7gOTiIy9SbwuHyEecJUm7qlgueOO5S1udZ5I/irVydHVwMchgzbKTg== + +"@types/docker-modem@*": + version "3.0.2" + resolved "https://registry.npmjs.org/@types/docker-modem/-/docker-modem-3.0.2.tgz#c49c902e17364fc724e050db5c1d2b298c6379d4" + integrity sha512-qC7prjoEYR2QEe6SmCVfB1x3rfcQtUr1n4x89+3e0wSTMQ/KYCyf+/RAA9n2tllkkNc6//JMUZePdFRiGIWfaQ== dependencies: "@types/node" "*" "@types/ssh2" "*" @@ -7901,6 +7908,17 @@ array-includes@^3.1.2, array-includes@^3.1.3, array-includes@^3.1.4: get-intrinsic "^1.1.1" is-string "^1.0.7" +array-includes@^3.1.5: + version "3.1.5" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" + integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.19.5" + get-intrinsic "^1.1.1" + is-string "^1.0.7" + array-union@^1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -7932,14 +7950,15 @@ array.prototype.flat@^1.2.5: define-properties "^1.1.3" es-abstract "^1.19.0" -array.prototype.flatmap@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" - integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== +array.prototype.flatmap@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f" + integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.0" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" arraybuffer.slice@~0.0.7: version "0.0.7" @@ -10973,6 +10992,14 @@ define-properties@^1.1.3: dependencies: object-keys "^1.0.12" +define-properties@^1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" + integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== + dependencies: + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + define-property@^0.2.5: version "0.2.5" resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" @@ -11651,11 +11678,47 @@ es-abstract@^1.17.0-next.1, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next string.prototype.trimstart "^1.0.4" unbox-primitive "^1.0.1" +es-abstract@^1.19.2, es-abstract@^1.19.5: + version "1.20.1" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" + integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + function.prototype.name "^1.1.5" + get-intrinsic "^1.1.1" + get-symbol-description "^1.0.0" + has "^1.0.3" + has-property-descriptors "^1.0.0" + has-symbols "^1.0.3" + internal-slot "^1.0.3" + is-callable "^1.2.4" + is-negative-zero "^2.0.2" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.2" + is-string "^1.0.7" + is-weakref "^1.0.2" + object-inspect "^1.12.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + regexp.prototype.flags "^1.4.3" + string.prototype.trimend "^1.0.5" + string.prototype.trimstart "^1.0.5" + unbox-primitive "^1.0.2" + es-module-lexer@^0.9.0, es-module-lexer@^0.9.3: version "0.9.3" resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-shim-unscopables@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== + dependencies: + has "^1.0.3" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -11975,24 +12038,24 @@ eslint-plugin-react-hooks@^4.3.0: integrity sha512-8k1gRt7D7h03kd+SAAlzXkQwWK22BnK6GKZG+FJA6BAGy22CFvl8kCIXKpVux0cCxMWDQUPqSok0LKaZ0aOcCw== eslint-plugin-react@^7.28.0: - version "7.29.4" - resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.29.4.tgz#4717de5227f55f3801a5fd51a16a4fa22b5914d2" - integrity sha512-CVCXajliVh509PcZYRFyu/BoUEz452+jtQJq2b3Bae4v3xBUWPLCmtmBM+ZinG4MzwmxJgJ2M5rMqhqLVn7MtQ== + version "7.30.0" + resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.30.0.tgz#8e7b1b2934b8426ac067a0febade1b13bd7064e3" + integrity sha512-RgwH7hjW48BleKsYyHK5vUAvxtE9SMPDKmcPRQgtRCYaZA0XQPt5FSkrU3nhz5ifzMZcA8opwmRJ2cmOO8tr5A== dependencies: - array-includes "^3.1.4" - array.prototype.flatmap "^1.2.5" + array-includes "^3.1.5" + array.prototype.flatmap "^1.3.0" doctrine "^2.1.0" estraverse "^5.3.0" jsx-ast-utils "^2.4.1 || ^3.0.0" minimatch "^3.1.2" object.entries "^1.1.5" object.fromentries "^2.0.5" - object.hasown "^1.1.0" + object.hasown "^1.1.1" object.values "^1.1.5" prop-types "^15.8.1" resolve "^2.0.0-next.3" semver "^6.3.0" - string.prototype.matchall "^4.0.6" + string.prototype.matchall "^4.0.7" eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" @@ -13143,11 +13206,26 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function.prototype.name@^1.1.5: + version "1.1.5" + resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" + integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.0" + functions-have-names "^1.2.2" + functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +functions-have-names@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + gauge@^3.0.0: version "3.0.2" resolved "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" @@ -13790,6 +13868,11 @@ has-bigints@^1.0.1: resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== +has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== + has-binary2@~1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz#7776ac627f3ea77250cfc332dab7ddf5e4f5d11d" @@ -13812,11 +13895,23 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-property-descriptors@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== + dependencies: + get-intrinsic "^1.1.1" + has-symbols@^1.0.1, has-symbols@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== +has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + has-tostringtag@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" @@ -14924,6 +15019,11 @@ is-negative-zero@^2.0.1: resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== +is-negative-zero@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== + is-node-process@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/is-node-process/-/is-node-process-1.0.1.tgz#4fc7ac3a91e8aac58175fe0578abbc56f2831b23" @@ -15086,6 +15186,13 @@ is-shared-array-buffer@^1.0.1: resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== +is-shared-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== + dependencies: + call-bind "^1.0.2" + is-ssh@^1.3.0: version "1.3.1" resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz#f349a8cadd24e65298037a522cf7520f2e81a0f3" @@ -15183,6 +15290,13 @@ is-weakref@^1.0.1: dependencies: call-bind "^1.0.0" +is-weakref@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== + dependencies: + call-bind "^1.0.2" + is-window@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" @@ -18998,7 +19112,7 @@ object-inspect@^1.11.0, object-inspect@^1.9.0: resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== -object-inspect@^1.12.2: +object-inspect@^1.12.0, object-inspect@^1.12.2: version "1.12.2" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== @@ -19051,13 +19165,13 @@ object.getownpropertydescriptors@^2.0.3: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" -object.hasown@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" - integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== +object.hasown@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" + integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A== dependencies: - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" object.pick@^1.3.0: version "1.3.0" @@ -21794,13 +21908,14 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.3.1: - version "1.4.1" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" - integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== +regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: + version "1.4.3" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" + integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" + functions-have-names "^1.2.2" regexpp@^3.2.0: version "3.2.0" @@ -23473,18 +23588,18 @@ string-width@^5.0.0: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -string.prototype.matchall@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" - integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== +string.prototype.matchall@^4.0.7: + version "4.0.7" + resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" + integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" es-abstract "^1.19.1" get-intrinsic "^1.1.1" - has-symbols "^1.0.2" + has-symbols "^1.0.3" internal-slot "^1.0.3" - regexp.prototype.flags "^1.3.1" + regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" string.prototype.trimend@^1.0.4: @@ -23495,6 +23610,15 @@ string.prototype.trimend@^1.0.4: call-bind "^1.0.2" define-properties "^1.1.3" +string.prototype.trimend@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" + integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.19.5" + string.prototype.trimstart@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" @@ -23503,6 +23627,15 @@ string.prototype.trimstart@^1.0.4: call-bind "^1.0.2" define-properties "^1.1.3" +string.prototype.trimstart@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" + integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.19.5" + string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -24659,6 +24792,16 @@ unbox-primitive@^1.0.1: has-symbols "^1.0.2" which-boxed-primitive "^1.0.2" +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== + dependencies: + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" + which-boxed-primitive "^1.0.2" + unbzip2-stream@1.4.3: version "1.4.3" resolved "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz#b0da04c4371311df771cdc215e87f2130991ace7" From 1cf9caecd69e3a2b5ecebb54cb040841384affe3 Mon Sep 17 00:00:00 2001 From: Juan Pablo Garcia Ripa Date: Thu, 2 Jun 2022 17:38:58 +0200 Subject: [PATCH 142/550] fix deprecate message Signed-off-by: Juan Pablo Garcia Ripa --- .changeset/tidy-pens-work.md | 5 +++++ .../src/layout/Sidebar/SidebarOpenStateContext.tsx | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/tidy-pens-work.md diff --git a/.changeset/tidy-pens-work.md b/.changeset/tidy-pens-work.md new file mode 100644 index 0000000000..d2199b86aa --- /dev/null +++ b/.changeset/tidy-pens-work.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-components': patch +--- + +fix Sidebar Contexts deprecation message diff --git a/packages/core-components/src/layout/Sidebar/SidebarOpenStateContext.tsx b/packages/core-components/src/layout/Sidebar/SidebarOpenStateContext.tsx index 635306959a..7cb0e5b2c3 100644 --- a/packages/core-components/src/layout/Sidebar/SidebarOpenStateContext.tsx +++ b/packages/core-components/src/layout/Sidebar/SidebarOpenStateContext.tsx @@ -59,7 +59,7 @@ const defaultSidebarOpenStateContext = { * Context whether the `Sidebar` is open * * @public @deprecated - * Use `` + `useSidebar()` instead. + * Use `` + `useSidebarOpenState()` instead. */ export const LegacySidebarContext = createContext( defaultSidebarOpenStateContext, From f861e33eaacb7f445619152a3879bbc701f026e9 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 16:33:21 +0000 Subject: [PATCH 143/550] fix(deps): update dependency graphiql to v1.9.4 Signed-off-by: Renovate Bot --- yarn.lock | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/yarn.lock b/yarn.lock index 093cb1cd6b..68e3ada076 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2271,10 +2271,23 @@ uuid "^8.0.0" xdg-basedir "^4.0.0" -"@graphiql/toolkit@^0.4.5": - version "0.4.5" - resolved "https://registry.npmjs.org/@graphiql/toolkit/-/toolkit-0.4.5.tgz#9fb5020444712562eae9581724695c235f610836" - integrity sha512-QXuuMSSK/0GfBS7tltrGZdyhIvm6oe9TK4VW9pfa8dALYttpzyJ64Q4Sx9I1Ng++yOMJWziM/ksa043zkNHsjQ== +"@graphiql/react@^0.2.1": + version "0.2.1" + resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.2.1.tgz#e7309e6acea07cfdaa1333cdb7688b06046dcc09" + integrity sha512-Ceuv4p++WWHx++wnBgu1eIoRmQbuESfOR76HgRSHlMsR8Vj4mgixbHANOmU2F3H1dc3uKObUVF+Cjcs+f7V08g== + dependencies: + "@graphiql/toolkit" "^0.6.0" + codemirror "^5.65.3" + codemirror-graphql "^1.3.0" + copy-to-clipboard "^3.2.0" + escape-html "^1.0.3" + graphql-language-service "^5.0.4" + markdown-it "^12.2.0" + +"@graphiql/toolkit@^0.6.0": + version "0.6.0" + resolved "https://registry.npmjs.org/@graphiql/toolkit/-/toolkit-0.6.0.tgz#e508e58f305a976222f6adb84ab0ec748c26ab60" + integrity sha512-mbAwbt4lw2bFp9QW3NLVmh/r/ymczlcqvXk1HfvuC7Ma4h0yzrJiQauJyh1/gF5kjqevcRSquvP/YQJSvh1u6w== dependencies: "@n1ru4l/push-pull-async-iterable-iterator" "^3.1.0" meros "^1.1.4" @@ -13626,16 +13639,13 @@ grapheme-splitter@^1.0.4: integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== graphiql@^1.5.12, graphiql@^1.8.8: - version "1.8.10" - resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.8.10.tgz#a45e80a896b802f9591a89aa9af90fdafe44d5d8" - integrity sha512-ZYGsBzJz3OWh30eRr5D07ETHLqUEgfOddKdMLHgivLRmWVG6paRNOPzgwFyXy49JwL6gTzVmZoHabml7yySCnA== + version "1.9.4" + resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.4.tgz#ad020c33f1941954fa2c83b458119a6520c4591f" + integrity sha512-fDzmuSIJHYJAY/SyThEi4qXz8KIgy9/2s/7jOarhWDiPI5l/jYGDQSgxtM3KKhhKwuRaQrG4MjcguBhUvfu+lw== dependencies: - "@graphiql/toolkit" "^0.4.5" - codemirror "^5.65.3" - codemirror-graphql "^1.3.0" - copy-to-clipboard "^3.2.0" + "@graphiql/react" "^0.2.1" + "@graphiql/toolkit" "^0.6.0" entities "^2.0.0" - escape-html "^1.0.3" graphql-language-service "^5.0.4" markdown-it "^12.2.0" set-value "^4.1.0" From 560b97968a91556924f29aff78296b5cc04c15b8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 16:57:46 +0000 Subject: [PATCH 144/550] fix(deps): update dependency graphql-ws to v5.8.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 67def2e545..04543dea03 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13780,9 +13780,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql-ws@^5.4.1: - version "5.5.5" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.5.5.tgz#f375486d3f196e2a2527b503644693ae3a8670a9" - integrity sha512-hvyIS71vs4Tu/yUYHPvGXsTgo0t3arU820+lT5VjZS2go0ewp2LqyCgxEN56CzOG7Iys52eRhHBiD1gGRdiQtw== + version "5.8.2" + resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" + integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== graphql@^15.5.1: version "15.8.0" From c4653b252eed6a896f9ebbfdfd6f71749af9fc14 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 17:11:30 +0000 Subject: [PATCH 145/550] fix(deps): update dependency helmet to v5.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 67def2e545..58a3de4b56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14038,9 +14038,9 @@ headers-utils@^3.0.2: integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== helmet@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/helmet/-/helmet-5.0.2.tgz#3264ec6bab96c82deaf65e3403c369424cb2366c" - integrity sha512-QWlwUZZ8BtlvwYVTSDTBChGf8EOcQ2LkGMnQJxSzD1mUu8CCjXJZq/BXP8eWw4kikRnzlhtYo3lCk0ucmYA3Vg== + version "5.1.0" + resolved "https://registry.npmjs.org/helmet/-/helmet-5.1.0.tgz#e98a5d4bf89ab8119c856018a3bcc82addadcd47" + integrity sha512-klsunXs8rgNSZoaUrNeuCiWUxyc+wzucnEnFejUg3/A+CaF589k9qepLZZ1Jehnzig7YbD4hEuscGXuBY3fq+g== hexoid@1.0.0: version "1.0.0" From 137a5175428ec4c0ff1db9920131fff50869af50 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 17:35:22 +0000 Subject: [PATCH 146/550] fix(deps): update dependency keyv to v4.3.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d948a59ba5..36cbfeb13b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16543,9 +16543,9 @@ keyv@^3.0.0: json-buffer "3.0.0" keyv@^4.0.0, keyv@^4.0.3: - version "4.2.9" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.2.9.tgz#b8f25d4968b583ed7f07fceadab646d4baadad6b" - integrity sha512-vqRBrN4xQHud7UMAGzGGFbt96MtGB9pb0OOg8Dhtq5RtiswCb1pCFq878iqC4hdeOP6eDPnCoFxA+2TXx427Ow== + version "4.3.0" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.3.0.tgz#b4352e0e4fe7c94111947d6738a6d3fe7903027c" + integrity sha512-C30Un9+63J0CsR7Wka5quXKqYZsT6dcRQ2aOwGcSc3RiQ4HGWpTAHlCA+puNfw2jA/s11EsxA1nCXgZRuRKMQQ== dependencies: compress-brotli "^1.3.8" json-buffer "3.0.1" From 1a33e8b2872ac30634751cbf42bbcc01f7083152 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 18:07:45 +0000 Subject: [PATCH 147/550] fix(deps): update dependency minimatch to v5.1.0 Signed-off-by: Renovate Bot --- .changeset/renovate-cd4546d.md | 5 +++++ packages/cli/package.json | 2 +- yarn.lock | 15 +++++++++++---- 3 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 .changeset/renovate-cd4546d.md diff --git a/.changeset/renovate-cd4546d.md b/.changeset/renovate-cd4546d.md new file mode 100644 index 0000000000..73c890d53d --- /dev/null +++ b/.changeset/renovate-cd4546d.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Updated dependency `minimatch` to `5.1.0`. diff --git a/packages/cli/package.json b/packages/cli/package.json index 09b0313ef8..ceb0e73da3 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -94,7 +94,7 @@ "json-schema": "^0.4.0", "lodash": "^4.17.21", "mini-css-extract-plugin": "^2.4.2", - "minimatch": "5.0.1", + "minimatch": "5.1.0", "node-fetch": "^2.6.7", "node-libs-browser": "^2.2.1", "npm-packlist": "^5.0.0", diff --git a/yarn.lock b/yarn.lock index c027b1543d..1396da4ff7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18211,10 +18211,10 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.0.1, minimatch@^5.0.0, minimatch@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== +minimatch@5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" + integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== dependencies: brace-expansion "^2.0.1" @@ -18232,6 +18232,13 @@ minimatch@^4.0.0: dependencies: brace-expansion "^1.1.7" +minimatch@^5.0.0, minimatch@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" + integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0, minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" From a1f42e577a5b89038ed2682bee4fa2c5ca9cd381 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 18:08:29 +0000 Subject: [PATCH 148/550] fix(deps): update dependency npm-packlist to v5.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c027b1543d..6bbd384edc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18963,9 +18963,9 @@ npm-packlist@^3.0.0: npm-normalize-package-bin "^1.0.1" npm-packlist@^5.0.0: - version "5.0.3" - resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.0.3.tgz#0aec03bc2d6d488ca71396d7afb463563c3274f7" - integrity sha512-KuSbzgejxdsAWbNNyEs8EsyDHsO+nJF6k+9WuWzFbSNh5tFHs4lDApXw7kntKpuehfp8lKRzJkMtz0+WmGvTIw== + version "5.1.0" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.0.tgz#f3fd52903a021009913a133732022132eb355ce7" + integrity sha512-a04sqF6FbkyOAFA19AA0e94gS7Et5T2/IMj3VOT9nOF2RaRdVPQ1Q17Fb/HaDRFs+gbC7HOmhVZ29adpWgmDZg== dependencies: glob "^8.0.1" ignore-walk "^5.0.1" From f34507aa4df0f67ccce611af8dda70fd58ce3b7f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 19:02:51 +0000 Subject: [PATCH 149/550] fix(deps): update dependency aws-sdk to v2.1148.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e57f73f676..98e87306bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8110,9 +8110,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1147.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1147.0.tgz#5d279abee153a0627ae502cdbb57d321388b534c" - integrity sha512-+CO8FnBgqHgxMJH0s8fv17Xqrh6V0lJ8zKOt3lHU+8QTiSoX5aLgr8zwmi0m7msHtyVeDWh50kiWAlvUs7U8Gw== + version "2.1148.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1148.0.tgz#028211e724aee5118223eb5fa65495eaae4b5083" + integrity sha512-FUYAyveKmS5eqIiGQgrGVsLZwwtI+K6S6Gz8oJf56pgypZCo9dV+cXO4aaS+vN0+LSmGh6dSKc6G8h8FYASIJg== dependencies: buffer "4.9.2" events "1.1.1" From bc6fb57094ce3e22a14f7cb284689ae6ecc5e673 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 19:04:08 +0000 Subject: [PATCH 150/550] fix(deps): update dependency passport to ^0.6.0 Signed-off-by: Renovate Bot --- .changeset/renovate-c8fbb1e.md | 5 +++++ plugins/auth-backend/package.json | 2 +- yarn.lock | 11 ++++++----- 3 files changed, 12 insertions(+), 6 deletions(-) create mode 100644 .changeset/renovate-c8fbb1e.md diff --git a/.changeset/renovate-c8fbb1e.md b/.changeset/renovate-c8fbb1e.md new file mode 100644 index 0000000000..f60d352577 --- /dev/null +++ b/.changeset/renovate-c8fbb1e.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-auth-backend': patch +--- + +Updated dependency `passport` to `^0.6.0`. diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index 5462beb6a8..7ab1348a34 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -61,7 +61,7 @@ "node-fetch": "^2.6.7", "node-cache": "^5.1.2", "openid-client": "^5.1.3", - "passport": "^0.5.2", + "passport": "^0.6.0", "passport-bitbucket-oauth2": "^0.1.2", "passport-github2": "^0.1.12", "passport-gitlab2": "^5.0.0", diff --git a/yarn.lock b/yarn.lock index e57f73f676..66d2d388f4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19936,13 +19936,14 @@ passport-strategy@1.x.x, passport-strategy@^1.0.0: resolved "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz#b5539aa8fc225a3d1ad179476ddf236b440f52e4" integrity sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ= -passport@^0.5.2: - version "0.5.3" - resolved "https://registry.npmjs.org/passport/-/passport-0.5.3.tgz#e69b46c9bb3290660bc2b3299330d78710b198cc" - integrity sha512-gGc+70h4gGdBWNsR3FuV3byLDY6KBTJAIExGFXTpQaYfbbcHCBlRRKx7RBQSpqEqc5Hh2qVzRs7ssvSfOpkUEA== +passport@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz#e869579fab465b5c0b291e841e6cc95c005fac9d" + integrity sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug== dependencies: passport-strategy "1.x.x" pause "0.0.1" + utils-merge "^1.0.1" path-browserify@0.0.1: version "0.0.1" @@ -25225,7 +25226,7 @@ utila@~0.4: resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= -utils-merge@1.0.1, utils-merge@1.x.x: +utils-merge@1.0.1, utils-merge@1.x.x, utils-merge@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= From 8bf26df9ad19e06856861a740ca17fed9d86affb Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 2 Jun 2022 13:01:35 -0700 Subject: [PATCH 151/550] fix: address review comments Signed-off-by: Isaiah Thiessen --- packages/app/package.json | 2 +- plugins/dynatrace/package.json | 2 +- plugins/dynatrace/src/api/DynatraceApi.ts | 10 ++++++---- plugins/dynatrace/src/api/DynatraceClient.ts | 19 ++++++++++++++----- plugins/dynatrace/src/api/index.ts | 6 +++++- .../Problems/ProblemStatus/ProblemStatus.tsx | 4 ++-- .../ProblemsList/ProblemsList.test.tsx | 8 +++++--- .../Problems/ProblemsList/ProblemsList.tsx | 3 +-- .../Problems/ProblemsTable/ProblemsTable.tsx | 19 +++++++++++-------- plugins/dynatrace/src/plugin.ts | 5 ++++- 10 files changed, 50 insertions(+), 28 deletions(-) diff --git a/packages/app/package.json b/packages/app/package.json index 814b671c95..ecbcaf4961 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -29,7 +29,7 @@ "@backstage/plugin-cloudbuild": "^0.3.6-next.1", "@backstage/plugin-code-coverage": "^0.1.33-next.1", "@backstage/plugin-cost-insights": "^0.11.28-next.1", - "@backstage/plugin-dynatrace": "^0.1.0", + "@backstage/plugin-dynatrace": "^0.0.0", "@backstage/plugin-explore": "^0.3.37-next.1", "@backstage/plugin-gcalendar": "^0.3.2-next.1", "@backstage/plugin-gcp-projects": "^0.3.25-next.1", diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index 5ff08529e6..570dfa1a40 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-dynatrace", - "version": "0.1.0", + "version": "0.0.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", diff --git a/plugins/dynatrace/src/api/DynatraceApi.ts b/plugins/dynatrace/src/api/DynatraceApi.ts index 40676e3d09..1865b20363 100644 --- a/plugins/dynatrace/src/api/DynatraceApi.ts +++ b/plugins/dynatrace/src/api/DynatraceApi.ts @@ -23,7 +23,7 @@ export type DynatraceEntity = { name: string; }; -export type Problem = { +export type DynatraceProblem = { problemId: string; impactLevel: string; status: string; @@ -35,8 +35,8 @@ export type Problem = { affectedEntities: Array; }; -export interface Problems { - problems: Array; +export interface DynatraceProblems { + problems: Array; } export const dynatraceApiRef = createApiRef({ @@ -44,5 +44,7 @@ export const dynatraceApiRef = createApiRef({ }); export type DynatraceApi = { - getProblems(dynatraceEntityId: string): Promise; + getDynatraceProblems( + dynatraceEntityId: string, + ): Promise; }; diff --git a/plugins/dynatrace/src/api/DynatraceClient.ts b/plugins/dynatrace/src/api/DynatraceClient.ts index 157e840749..ae352106d0 100644 --- a/plugins/dynatrace/src/api/DynatraceClient.ts +++ b/plugins/dynatrace/src/api/DynatraceClient.ts @@ -13,23 +13,30 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import fetch from 'cross-fetch'; -import { Problems, DynatraceApi } from './DynatraceApi'; -import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; +import { DynatraceProblems, DynatraceApi } from './DynatraceApi'; +import { + DiscoveryApi, + IdentityApi, + FetchApi, +} from '@backstage/core-plugin-api'; export class DynatraceClient implements DynatraceApi { discoveryApi: DiscoveryApi; identityApi: IdentityApi; + fetchApi: FetchApi; constructor({ discoveryApi, identityApi, + fetchApi, }: { discoveryApi: DiscoveryApi; identityApi: IdentityApi; + fetchApi: FetchApi; }) { this.discoveryApi = discoveryApi; this.identityApi = identityApi; + this.fetchApi = fetchApi; } private async callApi( @@ -39,7 +46,7 @@ export class DynatraceClient implements DynatraceApi { const { token: idToken } = await this.identityApi.getCredentials(); const apiUrl = `${await this.discoveryApi.getBaseUrl('proxy')}/dynatrace`; - const response = await fetch( + const response = await this.fetchApi.fetch( `${apiUrl}/${path}?${new URLSearchParams(query).toString()}`, { headers: { @@ -54,7 +61,9 @@ export class DynatraceClient implements DynatraceApi { return undefined; } - async getProblems(dynatraceEntityId: string): Promise { + async getDynatraceProblems( + dynatraceEntityId: string, + ): Promise { if (!dynatraceEntityId) { return undefined; } diff --git a/plugins/dynatrace/src/api/index.ts b/plugins/dynatrace/src/api/index.ts index 3924f373b5..97e33c9281 100644 --- a/plugins/dynatrace/src/api/index.ts +++ b/plugins/dynatrace/src/api/index.ts @@ -13,6 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export type { Problems, Problem, DynatraceEntity } from './DynatraceApi'; +export type { + DynatraceProblems, + DynatraceProblem, + DynatraceEntity, +} from './DynatraceApi'; export { dynatraceApiRef } from './DynatraceApi'; export { DynatraceClient } from './DynatraceClient'; diff --git a/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx index 5605be6e44..2ed861963a 100644 --- a/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx +++ b/plugins/dynatrace/src/components/Problems/ProblemStatus/ProblemStatus.tsx @@ -14,10 +14,10 @@ * limitations under the License. */ import React from 'react'; -import { Problem } from '../../../api/DynatraceApi'; +import { DynatraceProblem } from '../../../api/DynatraceApi'; import { StatusError, StatusOK } from '@backstage/core-components'; -export const ProblemStatus = ({ status }: Partial) => { +export const ProblemStatus = ({ status }: Partial) => { switch (status?.toLocaleLowerCase()) { case 'open': return ( diff --git a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx index dfeb311c33..1249f4e886 100644 --- a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx +++ b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.test.tsx @@ -22,7 +22,7 @@ import { ApiProvider, ConfigReader } from '@backstage/core-app-api'; import { configApiRef } from '@backstage/core-plugin-api'; const mockDynatraceApi = { - getProblems: jest.fn(), + getDynatraceProblems: jest.fn(), }; const apis = TestApiRegistry.from( [dynatraceApiRef, mockDynatraceApi], @@ -31,7 +31,9 @@ const apis = TestApiRegistry.from( describe('ProblemStatus', () => { it('renders a table with problem data', async () => { - mockDynatraceApi.getProblems = jest.fn().mockResolvedValue({ problems }); + mockDynatraceApi.getDynatraceProblems = jest + .fn() + .mockResolvedValue({ problems }); const rendered = await renderInTestApp( @@ -40,7 +42,7 @@ describe('ProblemStatus', () => { expect(await rendered.findByText('example-service')).toBeInTheDocument(); }); it('renders "nothing to report :)" if no problems are found', async () => { - mockDynatraceApi.getProblems = jest.fn().mockResolvedValue({}); + mockDynatraceApi.getDynatraceProblems = jest.fn().mockResolvedValue({}); const rendered = await renderInTestApp( diff --git a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx index b12b8fe41a..ac69abf93e 100644 --- a/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx +++ b/plugins/dynatrace/src/components/Problems/ProblemsList/ProblemsList.tsx @@ -29,8 +29,7 @@ export const ProblemsList = (props: ProblemsListProps) => { const { dynatraceEntityId } = props; const dynatraceApi = useApi(dynatraceApiRef); const { value, loading, error } = useAsync(async () => { - const r = await dynatraceApi.getProblems(dynatraceEntityId); - return r; + return dynatraceApi.getDynatraceProblems(dynatraceEntityId); }, [dynatraceApi, dynatraceEntityId]); const problems = value?.problems; diff --git a/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx index ba1a2e19d9..8e3d330c37 100644 --- a/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx +++ b/plugins/dynatrace/src/components/Problems/ProblemsTable/ProblemsTable.tsx @@ -15,14 +15,14 @@ */ import React from 'react'; import { Table, TableColumn } from '@backstage/core-components'; -import { Problem } from '../../../api/DynatraceApi'; +import { DynatraceProblem } from '../../../api/DynatraceApi'; import { ProblemStatus } from '../ProblemStatus'; import { configApiRef } from '@backstage/core-plugin-api'; import { useApi } from '@backstage/core-plugin-api'; import { Link } from '@material-ui/core'; type ProblemsTableProps = { - problems: Problem[]; + problems: DynatraceProblem[]; }; export const ProblemsTable = ({ problems }: ProblemsTableProps) => { @@ -32,7 +32,7 @@ export const ProblemsTable = ({ problems }: ProblemsTableProps) => { { title: 'Title', field: 'title', - render: (row: Partial) => ( + render: (row: Partial) => ( @@ -43,29 +43,32 @@ export const ProblemsTable = ({ problems }: ProblemsTableProps) => { { title: 'Status', field: 'status', - render: (row: Partial) => , + render: (row: Partial) => ( + + ), }, { title: 'Severity', field: 'severityLevel' }, { title: 'Root Cause', field: 'rootCauseEntity', - render: (row: Partial) => row.rootCauseEntity?.name, + render: (row: Partial) => row.rootCauseEntity?.name, }, { title: 'Affected', field: 'affectedEntities', - render: (row: Partial) => row.affectedEntities?.map(e => e.name), + render: (row: Partial) => + row.affectedEntities?.map(e => e.name), }, { title: 'Start Time', field: 'startTime', - render: (row: Partial) => + render: (row: Partial) => new Date(row.startTime || 0).toString(), }, { title: 'End Time', field: 'endTime', - render: (row: Partial) => + render: (row: Partial) => row.endTime === -1 ? 'ongoing' : new Date(row.endTime || 0).toString(), }, ]; diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts index 74e5544341..2bf1353e13 100644 --- a/plugins/dynatrace/src/plugin.ts +++ b/plugins/dynatrace/src/plugin.ts @@ -19,6 +19,7 @@ import { createPlugin, discoveryApiRef, identityApiRef, + fetchApiRef, createRoutableExtension, } from '@backstage/core-plugin-api'; @@ -38,11 +39,13 @@ export const dynatracePlugin = createPlugin({ deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef, + fetchApi: fetchApiRef, }, - factory: ({ discoveryApi, identityApi }) => + factory: ({ discoveryApi, identityApi, fetchApi }) => new DynatraceClient({ discoveryApi, identityApi, + fetchApi, }), }), ], From f7ca7a56270eab3c62cb0554b5ce012989668583 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 2 Jun 2022 13:09:44 -0700 Subject: [PATCH 152/550] docs: add api report Signed-off-by: Isaiah Thiessen --- .changeset/many-yaks-occur.md | 2 +- microsite/data/plugins/dynatrace.yaml | 2 +- plugins/dynatrace/api-report.md | 33 +++++++++++++++++++++++++++ 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 plugins/dynatrace/api-report.md diff --git a/.changeset/many-yaks-occur.md b/.changeset/many-yaks-occur.md index d4535c4913..d8f617bf11 100644 --- a/.changeset/many-yaks-occur.md +++ b/.changeset/many-yaks-occur.md @@ -2,4 +2,4 @@ '@backstage/plugin-dynatrace': minor --- -Adds dynatrace plugin +Adds Dynatrace plugin diff --git a/microsite/data/plugins/dynatrace.yaml b/microsite/data/plugins/dynatrace.yaml index 30629928b3..a9843ab1d8 100644 --- a/microsite/data/plugins/dynatrace.yaml +++ b/microsite/data/plugins/dynatrace.yaml @@ -6,7 +6,7 @@ category: Monitoring description: View monitoring info from dynatrace for services in your software catalog. documentation: https://github.com/backstage/backstage/tree/master/plugins/dynatrace iconUrl: img/dynatrace.svg -npmPackageName: "@backstage/backstage-plugin-dynatrace" +npmPackageName: "@backstage/plugin-dynatrace" tags: - dynatrace - monitoring diff --git a/plugins/dynatrace/api-report.md b/plugins/dynatrace/api-report.md new file mode 100644 index 0000000000..c1647650f8 --- /dev/null +++ b/plugins/dynatrace/api-report.md @@ -0,0 +1,33 @@ +## API Report File for "@backstage/plugin-dynatrace" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +/// + +import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { Entity } from '@backstage/catalog-model'; +import { RouteRef } from '@backstage/core-plugin-api'; + +// Warning: (ae-missing-release-tag) "dynatracePlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const dynatracePlugin: BackstagePlugin< + { + root: RouteRef; + }, + {} +>; + +// Warning: (ae-missing-release-tag) "DynatraceTab" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const DynatraceTab: () => JSX.Element; + +// Warning: (ae-missing-release-tag) "isDynatraceAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const isDynatraceAvailable: (entity: Entity) => boolean; + +// (No @packageDocumentation comment for this package) +``` From 70a464704f0332f8365bd484c49bd3aa95be3489 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 2 Jun 2022 13:27:54 -0700 Subject: [PATCH 153/550] fix: add d/Dynatrace to vale accepted vocab Signed-off-by: Isaiah Thiessen --- .github/vale/Vocab/Backstage/accept.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/vale/Vocab/Backstage/accept.txt b/.github/vale/Vocab/Backstage/accept.txt index 7631640199..cb364d43dd 100644 --- a/.github/vale/Vocab/Backstage/accept.txt +++ b/.github/vale/Vocab/Backstage/accept.txt @@ -85,6 +85,8 @@ dockerfiles Dockerize dockerode Docusaurus +dynatrace +Dynatrace ecco env Env From a396fce1b1f447dc3f09f7cb9ccf08ec24a5e8ec Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 2 Jun 2022 13:36:43 -0700 Subject: [PATCH 154/550] fix: prettier, vale spelling issues Signed-off-by: Isaiah Thiessen --- app-config.yaml | 2 +- microsite/data/plugins/dynatrace.yaml | 6 +++--- plugins/dynatrace/README.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index 63181b091d..d95553f12d 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -118,7 +118,7 @@ proxy: '/dynatrace': target: https://your.dynatrace.instance.com/api/v2 headers: - Authorization: "Api-Token ${DYNATRACE_ACCESS_TOKEN}" + Authorization: 'Api-Token ${DYNATRACE_ACCESS_TOKEN}' organization: name: My Company diff --git a/microsite/data/plugins/dynatrace.yaml b/microsite/data/plugins/dynatrace.yaml index a9843ab1d8..3ab85ae1eb 100644 --- a/microsite/data/plugins/dynatrace.yaml +++ b/microsite/data/plugins/dynatrace.yaml @@ -1,12 +1,12 @@ --- title: Dynatrace -author: "TELUS" -authorUrl: "https://github.com/telus" +author: TELUS +authorUrl: https://github.com/telus category: Monitoring description: View monitoring info from dynatrace for services in your software catalog. documentation: https://github.com/backstage/backstage/tree/master/plugins/dynatrace iconUrl: img/dynatrace.svg -npmPackageName: "@backstage/plugin-dynatrace" +npmPackageName: '@backstage/plugin-dynatrace' tags: - dynatrace - monitoring diff --git a/plugins/dynatrace/README.md b/plugins/dynatrace/README.md index ea6f8e8a07..150c9768af 100644 --- a/plugins/dynatrace/README.md +++ b/plugins/dynatrace/README.md @@ -49,7 +49,7 @@ metadata: # [...] ``` -The `DYNATRACE_ENTITY_ID` can be found in Dynatrace by browsing to the entity (a service, synthetic, frontend, workload, etc.). It will be located in the browser address bar in the `id` paramater and has the format `ENTITY_TYPE-ENTITY_ID`, where `ENTITY_TYPE` will be one of `SERVICE`, `SYNTHETIC_TEST`, or other, and `ENTITY_ID` will be a string of characters containing uppercase letters and numbers. +The `DYNATRACE_ENTITY_ID` can be found in Dynatrace by browsing to the entity (a service, synthetic, frontend, workload, etc.). It will be located in the browser address bar in the `id` parameter and has the format `ENTITY_TYPE-ENTITY_ID`, where `ENTITY_TYPE` will be one of `SERVICE`, `SYNTHETIC_TEST`, or other, and `ENTITY_ID` will be a string of characters containing uppercase letters and numbers. ## Disclaimer From 00fc3104e433f4a07989acf8034c5ca0b9e0bb87 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 21:59:39 +0000 Subject: [PATCH 155/550] fix(deps): update dependency react-use to v17.4.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 98e87306bd..364eeb9f1c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21523,9 +21523,9 @@ react-universal-interface@^0.6.2: integrity sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw== react-use@^17.2.4, react-use@^17.3.1, react-use@^17.3.2: - version "17.3.2" - resolved "https://registry.npmjs.org/react-use/-/react-use-17.3.2.tgz#448abf515f47c41c32455024db28167cb6e53be8" - integrity sha512-bj7OD0/1wL03KyWmzFXAFe425zziuTf7q8olwCYBfOeFHY1qfO1FAMjROQLsLZYwG4Rx63xAfb7XAbBrJsZmEw== + version "17.4.0" + resolved "https://registry.npmjs.org/react-use/-/react-use-17.4.0.tgz#cefef258b0a6c534a5c8021c2528ac6e1a4cdc6d" + integrity sha512-TgbNTCA33Wl7xzIJegn1HndB4qTS9u03QUwyNycUnXaweZkE4Kq2SB+Yoxx8qbshkZGYBDvUXbXWRUmQDcZZ/Q== dependencies: "@types/js-cookie" "^2.2.6" "@xobotyi/scrollbar-width" "^1.9.5" From 4fa1b2aa8e42ba7b5f9f124c978380151edff669 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 22:43:41 +0000 Subject: [PATCH 156/550] fix(deps): update dependency rollup to v2.75.5 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 364eeb9f1c..462480d23f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22426,9 +22426,9 @@ rollup@^0.63.4: "@types/node" "*" rollup@^2.60.2: - version "2.72.1" - resolved "https://registry.npmjs.org/rollup/-/rollup-2.72.1.tgz#861c94790537b10008f0ca0fbc60e631aabdd045" - integrity sha512-NTc5UGy/NWFGpSqF1lFY8z9Adri6uhyMLI6LvPAXdBKoPRFhIIiBUpt+Qg2awixqO3xvzSijjhnb4+QEZwJmxA== + version "2.75.5" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.75.5.tgz#7985c1962483235dd07966f09fdad5c5f89f16d0" + integrity sha512-JzNlJZDison3o2mOxVmb44Oz7t74EfSd1SQrplQk0wSaXV7uLQXtVdHbxlcT3w+8tZ1TL4r/eLfc7nAbz38BBA== optionalDependencies: fsevents "~2.3.2" From d4adee6ab9b798469000f4a6133410efcf609cc9 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 2 Jun 2022 23:43:39 +0000 Subject: [PATCH 157/550] fix(deps): update dependency typescript to v4.7.2 Signed-off-by: Renovate Bot --- cypress/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cypress/yarn.lock b/cypress/yarn.lock index c667cc6c03..d3d40aec51 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -1036,9 +1036,9 @@ type-fest@^0.21.3: integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== typescript@^4.1.3: - version "4.6.4" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz#caa78bbc3a59e6a5c510d35703f6a09877ce45e9" - integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== + version "4.7.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4" + integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A== universalify@^2.0.0: version "2.0.0" From 59c3063193aba793813be526d9db56a1243eaacb Mon Sep 17 00:00:00 2001 From: Danang Date: Fri, 3 Jun 2022 10:19:42 +1000 Subject: [PATCH 158/550] Add explicit any to the CustomRow props Signed-off-by: Danang --- packages/core-components/src/components/Table/Table.test.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core-components/src/components/Table/Table.test.tsx b/packages/core-components/src/components/Table/Table.test.tsx index 2582be8506..ff17409502 100644 --- a/packages/core-components/src/components/Table/Table.test.tsx +++ b/packages/core-components/src/components/Table/Table.test.tsx @@ -162,7 +162,7 @@ describe('
', () => { }); describe('with custom components', () => { - const CustomRow = ({ data }) => { + const CustomRow = ({ data }: any) => { return ( From 3c99f03e14ce081d554a2a267f3c2b6bcf1d71c5 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 00:33:45 +0000 Subject: [PATCH 159/550] fix(deps): update dependency webpack to v5.73.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 462480d23f..46e1521e29 100644 --- a/yarn.lock +++ b/yarn.lock @@ -25572,9 +25572,9 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5, webpack@^5.66.0: - version "5.72.1" - resolved "https://registry.npmjs.org/webpack/-/webpack-5.72.1.tgz#3500fc834b4e9ba573b9f430b2c0a61e1bb57d13" - integrity sha512-dXG5zXCLspQR4krZVR6QgajnZOjW2K/djHvdcRaDQvsjV9z9vaW6+ja5dZOYbqBBjF6kGXka/2ZyxNdc+8Jung== + version "5.73.0" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz#bbd17738f8a53ee5760ea2f59dce7f3431d35d38" + integrity sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA== dependencies: "@types/eslint-scope" "^3.7.3" "@types/estree" "^0.0.51" From eef361654be0d2f7dd4a7b9cf3982560c755f2eb Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 01:32:58 +0000 Subject: [PATCH 160/550] fix(deps): update dependency zod to v3.17.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 46e1521e29..1e6923428a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26290,9 +26290,9 @@ zip-stream@^4.1.0: readable-stream "^3.6.0" zod@^3.11.6, zod@^3.9.5: - version "3.16.0" - resolved "https://registry.npmjs.org/zod/-/zod-3.16.0.tgz#edfdbf77fcc9a5af13a2630a44bdda5b90e759b7" - integrity sha512-szrIkryADbTM+xBt2a1KoS2CJQXec4f9xG78bj5MJeEH/XqmmHpnO+fG3IE115AKBJak+2HrbxLZkc9mhdbDKA== + version "3.17.3" + resolved "https://registry.npmjs.org/zod/-/zod-3.17.3.tgz#86abbc670ff0063a4588d85a4dcc917d6e4af2ba" + integrity sha512-4oKP5zvG6GGbMlqBkI5FESOAweldEhSOZ6LI6cG+JzUT7ofj1ZOC0PJudpQOpT1iqOFpYYtX5Pw0+o403y4bcg== zustand@3.6.9: version "3.6.9" From 7f5585b050c7ce99a6763d9f4e9f9c10e07d850c Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 03:02:47 +0000 Subject: [PATCH 161/550] fix(deps): update typescript-eslint monorepo to v5.27.0 Signed-off-by: Renovate Bot --- yarn.lock | 126 ++++++++++++++++++++---------------------------------- 1 file changed, 46 insertions(+), 80 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1e6923428a..3967a8a299 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6999,13 +6999,13 @@ integrity sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw== "@typescript-eslint/eslint-plugin@^5.9.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.24.0.tgz#59f9ed21fc4490444b75b250e4ce81e4b7bba18f" - integrity sha512-6bqFGk6wa9+6RrU++eLknKyDqXU1Oc8nyoLu5a1fU17PNRJd9UBr56rMF7c4DRaRtnarlkQ4jwxUbvBo8cNlpw== + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.27.0.tgz#23d82a4f21aaafd8f69dbab7e716323bb6695cc8" + integrity sha512-DDrIA7GXtmHXr1VCcx9HivA39eprYBIFxbQEHI6NyraRDxCGpxAFiYQAT/1Y0vh1C+o2vfBiy4IuPoXxtTZCAQ== dependencies: - "@typescript-eslint/scope-manager" "5.24.0" - "@typescript-eslint/type-utils" "5.24.0" - "@typescript-eslint/utils" "5.24.0" + "@typescript-eslint/scope-manager" "5.27.0" + "@typescript-eslint/type-utils" "5.27.0" + "@typescript-eslint/utils" "5.27.0" debug "^4.3.4" functional-red-black-tree "^1.0.1" ignore "^5.2.0" @@ -7026,14 +7026,14 @@ eslint-utils "^3.0.0" "@typescript-eslint/parser@^5.9.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.23.0.tgz#443778e1afc9a8ff180f91b5e260ac3bec5e2de1" - integrity sha512-V06cYUkqcGqpFjb8ttVgzNF53tgbB/KoQT/iB++DOIExKmzI9vBJKjZKt/6FuV9c+zrDsvJKbJ2DOCYwX91cbw== + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.27.0.tgz#62bb091ed5cf9c7e126e80021bb563dcf36b6b12" + integrity sha512-8oGjQF46c52l7fMiPPvX4It3u3V3JipssqDfHQ2hcR0AeR8Zge+OYyKUCm5b70X72N1qXt0qgHenwN6Gc2SXZA== dependencies: - "@typescript-eslint/scope-manager" "5.23.0" - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/typescript-estree" "5.23.0" - debug "^4.3.2" + "@typescript-eslint/scope-manager" "5.27.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/typescript-estree" "5.27.0" + debug "^4.3.4" "@typescript-eslint/scope-manager@5.20.0": version "5.20.0" @@ -7043,21 +7043,13 @@ "@typescript-eslint/types" "5.20.0" "@typescript-eslint/visitor-keys" "5.20.0" -"@typescript-eslint/scope-manager@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.23.0.tgz#4305e61c2c8e3cfa3787d30f54e79430cc17ce1b" - integrity sha512-EhjaFELQHCRb5wTwlGsNMvzK9b8Oco4aYNleeDlNuL6qXWDF47ch4EhVNPh8Rdhf9tmqbN4sWDk/8g+Z/J8JVw== +"@typescript-eslint/scope-manager@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.27.0.tgz#a272178f613050ed62f51f69aae1e19e870a8bbb" + integrity sha512-VnykheBQ/sHd1Vt0LJ1JLrMH1GzHO+SzX6VTXuStISIsvRiurue/eRkTqSrG0CexHQgKG8shyJfR4o5VYioB9g== dependencies: - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/visitor-keys" "5.23.0" - -"@typescript-eslint/scope-manager@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.24.0.tgz#ac8c4d65064204b596909c204fe9b7e30c3f51b2" - integrity sha512-WpMWipcDzGmMzdT7NtTjRXFabx10WleLUGrJpuJLGaxSqpcyq5ACpKSD5VE40h2nz3melQ91aP4Du7lh9FliCA== - dependencies: - "@typescript-eslint/types" "5.24.0" - "@typescript-eslint/visitor-keys" "5.24.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/visitor-keys" "5.27.0" "@typescript-eslint/scope-manager@5.9.0": version "5.9.0" @@ -7067,12 +7059,12 @@ "@typescript-eslint/types" "5.9.0" "@typescript-eslint/visitor-keys" "5.9.0" -"@typescript-eslint/type-utils@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.24.0.tgz#aad47227e89cceec9175b1a67df69ebcd79f9421" - integrity sha512-uGi+sQiM6E5CeCZYBXiaIvIChBXru4LZ1tMoeKbh1Lze+8BO9syUG07594C4lvN2YPT4KVeIupOJkVI+9/DAmQ== +"@typescript-eslint/type-utils@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.27.0.tgz#36fd95f6747412251d79c795b586ba766cf0974b" + integrity sha512-vpTvRRchaf628Hb/Xzfek+85o//zEUotr1SmexKvTfs7czXfYjXVT/a5yDbpzLBX1rhbqxjDdr1Gyo0x1Fc64g== dependencies: - "@typescript-eslint/utils" "5.24.0" + "@typescript-eslint/utils" "5.27.0" debug "^4.3.4" tsutils "^3.21.0" @@ -7081,15 +7073,10 @@ resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.20.0.tgz#fa39c3c2aa786568302318f1cb51fcf64258c20c" integrity sha512-+d8wprF9GyvPwtoB4CxBAR/s0rpP25XKgnOvMf/gMXYDvlUC3rPFHupdTQ/ow9vn7UDe5rX02ovGYQbv/IUCbg== -"@typescript-eslint/types@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.23.0.tgz#8733de0f58ae0ed318dbdd8f09868cdbf9f9ad09" - integrity sha512-NfBsV/h4dir/8mJwdZz7JFibaKC3E/QdeMEDJhiAE3/eMkoniZ7MjbEMCGXw6MZnZDMN3G9S0mH/6WUIj91dmw== - -"@typescript-eslint/types@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.24.0.tgz#565ff94a4b89073265e27514dc65225d18aabe6c" - integrity sha512-Tpg1c3shTDgTmZd3qdUyd+16r/pGmVaVEbLs+ufuWP0EruVbUiEOmpBBQxBb9a8iPRxi8Rb2oiwOxuZJzSq11A== +"@typescript-eslint/types@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.27.0.tgz#c3f44b9dda6177a9554f94a74745ca495ba9c001" + integrity sha512-lY6C7oGm9a/GWhmUDOs3xAVRz4ty/XKlQ2fOLr8GAIryGn0+UBOoJDWyHer3UgrHkenorwvBnphhP+zPmzmw0A== "@typescript-eslint/types@5.9.0": version "5.9.0" @@ -7109,26 +7096,13 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.23.0.tgz#dca5f10a0a85226db0796e8ad86addc9aee52065" - integrity sha512-xE9e0lrHhI647SlGMl+m+3E3CKPF1wzvvOEWnuE3CCjjT7UiRnDGJxmAcVKJIlFgK6DY9RB98eLr1OPigPEOGg== +"@typescript-eslint/typescript-estree@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.0.tgz#7965f5b553c634c5354a47dcce0b40b94611e995" + integrity sha512-QywPMFvgZ+MHSLRofLI7BDL+UczFFHyj0vF5ibeChDAJgdTV8k4xgEwF0geFhVlPc1p8r70eYewzpo6ps+9LJQ== dependencies: - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/visitor-keys" "5.23.0" - debug "^4.3.2" - globby "^11.0.4" - is-glob "^4.0.3" - semver "^7.3.5" - tsutils "^3.21.0" - -"@typescript-eslint/typescript-estree@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.24.0.tgz#30b9cbc1af475b9e02aca34cfe9ba9e1bb820143" - integrity sha512-zcor6vQkQmZAQfebSPVwUk/FD+CvnsnlfKXYeQDsWXRF+t7SBPmIfNia/wQxCSeu1h1JIjwV2i9f5/DdSp/uDw== - dependencies: - "@typescript-eslint/types" "5.24.0" - "@typescript-eslint/visitor-keys" "5.24.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/visitor-keys" "5.27.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -7148,15 +7122,15 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.24.0.tgz#7a854028040a305ddea129328e45cfb2c6406e75" - integrity sha512-K05sbWoeCBJH8KXu6hetBJ+ukG0k2u2KlgD3bN+v+oBKm8adJqVHpSSLHNzqyuv0Lh4GVSAUgZ5lB4icmPmWLw== +"@typescript-eslint/utils@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.27.0.tgz#d0021cbf686467a6a9499bd0589e19665f9f7e71" + integrity sha512-nZvCrkIJppym7cIbP3pOwIkAefXOmfGPnCM0LQfzNaKxJHI6VjI8NC662uoiPlaf5f6ymkTy9C3NQXev2mdXmA== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.24.0" - "@typescript-eslint/types" "5.24.0" - "@typescript-eslint/typescript-estree" "5.24.0" + "@typescript-eslint/scope-manager" "5.27.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/typescript-estree" "5.27.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" @@ -7180,20 +7154,12 @@ "@typescript-eslint/types" "5.20.0" eslint-visitor-keys "^3.0.0" -"@typescript-eslint/visitor-keys@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.23.0.tgz#057c60a7ca64667a39f991473059377a8067c87b" - integrity sha512-Vd4mFNchU62sJB8pX19ZSPog05B0Y0CE2UxAZPT5k4iqhRYjPnqyY3woMxCd0++t9OTqkgjST+1ydLBi7e2Fvg== +"@typescript-eslint/visitor-keys@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.0.tgz#97aa9a5d2f3df8215e6d3b77f9d214a24db269bd" + integrity sha512-46cYrteA2MrIAjv9ai44OQDUoCZyHeGIc4lsjCUX2WT6r4C+kidz1bNiR4017wHOPUythYeH+Sc7/cFP97KEAA== dependencies: - "@typescript-eslint/types" "5.23.0" - eslint-visitor-keys "^3.0.0" - -"@typescript-eslint/visitor-keys@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.24.0.tgz#bb3e9a788ccd50c53e03557e4e203599880c3123" - integrity sha512-qzGwSXMyMnogcAo+/2fU+jhlPPVMXlIH2PeAonIKjJSoDKl1+lJVvG5Z5Oud36yU0TWK2cs1p/FaSN5J2OUFYA== - dependencies: - "@typescript-eslint/types" "5.24.0" + "@typescript-eslint/types" "5.27.0" eslint-visitor-keys "^3.3.0" "@typescript-eslint/visitor-keys@5.9.0": From f96e98f4cd568ead18e31d608e235c7f8b408ab1 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 04:01:40 +0000 Subject: [PATCH 162/550] chore(deps): update dependency cypress to v10 Signed-off-by: Renovate Bot --- .changeset/renovate-b7ba5e4.md | 5 + cypress/package.json | 2 +- cypress/yarn.lock | 100 +++++++++++------- packages/app/package.json | 2 +- .../techdocs-cli-embedded-app/package.json | 2 +- packages/techdocs-cli/package.json | 2 +- yarn.lock | 8 +- 7 files changed, 73 insertions(+), 48 deletions(-) create mode 100644 .changeset/renovate-b7ba5e4.md diff --git a/.changeset/renovate-b7ba5e4.md b/.changeset/renovate-b7ba5e4.md new file mode 100644 index 0000000000..db9082f1b2 --- /dev/null +++ b/.changeset/renovate-b7ba5e4.md @@ -0,0 +1,5 @@ +--- +'@techdocs/cli': patch +--- + +Updated dependency `cypress` to `^10.0.0`. diff --git a/cypress/package.json b/cypress/package.json index 6a231326c4..cc66949d28 100644 --- a/cypress/package.json +++ b/cypress/package.json @@ -5,7 +5,7 @@ "license": "MIT", "private": true, "dependencies": { - "cypress": "^7.3.0", + "cypress": "^10.0.0", "typescript": "^4.1.3" } } diff --git a/cypress/yarn.lock b/cypress/yarn.lock index d3d40aec51..7fcd0f98af 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -7,7 +7,7 @@ resolved "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== -"@cypress/request@^2.88.5": +"@cypress/request@^2.88.10": version "2.88.10" resolved "https://registry.npmjs.org/@cypress/request/-/request-2.88.10.tgz#b66d76b07f860d3a4b8d7a0604d020c662752cce" integrity sha512-Zp7F+R93N0yZyG34GutyTNr+okam7s/Fzc1+i3kcqOP8vk6OuajuE9qZJ6Rs+10/1JFtXFYMdyarnU1rZuJesg== @@ -49,10 +49,10 @@ resolved "https://registry.npmjs.org/@types/node/-/node-14.18.13.tgz#6ad4d9db59e6b3faf98dcfe4ca9d2aec84443277" integrity sha512-Z6/KzgyWOga3pJNS42A+zayjhPbf2zM3hegRQaOPnLOzEi86VV++6FLDWgR1LGrVCRufP/ph2daa3tEa5br1zA== -"@types/sinonjs__fake-timers@^6.0.2": - version "6.0.4" - resolved "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.4.tgz#0ecc1b9259b76598ef01942f547904ce61a6a77d" - integrity sha512-IFQTJARgMUBF+xVd2b+hIgXWrZEjND3vJtRCvIelcFB5SIXfjV4bOHbHJ0eXKh+0COrBRc8MqteKAz/j88rE0A== +"@types/sinonjs__fake-timers@8.1.1": + version "8.1.1" + resolved "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz#b49c2c70150141a15e0fa7e79cf1f92a72934ce3" + integrity sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g== "@types/sizzle@^2.3.2": version "2.3.3" @@ -150,6 +150,11 @@ balanced-match@^1.0.0: resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -180,6 +185,14 @@ buffer-crc32@~0.2.3: resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= +buffer@^5.6.0: + version "5.7.1" + resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + cachedir@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8" @@ -220,7 +233,7 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-table3@~0.6.0: +cli-table3@~0.6.1: version "0.6.2" resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.2.tgz#aaf5df9d8b5bf12634dc8b3040806a0c07120d2a" integrity sha512-QyavHCaIC80cMivimWu4aWHilIpiDpfm3hGmqAmXVL1UsnbLuBSMd21hTX6VY4ZSDSM73ESLeF8TOYId3rBTbw== @@ -290,24 +303,25 @@ cross-spawn@^7.0.0: shebang-command "^2.0.0" which "^2.0.1" -cypress@^7.3.0: - version "7.7.0" - resolved "https://registry.npmjs.org/cypress/-/cypress-7.7.0.tgz#0839ae28e5520536f9667d6c9ae81496b3836e64" - integrity sha512-uYBYXNoI5ym0UxROwhQXWTi8JbUEjpC6l/bzoGZNxoKGsLrC1SDPgIDJMgLX/MeEdPL0UInXLDUWN/rSyZUCjQ== +cypress@^10.0.0: + version "10.0.2" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.2.tgz#6aeac1923d534f9850d57dad9496f9ea74034a23" + integrity sha512-7+C4KHYBcfZrawss+Gt5PlS35rfc6ySc59JcHDVsIMm1E/J35dqE41UEXpdtwIq3549umCerNWnFADzqib4kcA== dependencies: - "@cypress/request" "^2.88.5" + "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" "@types/node" "^14.14.31" - "@types/sinonjs__fake-timers" "^6.0.2" + "@types/sinonjs__fake-timers" "8.1.1" "@types/sizzle" "^2.3.2" arch "^2.2.0" blob-util "^2.0.2" bluebird "^3.7.2" + buffer "^5.6.0" cachedir "^2.3.0" chalk "^4.1.0" check-more-types "^2.24.0" cli-cursor "^3.1.0" - cli-table3 "~0.6.0" + cli-table3 "~0.6.1" commander "^5.1.0" common-tags "^1.8.0" dayjs "^1.10.4" @@ -326,15 +340,15 @@ cypress@^7.3.0: listr2 "^3.8.3" lodash "^4.17.21" log-symbols "^4.0.0" - minimist "^1.2.5" + minimist "^1.2.6" ospath "^1.2.2" pretty-bytes "^5.6.0" - ramda "~0.27.1" + proxy-from-env "1.0.0" request-progress "^3.0.0" + semver "^7.3.2" supports-color "^8.1.1" tmp "~0.2.1" untildify "^4.0.0" - url "^0.11.0" yauzl "^2.10.0" dashdash@^1.12.0: @@ -560,6 +574,11 @@ human-signals@^1.1.1: resolved "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + indent-string@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" @@ -714,6 +733,13 @@ log-update@^4.0.0: slice-ansi "^4.0.0" wrap-ansi "^6.2.0" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -743,7 +769,7 @@ minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist@^1.2.5: +minimist@^1.2.6: version "1.2.6" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== @@ -821,6 +847,11 @@ pretty-bytes@^5.6.0: resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== +proxy-from-env@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee" + integrity sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A== + psl@^1.1.28: version "1.8.0" resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -834,11 +865,6 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - punycode@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" @@ -849,16 +875,6 @@ qs@~6.5.2: resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -ramda@~0.27.1: - version "0.27.2" - resolved "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz#84463226f7f36dc33592f6f4ed6374c48306c3f1" - integrity sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA== - request-progress@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" @@ -903,6 +919,13 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +semver@^7.3.2: + version "7.3.7" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== + dependencies: + lru-cache "^6.0.0" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -1050,14 +1073,6 @@ untildify@^4.0.0: resolved "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== -url@^0.11.0: - version "0.11.0" - resolved "https://registry.npmjs.org/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - uuid@^8.3.2: version "8.3.2" resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" @@ -1102,6 +1117,11 @@ wrappy@1: resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yauzl@^2.10.0: version "2.10.0" resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" diff --git a/packages/app/package.json b/packages/app/package.json index 97b5d35f23..e1be14688d 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -92,7 +92,7 @@ "@types/react-dom": "*", "@types/zen-observable": "^0.8.0", "cross-env": "^7.0.0", - "cypress": "^9.5.0", + "cypress": "^10.0.0", "eslint-plugin-cypress": "^2.10.3", "start-server-and-test": "^1.10.11" }, diff --git a/packages/techdocs-cli-embedded-app/package.json b/packages/techdocs-cli-embedded-app/package.json index 1d66ad6a60..751880f8b8 100644 --- a/packages/techdocs-cli-embedded-app/package.json +++ b/packages/techdocs-cli-embedded-app/package.json @@ -38,7 +38,7 @@ "@types/node": "^16.11.26", "@types/react-dom": "*", "cross-env": "^7.0.0", - "cypress": "^9.5.0", + "cypress": "^10.0.0", "eslint-plugin-cypress": "^2.10.3", "start-server-and-test": "^1.10.11" }, diff --git a/packages/techdocs-cli/package.json b/packages/techdocs-cli/package.json index c611e93f9b..bda039739a 100644 --- a/packages/techdocs-cli/package.json +++ b/packages/techdocs-cli/package.json @@ -45,7 +45,7 @@ "@types/node": "^16.11.26", "@types/serve-handler": "^6.1.0", "@types/webpack-env": "^1.15.3", - "cypress": "^9.5.0", + "cypress": "^10.0.0", "cypress-plugin-snapshots": "^1.4.4", "find-process": "^1.4.5", "nodemon": "^2.0.2", diff --git a/yarn.lock b/yarn.lock index 3967a8a299..df7741aa6e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10468,10 +10468,10 @@ cypress-plugin-snapshots@^1.4.4: source-map-support "^0.5.10" unidiff "1.0.2" -cypress@^9.5.0: - version "9.7.0" - resolved "https://registry.npmjs.org/cypress/-/cypress-9.7.0.tgz#bf55b2afd481f7a113ef5604aa8b693564b5e744" - integrity sha512-+1EE1nuuuwIt/N1KXRR2iWHU+OiIt7H28jJDyyI4tiUftId/DrXYEwoDa5+kH2pki1zxnA0r6HrUGHV5eLbF5Q== +cypress@^10.0.0: + version "10.0.2" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.2.tgz#6aeac1923d534f9850d57dad9496f9ea74034a23" + integrity sha512-7+C4KHYBcfZrawss+Gt5PlS35rfc6ySc59JcHDVsIMm1E/J35dqE41UEXpdtwIq3549umCerNWnFADzqib4kcA== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" From 488a458d977fba6efabc0a0e1d6f094b90bceeeb Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 07:52:08 +0000 Subject: [PATCH 163/550] fix(deps): update dependency minimatch to v5.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index a324ad02a9..a60aef4d2d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18177,7 +18177,7 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.1.0: +minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== @@ -18198,13 +18198,6 @@ minimatch@^4.0.0: dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.0, minimatch@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== - dependencies: - brace-expansion "^2.0.1" - minimist-options@4.1.0, minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" From 026cfe525add4694490260dda184f1cd3d9b3066 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 3 Jun 2022 10:52:00 +0200 Subject: [PATCH 164/550] cli: fix missing trailing / in public path output config Signed-off-by: Patrik Oldsberg --- .changeset/calm-timers-wonder.md | 5 +++++ packages/cli/src/lib/bundler/config.ts | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/calm-timers-wonder.md diff --git a/.changeset/calm-timers-wonder.md b/.changeset/calm-timers-wonder.md new file mode 100644 index 0000000000..516e2ae9ce --- /dev/null +++ b/.changeset/calm-timers-wonder.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. diff --git a/packages/cli/src/lib/bundler/config.ts b/packages/cli/src/lib/bundler/config.ts index fb073a25e3..d723b963bd 100644 --- a/packages/cli/src/lib/bundler/config.ts +++ b/packages/cli/src/lib/bundler/config.ts @@ -89,6 +89,7 @@ export async function createConfig( const baseUrl = frontendConfig.getString('app.baseUrl'); const validBaseUrl = new URL(baseUrl); + const publicPath = validBaseUrl.pathname.replace(/\/$/, ''); if (checksEnabled) { plugins.push( new ForkTsCheckerWebpackPlugin({ @@ -121,7 +122,7 @@ export async function createConfig( new HtmlWebpackPlugin({ template: paths.targetHtml, templateParameters: { - publicPath: validBaseUrl.pathname.replace(/\/$/, ''), + publicPath, config: frontendConfig, }, }), @@ -194,7 +195,7 @@ export async function createConfig( }, output: { path: paths.targetDist, - publicPath: validBaseUrl.pathname, + publicPath: `${publicPath}/`, filename: isDev ? '[name].js' : 'static/[name].[fullhash:8].js', chunkFilename: isDev ? '[name].chunk.js' From 69184a2c0b4e032afc493ee250ff04ae406226e3 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 08:52:20 +0000 Subject: [PATCH 165/550] chore(deps): update dependency lint-staged to v13 Signed-off-by: Renovate Bot --- package.json | 2 +- yarn.lock | 81 +++++++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 68 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 9596e55c1a..299e1d666b 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,7 @@ "fs-extra": "10.1.0", "husky": "^8.0.0", "lerna": "^4.0.0", - "lint-staged": "^12.2.0", + "lint-staged": "^13.0.0", "minimist": "^1.2.5", "prettier": "^2.2.1", "semver": "^7.3.2", diff --git a/yarn.lock b/yarn.lock index a60aef4d2d..61c6a14584 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12345,7 +12345,7 @@ execa@5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -execa@5.1.1, execa@^5.0.0, execa@^5.1.1: +execa@5.1.1, execa@^5.0.0: version "5.1.1" resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== @@ -12373,6 +12373,21 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" + integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^3.0.1" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + executable@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -13353,7 +13368,7 @@ get-stream@^5.0.0, get-stream@^5.1.0: dependencies: pump "^3.0.0" -get-stream@^6.0.0: +get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== @@ -14288,6 +14303,11 @@ human-signals@^2.1.0: resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +human-signals@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz#c740920859dafa50e5a3222da9d3bf4bb0e5eef5" + integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ== + humanize-duration@^3.25.1, humanize-duration@^3.26.0, humanize-duration@^3.27.0, humanize-duration@^3.27.1: version "3.27.2" resolved "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.27.2.tgz#4b4e565bec098d22c9a54344e16156d1c649f160" @@ -15191,6 +15211,11 @@ is-stream@^2.0.0: resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" @@ -16754,16 +16779,16 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" -lint-staged@^12.2.0: - version "12.5.0" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz#d6925747480ae0e380d13988522f9dd8ef9126e3" - integrity sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g== +lint-staged@^13.0.0: + version "13.0.0" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa" + integrity sha512-vWban5utFt78VZohbosUxNIa46KKJ+KOQTDWTQ8oSl1DLEEVl9zhUtaQbiiydAmx+h2wKJK2d0+iMaRmknuWRQ== dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" commander "^9.3.0" debug "^4.3.4" - execa "^5.1.1" + execa "^6.1.0" lilconfig "2.0.5" listr2 "^4.0.5" micromatch "^4.0.5" @@ -16771,8 +16796,7 @@ lint-staged@^12.2.0: object-inspect "^1.12.2" pidtree "^0.5.0" string-argv "^0.3.1" - supports-color "^9.2.2" - yaml "^1.10.2" + yaml "^2.1.1" listenercount@~1.0.1: version "1.0.1" @@ -18126,6 +18150,11 @@ mimic-fn@^2.1.0: resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== + mimic-response@^1.0.0, mimic-response@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" @@ -18988,6 +19017,13 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" +npm-run-path@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" + integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== + dependencies: + path-key "^4.0.0" + npmlog@^4.0.1, npmlog@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" @@ -19253,6 +19289,13 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + open@^8.0.0, open@^8.0.9, open@^8.4.0: version "8.4.0" resolved "https://registry.npmjs.org/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" @@ -19971,6 +20014,11 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" @@ -23704,6 +23752,11 @@ strip-final-newline@^2.0.0: resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -23841,11 +23894,6 @@ supports-color@^8.0.0, supports-color@^8.1.0, supports-color@^8.1.1: dependencies: has-flag "^4.0.0" -supports-color@^9.2.2: - version "9.2.2" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-9.2.2.tgz#502acaf82f2b7ee78eb7c83dcac0f89694e5a7bb" - integrity sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA== - supports-hyperlinks@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" @@ -26015,6 +26063,11 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2, yaml@^1.9.2: resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +yaml@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/yaml/-/yaml-2.1.1.tgz#1e06fb4ca46e60d9da07e4f786ea370ed3c3cfec" + integrity sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw== + yargs-parser@20.2.4, yargs-parser@^20.2.3: version "20.2.4" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" From 5388e6bdc572d59e462ba8b8e0210be41a87f1d3 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Fri, 3 Jun 2022 13:35:13 +0200 Subject: [PATCH 166/550] Properly name versioned search modal context. Signed-off-by: Eric Peterson --- .changeset/search-generals-gathered.md | 5 +++++ plugins/search/src/components/SearchModal/useSearchModal.tsx | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/search-generals-gathered.md diff --git a/.changeset/search-generals-gathered.md b/.changeset/search-generals-gathered.md new file mode 100644 index 0000000000..89ad5eeff5 --- /dev/null +++ b/.changeset/search-generals-gathered.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search': patch +--- + +Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. diff --git a/plugins/search/src/components/SearchModal/useSearchModal.tsx b/plugins/search/src/components/SearchModal/useSearchModal.tsx index b813a8db7a..5b320934c2 100644 --- a/plugins/search/src/components/SearchModal/useSearchModal.tsx +++ b/plugins/search/src/components/SearchModal/useSearchModal.tsx @@ -37,7 +37,7 @@ export type SearchModalValue = { const SearchModalContext = createVersionedContext<{ 1: SearchModalValue | undefined; -}>('analytics-context'); +}>('search-modal-context'); /** * Props for the SearchModalProvider. From fd505f40c0d11a433b6b1a53da065993bd508de5 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 3 Jun 2022 13:37:25 +0200 Subject: [PATCH 167/550] scaffolder: fix binary file uploads during dry-run Signed-off-by: Patrik Oldsberg --- .changeset/yellow-falcons-sin.md | 5 +++ .../TemplateEditorPage/DryRunContext.test.tsx | 44 +++++++++++++++++++ .../TemplateEditorPage/DryRunContext.tsx | 26 ++++++++++- 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 .changeset/yellow-falcons-sin.md create mode 100644 plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.test.tsx diff --git a/.changeset/yellow-falcons-sin.md b/.changeset/yellow-falcons-sin.md new file mode 100644 index 0000000000..943a93d8ac --- /dev/null +++ b/.changeset/yellow-falcons-sin.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +Handle binary files and files that are too large during dry-run content upload. diff --git a/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.test.tsx b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.test.tsx new file mode 100644 index 0000000000..184118914a --- /dev/null +++ b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.test.tsx @@ -0,0 +1,44 @@ +/* + * Copyright 2022 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 { base64EncodeContent } from './DryRunContext'; + +// eslint-disable-next-line no-restricted-imports +import { TextEncoder } from 'util'; + +window.TextEncoder = TextEncoder; + +describe('base64EncodeContent', () => { + it('encodes text files', () => { + expect(base64EncodeContent('abc')).toBe('YWJj'); + expect(base64EncodeContent('abc'.repeat(1000000))).toBe( + btoa(''), + ); + }); + + it('encodes binary files', () => { + expect(base64EncodeContent('\x00\x01\x02')).toBe('AAEC'); + expect(base64EncodeContent('😅')).toBe('8J+YhQ=='); + // Triggers chunking + expect(base64EncodeContent('😅'.repeat(18000))).toBe( + '8J+YhfCfmIXwn5iF8J+YhfCfmIXwn5iF'.repeat(3000), + ); + // Triggers size check + expect(base64EncodeContent('😅'.repeat(1000000))).toBe( + btoa(''), + ); + }); +}); diff --git a/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx index b1fe8a19ff..0a5bfeefd5 100644 --- a/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx +++ b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx @@ -29,6 +29,9 @@ import React, { import { scaffolderApiRef } from '../../api'; import { ScaffolderDryRunResponse } from '../../types'; +const MAX_CONTENT_SIZE = 256 * 1024; +const CHUNK_SIZE = 0x8000; + interface DryRunOptions { templateContent: string; values: JsonObject; @@ -54,6 +57,27 @@ interface DryRunProviderProps { children: ReactNode; } +export function base64EncodeContent(content: string): string { + if (content.length > MAX_CONTENT_SIZE) { + return btoa(''); + } + + try { + return btoa(content); + } catch { + const decoder = new TextEncoder(); + const buffer = decoder.encode(content); + + const chunks = new Array(); + for (let offset = 0; offset < buffer.length; offset += CHUNK_SIZE) { + chunks.push( + String.fromCharCode(...buffer.slice(offset, offset + CHUNK_SIZE)), + ); + } + return btoa(chunks.join('')); + } +} + export function DryRunProvider(props: DryRunProviderProps) { const scaffolderApi = useApi(scaffolderApiRef); @@ -110,7 +134,7 @@ export function DryRunProvider(props: DryRunProviderProps) { secrets: {}, directoryContents: options.files.map(file => ({ path: file.path, - base64Content: btoa(file.content), + base64Content: base64EncodeContent(file.content), })), }); From 639c99c2251363a814ba4b86ed225e1ffb339ae8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 11:38:32 +0000 Subject: [PATCH 168/550] chore(deps): update dependency lerna to v5 Signed-off-by: Renovate Bot --- package.json | 2 +- yarn.lock | 1399 ++++++++++++++++++++++++++++---------------------- 2 files changed, 779 insertions(+), 622 deletions(-) diff --git a/package.json b/package.json index 299e1d666b..5c633d546b 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,7 @@ "eslint-plugin-notice": "^0.9.10", "fs-extra": "10.1.0", "husky": "^8.0.0", - "lerna": "^4.0.0", + "lerna": "^5.0.0", "lint-staged": "^13.0.0", "minimist": "^1.2.5", "prettier": "^2.2.1", diff --git a/yarn.lock b/yarn.lock index 61c6a14584..2806949b25 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2165,6 +2165,11 @@ resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== +"@gar/promisify@^1.1.3": + version "1.1.3" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + "@gitbeaker/browser@^35.6.0": version "35.6.0" resolved "https://registry.npmjs.org/@gitbeaker/browser/-/browser-35.6.0.tgz#a639ae57eeb4d4829b73a634f757ef5841ad4116" @@ -3389,39 +3394,40 @@ resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz#0300943770e04231041a51bd39f0439b5c7ab4f0" integrity sha512-nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg== -"@lerna/add@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" - integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== +"@lerna/add@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/add/-/add-5.0.0.tgz#0545e2eef157c142d82ba765467c27b36fe53ce8" + integrity sha512-KdIOQL+88iHU9zuAU8Be1AL4cOVmm77nlckylsNaVVTiomNipr/h7lStiBO52BoMkwKzNwOH6He5HGY0Yo7s2w== dependencies: - "@lerna/bootstrap" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/bootstrap" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/npm-conf" "5.0.0" + "@lerna/validation-error" "5.0.0" dedent "^0.7.0" npm-package-arg "^8.1.0" p-map "^4.0.0" - pacote "^11.2.6" + pacote "^13.4.1" semver "^7.3.4" -"@lerna/bootstrap@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" - integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== +"@lerna/bootstrap@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/bootstrap/-/bootstrap-5.0.0.tgz#624b67a4631c7455b98cfed4dbb2e38b27025a7a" + integrity sha512-2m1BxKbYwDABy+uE/Da3EQM61R58bI3YQ0o1rsFQq1u0ltL9CJxw1o0lMg84hwMsBb4D+kLIXLqetYlLVgbr0Q== dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/has-npm-version" "4.0.0" - "@lerna/npm-install" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/has-npm-version" "5.0.0" + "@lerna/npm-install" "5.0.0" + "@lerna/package-graph" "5.0.0" + "@lerna/pulse-till-done" "5.0.0" + "@lerna/rimraf-dir" "5.0.0" + "@lerna/run-lifecycle" "5.0.0" + "@lerna/run-topologically" "5.0.0" + "@lerna/symlink-binary" "5.0.0" + "@lerna/symlink-dependencies" "5.0.0" + "@lerna/validation-error" "5.0.0" + "@npmcli/arborist" "5.2.0" dedent "^0.7.0" get-port "^5.1.1" multimatch "^5.0.0" @@ -3430,103 +3436,102 @@ p-map "^4.0.0" p-map-series "^2.1.0" p-waterfall "^2.1.1" - read-package-tree "^5.3.1" semver "^7.3.4" -"@lerna/changed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" - integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== +"@lerna/changed@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/changed/-/changed-5.0.0.tgz#fb3cdd5f281683a461c3099cbcf0978e23b33140" + integrity sha512-A24MHipPGODmzQBH1uIMPPUUOc1Zm7Qe/eSYzm52bFHtVxWH0nIVXfunadoMX32NhzKQH3Sw8X2rWHPQSRoUvA== dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" + "@lerna/collect-updates" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/listable" "5.0.0" + "@lerna/output" "5.0.0" -"@lerna/check-working-tree@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" - integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== +"@lerna/check-working-tree@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/check-working-tree/-/check-working-tree-5.0.0.tgz#e7b653b78c3bb96db7a00f6a74018e2bb88ec088" + integrity sha512-PnUMdpT2qS4o+vs+7l5fFIizstGdqSkhLG+Z9ZiY5OMtnGd+pmAFQFlbLSZSmdvQSOSobl9fhB1St8qhPD60xQ== dependencies: - "@lerna/collect-uncommitted" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/collect-uncommitted" "5.0.0" + "@lerna/describe-ref" "5.0.0" + "@lerna/validation-error" "5.0.0" -"@lerna/child-process@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" - integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== +"@lerna/child-process@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/child-process/-/child-process-5.0.0.tgz#1c7663d2910431f6c25543fd53998ae95b2dac19" + integrity sha512-cFVNkedrlU8XTt15EvUtQ84hqtV4oToQW/elKNv//mhCz06HY8Y+Ia6XevK2zrIhZjS6DT576F/7SmTk3vnpmg== dependencies: chalk "^4.1.0" execa "^5.0.0" strong-log-transformer "^2.1.0" -"@lerna/clean@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" - integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== +"@lerna/clean@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/clean/-/clean-5.0.0.tgz#2b5cf202ab3eca18a075b292c55e6641d18b1b8f" + integrity sha512-7B+0Nx6MEPmCfnEa1JFyZwJsC7qlGrikWXyLglLb/wcbapYVsuDauOl9AT1iOFoXKw82P77HWYUKWeD9DQgw/w== dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/prompt" "5.0.0" + "@lerna/pulse-till-done" "5.0.0" + "@lerna/rimraf-dir" "5.0.0" p-map "^4.0.0" p-map-series "^2.1.0" p-waterfall "^2.1.1" -"@lerna/cli@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" - integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== +"@lerna/cli@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/cli/-/cli-5.0.0.tgz#f440f6664aa6c22bb58e69aacfde655c831de2f9" + integrity sha512-g8Nifko8XNySOl8u2molSHVl+fk/E1e5FSn/W2ekeijmc3ezktp+xbPWofNq71N/d297+KPQpLBfwzXSo9ufIQ== dependencies: - "@lerna/global-options" "4.0.0" + "@lerna/global-options" "5.0.0" dedent "^0.7.0" npmlog "^4.1.2" yargs "^16.2.0" -"@lerna/collect-uncommitted@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" - integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== +"@lerna/collect-uncommitted@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/collect-uncommitted/-/collect-uncommitted-5.0.0.tgz#2843f98995c8bcc1d783d1d9739122c79378f3c5" + integrity sha512-mga/2S9rK0TP5UCulWiCTrC/uKaiIlOro1n8R3oCw6eRw9eupCSRx5zGI7pdh8CPD82MDL7w0a6OTep3WBSBVA== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "5.0.0" chalk "^4.1.0" npmlog "^4.1.2" -"@lerna/collect-updates@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" - integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== +"@lerna/collect-updates@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/collect-updates/-/collect-updates-5.0.0.tgz#cce16b9e8136e1e7bc33fe0fb12b283e538fa658" + integrity sha512-X82i8SVgBXLCk8vbKWfQPRLTAXROCANL8Z/bU1l6n7yycsHKdjrrlNi1+KprFdfRsMvSm10R4qPNcl9jgsp/IA== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/describe-ref" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/describe-ref" "5.0.0" minimatch "^3.0.4" npmlog "^4.1.2" slash "^3.0.0" -"@lerna/command@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" - integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== +"@lerna/command@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/command/-/command-5.0.0.tgz#cdc9f32a6b1c7153fe7150d642d2a420a3d0797d" + integrity sha512-j7/apU5d/nhSc1qIZgcV03KyO5jz3y7cwSum3IuK8/XF6rKwt3FVnbue1V3l9sJ6IRJjsRGKyViB1IdP5nSX4Q== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/project" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/write-log-file" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/package-graph" "5.0.0" + "@lerna/project" "5.0.0" + "@lerna/validation-error" "5.0.0" + "@lerna/write-log-file" "5.0.0" clone-deep "^4.0.1" dedent "^0.7.0" execa "^5.0.0" is-ci "^2.0.0" npmlog "^4.1.2" -"@lerna/conventional-commits@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" - integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== +"@lerna/conventional-commits@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/conventional-commits/-/conventional-commits-5.0.0.tgz#7f9c16fda074c9ed897cb695f5ae23678dd441eb" + integrity sha512-tUCRTAycDCtSlCEI0hublq4uKHeV0UHpwIb3Fdt6iv2AoTSPBSX/Dwu/6VqguysOSEkkR4M2JCOLvJCl4IMxwg== dependencies: - "@lerna/validation-error" "4.0.0" + "@lerna/validation-error" "5.0.0" conventional-changelog-angular "^5.0.12" conventional-changelog-core "^4.2.2" conventional-recommended-bump "^6.1.0" @@ -3538,31 +3543,31 @@ pify "^5.0.0" semver "^7.3.4" -"@lerna/create-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" - integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== +"@lerna/create-symlink@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/create-symlink/-/create-symlink-5.0.0.tgz#eccef7f89fdc4d7cd904694d9e2eb0b582073b5e" + integrity sha512-nHYNacrh15Y0yEofVlUVu9dhf4JjIn9hY7v7rOUXzUeQ91iXY5Q3PVHkBeRUigyT5CWP5qozZwraCMwp+lDWYg== dependencies: cmd-shim "^4.1.0" fs-extra "^9.1.0" npmlog "^4.1.2" -"@lerna/create@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" - integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== +"@lerna/create@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/create/-/create-5.0.0.tgz#4aac3d1f2c1f6d7fadde49d3663b318fcdd39b06" + integrity sha512-sdFTVTLOVuhHpzIYhFAwK0Ry3p4d7uMe9ZG/Ii128/pB9kEEfCth+1WBq6mBpYZ5mOLLgxJbWalbiJFl0toQRw== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/npm-conf" "5.0.0" + "@lerna/validation-error" "5.0.0" dedent "^0.7.0" fs-extra "^9.1.0" globby "^11.0.2" init-package-json "^2.0.2" npm-package-arg "^8.1.0" p-reduce "^2.1.0" - pacote "^11.2.6" + pacote "^13.4.1" pify "^5.0.0" semver "^7.3.4" slash "^3.0.0" @@ -3571,217 +3576,217 @@ whatwg-url "^8.4.0" yargs-parser "20.2.4" -"@lerna/describe-ref@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" - integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== +"@lerna/describe-ref@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/describe-ref/-/describe-ref-5.0.0.tgz#f0676843642e8880133783a9f059e6cb4c027fe1" + integrity sha512-iLvMHp3nl4wcMR3/lVkz0ng7pAHfLQ7yvz2HsYBq7wllCcEzpchzPgyVzyvbpJ+Ke/MKjQTsrHE/yOGOH67GVw== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "5.0.0" npmlog "^4.1.2" -"@lerna/diff@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" - integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== +"@lerna/diff@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/diff/-/diff-5.0.0.tgz#844333f5478fc4993c4389fee1e0cd8eff9114fe" + integrity sha512-S4XJ6i9oP77cSmJ3oRUJGMgrI+jOTmkYWur2nqgSdyJBE1J2eClgTJknb3WAHg2cHALT18WzFqNghFOGM+9dRA== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/validation-error" "5.0.0" npmlog "^4.1.2" -"@lerna/exec@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" - integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== +"@lerna/exec@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/exec/-/exec-5.0.0.tgz#a59dd094e456ea46cfa8f713da0ea3334a7ec9ac" + integrity sha512-g5i+2RclCGWLsl88m11j99YM2Gqnwa2lxZ5tDeqqWZFno6Dlvop17Yl6/MFH42EgM2DQHUUCammvcLIAJ2XwEA== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/profiler" "5.0.0" + "@lerna/run-topologically" "5.0.0" + "@lerna/validation-error" "5.0.0" p-map "^4.0.0" -"@lerna/filter-options@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" - integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== +"@lerna/filter-options@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/filter-options/-/filter-options-5.0.0.tgz#1d2606e1d2ed106689b43cc5d41a77b239afb837" + integrity sha512-un73aYkXlzKlnDPx2AlqNW+ArCZ20XaX+Y6C0F+av9VZriiBsCgZTnflhih9fiSMnXjN5r9CA8YdWvZqa3oAcQ== dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/filter-packages" "4.0.0" + "@lerna/collect-updates" "5.0.0" + "@lerna/filter-packages" "5.0.0" dedent "^0.7.0" npmlog "^4.1.2" -"@lerna/filter-packages@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" - integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== +"@lerna/filter-packages@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/filter-packages/-/filter-packages-5.0.0.tgz#9aae543ab5e45a1b0c3f7ad33e0686ceb8d92c88" + integrity sha512-+EIjVVaMPDZ05F/gZa+kcXjBOLXqEamcEIDr+2ZXRgJmnrLx9BBY1B7sBEFHg7JXbeOKS+fKtMGVveV0SzgH3Q== dependencies: - "@lerna/validation-error" "4.0.0" + "@lerna/validation-error" "5.0.0" multimatch "^5.0.0" npmlog "^4.1.2" -"@lerna/get-npm-exec-opts@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" - integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== +"@lerna/get-npm-exec-opts@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-5.0.0.tgz#25c1cd7d2b6c1fe903cd144d9f6e2d5cae47429b" + integrity sha512-ZOg3kc5FXYA1kVFD2hfJOl64hNASWD6panwD0HlyzXgfKKTDRm/P/qtAqS8WGCzQWgEdx4wvsDe/58Lzzh6QzQ== dependencies: npmlog "^4.1.2" -"@lerna/get-packed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" - integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== +"@lerna/get-packed@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/get-packed/-/get-packed-5.0.0.tgz#4de7f66184232c805dfca07b9a8c577f6ef02351" + integrity sha512-fks7Tg7DvcCZxRWPS3JAWVuLnwjPC/hLlNsdYmK9nN3+RtPhmYQgBjLSONcENw1E46t4Aph72lA9nLcYBLksqw== dependencies: fs-extra "^9.1.0" ssri "^8.0.1" tar "^6.1.0" -"@lerna/github-client@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" - integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== +"@lerna/github-client@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/github-client/-/github-client-5.0.0.tgz#65c984a393b1cbe35c2a707059c645bb9a03395e" + integrity sha512-NoEyRkQ8XgBnrjRfC9ph1npfg1/4OdYG+r8lG/1WkJbdt1Wlym4VNZU2BYPMWwSQYMJuppoEr0LL2uuVcS4ZUw== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "5.0.0" "@octokit/plugin-enterprise-rest" "^6.0.1" "@octokit/rest" "^18.1.0" git-url-parse "^11.4.4" npmlog "^4.1.2" -"@lerna/gitlab-client@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" - integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== +"@lerna/gitlab-client@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/gitlab-client/-/gitlab-client-5.0.0.tgz#c4e3d16566a3b07908ee604ce681a09c418481de" + integrity sha512-WREAT7qzta9hxNxktTX0x1/sEMpBP+4Gc00QSJYXt+ZzxY0t5RUx/ZK5pQl+IDhtkajrvXT6fSfZjMxxyE8hhQ== dependencies: node-fetch "^2.6.1" npmlog "^4.1.2" whatwg-url "^8.4.0" -"@lerna/global-options@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" - integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== +"@lerna/global-options@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/global-options/-/global-options-5.0.0.tgz#02505c9e468188e3a254c262d58739092de93d8d" + integrity sha512-PZYy/3mTZwtA9lNmHHRCc/Ty1W20qGJ/BdDIo4bw/Bk0AOcoBCLT9b3Mjijkl4AbC9+eSGk3flUYapCGVuS32Q== -"@lerna/has-npm-version@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" - integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== +"@lerna/has-npm-version@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/has-npm-version/-/has-npm-version-5.0.0.tgz#ed62c6ef857f068209663aae9f156f06a93dc1bd" + integrity sha512-zJPgcml86nhJFJTpT+kjkcafuCFvK7PSq3oDC2KJxwB1bhlYwy+SKtAEypHSsHQ2DwP0YgPITcy1pvtHkie1SA== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "5.0.0" semver "^7.3.4" -"@lerna/import@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" - integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== +"@lerna/import@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/import/-/import-5.0.0.tgz#11cd83ef0fe854c512146fd4165f33519364b97a" + integrity sha512-cD+Is7eV/I+ZU0Wlg+yAgKaZbOvfzA7kBj2Qu1HtxeLhc7joTR8PFW1gNjEsvrWOTiaHAtObbo1A+MKYQ/T12g== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/prompt" "5.0.0" + "@lerna/pulse-till-done" "5.0.0" + "@lerna/validation-error" "5.0.0" dedent "^0.7.0" fs-extra "^9.1.0" p-map-series "^2.1.0" -"@lerna/info@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" - integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== +"@lerna/info@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/info/-/info-5.0.0.tgz#649566474d0d133c22bb821f88e7d062a2beace5" + integrity sha512-k9TMK81apTjxxpnjfFOABKXndTtHBPgB8UO+I6zKhsfRqVb9FCz2MHOx8cQiSyolvNyGSQdSylSo4p7EBBomQQ== dependencies: - "@lerna/command" "4.0.0" - "@lerna/output" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/output" "5.0.0" envinfo "^7.7.4" -"@lerna/init@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" - integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== +"@lerna/init@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/init/-/init-5.0.0.tgz#e35d95a4882aafb4600abf9b32fd1a0056e73ed9" + integrity sha512-2n68x7AIqVa+Vev9xF3NV9ba0C599KYf7JsIrQ5ESv4593ftInJpwgMwjroLT3X/Chi4BK7y2/xGmrfFVwgILg== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/command" "5.0.0" fs-extra "^9.1.0" p-map "^4.0.0" write-json-file "^4.3.0" -"@lerna/link@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" - integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== +"@lerna/link@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/link/-/link-5.0.0.tgz#dbd5aefa0bb22f2fd9d61ee82009fb34eb946298" + integrity sha512-00YxQ06TVhQJthOjcuxCCJRjkAM+qM/8Lv0ckdCzBBCSr4RdAGBp6QcAX/gjLNasgmNpyiza3ADet7mCH7uodw== dependencies: - "@lerna/command" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/package-graph" "5.0.0" + "@lerna/symlink-dependencies" "5.0.0" p-map "^4.0.0" slash "^3.0.0" -"@lerna/list@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" - integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== +"@lerna/list@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/list/-/list-5.0.0.tgz#0a979dc9c24ca176c7b4b58de80cab2dac2dcb8a" + integrity sha512-+B0yFil2AFdiYO8hyU1bFbKXGBAUUQQ43/fp2XS2jBFCipLme4eTILL5gMKOhr2Xg9AsfYPXRMRer5VW7qTeeQ== dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/listable" "5.0.0" + "@lerna/output" "5.0.0" -"@lerna/listable@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" - integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== +"@lerna/listable@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/listable/-/listable-5.0.0.tgz#c1753d9375932b15c4c84cc767fffb3447b8f213" + integrity sha512-Rd5sE7KTbqA8u048qThH5IyBuJIwMcUnEObjFyJyKpc1SEWSumo4yAYmcEeN/9z62tcdud5wHYPSbVgfXJq37g== dependencies: - "@lerna/query-graph" "4.0.0" + "@lerna/query-graph" "5.0.0" chalk "^4.1.0" columnify "^1.5.4" -"@lerna/log-packed@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" - integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== +"@lerna/log-packed@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/log-packed/-/log-packed-5.0.0.tgz#afa35bb6a5736038d7dde039e09828ac1c4945a2" + integrity sha512-0TxKX+XnlEYj0du9U2kg3HEyIb/0QsM0Slt8utuCxALUnXRHTEKohjqVKsBdvh1QmJpnUbL5I+vfoYqno4Y42w== dependencies: byte-size "^7.0.0" columnify "^1.5.4" has-unicode "^2.0.1" npmlog "^4.1.2" -"@lerna/npm-conf@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" - integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== +"@lerna/npm-conf@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/npm-conf/-/npm-conf-5.0.0.tgz#1364270d231d0df5ac079a9a9733ba0dd7f8c2f9" + integrity sha512-KSftxtMNVhLol1JNwFFNgh5jiCG010pewM+uKeSrUe0BCB3lnidiEDzu2CCn8JYYfIXqAiou/pScUiOxVLpcAA== dependencies: config-chain "^1.1.12" pify "^5.0.0" -"@lerna/npm-dist-tag@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" - integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== +"@lerna/npm-dist-tag@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/npm-dist-tag/-/npm-dist-tag-5.0.0.tgz#becd7fb0bd963357818c8d4fae955cc9f8885cba" + integrity sha512-ccUFhp9Wu/FHW5/5fL+vLiSTcUZXtKQ7c0RMXtNRzIdTXBxPBkVi1k5QAnBAAffsz6Owc/K++cb+/zQ/asrG3g== dependencies: - "@lerna/otplease" "4.0.0" + "@lerna/otplease" "5.0.0" npm-package-arg "^8.1.0" npm-registry-fetch "^9.0.0" npmlog "^4.1.2" -"@lerna/npm-install@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" - integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== +"@lerna/npm-install@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/npm-install/-/npm-install-5.0.0.tgz#0ee1750bb26eae3c2b4d742d5c1f055e46d534df" + integrity sha512-72Jf05JCIdeSBWXAiNjd/y2AQH4Ojgas55ojV2sAcEYz2wgyR7wSpiI6fHBRlRP+3XPjV9MXKxI3ZwOnznQxqQ== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/get-npm-exec-opts" "5.0.0" fs-extra "^9.1.0" npm-package-arg "^8.1.0" npmlog "^4.1.2" signal-exit "^3.0.3" write-pkg "^4.0.0" -"@lerna/npm-publish@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" - integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== +"@lerna/npm-publish@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/npm-publish/-/npm-publish-5.0.0.tgz#a1a06e47e45e56999c85086a40f9b77f801b5a00" + integrity sha512-jnapZ2jRajSzshSfd1Y3rHH5R7QC+JJlYST04FBebIH3VePwDT7uAglDCI4um2THvxkW4420EzE4BUMUwKlnXA== dependencies: - "@lerna/otplease" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" + "@lerna/otplease" "5.0.0" + "@lerna/run-lifecycle" "5.0.0" fs-extra "^9.1.0" libnpmpublish "^4.0.0" npm-package-arg "^8.1.0" @@ -3789,85 +3794,85 @@ pify "^5.0.0" read-package-json "^3.0.0" -"@lerna/npm-run-script@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" - integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== +"@lerna/npm-run-script@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/npm-run-script/-/npm-run-script-5.0.0.tgz#114374b89f228c9719bbfacf9f08d6aac2739fb2" + integrity sha512-qgGf0Wc/E2YxPwIiF8kC/OB9ffPf0/HVtPVkqrblVuNE9XVP80WilOH966PIDiXzwXaCo/cTswFoBeseccYRGw== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/get-npm-exec-opts" "5.0.0" npmlog "^4.1.2" -"@lerna/otplease@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" - integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== +"@lerna/otplease@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/otplease/-/otplease-5.0.0.tgz#5b0419f64908d7ad840c2735e0284d67cd37095b" + integrity sha512-QLLkEy1DPN1XFRAAZDHxAD26MHFQDHfzB6KKSzRYxbHc6lH/YbDaMH1RloSWIm7Hwkxl/3NgpokgN4Lj5XFuzg== dependencies: - "@lerna/prompt" "4.0.0" + "@lerna/prompt" "5.0.0" -"@lerna/output@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" - integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== +"@lerna/output@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/output/-/output-5.0.0.tgz#f3712f0cad3e9ef73c803fe368f6a9ac20403868" + integrity sha512-/7sUJQWPcvnLudjVIdN7t9MlfBLuP4JCDAWgQMqZe+wpQRuKNyKQ5dLBH5NHU/ElJCjAwMPfWuk3mh3GuvuiGA== dependencies: npmlog "^4.1.2" -"@lerna/pack-directory@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" - integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== +"@lerna/pack-directory@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/pack-directory/-/pack-directory-5.0.0.tgz#f277418545786ca68ca15647bab52ad29bd57f59" + integrity sha512-E1SNDS7xSWhJrTSmRzJK7DibneljrymviKcsZW3mRl4TmF4CpYJmNXCMlhEtKEy6ghnGQvnl3/4+eslHDJ5J/w== dependencies: - "@lerna/get-packed" "4.0.0" - "@lerna/package" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" + "@lerna/get-packed" "5.0.0" + "@lerna/package" "5.0.0" + "@lerna/run-lifecycle" "5.0.0" + "@lerna/temp-write" "5.0.0" npm-packlist "^2.1.4" npmlog "^4.1.2" tar "^6.1.0" - temp-write "^4.0.0" -"@lerna/package-graph@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" - integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== +"@lerna/package-graph@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/package-graph/-/package-graph-5.0.0.tgz#53e88ef46359ef7a2f6e3b7c5bab82302a10653f" + integrity sha512-Z3QeUQVjux0Blo64rA3/NivoLDlsQBjsZRIgGLbcQh7l7pJrqLK1WyNCBbPJ0KQNljQqUXthCKzdefnEWe37Ew== dependencies: - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/prerelease-id-from-version" "5.0.0" + "@lerna/validation-error" "5.0.0" npm-package-arg "^8.1.0" npmlog "^4.1.2" semver "^7.3.4" -"@lerna/package@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" - integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== +"@lerna/package@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/package/-/package-5.0.0.tgz#4beeb3a1e8eed6e7ae9cebca283c7684278cdd28" + integrity sha512-/JiUU88bhbYEUTzPqoGLGwrrdWWTIVMlBb1OPxCGNGDEqYYNySX+OTTSs3zGMcmJnRNI0UyQALiEd0sh3JFN5w== dependencies: load-json-file "^6.2.0" npm-package-arg "^8.1.0" write-pkg "^4.0.0" -"@lerna/prerelease-id-from-version@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" - integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== +"@lerna/prerelease-id-from-version@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-5.0.0.tgz#3edb90ba9ceace97708d03ff9f650d177f973184" + integrity sha512-bUZwyx6evRn2RxogOQXaiYxRK1U/1Mh/KLO4n49wUhqb8S8Vb9aG3+7lLOgg4ZugHpj9KAlD3YGEKvwYQiWzhg== dependencies: semver "^7.3.4" -"@lerna/profiler@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" - integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== +"@lerna/profiler@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/profiler/-/profiler-5.0.0.tgz#e1b74d17dbd6172b5ce9c80426b336bf6ab2e8e9" + integrity sha512-hFX+ZtoH7BdDoGI+bqOYaSptJTFI58wNK9qq/pHwL5ksV7vOhxP2cQAuo1SjgBKHGl0Ex/9ZT080YVV4jP1ehw== dependencies: fs-extra "^9.1.0" npmlog "^4.1.2" upath "^2.0.1" -"@lerna/project@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" - integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== +"@lerna/project@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/project/-/project-5.0.0.tgz#31672891236696b2a70226388de0300c6086d75f" + integrity sha512-+izHk7D/Di2b0s69AzKzAa/qBz32H9s67oN9aKntrjNylpY7iN5opU157l60Kh4TprYHU5bLisqzFLZsHHADGw== dependencies: - "@lerna/package" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/package" "5.0.0" + "@lerna/validation-error" "5.0.0" cosmiconfig "^7.0.0" dedent "^0.7.0" dot-prop "^6.0.1" @@ -3879,38 +3884,38 @@ resolve-from "^5.0.0" write-json-file "^4.3.0" -"@lerna/prompt@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" - integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== +"@lerna/prompt@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/prompt/-/prompt-5.0.0.tgz#31d3d82ecd17e863f8b7cc7944accff4f3de3395" + integrity sha512-cq2k04kOPY1yuJNHJn4qfBDDrCi9PF4Q228JICa6bxaONRf/C/TRsEQXHVIdlax8B3l53LnlGv5GECwRuvkQbA== dependencies: inquirer "^7.3.3" npmlog "^4.1.2" -"@lerna/publish@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" - integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== +"@lerna/publish@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/publish/-/publish-5.0.0.tgz#27c4c469e6abd5b52e977568d328632929e859b1" + integrity sha512-QEWFtN8fW1M+YXEQOWb2XBBCT137CrwHYK29ojMXW9HShvSZezf8Q/niH91nZ4kIhWdpOGz4w3rKopsumAM5SA== dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/log-packed" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/npm-dist-tag" "4.0.0" - "@lerna/npm-publish" "4.0.0" - "@lerna/otplease" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/pack-directory" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/version" "4.0.0" + "@lerna/check-working-tree" "5.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/collect-updates" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/describe-ref" "5.0.0" + "@lerna/log-packed" "5.0.0" + "@lerna/npm-conf" "5.0.0" + "@lerna/npm-dist-tag" "5.0.0" + "@lerna/npm-publish" "5.0.0" + "@lerna/otplease" "5.0.0" + "@lerna/output" "5.0.0" + "@lerna/pack-directory" "5.0.0" + "@lerna/prerelease-id-from-version" "5.0.0" + "@lerna/prompt" "5.0.0" + "@lerna/pulse-till-done" "5.0.0" + "@lerna/run-lifecycle" "5.0.0" + "@lerna/run-topologically" "5.0.0" + "@lerna/validation-error" "5.0.0" + "@lerna/version" "5.0.0" fs-extra "^9.1.0" libnpmaccess "^4.0.1" npm-package-arg "^8.1.0" @@ -3918,126 +3923,138 @@ npmlog "^4.1.2" p-map "^4.0.0" p-pipe "^3.1.0" - pacote "^11.2.6" + pacote "^13.4.1" semver "^7.3.4" -"@lerna/pulse-till-done@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" - integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== +"@lerna/pulse-till-done@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/pulse-till-done/-/pulse-till-done-5.0.0.tgz#df3c32c2d7457362956d997da366f5c060953eef" + integrity sha512-qFeVybGIZbQSWKasWIzZmHsvCQMC/AwTz5B44a0zTt5eSNQuI65HRpKKUgmFFu/Jzd7u+yp7eP+NQ53gjOcQlQ== dependencies: npmlog "^4.1.2" -"@lerna/query-graph@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" - integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== +"@lerna/query-graph@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/query-graph/-/query-graph-5.0.0.tgz#76c45f648915ef5c884c32c3d35daa3ebb53440b" + integrity sha512-C/HXssBI8DVsZ/7IDW6JG9xhoHtWywi3L5oZB9q84MBYpQ9otUv6zbB+K4JCj7w9WHcuFWe2T/mc9wsaFuvB5g== dependencies: - "@lerna/package-graph" "4.0.0" + "@lerna/package-graph" "5.0.0" -"@lerna/resolve-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" - integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== +"@lerna/resolve-symlink@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/resolve-symlink/-/resolve-symlink-5.0.0.tgz#edff89908e90a390791ab762305d34aa95e7bdbe" + integrity sha512-O1EMQh3O3nKjLyI2guCCaxmi9xzZXpiMZhrz2ki5ENEDB2N1+f7cZ2THT0lEOIkLRuADI6hrzoN1obJ+TTk+KQ== dependencies: fs-extra "^9.1.0" npmlog "^4.1.2" read-cmd-shim "^2.0.0" -"@lerna/rimraf-dir@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" - integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== +"@lerna/rimraf-dir@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/rimraf-dir/-/rimraf-dir-5.0.0.tgz#9e7689610415e6d68c9e766a462c8acfdbf04b9a" + integrity sha512-hWJg/13CiSUrWWEek3B/A1mkvBbcPvG5z69/Ugyerdpzlw44ubf02MAZ0/kXPJjkICI2hMrS07YotQ60LdYpCw== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "5.0.0" npmlog "^4.1.2" path-exists "^4.0.0" rimraf "^3.0.2" -"@lerna/run-lifecycle@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" - integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== +"@lerna/run-lifecycle@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/run-lifecycle/-/run-lifecycle-5.0.0.tgz#0f62c2faebc19e4ee247bdfa1e05b2a9f51b0637" + integrity sha512-36mAm9rC5DSliFShI0Y4ICjgrJXdIIVt7VW9rdbdJ8/XYjRHDzhGPB9Sc1neJOVlGL4DmaArvh5tGgo62KPJYQ== dependencies: - "@lerna/npm-conf" "4.0.0" - npm-lifecycle "^3.1.5" + "@lerna/npm-conf" "5.0.0" + "@npmcli/run-script" "^3.0.2" npmlog "^4.1.2" -"@lerna/run-topologically@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" - integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== +"@lerna/run-topologically@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/run-topologically/-/run-topologically-5.0.0.tgz#0b0156e3ebe2bf768b9ba1339e02e947e70d1dd1" + integrity sha512-B2s1N/+r3sfPOLRA2svNk+C52JpXQleMuGap0yhOx5mZzR1M2Lo4vpe9Ody4hCvXQjfdLx/U342fxVmgugUtfQ== dependencies: - "@lerna/query-graph" "4.0.0" + "@lerna/query-graph" "5.0.0" p-queue "^6.6.2" -"@lerna/run@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" - integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== +"@lerna/run@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/run/-/run-5.0.0.tgz#3af69d1a787866cf85072a0ae9571b9c3bf262e7" + integrity sha512-8nBZstqKSO+7wHlKk1g+iexSYRVVNJq/u5ZbAzBiHNrABtqA6/0G7q9vsAEMsnPZ8ARAUYpwvbfKTipjpWH0VA== dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-run-script" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/timer" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/command" "5.0.0" + "@lerna/filter-options" "5.0.0" + "@lerna/npm-run-script" "5.0.0" + "@lerna/output" "5.0.0" + "@lerna/profiler" "5.0.0" + "@lerna/run-topologically" "5.0.0" + "@lerna/timer" "5.0.0" + "@lerna/validation-error" "5.0.0" p-map "^4.0.0" -"@lerna/symlink-binary@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" - integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== +"@lerna/symlink-binary@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/symlink-binary/-/symlink-binary-5.0.0.tgz#f9da5673ed3a44570fa4d2e691759f82bd7ad057" + integrity sha512-uYyiiNjkdL1tWf8MDXIIyCa/a2gmYaUxagqMgEZ4wRtOk+PDypDwMUFVop/EQtUWZqG5CAJBJYOztG3DdapTbA== dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/package" "4.0.0" + "@lerna/create-symlink" "5.0.0" + "@lerna/package" "5.0.0" fs-extra "^9.1.0" p-map "^4.0.0" -"@lerna/symlink-dependencies@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" - integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== +"@lerna/symlink-dependencies@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/symlink-dependencies/-/symlink-dependencies-5.0.0.tgz#878b0f52737f82bb7014e13afda8efc606fc071c" + integrity sha512-wlZGOOB87XMy278hpF4fOwGNnjTXf1vJ/cFHIdKsJAiDipyhtnuCiJLBDPh4NzEGb02o4rhaqt8Nl5yWRu9CNA== dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/resolve-symlink" "4.0.0" - "@lerna/symlink-binary" "4.0.0" + "@lerna/create-symlink" "5.0.0" + "@lerna/resolve-symlink" "5.0.0" + "@lerna/symlink-binary" "5.0.0" fs-extra "^9.1.0" p-map "^4.0.0" p-map-series "^2.1.0" -"@lerna/timer@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" - integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== +"@lerna/temp-write@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/temp-write/-/temp-write-5.0.0.tgz#44f8c7c82f498e15db33c166d063be117b819162" + integrity sha512-JOkRR6xyASuBy1udyS/VD52Wgywnz7cSKppD+QKIDseNzTq27I9mNmb702BSXNXIdD19lLVQ7q6WoAlpnelnZg== + dependencies: + graceful-fs "^4.1.15" + is-stream "^2.0.0" + make-dir "^3.0.0" + temp-dir "^1.0.0" + uuid "^8.3.2" -"@lerna/validation-error@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" - integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== +"@lerna/timer@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/timer/-/timer-5.0.0.tgz#ab8fba29f90de21b0eb02406916269122deb2e41" + integrity sha512-p2vevkpB6V/b0aR8VyMLDfg0Arp9VvMxcZOEu+IfZ9XKTtnbwjWPHKUOS34x/VGa6bnOIWjE046ixWymOs/fTw== + +"@lerna/validation-error@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/validation-error/-/validation-error-5.0.0.tgz#3d3557023e3eb2fd3d8fc9c89f7352a1b6e5bd3e" + integrity sha512-fu/MhqRXiRQM2cirP/HoSkfwc5XtJ21G60WHv74RnanKBqWEZAUALWa3MQN2sYhVV/FpDW3GLkO008IW5NWzdg== dependencies: npmlog "^4.1.2" -"@lerna/version@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" - integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== +"@lerna/version@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/version/-/version-5.0.0.tgz#36a808e8b4458febd58a6b76852f2ce30e740ca1" + integrity sha512-M8KvdyG5kR/d3wgg5S46Q2YMf0L9iw9MiumTvlDP4ckysTt+04kS74Vp4+aClgPM4xaoI5OuMrs6wy5ICcd3Pw== dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/conventional-commits" "4.0.0" - "@lerna/github-client" "4.0.0" - "@lerna/gitlab-client" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/check-working-tree" "5.0.0" + "@lerna/child-process" "5.0.0" + "@lerna/collect-updates" "5.0.0" + "@lerna/command" "5.0.0" + "@lerna/conventional-commits" "5.0.0" + "@lerna/github-client" "5.0.0" + "@lerna/gitlab-client" "5.0.0" + "@lerna/output" "5.0.0" + "@lerna/prerelease-id-from-version" "5.0.0" + "@lerna/prompt" "5.0.0" + "@lerna/run-lifecycle" "5.0.0" + "@lerna/run-topologically" "5.0.0" + "@lerna/temp-write" "5.0.0" + "@lerna/validation-error" "5.0.0" chalk "^4.1.0" dedent "^0.7.0" load-json-file "^6.2.0" @@ -4049,13 +4066,12 @@ p-waterfall "^2.1.1" semver "^7.3.4" slash "^3.0.0" - temp-write "^4.0.0" write-json-file "^4.3.0" -"@lerna/write-log-file@4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" - integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== +"@lerna/write-log-file@5.0.0": + version "5.0.0" + resolved "https://registry.npmjs.org/@lerna/write-log-file/-/write-log-file-5.0.0.tgz#ad3d33d6153b962beef48442ab6472233b5d5197" + integrity sha512-kpPNxe9xm36QbCWY7DwO96Na6FpCHzZinJtw6ttBHslIcdR38lZuCp+/2KfJcVsRIPNOsp1VvgP7EZIKiBhgjw== dependencies: npmlog "^4.1.2" write-file-atomic "^3.0.3" @@ -4427,6 +4443,46 @@ "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" +"@npmcli/arborist@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-5.2.0.tgz#ee40dfe1f81ae1524819ee39c8f3e7022b0d6269" + integrity sha512-zWV7scFGL0SmpvfQyIWnMFbU/0YgtMNyvJiJwR98kyjUSntJGWFFR0O600d5W+TrDcTg0GyDbY+HdzGEg+GXLg== + dependencies: + "@isaacs/string-locale-compare" "^1.1.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/map-workspaces" "^2.0.3" + "@npmcli/metavuln-calculator" "^3.0.1" + "@npmcli/move-file" "^2.0.0" + "@npmcli/name-from-folder" "^1.0.1" + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/package-json" "^2.0.0" + "@npmcli/run-script" "^3.0.0" + bin-links "^3.0.0" + cacache "^16.0.6" + common-ancestor-path "^1.0.1" + json-parse-even-better-errors "^2.3.1" + json-stringify-nice "^1.1.4" + mkdirp "^1.0.4" + mkdirp-infer-owner "^2.0.0" + nopt "^5.0.0" + npm-install-checks "^5.0.0" + npm-package-arg "^9.0.0" + npm-pick-manifest "^7.0.0" + npm-registry-fetch "^13.0.0" + npmlog "^6.0.2" + pacote "^13.0.5" + parse-conflict-json "^2.0.1" + proc-log "^2.0.0" + promise-all-reject-late "^1.0.0" + promise-call-limit "^1.0.1" + read-package-json-fast "^2.0.2" + readdir-scoped-modules "^1.1.0" + rimraf "^3.0.2" + semver "^7.3.7" + ssri "^9.0.0" + treeverse "^2.0.0" + walk-up-path "^1.0.0" + "@npmcli/arborist@^4.0.4": version "4.3.1" resolved "https://registry.npmjs.org/@npmcli/arborist/-/arborist-4.3.1.tgz#a08cddce3339882f688c1dea1651f6971e781c44" @@ -4478,7 +4534,15 @@ "@gar/promisify" "^1.0.1" semver "^7.3.5" -"@npmcli/git@^2.0.1", "@npmcli/git@^2.1.0": +"@npmcli/fs@^2.1.0": + version "2.1.0" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz#f2a21c28386e299d1a9fae8051d35ad180e33109" + integrity sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ== + dependencies: + "@gar/promisify" "^1.1.3" + semver "^7.3.5" + +"@npmcli/git@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== @@ -4492,6 +4556,21 @@ semver "^7.3.5" which "^2.0.2" +"@npmcli/git@^3.0.0": + version "3.0.1" + resolved "https://registry.npmjs.org/@npmcli/git/-/git-3.0.1.tgz#049b99b1381a2ddf7dc56ba3e91eaf76ca803a8d" + integrity sha512-UU85F/T+F1oVn3IsB/L6k9zXIMpXBuUBE25QDH0SsURwT6IOBqkC7M16uqo2vVZIyji3X1K4XH9luip7YekH1A== + dependencies: + "@npmcli/promise-spawn" "^3.0.0" + lru-cache "^7.4.4" + mkdirp "^1.0.4" + npm-pick-manifest "^7.0.0" + proc-log "^2.0.0" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^2.0.2" + "@npmcli/installed-package-contents@^1.0.6", "@npmcli/installed-package-contents@^1.0.7": version "1.0.7" resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" @@ -4510,6 +4589,16 @@ minimatch "^3.0.4" read-package-json-fast "^2.0.1" +"@npmcli/map-workspaces@^2.0.3": + version "2.0.3" + resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.3.tgz#2d3c75119ee53246e9aa75bc469a55281cd5f08f" + integrity sha512-X6suAun5QyupNM8iHkNPh0AHdRC2rb1W+MTdMvvA/2ixgmqZwlq5cGUBgmKHUHT2LgrkKJMAXbfAoTxOigpK8Q== + dependencies: + "@npmcli/name-from-folder" "^1.0.1" + glob "^8.0.1" + minimatch "^5.0.1" + read-package-json-fast "^2.0.3" + "@npmcli/metavuln-calculator@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-2.0.0.tgz#70937b8b5a5cad5c588c8a7b38c4a8bd6f62c84c" @@ -4520,6 +4609,16 @@ pacote "^12.0.0" semver "^7.3.2" +"@npmcli/metavuln-calculator@^3.0.1": + version "3.1.0" + resolved "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-3.1.0.tgz#b1c2f0991c4f2d992b1615a54d4358c05efc3702" + integrity sha512-Q5fbQqGDlYqk7kWrbg6E2j/mtqQjZop0ZE6735wYA1tYNHguIDjAuWs+kFb5rJCkLIlXllfapvsyotYKiZOTBA== + dependencies: + cacache "^16.0.0" + json-parse-even-better-errors "^2.3.1" + pacote "^13.0.3" + semver "^7.3.5" + "@npmcli/move-file@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" @@ -4535,6 +4634,14 @@ mkdirp "^1.0.4" rimraf "^3.0.2" +"@npmcli/move-file@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.0.tgz#417f585016081a0184cef3e38902cd917a9bbd02" + integrity sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + "@npmcli/name-from-folder@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" @@ -4545,6 +4652,11 @@ resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== +"@npmcli/node-gyp@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz#8c20e53e34e9078d18815c1d2dda6f2420d75e35" + integrity sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A== + "@npmcli/package-json@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-1.0.1.tgz#1ed42f00febe5293c3502fd0ef785647355f6e89" @@ -4552,6 +4664,13 @@ dependencies: json-parse-even-better-errors "^2.3.1" +"@npmcli/package-json@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/package-json/-/package-json-2.0.0.tgz#3bbcf4677e21055adbe673d9f08c9f9cde942e4a" + integrity sha512-42jnZ6yl16GzjWSH7vtrmWyJDGVa/LXPdpN2rcUWolFjc9ON2N3uz0qdBbQACfmhuJZ2lbKYtmK5qx68ZPLHMA== + dependencies: + json-parse-even-better-errors "^2.3.1" + "@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": version "1.3.2" resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" @@ -4559,17 +4678,12 @@ dependencies: infer-owner "^1.0.4" -"@npmcli/run-script@^1.8.2": - version "1.8.3" - resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.3.tgz#07f440ed492400bb1114369bc37315eeaaae2bb3" - integrity sha512-ELPGWAVU/xyU+A+H3pEPj0QOvYwLTX71RArXcClFzeiyJ/b/McsZ+d0QxpznvfFtZzxGN/gz/1cvlqICR4/suQ== +"@npmcli/promise-spawn@^3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz#53283b5f18f855c6925f23c24e67c911501ef573" + integrity sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g== dependencies: - "@npmcli/node-gyp" "^1.0.2" - "@npmcli/promise-spawn" "^1.3.2" infer-owner "^1.0.4" - node-gyp "^7.1.0" - puka "^1.0.1" - read-package-json-fast "^2.0.1" "@npmcli/run-script@^2.0.0": version "2.0.0" @@ -4581,6 +4695,16 @@ node-gyp "^8.2.0" read-package-json-fast "^2.0.1" +"@npmcli/run-script@^3.0.0", "@npmcli/run-script@^3.0.1", "@npmcli/run-script@^3.0.2": + version "3.0.3" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-3.0.3.tgz#66afa6e0c4c3484056195f295fa6c1d1a45ddf58" + integrity sha512-ZXL6qgC5NjwfZJ2nET+ZSLEz/PJgJ/5CU90C2S66dZY4Jw73DasS4ZCXuy/KHWYP0imjJ4VtA+Gebb5BxxKp9Q== + dependencies: + "@npmcli/node-gyp" "^2.0.0" + "@npmcli/promise-spawn" "^3.0.0" + node-gyp "^8.4.1" + read-package-json-fast "^2.0.3" + "@nuxtjs/opencollective@0.3.2": version "0.3.2" resolved "https://registry.npmjs.org/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz#620ce1044f7ac77185e825e1936115bb38e2681c" @@ -7452,6 +7576,15 @@ agentkeepalive@^4.1.3, agentkeepalive@^4.1.4, agentkeepalive@^4.2.0: depd "^1.1.2" humanize-ms "^1.2.1" +agentkeepalive@^4.2.1: + version "4.2.1" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== + dependencies: + debug "^4.1.0" + depd "^1.1.2" + humanize-ms "^1.2.1" + aggregate-error@^3.0.0, aggregate-error@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -8823,6 +8956,13 @@ builtins@^1.0.3: resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= +builtins@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz#87f6db9ab0458be728564fa81d876d8d74552fa9" + integrity sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ== + dependencies: + semver "^7.0.0" + byline@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" @@ -8867,6 +9007,30 @@ cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0, cacache@^15.3.0: tar "^6.0.2" unique-filename "^1.1.1" +cacache@^16.0.0, cacache@^16.0.6, cacache@^16.1.0: + version "16.1.1" + resolved "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz#4e79fb91d3efffe0630d5ad32db55cc1b870669c" + integrity sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg== + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + glob "^8.0.1" + infer-owner "^1.0.4" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -9183,7 +9347,7 @@ chokidar@^3.3.1, chokidar@^3.4.2, chokidar@^3.5.2, chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.1, chownr@^1.1.4: +chownr@^1.1.1: version "1.1.4" resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== @@ -9514,7 +9678,7 @@ color-string@^1.5.2, color-string@^1.9.0: color-name "^1.0.0" simple-swizzle "^0.2.2" -color-support@^1.1.2: +color-support@^1.1.2, color-support@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== @@ -11508,7 +11672,7 @@ encodeurl@~1.0.2: resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -encoding@^0.1.12: +encoding@^0.1.12, encoding@^0.1.13: version "0.1.13" resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== @@ -11631,7 +11795,7 @@ error@^10.4.0: resolved "https://registry.npmjs.org/error/-/error-10.4.0.tgz#6fcf0fd64bceb1e750f8ed9a3dd880f00e46a487" integrity sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw== -es-abstract@^1.17.0-next.1, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es-abstract@^1.19.1: +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es-abstract@^1.19.1: version "1.19.1" resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== @@ -13156,13 +13320,6 @@ fs-extra@^9.0.0, fs-extra@^9.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-minipass@^1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-minipass@^2.0.0, fs-minipass@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -13250,6 +13407,20 @@ gauge@^4.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" + gauge@~2.7.3: version "2.7.4" resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -13675,7 +13846,7 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.9" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== @@ -14098,6 +14269,13 @@ hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" +hosted-git-info@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.0.0.tgz#df7a06678b4ebd722139786303db80fdf302ea56" + integrity sha512-rRnjWu0Bxj+nIfUOkz0695C0H6tRrN5iYIzYejb0tDEefe2AekHu/U5Kn9pEie5vsJqpNQU02az7TGSH3qpz4Q== + dependencies: + lru-cache "^7.5.1" + hpack.js@^2.1.6: version "2.1.6" resolved "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" @@ -16681,27 +16859,27 @@ leasot@^12.0.0: strip-ansi "^6.0.0" text-table "^0.2.0" -lerna@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" - integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== +lerna@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/lerna/-/lerna-5.0.0.tgz#077e35d41fcead5ea223af1862dc25475e1aaf2a" + integrity sha512-dUYmJ7H9k/xHtwKpQWLTNUa1jnFUiW4o4K2LFkRchlIijoIUT4yK/RprIxNvYCrLrEaOdZryvY5UZvSHI2tBxA== dependencies: - "@lerna/add" "4.0.0" - "@lerna/bootstrap" "4.0.0" - "@lerna/changed" "4.0.0" - "@lerna/clean" "4.0.0" - "@lerna/cli" "4.0.0" - "@lerna/create" "4.0.0" - "@lerna/diff" "4.0.0" - "@lerna/exec" "4.0.0" - "@lerna/import" "4.0.0" - "@lerna/info" "4.0.0" - "@lerna/init" "4.0.0" - "@lerna/link" "4.0.0" - "@lerna/list" "4.0.0" - "@lerna/publish" "4.0.0" - "@lerna/run" "4.0.0" - "@lerna/version" "4.0.0" + "@lerna/add" "5.0.0" + "@lerna/bootstrap" "5.0.0" + "@lerna/changed" "5.0.0" + "@lerna/clean" "5.0.0" + "@lerna/cli" "5.0.0" + "@lerna/create" "5.0.0" + "@lerna/diff" "5.0.0" + "@lerna/exec" "5.0.0" + "@lerna/import" "5.0.0" + "@lerna/info" "5.0.0" + "@lerna/init" "5.0.0" + "@lerna/link" "5.0.0" + "@lerna/list" "5.0.0" + "@lerna/publish" "5.0.0" + "@lerna/run" "5.0.0" + "@lerna/version" "5.0.0" import-local "^3.0.2" npmlog "^4.1.2" @@ -17314,6 +17492,11 @@ lru-cache@^7.3.1: resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.3.1.tgz#7702e80694ec2bf19865567a469f2b081fcf53f5" integrity sha512-nX1x4qUrKqwbIAhv4s9et4FIUVzNOpeY07bsjGUy8gwJrXH/wScImSQqXErmo/b2jZY2r0mohbLA9zVj7u1cNw== +lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: + version "7.10.1" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.10.1.tgz#db577f42a94c168f676b638d15da8fb073448cab" + integrity sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A== + lunr@^2.3.9: version "2.3.9" resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" @@ -17395,6 +17578,28 @@ make-fetch-happen@^10.0.1: socks-proxy-agent "^6.1.1" ssri "^8.0.1" +make-fetch-happen@^10.0.6: + version "10.1.7" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.1.7.tgz#b1402cb3c9fad92b380ff3a863cdae5414a42f76" + integrity sha512-J/2xa2+7zlIUKqfyXDCXFpH3ypxO4k3rgkZHPSZkyUYcBT/hM80M3oyKLM/9dVriZFiGeGGS2Ei+0v2zfhqj3Q== + dependencies: + agentkeepalive "^4.2.1" + cacache "^16.1.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-fetch "^2.0.3" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.3" + promise-retry "^2.0.1" + socks-proxy-agent "^7.0.0" + ssri "^9.0.0" + make-fetch-happen@^8.0.9: version "8.0.14" resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" @@ -18266,6 +18471,17 @@ minipass-fetch@^1.3.0, minipass-fetch@^1.3.2, minipass-fetch@^1.4.1: optionalDependencies: encoding "^0.1.12" +minipass-fetch@^2.0.3: + version "2.1.0" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.0.tgz#ca1754a5f857a3be99a9271277246ac0b44c3ff8" + integrity sha512-H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg== + dependencies: + minipass "^3.1.6" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -18295,14 +18511,6 @@ minipass-sized@^1.0.3: dependencies: minipass "^3.0.0" -minipass@^2.6.0, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: version "3.1.6" resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" @@ -18310,13 +18518,6 @@ minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3. dependencies: yallist "^4.0.0" -minizlib@^1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -18362,7 +18563,7 @@ mkdirp@0.3.0: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4= -"mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@^0.5.5: +"mkdirp@>=0.5 0", mkdirp@^0.5.1: version "0.5.5" resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -18712,40 +18913,7 @@ node-forge@^1, node-forge@^1.0.0: resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== -node-gyp@^5.0.2: - version "5.1.0" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.0.tgz#8e31260a7af4a2e2f994b0673d4e0b3866156332" - integrity sha512-OUTryc5bt/P8zVgNUmC6xdXiDJxLMAW8cF5tLQOT9E5sOQj+UeQxnnPy74K3CLCa/SOjjBlbuzDLR8ANwA+wmw== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.1.2" - request "^2.88.0" - rimraf "^2.6.3" - semver "^5.7.1" - tar "^4.4.12" - which "^1.3.1" - -node-gyp@^7.1.0: - version "7.1.2" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" - rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" - which "^2.0.2" - -node-gyp@^8.2.0: +node-gyp@^8.2.0, node-gyp@^8.4.1: version "8.4.1" resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" integrity sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w== @@ -18833,14 +19001,6 @@ nopt@1.0.10, nopt@~1.0.10: dependencies: abbrev "1" -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - nopt@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" @@ -18848,7 +19008,7 @@ nopt@^5.0.0: dependencies: abbrev "1" -normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -18868,6 +19028,16 @@ normalize-package-data@^3.0.0: semver "^7.3.2" validate-npm-package-license "^3.0.1" +normalize-package-data@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.0.tgz#1122d5359af21d4cd08718b92b058a658594177c" + integrity sha512-m+GL22VXJKkKbw62ZaBBjv8u6IE3UI4Mh5QakIqs3fWiKe0Xyi6L97hakwZK41/LD4R/2ly71Bayx0NLMwLA/g== + dependencies: + hosted-git-info "^5.0.0" + is-core-module "^2.8.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -18909,19 +19079,12 @@ npm-install-checks@^4.0.0: dependencies: semver "^7.1.1" -npm-lifecycle@^3.1.5: - version "3.1.5" - resolved "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" - integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== +npm-install-checks@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz#5ff27d209a4e3542b8ac6b0c1db6063506248234" + integrity sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA== dependencies: - byline "^5.0.0" - graceful-fs "^4.1.15" - node-gyp "^5.0.2" - resolve-from "^4.0.0" - slide "^1.1.6" - uid-number "0.0.6" - umask "^1.1.0" - which "^1.3.1" + semver "^7.1.1" npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: version "1.0.1" @@ -18937,6 +19100,15 @@ npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-pack semver "^7.3.4" validate-npm-package-name "^3.0.0" +npm-package-arg@^9.0.0, npm-package-arg@^9.0.1: + version "9.0.2" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.0.2.tgz#f3ef7b1b3b02e82564af2d5228b4c36567dcd389" + integrity sha512-v/miORuX8cndiOheW8p2moNuPJ7QhcFh9WGlTorruG8hXSA23vMTEp5hTCmDxic0nD8KHhj/NQgFuySD3GYY3g== + dependencies: + hosted-git-info "^5.0.0" + semver "^7.3.5" + validate-npm-package-name "^4.0.0" + npm-packlist@^2.1.4: version "2.1.4" resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.4.tgz#40e96b2b43787d0546a574542d01e066640d09da" @@ -18957,7 +19129,7 @@ npm-packlist@^3.0.0: npm-bundled "^1.1.1" npm-normalize-package-bin "^1.0.1" -npm-packlist@^5.0.0: +npm-packlist@^5.0.0, npm-packlist@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.0.tgz#f3fd52903a021009913a133732022132eb355ce7" integrity sha512-a04sqF6FbkyOAFA19AA0e94gS7Et5T2/IMj3VOT9nOF2RaRdVPQ1Q17Fb/HaDRFs+gbC7HOmhVZ29adpWgmDZg== @@ -18977,6 +19149,16 @@ npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.0, npm-pick-manifest@^6.1.1: npm-package-arg "^8.1.2" semver "^7.3.4" +npm-pick-manifest@^7.0.0: + version "7.0.1" + resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz#76dda30a7cd6b99be822217a935c2f5eacdaca4c" + integrity sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg== + dependencies: + npm-install-checks "^5.0.0" + npm-normalize-package-bin "^1.0.1" + npm-package-arg "^9.0.0" + semver "^7.3.5" + npm-registry-fetch@^12.0.0, npm-registry-fetch@^12.0.1: version "12.0.2" resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz#ae583bb3c902a60dae43675b5e33b5b1f6159f1e" @@ -18989,6 +19171,19 @@ npm-registry-fetch@^12.0.0, npm-registry-fetch@^12.0.1: minizlib "^2.1.2" npm-package-arg "^8.1.5" +npm-registry-fetch@^13.0.0, npm-registry-fetch@^13.0.1: + version "13.1.1" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.1.1.tgz#26dc4b26d0a545886e807748032ba2aefaaae96b" + integrity sha512-5p8rwe6wQPLJ8dMqeTnA57Dp9Ox6GH9H60xkyJup07FmVlu3Mk7pf/kIIpl9gaN5bM8NM+UUx3emUWvDNTt39w== + dependencies: + make-fetch-happen "^10.0.6" + minipass "^3.1.6" + minipass-fetch "^2.0.3" + minipass-json-stream "^1.0.1" + minizlib "^2.1.2" + npm-package-arg "^9.0.1" + proc-log "^2.0.0" + npm-registry-fetch@^9.0.0: version "9.0.0" resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" @@ -19054,6 +19249,16 @@ npmlog@^6.0.0: gauge "^4.0.0" set-blocking "^2.0.0" +npmlog@^6.0.2: + version "6.0.2" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + dependencies: + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" + nth-check@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" @@ -19169,14 +19374,6 @@ object.fromentries@^2.0.5: define-properties "^1.1.3" es-abstract "^1.19.1" -object.getownpropertydescriptors@^2.0.3: - version "2.1.0" - resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - object.hasown@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" @@ -19380,11 +19577,6 @@ os-browserify@^0.3.0: resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - os-locale@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" @@ -19400,19 +19592,11 @@ os-name@^3.1.0: macos-release "^2.2.0" windows-release "^3.1.0" -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: +os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - ospath@^1.2.2: version "1.2.2" resolved "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz#1276639774a3f8ef2572f7fe4280e0ea4550c07b" @@ -19601,31 +19785,6 @@ packet-reader@1.0.0: resolved "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74" integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== -pacote@^11.2.6: - version "11.2.6" - resolved "https://registry.npmjs.org/pacote/-/pacote-11.2.6.tgz#c0426e5d5c8d33aeea3461a75e1390f1ba78f953" - integrity sha512-xCl++Hb3aBC7LaWMimbO4xUqZVsEbKDVc6KKDIIyAeBYrmMwY1yJC2nES/lsGd8sdQLUosgBxQyuVNncZ2Ru0w== - dependencies: - "@npmcli/git" "^2.0.1" - "@npmcli/installed-package-contents" "^1.0.6" - "@npmcli/promise-spawn" "^1.2.0" - "@npmcli/run-script" "^1.8.2" - cacache "^15.0.5" - chownr "^2.0.0" - fs-minipass "^2.1.0" - infer-owner "^1.0.4" - minipass "^3.1.3" - mkdirp "^1.0.3" - npm-package-arg "^8.0.1" - npm-packlist "^2.1.4" - npm-pick-manifest "^6.0.0" - npm-registry-fetch "^9.0.0" - promise-retry "^2.0.1" - read-package-json-fast "^2.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.1.0" - pacote@^12.0.0, pacote@^12.0.2: version "12.0.3" resolved "https://registry.npmjs.org/pacote/-/pacote-12.0.3.tgz#b6f25868deb810e7e0ddf001be88da2bcaca57c7" @@ -19651,6 +19810,33 @@ pacote@^12.0.0, pacote@^12.0.2: ssri "^8.0.1" tar "^6.1.0" +pacote@^13.0.3, pacote@^13.0.5, pacote@^13.4.1: + version "13.6.0" + resolved "https://registry.npmjs.org/pacote/-/pacote-13.6.0.tgz#79ea3d3ae5a2b29e2994dcf18d75494e8d888032" + integrity sha512-zHmuCwG4+QKnj47LFlW3LmArwKoglx2k5xtADiMCivVWPgNRP5QyLDGOIjGjwOe61lhl1rO63m/VxT16pEHLWg== + dependencies: + "@npmcli/git" "^3.0.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/promise-spawn" "^3.0.0" + "@npmcli/run-script" "^3.0.1" + cacache "^16.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + infer-owner "^1.0.4" + minipass "^3.1.6" + mkdirp "^1.0.4" + npm-package-arg "^9.0.0" + npm-packlist "^5.1.0" + npm-pick-manifest "^7.0.0" + npm-registry-fetch "^13.0.1" + proc-log "^2.0.0" + promise-retry "^2.0.1" + read-package-json "^5.0.0" + read-package-json-fast "^2.0.3" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + pako@^1.0.10, pako@^1.0.5, pako@~1.0.5: version "1.0.11" resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -20771,6 +20957,11 @@ proc-log@^1.0.0: resolved "https://registry.npmjs.org/proc-log/-/proc-log-1.0.0.tgz#0d927307401f69ed79341e83a0b2c9a13395eb77" integrity sha512-aCk8AO51s+4JyuYGg3Q/a6gnrlDO09NpVWePtjp7xwphcoQ04x5WAfCyugcsbLooWcMJ87CLkD4+604IckEdhg== +proc-log@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz#8f3f69a1f608de27878f91f5c688b225391cb685" + integrity sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw== + process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -20964,11 +21155,6 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" safe-buffer "^5.1.2" -puka@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/puka/-/puka-1.0.1.tgz#a2df782b7eb4cf9564e4c93a5da422de0dfacc02" - integrity sha512-ssjRZxBd7BT3dte1RR3VoeT2cT/ODH8x+h0rUF1rMqB0srHYf48stSDWfiYakTp5UBZMxroZhB2+ExLDHm7W3g== - pump@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -21583,7 +21769,7 @@ read-cmd-shim@^2.0.0: resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== -read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2: +read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== @@ -21591,18 +21777,6 @@ read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2: json-parse-even-better-errors "^2.3.0" npm-normalize-package-bin "^1.0.1" -read-package-json@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz#16aa66c59e7d4dad6288f179dd9295fd59bb98f1" - integrity sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A== - dependencies: - glob "^7.1.1" - json-parse-better-errors "^1.0.1" - normalize-package-data "^2.0.0" - npm-normalize-package-bin "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.2" - read-package-json@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.0.tgz#2219328e77c9be34f035a4ce58d1fb8e2979adf9" @@ -21613,14 +21787,15 @@ read-package-json@^3.0.0: normalize-package-data "^3.0.0" npm-normalize-package-bin "^1.0.0" -read-package-tree@^5.3.1: - version "5.3.1" - resolved "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" - integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== +read-package-json@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz#1ed685d95ce258954596b13e2e0e76c7d0ab4c26" + integrity sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg== dependencies: - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - util-promisify "^2.1.0" + glob "^8.0.1" + json-parse-even-better-errors "^2.3.1" + normalize-package-data "^4.0.0" + npm-normalize-package-bin "^1.0.1" read-pkg-up@^1.0.1: version "1.0.1" @@ -21728,7 +21903,7 @@ readdir-glob@^1.0.0: dependencies: minimatch "^3.0.4" -readdir-scoped-modules@^1.0.0, readdir-scoped-modules@^1.1.0: +readdir-scoped-modules@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== @@ -22131,7 +22306,7 @@ request-progress@^3.0.0: dependencies: throttleit "^1.0.0" -request@^2.88.0, request@^2.88.2: +request@^2.88.0: version "2.88.2" resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== @@ -22497,7 +22672,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -22663,7 +22838,7 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@~7.3.0: +semver@^7.0.0, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@~7.3.0: version "7.3.7" resolved "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== @@ -22982,11 +23157,6 @@ slice-ansi@^5.0.0: ansi-styles "^6.0.0" is-fullwidth-code-point "^4.0.0" -slide@^1.1.6: - version "1.1.6" - resolved "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" - integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= - smart-buffer@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" @@ -23120,7 +23290,16 @@ socks-proxy-agent@^6.0.0, socks-proxy-agent@^6.1.1: debug "^4.3.1" socks "^2.6.1" -socks@^2.3.3, socks@^2.6.1: +socks-proxy-agent@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz#dc069ecf34436621acb41e3efa66ca1b5fed15b6" + integrity sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww== + dependencies: + agent-base "^6.0.2" + debug "^4.3.3" + socks "^2.6.2" + +socks@^2.3.3, socks@^2.6.1, socks@^2.6.2: version "2.6.2" resolved "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== @@ -23390,6 +23569,13 @@ ssri@^8.0.0, ssri@^8.0.1: dependencies: minipass "^3.1.1" +ssri@^9.0.0: + version "9.0.1" + resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057" + integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -24054,19 +24240,6 @@ tar-stream@^2.0.0, tar-stream@^2.1.4, tar-stream@^2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^4.4.12: - version "4.4.19" - resolved "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" - integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== - dependencies: - chownr "^1.1.4" - fs-minipass "^1.2.7" - minipass "^2.9.0" - minizlib "^1.3.3" - mkdirp "^0.5.5" - safe-buffer "^5.2.1" - yallist "^3.1.1" - tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: version "6.1.11" resolved "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" @@ -24132,17 +24305,6 @@ temp-dir@^1.0.0: resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= -temp-write@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" - integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== - dependencies: - graceful-fs "^4.1.15" - is-stream "^2.0.0" - make-dir "^3.0.0" - temp-dir "^1.0.0" - uuid "^3.3.2" - temp@^0.8.4: version "0.8.4" resolved "https://registry.npmjs.org/temp/-/temp-0.8.4.tgz#8c97a33a4770072e0a05f919396c7665a7dd59f2" @@ -24506,6 +24668,11 @@ treeverse@^1.0.4: resolved "https://registry.npmjs.org/treeverse/-/treeverse-1.0.4.tgz#a6b0ebf98a1bca6846ddc7ecbc900df08cb9cd5f" integrity sha512-whw60l7r+8ZU8Tu/Uc2yxtc4ZTZbR/PF3u1IPNKGQ6p8EICLb3Z2lAgoqw9bqYd8IkgnsaOcLzYHFckjqNsf0g== +treeverse@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/treeverse/-/treeverse-2.0.0.tgz#036dcef04bc3fd79a9b79a68d4da03e882d8a9ca" + integrity sha512-N5gJCkLu1aXccpOTtqV6ddSEi6ZmGkh3hjmbu1IjcavJK4qyOVQmi0myQKM7z5jVGmD68SJoliaVrMmVObhj6A== + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" @@ -24785,11 +24952,6 @@ uglify-js@^3.1.4: resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf" integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g== -uid-number@0.0.6: - version "0.0.6" - resolved "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= - uid-safe@~2.1.5: version "2.1.5" resolved "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz#2b3d5c7240e8fc2e58f8aa269e5ee49c0857bd3a" @@ -24802,11 +24964,6 @@ uid2@0.0.3, uid2@0.0.x: resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82" integrity sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I= -umask@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" - integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= - unbox-primitive@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" @@ -25202,13 +25359,6 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -util-promisify@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" - integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= - dependencies: - object.getownpropertydescriptors "^2.0.3" - util@0.10.3: version "0.10.3" resolved "https://registry.npmjs.org/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" @@ -25309,6 +25459,13 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" +validate-npm-package-name@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz#fe8f1c50ac20afdb86f177da85b3600f0ac0d747" + integrity sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q== + dependencies: + builtins "^5.0.0" + validate.io-array@^1.0.3: version "1.0.6" resolved "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz#5b5a2cafd8f8b85abb2f886ba153f2d93a27774d" @@ -25725,7 +25882,7 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0, wide-align@^1.1.2: +wide-align@^1.1.0, wide-align@^1.1.2, wide-align@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== @@ -26043,7 +26200,7 @@ yallist@^2.1.2: resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== From 8518846ede413841699b1063a36c418f89be6cd8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 11:38:35 +0000 Subject: [PATCH 169/550] chore(deps): update errata-ai/vale-action action to v2 Signed-off-by: Renovate Bot --- .github/workflows/verify_docs-quality.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/verify_docs-quality.yml b/.github/workflows/verify_docs-quality.yml index fe8849a085..736f09571f 100644 --- a/.github/workflows/verify_docs-quality.yml +++ b/.github/workflows/verify_docs-quality.yml @@ -21,7 +21,7 @@ jobs: run: echo "::set-output name=args::$(node scripts/check-docs-quality.js --ci-args)" - name: documentation quality check - uses: errata-ai/vale-action@v1.5.0 + uses: errata-ai/vale-action@v2.0.1 with: # This also contains --config=.github/vale/config.ini ... :/ files: '${{ steps.generate.outputs.args }}' From 28972473a016fd1a46ecce0ce2904ef2b36ad3f8 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 3 Jun 2022 14:12:39 +0200 Subject: [PATCH 170/550] rename ConcreteElasticSearchQuery -> ElasticSearchConcreteQuery Signed-off-by: Emma Indal --- .changeset/seven-readers-drop.md | 2 +- .../api-report.md | 18 +++++++++--------- .../engines/ElasticSearchSearchEngine.test.ts | 14 +++++++------- .../src/engines/ElasticSearchSearchEngine.ts | 6 +++--- .../src/engines/index.ts | 2 +- .../src/index.ts | 2 +- 6 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.changeset/seven-readers-drop.md b/.changeset/seven-readers-drop.md index 174b8984e0..687969edfe 100644 --- a/.changeset/seven-readers-drop.md +++ b/.changeset/seven-readers-drop.md @@ -5,7 +5,7 @@ Additional types now exported publicly: - ElasticSearchAgentOptions -- ConcreteElasticSearchQuery +- ElasticSearchConcreteQuery - ElasticSearchQueryTranslator - ElasticSearchConnectionConstructor, - ElasticSearchTransportConstructor, diff --git a/plugins/search-backend-module-elasticsearch/api-report.md b/plugins/search-backend-module-elasticsearch/api-report.md index 77ce0af61e..143d3ab3e8 100644 --- a/plugins/search-backend-module-elasticsearch/api-report.md +++ b/plugins/search-backend-module-elasticsearch/api-report.md @@ -15,13 +15,6 @@ import { Logger } from 'winston'; import { SearchEngine } from '@backstage/plugin-search-common'; import { SearchQuery } from '@backstage/plugin-search-common'; -// @public -export type ConcreteElasticSearchQuery = { - documentTypes?: string[]; - elasticSearchQuery: Object; - pageSize: number; -}; - // @public (undocumented) export interface ElasticSearchAgentOptions { // (undocumented) @@ -119,6 +112,13 @@ export interface ElasticSearchClientOptions { Transport?: ElasticSearchTransportConstructor; } +// @public +export type ElasticSearchConcreteQuery = { + documentTypes?: string[]; + elasticSearchQuery: Object; + pageSize: number; +}; + // @public (undocumented) export interface ElasticSearchConnectionConstructor { // (undocumented) @@ -186,7 +186,7 @@ export type ElasticSearchOptions = { export type ElasticSearchQueryTranslator = ( query: SearchQuery, options?: ElasticSearchQueryTranslatorOptions, -) => ConcreteElasticSearchQuery; +) => ElasticSearchConcreteQuery; // @public export type ElasticSearchQueryTranslatorOptions = { @@ -220,7 +220,7 @@ export class ElasticSearchSearchEngine implements SearchEngine { protected translator( query: SearchQuery, options?: ElasticSearchQueryTranslatorOptions, - ): ConcreteElasticSearchQuery; + ): ElasticSearchConcreteQuery; } // @public diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts index d3ca3481ff..9867920c6e 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts @@ -19,7 +19,7 @@ import { ConfigReader } from '@backstage/config'; import { Client, errors } from '@elastic/elasticsearch'; import Mock from '@elastic/elasticsearch-mock'; import { - ConcreteElasticSearchQuery, + ElasticSearchConcreteQuery, decodePageCursor, ElasticSearchSearchEngine, encodePageCursor, @@ -131,7 +131,7 @@ describe('ElasticSearchSearchEngine', () => { types: ['indexName'], term: 'testTerm', filters: { kind: 'testKind' }, - }) as ConcreteElasticSearchQuery; + }) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toMatchObject({ documentTypes: ['indexName'], @@ -170,7 +170,7 @@ describe('ElasticSearchSearchEngine', () => { types: ['indexName'], term: 'testTerm', pageCursor: 'MQ==', - }) as ConcreteElasticSearchQuery; + }) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toMatchObject({ documentTypes: ['indexName'], @@ -210,7 +210,7 @@ describe('ElasticSearchSearchEngine', () => { foo: 123, bar: true, }, - }) as ConcreteElasticSearchQuery; + }) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toMatchObject({ documentTypes: ['indexName'], @@ -266,7 +266,7 @@ describe('ElasticSearchSearchEngine', () => { types: ['indexName'], term: 'testTerm', filters: { kind: ['testKind', 'kastTeint'] }, - }) as ConcreteElasticSearchQuery; + }) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toMatchObject({ documentTypes: ['indexName'], @@ -327,7 +327,7 @@ describe('ElasticSearchSearchEngine', () => { fragmentDelimiter: ' ... ', }, }, - ) as ConcreteElasticSearchQuery; + ) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toMatchObject({ documentTypes: ['indexName'], @@ -369,7 +369,7 @@ describe('ElasticSearchSearchEngine', () => { types: ['indexName'], term: 'testTerm', filters: { kind: { a: 'b' } }, - }) as ConcreteElasticSearchQuery; + }) as ElasticSearchConcreteQuery; expect(actualTranslatedQuery).toThrow(); }); }); diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index 621fe1cd55..6541d2ed80 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -40,7 +40,7 @@ export type { ElasticSearchClientOptions }; * Search query that the elasticsearch engine understands. * @public */ -export type ConcreteElasticSearchQuery = { +export type ElasticSearchConcreteQuery = { documentTypes?: string[]; elasticSearchQuery: Object; pageSize: number; @@ -61,7 +61,7 @@ export type ElasticSearchQueryTranslatorOptions = { export type ElasticSearchQueryTranslator = ( query: SearchQuery, options?: ElasticSearchQueryTranslatorOptions, -) => ConcreteElasticSearchQuery; +) => ElasticSearchConcreteQuery; /** * Options for instansiate ElasticSearchSearchEngine @@ -174,7 +174,7 @@ export class ElasticSearchSearchEngine implements SearchEngine { protected translator( query: SearchQuery, options?: ElasticSearchQueryTranslatorOptions, - ): ConcreteElasticSearchQuery { + ): ElasticSearchConcreteQuery { const { term, filters = {}, types, pageCursor } = query; const filter = Object.entries(filters) diff --git a/plugins/search-backend-module-elasticsearch/src/engines/index.ts b/plugins/search-backend-module-elasticsearch/src/engines/index.ts index 625c0d9b60..d99f96ef72 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/index.ts @@ -23,7 +23,7 @@ export type { ElasticSearchAuth, } from './ElasticSearchClientOptions'; export type { - ConcreteElasticSearchQuery, + ElasticSearchConcreteQuery, ElasticSearchClientOptions, ElasticSearchHighlightConfig, ElasticSearchHighlightOptions, diff --git a/plugins/search-backend-module-elasticsearch/src/index.ts b/plugins/search-backend-module-elasticsearch/src/index.ts index 3cfb3c403f..772c7d3689 100644 --- a/plugins/search-backend-module-elasticsearch/src/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/index.ts @@ -23,7 +23,7 @@ export { ElasticSearchSearchEngine } from './engines'; export type { ElasticSearchAgentOptions, - ConcreteElasticSearchQuery, + ElasticSearchConcreteQuery, ElasticSearchClientOptions, ElasticSearchHighlightConfig, ElasticSearchHighlightOptions, From 2aedf64ad377f7b500916f867e6c7f69f7e6ffbe Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 14:44:23 +0000 Subject: [PATCH 171/550] fix(deps): update dependency @google-cloud/container to v4 Signed-off-by: Renovate Bot --- .changeset/renovate-0fe5912.md | 5 ++ plugins/kubernetes-backend/package.json | 2 +- yarn.lock | 96 +++++++++++++++++++++++-- 3 files changed, 96 insertions(+), 7 deletions(-) create mode 100644 .changeset/renovate-0fe5912.md diff --git a/.changeset/renovate-0fe5912.md b/.changeset/renovate-0fe5912.md new file mode 100644 index 0000000000..1fd4080f4d --- /dev/null +++ b/.changeset/renovate-0fe5912.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-kubernetes-backend': patch +--- + +Updated dependency `@google-cloud/container` to `^4.0.0`. diff --git a/plugins/kubernetes-backend/package.json b/plugins/kubernetes-backend/package.json index db732b8634..a4718a4b98 100644 --- a/plugins/kubernetes-backend/package.json +++ b/plugins/kubernetes-backend/package.json @@ -41,7 +41,7 @@ "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-kubernetes-common": "^0.3.0-next.1", - "@google-cloud/container": "^3.0.0", + "@google-cloud/container": "^4.0.0", "@kubernetes/client-node": "^0.16.0", "@types/express": "^4.17.6", "@types/luxon": "^2.0.4", diff --git a/yarn.lock b/yarn.lock index f736a9a620..51764598fe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2207,12 +2207,12 @@ qs "^6.10.1" xcase "^2.0.1" -"@google-cloud/container@^3.0.0": - version "3.0.1" - resolved "https://registry.npmjs.org/@google-cloud/container/-/container-3.0.1.tgz#46bcbc05e1d45e0f182f6eda49d82edcc2c0118e" - integrity sha512-5Ae76MFhGJm+PtQM8Wn/2BCOzLH9Aej8HdGRcsF/DA1ejUy+Q6HzwsHPTcyNExRrtxC4jjcB59IQn0fwEVayZQ== +"@google-cloud/container@^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/@google-cloud/container/-/container-4.0.0.tgz#9bcfe2d404b739844766a91c0dd2b3fc63d014d1" + integrity sha512-nndrAVyZ34I9LykL1DIDONskl/hRmXmvtTbWrcm+Jep6Lm1bCJ0LkgMGg8yLS1tqWrdhIl73+xwcVfiY2dm7ig== dependencies: - google-gax "^2.24.1" + google-gax "^3.0.1" "@google-cloud/firestore@^5.0.2": version "5.0.2" @@ -13275,6 +13275,17 @@ gaxios@^4.0.0: is-stream "^2.0.0" node-fetch "^2.3.0" +gaxios@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/gaxios/-/gaxios-5.0.0.tgz#df11e5d0a45831dd39eb5fbbba0d6a6b09815e70" + integrity sha512-VD/yc5ln6XU8Ch1hyYY6kRMBE0Yc2np3fPyeJeYHhrPs1i8rgnsApPMWyrugkl7LLoSqpOJVBWlQIa87OAvt8Q== + dependencies: + abort-controller "^3.0.0" + extend "^3.0.2" + https-proxy-agent "^5.0.0" + is-stream "^2.0.0" + node-fetch "^2.6.7" + gcp-metadata@^4.2.0: version "4.2.1" resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.2.1.tgz#31849fbcf9025ef34c2297c32a89a1e7e9f2cd62" @@ -13283,6 +13294,14 @@ gcp-metadata@^4.2.0: gaxios "^4.0.0" json-bigint "^1.0.0" +gcp-metadata@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-5.0.0.tgz#a00f999f60a4461401e7c515f8a3267cfb401ee7" + integrity sha512-gfwuX3yA3nNsHSWUL4KG90UulNiq922Ukj3wLTrcnX33BB7PwB1o0ubR8KVvXu9nJH+P5w1j2SQSNNqto+H0DA== + dependencies: + gaxios "^5.0.0" + json-bigint "^1.0.0" + generate-function@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" @@ -13615,6 +13634,21 @@ google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7 jws "^4.0.0" lru-cache "^6.0.0" +google-auth-library@^8.0.2: + version "8.0.2" + resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.0.2.tgz#5fa0f2d3795c3e4019d2bb315ade4454cc9c30b5" + integrity sha512-HoG+nWFAThLovKpvcbYzxgn+nBJPTfAwtq0GxPN821nOO+21+8oP7MoEHfd1sbDulUFFGfcjJr2CnJ4YssHcyg== + dependencies: + arrify "^2.0.0" + base64-js "^1.3.0" + ecdsa-sig-formatter "^1.0.11" + fast-text-encoding "^1.0.0" + gaxios "^5.0.0" + gcp-metadata "^5.0.0" + gtoken "^5.3.2" + jws "^4.0.0" + lru-cache "^6.0.0" + google-gax@^2.24.1: version "2.30.5" resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.30.5.tgz#e836f984f3228900a8336f608c83d75f9cb73eff" @@ -13634,6 +13668,25 @@ google-gax@^2.24.1: protobufjs "6.11.3" retry-request "^4.0.0" +google-gax@^3.0.1: + version "3.0.3" + resolved "https://registry.npmjs.org/google-gax/-/google-gax-3.0.3.tgz#c8f75dc0ec044fc8ecf97675d85b77911539cca5" + integrity sha512-oS1x9DWOmC2xX6pl2W92KtyR50x1zh1aEh0dxUCpu7GCv62aQ/MMkax2kJb/T6OKj/Yn8MYT8bIGyU+trk/p2Q== + dependencies: + "@grpc/grpc-js" "~1.6.0" + "@grpc/proto-loader" "^0.6.12" + "@types/long" "^4.0.0" + abort-controller "^3.0.0" + duplexify "^4.0.0" + fast-text-encoding "^1.0.3" + google-auth-library "^8.0.2" + is-stream-ended "^0.1.4" + node-fetch "^2.6.1" + object-hash "^3.0.0" + proto3-json-serializer "^1.0.0" + protobufjs "6.11.3" + retry-request "^5.0.0" + google-p12-pem@^3.0.3: version "3.1.3" resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.3.tgz#5497998798ee86c2fc1f4bb1f92b7729baf37537" @@ -13641,6 +13694,13 @@ google-p12-pem@^3.0.3: dependencies: node-forge "^1.0.0" +google-p12-pem@^3.1.3: + version "3.1.4" + resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz#123f7b40da204de4ed1fbf2fd5be12c047fc8b3b" + integrity sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg== + dependencies: + node-forge "^1.3.1" + got@11.8.3, got@^11.8.0: version "11.8.3" resolved "https://registry.npmjs.org/got/-/got-11.8.3.tgz#f496c8fdda5d729a90b4905d2b07dbd148170770" @@ -13800,6 +13860,15 @@ gtoken@^5.0.4: jws "^4.0.0" mime "^2.2.0" +gtoken@^5.3.2: + version "5.3.2" + resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz#deb7dc876abe002178e0515e383382ea9446d58f" + integrity sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ== + dependencies: + gaxios "^4.0.0" + google-p12-pem "^3.1.3" + jws "^4.0.0" + gzip-size@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" @@ -18707,7 +18776,7 @@ node-fetch@2.6.7, node-fetch@^2.3.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node- dependencies: whatwg-url "^5.0.0" -node-forge@^1, node-forge@^1.0.0: +node-forge@^1, node-forge@^1.0.0, node-forge@^1.3.1: version "1.3.1" resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== @@ -20888,6 +20957,13 @@ proto3-json-serializer@^0.1.8: dependencies: protobufjs "^6.11.2" +proto3-json-serializer@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.0.0.tgz#4c87b06f5788cb3c9d94be7e0c6ef2420c020146" + integrity sha512-uEylKn4a7I6ZtLZ0fwCJCdQqr2vMsGtxxwKZIoqy4VwYeK9HKpCiG8WMBdtodV+1UO5YHHvHvb39b5CyRWT+9g== + dependencies: + protobufjs "^6.11.2" + protobufjs@6.11.3, protobufjs@^6.10.0, protobufjs@^6.11.2, protobufjs@^6.8.6: version "6.11.3" resolved "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.3.tgz#637a527205a35caa4f3e2a9a4a13ddffe0e7af74" @@ -22313,6 +22389,14 @@ retry-request@^4.0.0, retry-request@^4.2.2: debug "^4.1.1" extend "^3.0.2" +retry-request@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/retry-request/-/retry-request-5.0.0.tgz#886ff8ec0e77fffbe66a4d5e90fd8f6646b6eae4" + integrity sha512-vBZdBxUordje9253imlmGtppC5gdcwZmNz7JnU2ui+KKFPk25keR+0c020AVV20oesYxIFOI0Kh3HE88/59ieg== + dependencies: + debug "^4.1.1" + extend "^3.0.2" + retry@0.13.1: version "0.13.1" resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" From b8444431640734a1c6813da9456f9ea023598682 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 3 Jun 2022 15:01:16 +0000 Subject: [PATCH 172/550] Version Packages (next) --- .changeset/pre.json | 32 +- docs/releases/v1.3.0-next.2-changelog.md | 678 ++++++++++++++++++ package.json | 2 +- packages/app/CHANGELOG.md | 16 + packages/app/package.json | 22 +- packages/backend-common/CHANGELOG.md | 11 + packages/backend-common/package.json | 8 +- packages/backend-tasks/CHANGELOG.md | 7 + packages/backend-tasks/package.json | 8 +- packages/backend-test-utils/CHANGELOG.md | 8 + packages/backend-test-utils/package.json | 8 +- packages/backend/CHANGELOG.md | 36 + packages/backend/package.json | 62 +- packages/cli/CHANGELOG.md | 8 + packages/cli/package.json | 6 +- packages/core-components/CHANGELOG.md | 7 + packages/core-components/package.json | 4 +- packages/create-app/CHANGELOG.md | 11 + packages/create-app/package.json | 2 +- packages/integration/CHANGELOG.md | 6 + packages/integration/package.json | 4 +- packages/search-common/CHANGELOG.md | 7 + packages/search-common/package.json | 4 +- packages/techdocs-cli/CHANGELOG.md | 9 + packages/techdocs-cli/package.json | 8 +- packages/techdocs-common/CHANGELOG.md | 7 + packages/techdocs-common/package.json | 4 +- plugins/adr-backend/CHANGELOG.md | 9 + plugins/adr-backend/package.json | 10 +- plugins/airbrake-backend/CHANGELOG.md | 7 + plugins/airbrake-backend/package.json | 6 +- plugins/airbrake/package.json | 4 +- plugins/allure/package.json | 4 +- plugins/analytics-module-ga/package.json | 4 +- plugins/apache-airflow/package.json | 4 +- plugins/api-docs/package.json | 6 +- plugins/app-backend/CHANGELOG.md | 7 + plugins/app-backend/package.json | 8 +- plugins/auth-backend/CHANGELOG.md | 9 + plugins/auth-backend/package.json | 10 +- plugins/auth-node/CHANGELOG.md | 7 + plugins/auth-node/package.json | 6 +- plugins/azure-devops-backend/CHANGELOG.md | 7 + plugins/azure-devops-backend/package.json | 6 +- plugins/azure-devops/package.json | 4 +- plugins/badges-backend/CHANGELOG.md | 7 + plugins/badges-backend/package.json | 6 +- plugins/badges/package.json | 4 +- plugins/bazaar-backend/CHANGELOG.md | 8 + plugins/bazaar-backend/package.json | 8 +- plugins/bazaar/package.json | 4 +- plugins/bitrise/package.json | 4 +- .../catalog-backend-module-aws/CHANGELOG.md | 10 + .../catalog-backend-module-aws/package.json | 12 +- .../catalog-backend-module-azure/CHANGELOG.md | 72 ++ .../catalog-backend-module-azure/package.json | 14 +- .../package.json | 12 +- .../CHANGELOG.md | 9 + .../package.json | 12 +- .../CHANGELOG.md | 10 + .../package.json | 14 +- .../CHANGELOG.md | 10 + .../package.json | 14 +- .../CHANGELOG.md | 9 + .../package.json | 12 +- .../package.json | 10 +- plugins/catalog-backend/CHANGELOG.md | 11 + plugins/catalog-backend/package.json | 18 +- plugins/catalog-common/CHANGELOG.md | 8 + plugins/catalog-common/package.json | 6 +- plugins/catalog-graph/package.json | 6 +- plugins/catalog-import/package.json | 4 +- plugins/catalog/package.json | 4 +- plugins/circleci/package.json | 4 +- plugins/cloudbuild/package.json | 4 +- plugins/code-climate/package.json | 4 +- plugins/code-coverage-backend/CHANGELOG.md | 8 + plugins/code-coverage-backend/package.json | 8 +- plugins/code-coverage/package.json | 4 +- plugins/codescene/CHANGELOG.md | 8 + plugins/codescene/package.json | 6 +- plugins/config-schema/package.json | 4 +- plugins/cost-insights/CHANGELOG.md | 8 + plugins/cost-insights/package.json | 6 +- .../example-todo-list-backend/CHANGELOG.md | 8 + .../example-todo-list-backend/package.json | 8 +- plugins/example-todo-list/package.json | 4 +- plugins/explore/package.json | 4 +- plugins/firehydrant/package.json | 4 +- plugins/fossa/package.json | 4 +- plugins/gcp-projects/package.json | 4 +- plugins/git-release-manager/package.json | 4 +- plugins/github-actions/package.json | 4 +- plugins/github-deployments/package.json | 4 +- .../github-pull-requests-board/package.json | 4 +- plugins/gitops-profiles/package.json | 4 +- plugins/gocd/package.json | 4 +- plugins/graphiql/package.json | 6 +- plugins/graphql-backend/CHANGELOG.md | 7 + plugins/graphql-backend/package.json | 6 +- plugins/home/package.json | 6 +- plugins/ilert/package.json | 4 +- plugins/jenkins-backend/CHANGELOG.md | 8 + plugins/jenkins-backend/package.json | 8 +- plugins/jenkins/package.json | 4 +- plugins/kafka-backend/CHANGELOG.md | 7 + plugins/kafka-backend/package.json | 6 +- plugins/kafka/package.json | 4 +- plugins/kubernetes-backend/CHANGELOG.md | 7 + plugins/kubernetes-backend/package.json | 6 +- plugins/kubernetes/CHANGELOG.md | 8 + plugins/kubernetes/package.json | 6 +- plugins/lighthouse/package.json | 4 +- plugins/newrelic-dashboard/package.json | 4 +- plugins/newrelic/package.json | 4 +- plugins/org/CHANGELOG.md | 30 + plugins/org/package.json | 6 +- plugins/pagerduty/CHANGELOG.md | 11 + plugins/pagerduty/package.json | 6 +- plugins/periskop-backend/CHANGELOG.md | 7 + plugins/periskop-backend/package.json | 6 +- plugins/periskop/package.json | 4 +- plugins/permission-backend/CHANGELOG.md | 9 + plugins/permission-backend/package.json | 10 +- plugins/permission-node/CHANGELOG.md | 8 + plugins/permission-node/package.json | 8 +- plugins/proxy-backend/CHANGELOG.md | 7 + plugins/proxy-backend/package.json | 6 +- plugins/rollbar-backend/CHANGELOG.md | 7 + plugins/rollbar-backend/package.json | 8 +- plugins/rollbar/package.json | 4 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- .../package.json | 4 +- plugins/scaffolder-backend/CHANGELOG.md | 35 + plugins/scaffolder-backend/package.json | 12 +- plugins/scaffolder/CHANGELOG.md | 17 + plugins/scaffolder/package.json | 10 +- .../CHANGELOG.md | 19 + .../package.json | 10 +- plugins/search-backend-module-pg/CHANGELOG.md | 9 + plugins/search-backend-module-pg/package.json | 12 +- plugins/search-backend-node/CHANGELOG.md | 10 + plugins/search-backend-node/package.json | 12 +- plugins/search-backend/CHANGELOG.md | 12 + plugins/search-backend/package.json | 14 +- plugins/search-common/CHANGELOG.md | 6 + plugins/search-common/package.json | 4 +- plugins/search/CHANGELOG.md | 9 + plugins/search/package.json | 8 +- plugins/sentry/package.json | 4 +- plugins/shortcuts/package.json | 4 +- plugins/sonarqube/CHANGELOG.md | 8 + plugins/sonarqube/package.json | 6 +- plugins/splunk-on-call/package.json | 4 +- plugins/stack-overflow/package.json | 4 +- .../CHANGELOG.md | 8 + .../package.json | 8 +- plugins/tech-insights-backend/CHANGELOG.md | 9 + plugins/tech-insights-backend/package.json | 12 +- plugins/tech-insights-node/CHANGELOG.md | 7 + plugins/tech-insights-node/package.json | 6 +- plugins/tech-insights/package.json | 4 +- plugins/tech-radar/package.json | 4 +- plugins/techdocs-backend/CHANGELOG.md | 12 + plugins/techdocs-backend/package.json | 18 +- plugins/techdocs-node/CHANGELOG.md | 9 + plugins/techdocs-node/package.json | 10 +- plugins/techdocs/package.json | 6 +- plugins/todo-backend/CHANGELOG.md | 8 + plugins/todo-backend/package.json | 8 +- plugins/todo/package.json | 4 +- plugins/user-settings/package.json | 4 +- plugins/xcmetrics/package.json | 4 +- 176 files changed, 1791 insertions(+), 408 deletions(-) create mode 100644 docs/releases/v1.3.0-next.2-changelog.md diff --git a/.changeset/pre.json b/.changeset/pre.json index 4d4f1e0623..cb5047cf20 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -154,14 +154,20 @@ "@backstage/plugin-xcmetrics": "0.2.25", "@backstage/plugin-bitbucket-cloud-common": "0.0.0", "@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.0.0", - "@backstage/plugin-github-pull-requests-board": "0.0.0" + "@backstage/plugin-github-pull-requests-board": "0.0.0", + "@backstage/search-common": "0.3.5-next.0" }, "changesets": [ "afraid-mangos-sip", "beige-apricots-enjoy", "beige-deers-remember", + "beige-dots-bathe", "blue-roses-give", + "calm-timers-wonder", + "dry-tables-sniff", + "eight-ducks-beg", "fair-grapes-joke", + "famous-cups-clap", "fifty-dogs-collect", "fifty-planes-dream", "fluffy-candles-learn", @@ -171,61 +177,83 @@ "funny-suns-pay", "give-that-wolf-a-banana", "gold-tables-matter", + "good-squids-rest", "healthy-pets-mix", "heavy-carrots-cheer", + "hip-pears-shout", + "honest-planets-sin", "hungry-brooms-wash", "itchy-avocados-hug", + "khaki-shrimps-tell", "large-monkeys-visit", "loud-jars-kick", "loud-walls-itch", "lovely-gifts-itch", "mean-turtles-reply", + "metal-items-mix", "modern-pandas-agree", "moody-worms-rhyme", "nervous-gorillas-approve", + "nervous-ravens-smash", "odd-baboons-buy", "olive-rats-rest", "plenty-garlics-shop", "polite-spiders-pay", "poor-years-develop", + "poor-zebras-design", "pretty-wolves-whisper", "quick-ladybugs-try", "real-beers-type", "reject-failed-index-tasks", "renovate-126b147", "renovate-648a745", + "renovate-7ed704d", "renovate-9363c67", "renovate-ad175cc", + "renovate-b7ba5e4", + "renovate-c8fbb1e", + "renovate-cd4546d", + "renovate-dd5df61", + "rich-zebras-design", "right-one-at-the-wrong-time", "scaffolder-form-context", "search-eight-hounds-worry", "search-eyes-of-them-all", + "search-generals-gathered", "search-martha-sways", + "seven-readers-drop", "shaggy-crabs-return", "shiny-clocks-joke", "shiny-windows-roll", "short-jokes-applaud", + "shy-geese-judge", "silly-wombats-flash", "sixty-plums-kick", "sixty-poems-drum", + "sixty-rats-talk", "slimy-elephants-attend", "slow-apes-appear", + "spicy-forks-return", "spotty-goats-look", "tasty-snails-boil", "techdocs-buttons-film", "techdocs-crabs-retire", + "techdocs-everybody-to-the-limit", "techdocs-paws-study", "techdocs-swans-check", "techdocs-vans-run", "techdocs-ways-type", "techdocs-wolves-carry", "ten-rocks-smile", + "tidy-pens-work", "tricky-hounds-cry", + "twenty-mangos-clap", "unlucky-lies-pretend", "up-in-space-man", "violet-apples-repair", "warm-bats-jump", "wicked-teachers-hide", - "wise-nails-hang" + "wise-nails-hang", + "yellow-falcons-sin" ] } diff --git a/docs/releases/v1.3.0-next.2-changelog.md b/docs/releases/v1.3.0-next.2-changelog.md new file mode 100644 index 0000000000..fc4bb19080 --- /dev/null +++ b/docs/releases/v1.3.0-next.2-changelog.md @@ -0,0 +1,678 @@ +# Release v1.3.0-next.2 + +## @backstage/backend-common@0.14.0-next.2 + +### Minor Changes + +- 55647ec7df: **BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-pagerduty@0.4.0-next.2 + +### Minor Changes + +- b157c2eb1c: **Breaking**: Use identityApi to provide auth token for pagerduty API calls. + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-scaffolder@1.3.0-next.2 + +### Minor Changes + +- dc39366bdb: - Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. + - Ability to filter these tasks by the signed in user, and all tasks. + - Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. + +### Patch Changes + +- ac0c7e45ee: Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. +- fd505f40c0: Handle binary files and files that are too large during dry-run content upload. +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/core-components@0.9.5-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-scaffolder-backend@1.3.0-next.2 + +### Minor Changes + +- ce0d8d7eb1: Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. + This fix required changing the way parameters are passed to the action. + In order to add a team as collaborator, now you must use the `team` field instead of `username`. + In order to add a user as collaborator, you must use the `user` field. + + It's still possible to use the field `username` but is deprecated in favor of `team`. + + ```yaml + - id: publish + name: Publish + action: publish:github + input: + repoUrl: ... + collaborators: + - access: ... + team: my_team + - access: ... + user: my_username + ``` + +- 582003a059: - Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` + - Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` + - Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/backend-tasks@0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/backend-test-utils@0.1.25-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.17.2-next.2 + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/cli@0.17.2-next.2 + +### Patch Changes + +- 026cfe525a: Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. +- 9002ebd76b: Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. +- 1a33e8b287: Updated dependency `minimatch` to `5.1.0`. + +## @backstage/core-components@0.9.5-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- 1cf9caecd6: fix Sidebar Contexts deprecation message + +## @backstage/create-app@0.4.28-next.2 + +### Patch Changes + +- aaf7652084: Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. + + ```diff + - "cypress": "^7.3.0", + + "cypress": "^9.7.0", + ``` + +## @backstage/integration@1.2.1-next.2 + +### Patch Changes + +- e37c71b5a4: Updated to support deployments of Azure DevOps Server under TFS or similar sub path + +## @backstage/search-common@0.3.5-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + +## @techdocs/cli@1.1.2-next.2 + +### Patch Changes + +- f96e98f4cd: Updated dependency `cypress` to `^10.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-techdocs-node@1.1.2-next.2 + +## @backstage/techdocs-common@0.11.16-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-techdocs-node@1.1.2-next.2 + +## @backstage/plugin-adr-backend@0.1.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-airbrake-backend@0.2.6-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-app-backend@0.3.33-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-auth-backend@0.14.1-next.2 + +### Patch Changes + +- bc6fb57094: Updated dependency `passport` to `^0.6.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + +## @backstage/plugin-auth-node@0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-azure-devops-backend@0.3.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-badges-backend@0.1.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-bazaar-backend@0.1.17-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-test-utils@0.1.25-next.2 + +## @backstage/plugin-catalog-backend@1.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + +## @backstage/plugin-catalog-backend-module-aws@0.1.6-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-backend-module-azure@0.1.4-next.2 + +### Patch Changes + +- b8884fd579: Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. + + In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: azure-discovery + target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + azureDevOps: + anyProviderId: + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + Visit for more details and options on configuration. + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-backend-module-bitbucket@0.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-backend-module-gerrit@0.1.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-backend-module-github@0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-backend-module-gitlab@0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + +## @backstage/plugin-catalog-common@1.0.3-next.1 + +### Patch Changes + +- 7d8acfc32e: Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + +## @backstage/plugin-code-coverage-backend@0.1.31-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-codescene@0.1.1-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-cost-insights@0.11.28-next.2 + +### Patch Changes + +- 2fc98ac50c: Fix broken app-config in the example in the README +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-graphql-backend@0.1.23-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-jenkins-backend@0.1.23-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + +## @backstage/plugin-kafka-backend@0.2.26-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-kubernetes@0.6.6-next.2 + +### Patch Changes + +- 5553f09e80: ability to configure refresh interval on Kubernetes tab +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-kubernetes-backend@0.6.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-org@0.5.6-next.2 + +### Patch Changes + +- 306d0b4fdd: Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: + + ```diff + // app/src/components/Root/Root.tsx + + + //... + }> + {/* Global nav, not org-specific */} + //... + + + //... + + + + ``` + +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-periskop-backend@0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-permission-backend@0.5.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + +## @backstage/plugin-permission-node@0.6.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + +## @backstage/plugin-proxy-backend@0.2.27-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-rollbar-backend@0.1.30-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-scaffolder-backend-module-cookiecutter@0.2.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-scaffolder-backend-module-rails@0.4.1-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-search@0.8.2-next.2 + +### Patch Changes + +- 5388e6bdc5: Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-search-backend@0.5.3-next.2 + +### Patch Changes + +- 7d8acfc32e: `RouterOptions` and `createRouter` now marked as public exports +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + +## @backstage/plugin-search-backend-module-elasticsearch@0.1.5-next.2 + +### Patch Changes + +- 7d8acfc32e: Additional types now exported publicly: + + - ElasticSearchAgentOptions + - ElasticSearchConcreteQuery + - ElasticSearchQueryTranslator + - ElasticSearchConnectionConstructor, + - ElasticSearchTransportConstructor, + - ElasticSearchNodeOptions, + - ElasticSearchOptions, + - ElasticSearchAuth, + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + +## @backstage/plugin-search-backend-module-pg@0.3.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + +## @backstage/plugin-search-backend-node@0.6.2-next.2 + +### Patch Changes + +- 7d8acfc32e: Replaced all `@beta` exports with `@public` exports +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + +## @backstage/plugin-search-common@0.3.5-next.1 + +### Patch Changes + +- 7d8acfc32e: `@beta` exports now replaced with `@public` exports + +## @backstage/plugin-sonarqube@0.3.6-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + +## @backstage/plugin-tech-insights-backend@0.4.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + +## @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + +## @backstage/plugin-tech-insights-node@0.3.1-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + +## @backstage/plugin-techdocs-backend@1.1.2-next.2 + +### Patch Changes + +- 61fba6e50b: In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-techdocs-node@1.1.2-next.2 + +## @backstage/plugin-techdocs-node@1.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## @backstage/plugin-todo-backend@0.1.30-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + +## example-app@0.2.72-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder@1.3.0-next.2 + - @backstage/cli@0.17.2-next.2 + - @backstage/plugin-pagerduty@0.4.0-next.2 + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-cost-insights@0.11.28-next.2 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/plugin-kubernetes@0.6.6-next.2 + - @backstage/core-components@0.9.5-next.2 + - @backstage/plugin-search@0.8.2-next.2 + - @backstage/plugin-org@0.5.6-next.2 + +## example-backend@0.2.72-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend@0.5.3-next.2 + - @backstage/plugin-auth-backend@0.14.1-next.2 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.5-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-techdocs-backend@1.1.2-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + - example-app@0.2.72-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-app-backend@0.3.33-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-azure-devops-backend@0.3.12-next.2 + - @backstage/plugin-badges-backend@0.1.27-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + - @backstage/plugin-code-coverage-backend@0.1.31-next.2 + - @backstage/plugin-graphql-backend@0.1.23-next.2 + - @backstage/plugin-jenkins-backend@0.1.23-next.2 + - @backstage/plugin-kafka-backend@0.2.26-next.2 + - @backstage/plugin-kubernetes-backend@0.6.0-next.2 + - @backstage/plugin-permission-backend@0.5.8-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + - @backstage/plugin-proxy-backend@0.2.27-next.1 + - @backstage/plugin-rollbar-backend@0.1.30-next.2 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.1-next.1 + - @backstage/plugin-search-backend-module-pg@0.3.4-next.2 + - @backstage/plugin-tech-insights-backend@0.4.1-next.2 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17-next.1 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + - @backstage/plugin-todo-backend@0.1.30-next.2 + +## @internal/plugin-todo-list-backend@1.0.2-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 diff --git a/package.json b/package.json index 299e1d666b..d153688492 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "@types/react": "^17", "@types/react-dom": "^17" }, - "version": "1.3.0-next.1", + "version": "1.3.0-next.2", "dependencies": { "@manypkg/get-packages": "^1.1.3", "@microsoft/api-documenter": "^7.17.11", diff --git a/packages/app/CHANGELOG.md b/packages/app/CHANGELOG.md index d94b8b56e0..0cb1add155 100644 --- a/packages/app/CHANGELOG.md +++ b/packages/app/CHANGELOG.md @@ -1,5 +1,21 @@ # example-app +## 0.2.72-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder@1.3.0-next.2 + - @backstage/cli@0.17.2-next.2 + - @backstage/plugin-pagerduty@0.4.0-next.2 + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-cost-insights@0.11.28-next.2 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/plugin-kubernetes@0.6.6-next.2 + - @backstage/core-components@0.9.5-next.2 + - @backstage/plugin-search@0.8.2-next.2 + - @backstage/plugin-org@0.5.6-next.2 + ## 0.2.72-next.1 ### Patch Changes diff --git a/packages/app/package.json b/packages/app/package.json index e1be14688d..f07a4e590d 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,6 +1,6 @@ { "name": "example-app", - "version": "0.2.72-next.1", + "version": "0.2.72-next.2", "private": true, "backstage": { "role": "frontend" @@ -9,10 +9,10 @@ "dependencies": { "@backstage/app-defaults": "^1.0.3-next.1", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/config": "^1.0.1", "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/integration-react": "^1.1.1-next.1", "@backstage/plugin-airbrake": "^0.3.6-next.1", @@ -21,14 +21,14 @@ "@backstage/plugin-apache-airflow": "^0.1.14-next.1", "@backstage/plugin-badges": "^0.2.30-next.1", "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", + "@backstage/plugin-catalog-common": "^1.0.3-next.1", "@backstage/plugin-catalog-graph": "^0.2.18-next.1", "@backstage/plugin-catalog-import": "^0.8.9-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/plugin-circleci": "^0.3.6-next.1", "@backstage/plugin-cloudbuild": "^0.3.6-next.1", "@backstage/plugin-code-coverage": "^0.1.33-next.1", - "@backstage/plugin-cost-insights": "^0.11.28-next.1", + "@backstage/plugin-cost-insights": "^0.11.28-next.2", "@backstage/plugin-explore": "^0.3.37-next.1", "@backstage/plugin-gcalendar": "^0.3.2-next.1", "@backstage/plugin-gcp-projects": "^0.3.25-next.1", @@ -38,18 +38,18 @@ "@backstage/plugin-home": "^0.4.22-next.1", "@backstage/plugin-jenkins": "^0.7.5-next.1", "@backstage/plugin-kafka": "^0.3.6-next.1", - "@backstage/plugin-kubernetes": "^0.6.6-next.1", + "@backstage/plugin-kubernetes": "^0.6.6-next.2", "@backstage/plugin-lighthouse": "^0.3.6-next.1", "@backstage/plugin-newrelic": "^0.3.24-next.1", "@backstage/plugin-newrelic-dashboard": "^0.1.14-next.1", - "@backstage/plugin-org": "^0.5.6-next.1", - "@backstage/plugin-pagerduty": "0.3.33-next.1", + "@backstage/plugin-org": "^0.5.6-next.2", + "@backstage/plugin-pagerduty": "0.4.0-next.2", "@backstage/plugin-permission-react": "^0.4.2-next.0", "@backstage/plugin-rollbar": "^0.4.6-next.1", - "@backstage/plugin-scaffolder": "^1.3.0-next.1", - "@backstage/plugin-search": "^0.8.2-next.1", + "@backstage/plugin-scaffolder": "^1.3.0-next.2", + "@backstage/plugin-search": "^0.8.2-next.2", "@backstage/plugin-search-react": "^0.2.1-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@backstage/plugin-sentry": "^0.3.44-next.1", "@backstage/plugin-shortcuts": "^0.2.7-next.1", "@backstage/plugin-stack-overflow": "^0.1.2-next.1", diff --git a/packages/backend-common/CHANGELOG.md b/packages/backend-common/CHANGELOG.md index 34f2633bae..974e03666d 100644 --- a/packages/backend-common/CHANGELOG.md +++ b/packages/backend-common/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/backend-common +## 0.14.0-next.2 + +### Minor Changes + +- 55647ec7df: **BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.1-next.2 + ## 0.13.6-next.1 ### Patch Changes diff --git a/packages/backend-common/package.json b/packages/backend-common/package.json index 23a7039851..9e8bbb26e7 100644 --- a/packages/backend-common/package.json +++ b/packages/backend-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-common", "description": "Common functionality library for Backstage backends", - "version": "0.13.6-next.1", + "version": "0.14.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -38,7 +38,7 @@ "@backstage/config": "^1.0.1", "@backstage/config-loader": "^1.1.2-next.0", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@backstage/types": "^1.0.0", "@google-cloud/storage": "^5.8.0", "@manypkg/get-packages": "^1.1.3", @@ -91,8 +91,8 @@ } }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/archiver": "^5.1.0", "@types/base64-stream": "^1.0.2", "@types/compression": "^1.7.0", diff --git a/packages/backend-tasks/CHANGELOG.md b/packages/backend-tasks/CHANGELOG.md index ff7a70eb07..34ba7b9cc3 100644 --- a/packages/backend-tasks/CHANGELOG.md +++ b/packages/backend-tasks/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/backend-tasks +## 0.3.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.3.2-next.1 ### Patch Changes diff --git a/packages/backend-tasks/package.json b/packages/backend-tasks/package.json index b50cd3f578..7276bb3e9d 100644 --- a/packages/backend-tasks/package.json +++ b/packages/backend-tasks/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-tasks", "description": "Common distributed task management library for Backstage backends", - "version": "0.3.2-next.1", + "version": "0.3.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -33,7 +33,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/types": "^1.0.0", @@ -48,8 +48,8 @@ "zod": "^3.9.5" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/cron": "^2.0.0", "wait-for-expect": "^3.0.2" }, diff --git a/packages/backend-test-utils/CHANGELOG.md b/packages/backend-test-utils/CHANGELOG.md index 3499028626..cdb0403436 100644 --- a/packages/backend-test-utils/CHANGELOG.md +++ b/packages/backend-test-utils/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/backend-test-utils +## 0.1.25-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/cli@0.17.2-next.2 + - @backstage/backend-common@0.14.0-next.2 + ## 0.1.25-next.1 ### Patch Changes diff --git a/packages/backend-test-utils/package.json b/packages/backend-test-utils/package.json index 24d847e09e..10131b1387 100644 --- a/packages/backend-test-utils/package.json +++ b/packages/backend-test-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-test-utils", "description": "Test helpers library for Backstage backends", - "version": "0.1.25-next.1", + "version": "0.1.25-next.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -34,8 +34,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/cli": "^0.17.2-next.2", "@backstage/config": "^1.0.1", "better-sqlite3": "^7.5.0", "knex": "^1.0.2", @@ -46,7 +46,7 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist" diff --git a/packages/backend/CHANGELOG.md b/packages/backend/CHANGELOG.md index e702aca30f..1bab45135a 100644 --- a/packages/backend/CHANGELOG.md +++ b/packages/backend/CHANGELOG.md @@ -1,5 +1,41 @@ # example-backend +## 0.2.72-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend@0.5.3-next.2 + - @backstage/plugin-auth-backend@0.14.1-next.2 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.5-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-techdocs-backend@1.1.2-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + - example-app@0.2.72-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-app-backend@0.3.33-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-azure-devops-backend@0.3.12-next.2 + - @backstage/plugin-badges-backend@0.1.27-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + - @backstage/plugin-code-coverage-backend@0.1.31-next.2 + - @backstage/plugin-graphql-backend@0.1.23-next.2 + - @backstage/plugin-jenkins-backend@0.1.23-next.2 + - @backstage/plugin-kafka-backend@0.2.26-next.2 + - @backstage/plugin-kubernetes-backend@0.6.0-next.2 + - @backstage/plugin-permission-backend@0.5.8-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + - @backstage/plugin-proxy-backend@0.2.27-next.1 + - @backstage/plugin-rollbar-backend@0.1.30-next.2 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.1-next.1 + - @backstage/plugin-search-backend-module-pg@0.3.4-next.2 + - @backstage/plugin-tech-insights-backend@0.4.1-next.2 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17-next.1 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + - @backstage/plugin-todo-backend@0.1.30-next.2 + ## 0.2.72-next.1 ### Patch Changes diff --git a/packages/backend/package.json b/packages/backend/package.json index 3e13ee15c7..ce11fa5c0f 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -1,6 +1,6 @@ { "name": "example-backend", - "version": "0.2.72-next.1", + "version": "0.2.72-next.2", "main": "dist/index.cjs.js", "types": "src/index.ts", "license": "Apache-2.0", @@ -26,39 +26,39 @@ "build-image": "docker build ../.. -f Dockerfile --tag example-backend" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-app-backend": "^0.3.33-next.1", - "@backstage/plugin-auth-backend": "^0.14.1-next.1", - "@backstage/plugin-auth-node": "^0.2.2-next.1", - "@backstage/plugin-azure-devops-backend": "^0.3.12-next.1", - "@backstage/plugin-badges-backend": "^0.1.27-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", - "@backstage/plugin-code-coverage-backend": "^0.1.31-next.1", - "@backstage/plugin-graphql-backend": "^0.1.23-next.1", - "@backstage/plugin-jenkins-backend": "^0.1.23-next.1", - "@backstage/plugin-kubernetes-backend": "^0.6.0-next.1", - "@backstage/plugin-kafka-backend": "^0.2.26-next.1", - "@backstage/plugin-permission-backend": "^0.5.8-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-app-backend": "^0.3.33-next.2", + "@backstage/plugin-auth-backend": "^0.14.1-next.2", + "@backstage/plugin-auth-node": "^0.2.2-next.2", + "@backstage/plugin-azure-devops-backend": "^0.3.12-next.2", + "@backstage/plugin-badges-backend": "^0.1.27-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/plugin-code-coverage-backend": "^0.1.31-next.2", + "@backstage/plugin-graphql-backend": "^0.1.23-next.2", + "@backstage/plugin-jenkins-backend": "^0.1.23-next.2", + "@backstage/plugin-kubernetes-backend": "^0.6.0-next.2", + "@backstage/plugin-kafka-backend": "^0.2.26-next.2", + "@backstage/plugin-permission-backend": "^0.5.8-next.2", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.1", - "@backstage/plugin-proxy-backend": "^0.2.27-next.0", - "@backstage/plugin-rollbar-backend": "^0.1.30-next.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.1", - "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.1-next.0", - "@backstage/plugin-search-backend": "^0.5.3-next.1", - "@backstage/plugin-search-backend-node": "^0.6.2-next.1", - "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.5-next.1", - "@backstage/plugin-search-backend-module-pg": "^0.3.4-next.1", - "@backstage/plugin-techdocs-backend": "^1.1.2-next.1", - "@backstage/plugin-tech-insights-backend": "^0.4.1-next.1", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.0", - "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.17-next.0", - "@backstage/plugin-todo-backend": "^0.1.30-next.1", + "@backstage/plugin-permission-node": "^0.6.2-next.2", + "@backstage/plugin-proxy-backend": "^0.2.27-next.1", + "@backstage/plugin-rollbar-backend": "^0.1.30-next.2", + "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", + "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.1-next.1", + "@backstage/plugin-search-backend": "^0.5.3-next.2", + "@backstage/plugin-search-backend-node": "^0.6.2-next.2", + "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.5-next.2", + "@backstage/plugin-search-backend-module-pg": "^0.3.4-next.2", + "@backstage/plugin-techdocs-backend": "^1.1.2-next.2", + "@backstage/plugin-tech-insights-backend": "^0.4.1-next.2", + "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", + "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.17-next.1", + "@backstage/plugin-todo-backend": "^0.1.30-next.2", "@gitbeaker/node": "^35.1.0", "@octokit/rest": "^18.5.3", "better-sqlite3": "^7.5.0", @@ -75,7 +75,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/dockerode": "^3.3.0", "@types/express": "^4.17.6", "@types/express-serve-static-core": "^4.17.5", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 612ce4441f..9c91144996 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/cli +## 0.17.2-next.2 + +### Patch Changes + +- 026cfe525a: Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. +- 9002ebd76b: Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. +- 1a33e8b287: Updated dependency `minimatch` to `5.1.0`. + ## 0.17.2-next.1 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index ceb0e73da3..df779d5526 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/cli", "description": "CLI for developing Backstage plugins and apps", - "version": "0.17.2-next.1", + "version": "0.17.2-next.2", "private": false, "publishConfig": { "access": "public" @@ -126,10 +126,10 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/packages/core-components/CHANGELOG.md b/packages/core-components/CHANGELOG.md index a50c88b369..d7c89e25d4 100644 --- a/packages/core-components/CHANGELOG.md +++ b/packages/core-components/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/core-components +## 0.9.5-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- 1cf9caecd6: fix Sidebar Contexts deprecation message + ## 0.9.5-next.1 ### Patch Changes diff --git a/packages/core-components/package.json b/packages/core-components/package.json index 867f17029e..bd9d6ec336 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-components", "description": "Core components used by Backstage plugins and apps", - "version": "0.9.5-next.1", + "version": "0.9.5-next.2", "private": false, "publishConfig": { "access": "public", @@ -80,7 +80,7 @@ }, "devDependencies": { "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", diff --git a/packages/create-app/CHANGELOG.md b/packages/create-app/CHANGELOG.md index 1c84a8659a..95f7c440d6 100644 --- a/packages/create-app/CHANGELOG.md +++ b/packages/create-app/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/create-app +## 0.4.28-next.2 + +### Patch Changes + +- aaf7652084: Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. + + ```diff + - "cypress": "^7.3.0", + + "cypress": "^9.7.0", + ``` + ## 0.4.28-next.1 ### Patch Changes diff --git a/packages/create-app/package.json b/packages/create-app/package.json index d5f4d89988..c235a90095 100644 --- a/packages/create-app/package.json +++ b/packages/create-app/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/create-app", "description": "A CLI that helps you create your own Backstage app", - "version": "0.4.28-next.1", + "version": "0.4.28-next.2", "private": false, "publishConfig": { "access": "public" diff --git a/packages/integration/CHANGELOG.md b/packages/integration/CHANGELOG.md index fbd3e0817f..69ef50bbd3 100644 --- a/packages/integration/CHANGELOG.md +++ b/packages/integration/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/integration +## 1.2.1-next.2 + +### Patch Changes + +- e37c71b5a4: Updated to support deployments of Azure DevOps Server under TFS or similar sub path + ## 1.2.1-next.1 ### Patch Changes diff --git a/packages/integration/package.json b/packages/integration/package.json index 3330eaabc9..7856c06988 100644 --- a/packages/integration/package.json +++ b/packages/integration/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/integration", "description": "Helpers for managing integrations towards external systems", - "version": "1.2.1-next.1", + "version": "1.2.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -43,7 +43,7 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/config-loader": "^1.1.2-next.0", "@backstage/test-utils": "^1.1.1-next.0", "@types/jest": "^26.0.7", diff --git a/packages/search-common/CHANGELOG.md b/packages/search-common/CHANGELOG.md index 00781cfad0..6e1cd9efd9 100644 --- a/packages/search-common/CHANGELOG.md +++ b/packages/search-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/search-common +## 0.3.5-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + ## 0.3.5-next.0 ### Patch Changes diff --git a/packages/search-common/package.json b/packages/search-common/package.json index baa7a92ad4..99de5fd382 100644 --- a/packages/search-common/package.json +++ b/packages/search-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/search-common", "description": "No longer maintained. Use @backstage/plugin-search-common instead.", - "version": "0.3.5-next.0", + "version": "0.3.5-next.1", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -35,7 +35,7 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/plugin-search-common": "0.3.5-next.0" + "@backstage/plugin-search-common": "0.3.5-next.1" }, "devDependencies": {}, "jest": { diff --git a/packages/techdocs-cli/CHANGELOG.md b/packages/techdocs-cli/CHANGELOG.md index 633f2e2b98..a6a810c1e6 100644 --- a/packages/techdocs-cli/CHANGELOG.md +++ b/packages/techdocs-cli/CHANGELOG.md @@ -1,5 +1,14 @@ # @techdocs/cli +## 1.1.2-next.2 + +### Patch Changes + +- f96e98f4cd: Updated dependency `cypress` to `^10.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-techdocs-node@1.1.2-next.2 + ## 1.1.2-next.1 ### Patch Changes diff --git a/packages/techdocs-cli/package.json b/packages/techdocs-cli/package.json index bda039739a..87d44a82cf 100644 --- a/packages/techdocs-cli/package.json +++ b/packages/techdocs-cli/package.json @@ -1,7 +1,7 @@ { "name": "@techdocs/cli", "description": "Utility CLI for managing TechDocs sites in Backstage.", - "version": "1.1.2-next.1", + "version": "1.1.2-next.2", "private": false, "publishConfig": { "access": "public" @@ -37,7 +37,7 @@ "techdocs-cli": "bin/techdocs-cli" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/commander": "^2.12.2", "@types/fs-extra": "^9.0.6", "@types/http-proxy": "^1.17.4", @@ -62,11 +62,11 @@ "ext": "ts" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/cli-common": "^0.1.9", "@backstage/config": "^1.0.1", - "@backstage/plugin-techdocs-node": "^1.1.2-next.1", + "@backstage/plugin-techdocs-node": "^1.1.2-next.2", "@types/dockerode": "^3.3.0", "commander": "^9.1.0", "dockerode": "^3.3.1", diff --git a/packages/techdocs-common/CHANGELOG.md b/packages/techdocs-common/CHANGELOG.md index 681263c777..f1bff865ee 100644 --- a/packages/techdocs-common/CHANGELOG.md +++ b/packages/techdocs-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/techdocs-common +## 0.11.16-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-techdocs-node@1.1.2-next.2 + ## 0.11.16-next.1 ### Patch Changes diff --git a/packages/techdocs-common/package.json b/packages/techdocs-common/package.json index 4da6555cae..91fe642194 100644 --- a/packages/techdocs-common/package.json +++ b/packages/techdocs-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/techdocs-common", "description": "No longer maintained. Use @backstage/plugin-techdocs-node instead.", - "version": "0.11.16-next.1", + "version": "0.11.16-next.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -36,7 +36,7 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/plugin-techdocs-node": "1.1.2-next.1" + "@backstage/plugin-techdocs-node": "1.1.2-next.2" }, "devDependencies": {}, "jest": { diff --git a/plugins/adr-backend/CHANGELOG.md b/plugins/adr-backend/CHANGELOG.md index 350614db10..af0f7b1de7 100644 --- a/plugins/adr-backend/CHANGELOG.md +++ b/plugins/adr-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-adr-backend +## 0.1.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 0.1.1-next.1 ### Patch Changes diff --git a/plugins/adr-backend/package.json b/plugins/adr-backend/package.json index 673ecc1c11..e006817386 100644 --- a/plugins/adr-backend/package.json +++ b/plugins/adr-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-adr-backend", - "version": "0.1.1-next.1", + "version": "0.1.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,14 +29,14 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@backstage/plugin-adr-common": "^0.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5-next.1", "luxon": "^2.0.2", "marked": "^4.0.14", "winston": "^3.2.1", @@ -44,7 +44,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/marked": "^4.0.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3", diff --git a/plugins/airbrake-backend/CHANGELOG.md b/plugins/airbrake-backend/CHANGELOG.md index 7bc333c52a..b881dc776e 100644 --- a/plugins/airbrake-backend/CHANGELOG.md +++ b/plugins/airbrake-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-airbrake-backend +## 0.2.6-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.2.6-next.1 ### Patch Changes diff --git a/plugins/airbrake-backend/package.json b/plugins/airbrake-backend/package.json index 068fa60ec6..9a7c28ccee 100644 --- a/plugins/airbrake-backend/package.json +++ b/plugins/airbrake-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-airbrake-backend", - "version": "0.2.6-next.1", + "version": "0.2.6-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,7 +22,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "*", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/airbrake/package.json b/plugins/airbrake/package.json index 9dcc6c958a..6ae9af115d 100644 --- a/plugins/airbrake/package.json +++ b/plugins/airbrake/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -41,7 +41,7 @@ }, "devDependencies": { "@backstage/app-defaults": "^1.0.3-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/allure/package.json b/plugins/allure/package.json index 08f3ad6f32..b9d500aa68 100644 --- a/plugins/allure/package.json +++ b/plugins/allure/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -40,7 +40,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/analytics-module-ga/package.json b/plugins/analytics-module-ga/package.json index 041f365121..7766ff8c33 100644 --- a/plugins/analytics-module-ga/package.json +++ b/plugins/analytics-module-ga/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -38,7 +38,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/apache-airflow/package.json b/plugins/apache-airflow/package.json index 1438e6e2b4..d4c9cfda95 100644 --- a/plugins/apache-airflow/package.json +++ b/plugins/apache-airflow/package.json @@ -23,7 +23,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -36,7 +36,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/api-docs/package.json b/plugins/api-docs/package.json index 6c66258443..e544c2812e 100644 --- a/plugins/api-docs/package.json +++ b/plugins/api-docs/package.json @@ -35,7 +35,7 @@ "dependencies": { "@asyncapi/react-component": "1.0.0-next.38", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog": "^1.2.1-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -44,8 +44,8 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "graphiql": "^1.8.8", - "graphql-ws": "^5.4.1", "graphql": "^16.0.0", + "graphql-ws": "^5.4.1", "isomorphic-form-data": "^2.0.0", "react-router": "6.0.0-beta.0", "react-router-dom": "6.0.0-beta.0", @@ -57,7 +57,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/app-backend/CHANGELOG.md b/plugins/app-backend/CHANGELOG.md index 29521b8efa..568a1ae425 100644 --- a/plugins/app-backend/CHANGELOG.md +++ b/plugins/app-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-app-backend +## 0.3.33-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.3.33-next.1 ### Patch Changes diff --git a/plugins/app-backend/package.json b/plugins/app-backend/package.json index 58e5a71da3..a945542d4a 100644 --- a/plugins/app-backend/package.json +++ b/plugins/app-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-app-backend", "description": "A Backstage backend plugin that serves the Backstage frontend app", - "version": "0.3.33-next.1", + "version": "0.3.33-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config-loader": "^1.1.2-next.0", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@backstage/types": "^1.0.0", "@types/supertest": "^2.0.8", "mock-fs": "^5.1.0", diff --git a/plugins/auth-backend/CHANGELOG.md b/plugins/auth-backend/CHANGELOG.md index 03e4f62dfe..6835d425c4 100644 --- a/plugins/auth-backend/CHANGELOG.md +++ b/plugins/auth-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-auth-backend +## 0.14.1-next.2 + +### Patch Changes + +- bc6fb57094: Updated dependency `passport` to `^0.6.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + ## 0.14.1-next.1 ### Patch Changes diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index 7ab1348a34..21260959ea 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-auth-backend", "description": "A Backstage backend plugin that handles authentication", - "version": "0.14.1-next.1", + "version": "0.14.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,8 +33,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-auth-node": "^0.2.2-next.1", - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/plugin-auth-node": "^0.2.2-next.2", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", @@ -76,8 +76,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/body-parser": "^1.19.0", "@types/cookie-parser": "^1.4.2", "@types/express-session": "^1.17.2", diff --git a/plugins/auth-node/CHANGELOG.md b/plugins/auth-node/CHANGELOG.md index 073235632c..02d677f059 100644 --- a/plugins/auth-node/CHANGELOG.md +++ b/plugins/auth-node/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-auth-node +## 0.2.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/auth-node/package.json b/plugins/auth-node/package.json index 24eda763f9..7d12b4c301 100644 --- a/plugins/auth-node/package.json +++ b/plugins/auth-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-node", - "version": "0.2.2-next.1", + "version": "0.2.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "jose": "^4.6.0", @@ -31,7 +31,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "lodash": "^4.17.21", "msw": "^0.42.0", "uuid": "^8.0.0" diff --git a/plugins/azure-devops-backend/CHANGELOG.md b/plugins/azure-devops-backend/CHANGELOG.md index 5350afd42e..b0b68f5526 100644 --- a/plugins/azure-devops-backend/CHANGELOG.md +++ b/plugins/azure-devops-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-azure-devops-backend +## 0.3.12-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.3.12-next.1 ### Patch Changes diff --git a/plugins/azure-devops-backend/package.json b/plugins/azure-devops-backend/package.json index da93348e16..e59ffe4632 100644 --- a/plugins/azure-devops-backend/package.json +++ b/plugins/azure-devops-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-azure-devops-backend", - "version": "0.3.12-next.1", + "version": "0.3.12-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/plugin-azure-devops-common": "^0.2.3", "@types/express": "^4.17.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", "msw": "^0.42.0" diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index 9e7403df03..a70425ce94 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -31,7 +31,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-azure-devops-common": "^0.2.3", @@ -49,7 +49,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/badges-backend/CHANGELOG.md b/plugins/badges-backend/CHANGELOG.md index 506ca73a86..436d1dec59 100644 --- a/plugins/badges-backend/CHANGELOG.md +++ b/plugins/badges-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-badges-backend +## 0.1.27-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.1.27-next.1 ### Patch Changes diff --git a/plugins/badges-backend/package.json b/plugins/badges-backend/package.json index 1f379dc979..549d850d2f 100644 --- a/plugins/badges-backend/package.json +++ b/plugins/badges-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-badges-backend", "description": "A Backstage backend plugin that generates README badges for your entities", - "version": "0.1.27-next.1", + "version": "0.1.27-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", @@ -48,7 +48,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/badges/package.json b/plugins/badges/package.json index 4f9b6925fd..fdec46cce3 100644 --- a/plugins/badges/package.json +++ b/plugins/badges/package.json @@ -31,7 +31,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -46,7 +46,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/bazaar-backend/CHANGELOG.md b/plugins/bazaar-backend/CHANGELOG.md index 90163bd7c0..e2554c480c 100644 --- a/plugins/bazaar-backend/CHANGELOG.md +++ b/plugins/bazaar-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-bazaar-backend +## 0.1.17-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-test-utils@0.1.25-next.2 + ## 0.1.17-next.0 ### Patch Changes diff --git a/plugins/bazaar-backend/package.json b/plugins/bazaar-backend/package.json index 7296a73f82..3026e4a8af 100644 --- a/plugins/bazaar-backend/package.json +++ b/plugins/bazaar-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-bazaar-backend", - "version": "0.1.17-next.0", + "version": "0.1.17-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", - "@backstage/backend-test-utils": "^0.1.25-next.0", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-test-utils": "^0.1.25-next.2", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -34,7 +34,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist", diff --git a/plugins/bazaar/package.json b/plugins/bazaar/package.json index 8b849f93f0..f58e2dde89 100644 --- a/plugins/bazaar/package.json +++ b/plugins/bazaar/package.json @@ -27,7 +27,7 @@ "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog": "^1.2.1-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -47,7 +47,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/dev-utils": "^1.0.3-next.1", "@testing-library/jest-dom": "^5.10.1", "cross-fetch": "^3.1.5" diff --git a/plugins/bitrise/package.json b/plugins/bitrise/package.json index 7f151bb31f..4ef88e6889 100644 --- a/plugins/bitrise/package.json +++ b/plugins/bitrise/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -43,7 +43,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/catalog-backend-module-aws/CHANGELOG.md b/plugins/catalog-backend-module-aws/CHANGELOG.md index 8d86163811..449540eb9c 100644 --- a/plugins/catalog-backend-module-aws/CHANGELOG.md +++ b/plugins/catalog-backend-module-aws/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-aws +## 0.1.6-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.1.6-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-aws/package.json b/plugins/catalog-backend-module-aws/package.json index d67b5d74b1..15233bf1f9 100644 --- a/plugins/catalog-backend-module-aws/package.json +++ b/plugins/catalog-backend-module-aws/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-aws", "description": "A Backstage catalog backend module that helps integrate towards AWS", - "version": "0.1.6-next.1", + "version": "0.1.6-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/types": "^1.0.0", "aws-sdk": "^2.840.0", "lodash": "^4.17.21", @@ -48,7 +48,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151", "aws-sdk-mock": "^5.2.1", "yaml": "^1.9.2" diff --git a/plugins/catalog-backend-module-azure/CHANGELOG.md b/plugins/catalog-backend-module-azure/CHANGELOG.md index 3bd780bd8f..885dafad5e 100644 --- a/plugins/catalog-backend-module-azure/CHANGELOG.md +++ b/plugins/catalog-backend-module-azure/CHANGELOG.md @@ -1,5 +1,77 @@ # @backstage/plugin-catalog-backend-module-azure +## 0.1.4-next.2 + +### Patch Changes + +- b8884fd579: Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. + + In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: azure-discovery + target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + azureDevOps: + anyProviderId: + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + Visit [https://backstage.io/docs/integrations/azure/discovery](https://backstage.io/docs/integrations/azure/discovery) for more details and options on configuration. + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index bbc8e1d566..315f4defe3 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-azure", "description": "A Backstage catalog backend module that helps integrate towards Azure", - "version": "0.1.4-next.1", + "version": "0.1.4-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/backend-tasks": "^0.3.2-next.0", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -48,8 +48,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket-cloud/package.json b/plugins/catalog-backend-module-bitbucket-cloud/package.json index e9bf6bc256..d94e4c66e2 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/package.json +++ b/plugins/catalog-backend-module-bitbucket-cloud/package.json @@ -33,18 +33,18 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@backstage/plugin-bitbucket-cloud-common": "^0.1.0-next.0", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "uuid": "^8.0.0", "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "msw": "^0.35.0" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md index 19fdfbe2f3..82685b07bb 100644 --- a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-backend-module-bitbucket +## 0.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.2.0-next.1 ### Minor Changes diff --git a/plugins/catalog-backend-module-bitbucket/package.json b/plugins/catalog-backend-module-bitbucket/package.json index 024deceae8..b65cf54614 100644 --- a/plugins/catalog-backend-module-bitbucket/package.json +++ b/plugins/catalog-backend-module-bitbucket/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket", - "version": "0.2.0-next.1", + "version": "0.2.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@backstage/plugin-bitbucket-cloud-common": "^0.1.0-next.0", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -47,8 +47,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gerrit/CHANGELOG.md b/plugins/catalog-backend-module-gerrit/CHANGELOG.md index 5f5d14ca5c..ecc7a71c46 100644 --- a/plugins/catalog-backend-module-gerrit/CHANGELOG.md +++ b/plugins/catalog-backend-module-gerrit/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-gerrit +## 0.1.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.1.1-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gerrit/package.json b/plugins/catalog-backend-module-gerrit/package.json index 6c09dcc137..f213100765 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.1.1-next.1", + "version": "0.1.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,13 +28,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "fs-extra": "10.1.0", "msw": "^0.42.0", "node-fetch": "^2.6.7", @@ -42,8 +42,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/fs-extra": "^9.0.1" }, "files": [ diff --git a/plugins/catalog-backend-module-github/CHANGELOG.md b/plugins/catalog-backend-module-github/CHANGELOG.md index b18d0ea1b0..00eaeae828 100644 --- a/plugins/catalog-backend-module-github/CHANGELOG.md +++ b/plugins/catalog-backend-module-github/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-github +## 0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-github/package.json b/plugins/catalog-backend-module-github/package.json index 052ca5539b..bba58a7dcb 100644 --- a/plugins/catalog-backend-module-github/package.json +++ b/plugins/catalog-backend-module-github/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-github", "description": "A Backstage catalog backend module that helps integrate towards GitHub", - "version": "0.1.4-next.1", + "version": "0.1.4-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/types": "^1.0.0", "@octokit/graphql": "^4.5.8", "lodash": "^4.17.21", @@ -49,8 +49,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gitlab/CHANGELOG.md b/plugins/catalog-backend-module-gitlab/CHANGELOG.md index d569ac6442..a8539f53ee 100644 --- a/plugins/catalog-backend-module-gitlab/CHANGELOG.md +++ b/plugins/catalog-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-backend-module-gitlab +## 0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index 76d872182d..d7909bf3b3 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-gitlab", "description": "A Backstage catalog backend module that helps integrate towards GitLab", - "version": "0.1.4-next.1", + "version": "0.1.4-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,12 +33,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -46,8 +46,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-msgraph/package.json b/plugins/catalog-backend-module-msgraph/package.json index 9c79c1a492..723a259d8c 100644 --- a/plugins/catalog-backend-module-msgraph/package.json +++ b/plugins/catalog-backend-module-msgraph/package.json @@ -34,10 +34,10 @@ }, "dependencies": { "@azure/msal-node": "^1.1.0", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@microsoft/microsoft-graph-types": "^2.6.0", "@types/node-fetch": "^2.5.12", "lodash": "^4.17.21", @@ -48,9 +48,9 @@ "qs": "^6.9.4" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151", "msw": "^0.42.0" }, diff --git a/plugins/catalog-backend/CHANGELOG.md b/plugins/catalog-backend/CHANGELOG.md index 5295fe2a6a..fece1f8436 100644 --- a/plugins/catalog-backend/CHANGELOG.md +++ b/plugins/catalog-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend +## 1.2.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + ## 1.2.0-next.1 ### Patch Changes diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index 20b4ad823e..92669e914d 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend", "description": "The Backstage backend plugin that provides the Backstage catalog", - "version": "1.2.0-next.1", + "version": "1.2.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,17 +34,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-common": "^1.0.3-next.1", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.1", + "@backstage/plugin-permission-node": "^0.6.2-next.2", "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", "codeowners-utils": "^1.0.2", @@ -68,10 +68,10 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-backend-node": "0.6.2-next.1", + "@backstage/plugin-search-backend-node": "0.6.2-next.2", "@types/core-js": "^2.5.4", "@types/git-url-parse": "^9.0.0", "@types/lodash": "^4.14.151", diff --git a/plugins/catalog-common/CHANGELOG.md b/plugins/catalog-common/CHANGELOG.md index 46f654c7bb..3c777caf44 100644 --- a/plugins/catalog-common/CHANGELOG.md +++ b/plugins/catalog-common/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-catalog-common +## 1.0.3-next.1 + +### Patch Changes + +- 7d8acfc32e: Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + ## 1.0.3-next.0 ### Patch Changes diff --git a/plugins/catalog-common/package.json b/plugins/catalog-common/package.json index f520a36c9b..efeb7862ae 100644 --- a/plugins/catalog-common/package.json +++ b/plugins/catalog-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-common", "description": "Common functionalities for the catalog plugin", - "version": "1.0.3-next.0", + "version": "1.0.3-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ }, "dependencies": { "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.0" + "@backstage/plugin-search-common": "^0.3.5-next.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist", diff --git a/plugins/catalog-graph/package.json b/plugins/catalog-graph/package.json index 6d36f07c6c..3ce58dab78 100644 --- a/plugins/catalog-graph/package.json +++ b/plugins/catalog-graph/package.json @@ -26,7 +26,7 @@ "dependencies": { "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -45,10 +45,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/plugin-catalog": "^1.2.1-next.1", "@backstage/test-utils": "^1.1.1-next.0", "@backstage/types": "^1.0.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/catalog-import/package.json b/plugins/catalog-import/package.json index a7b3dcbc4d..7d0e7133dc 100644 --- a/plugins/catalog-import/package.json +++ b/plugins/catalog-import/package.json @@ -37,7 +37,7 @@ "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.1", @@ -60,7 +60,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/catalog/package.json b/plugins/catalog/package.json index fcfa2e22a2..decb229c52 100644 --- a/plugins/catalog/package.json +++ b/plugins/catalog/package.json @@ -36,7 +36,7 @@ "dependencies": { "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/integration-react": "^1.1.1-next.1", @@ -61,7 +61,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/plugin-permission-react": "^0.4.2-next.0", diff --git a/plugins/circleci/package.json b/plugins/circleci/package.json index e17d0d1709..19920cd964 100644 --- a/plugins/circleci/package.json +++ b/plugins/circleci/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -55,7 +55,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/cloudbuild/package.json b/plugins/cloudbuild/package.json index a6daa35f75..b4885708b1 100644 --- a/plugins/cloudbuild/package.json +++ b/plugins/cloudbuild/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -52,7 +52,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/code-climate/package.json b/plugins/code-climate/package.json index c38df0f796..bca2ac5099 100644 --- a/plugins/code-climate/package.json +++ b/plugins/code-climate/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -40,7 +40,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/code-coverage-backend/CHANGELOG.md b/plugins/code-coverage-backend/CHANGELOG.md index b4e44227cb..be8f95ef65 100644 --- a/plugins/code-coverage-backend/CHANGELOG.md +++ b/plugins/code-coverage-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-code-coverage-backend +## 0.1.31-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 0.1.31-next.1 ### Patch Changes diff --git a/plugins/code-coverage-backend/package.json b/plugins/code-coverage-backend/package.json index 7c256809a1..d8c167815e 100644 --- a/plugins/code-coverage-backend/package.json +++ b/plugins/code-coverage-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-code-coverage-backend", "description": "A Backstage backend plugin that helps you keep track of your code coverage", - "version": "0.1.31-next.1", + "version": "0.1.31-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -39,7 +39,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/express-xml-bodyparser": "^0.3.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/code-coverage/package.json b/plugins/code-coverage/package.json index 561138f589..ae588bf72a 100644 --- a/plugins/code-coverage/package.json +++ b/plugins/code-coverage/package.json @@ -26,7 +26,7 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -46,7 +46,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/codescene/CHANGELOG.md b/plugins/codescene/CHANGELOG.md index c02e18eed6..de918465e4 100644 --- a/plugins/codescene/CHANGELOG.md +++ b/plugins/codescene/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-codescene +## 0.1.1-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.1.1-next.1 ### Patch Changes diff --git a/plugins/codescene/package.json b/plugins/codescene/package.json index 34dfe23ac0..b29c172f25 100644 --- a/plugins/codescene/package.json +++ b/plugins/codescene/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-codescene", - "version": "0.1.1-next.1", + "version": "0.1.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -38,7 +38,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/config-schema/package.json b/plugins/config-schema/package.json index 839425919c..627902ab5d 100644 --- a/plugins/config-schema/package.json +++ b/plugins/config-schema/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -41,7 +41,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/cost-insights/CHANGELOG.md b/plugins/cost-insights/CHANGELOG.md index ae0b5c12c2..857c2e68ca 100644 --- a/plugins/cost-insights/CHANGELOG.md +++ b/plugins/cost-insights/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-cost-insights +## 0.11.28-next.2 + +### Patch Changes + +- 2fc98ac50c: Fix broken app-config in the example in the README +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.11.28-next.1 ### Patch Changes diff --git a/plugins/cost-insights/package.json b/plugins/cost-insights/package.json index 7e641a830e..160f908708 100644 --- a/plugins/cost-insights/package.json +++ b/plugins/cost-insights/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cost-insights", "description": "A Backstage plugin that helps you keep track of your cloud spend", - "version": "0.11.28-next.1", + "version": "0.11.28-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,7 +36,7 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -60,7 +60,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/example-todo-list-backend/CHANGELOG.md b/plugins/example-todo-list-backend/CHANGELOG.md index 812fd07a3f..b0cd112b68 100644 --- a/plugins/example-todo-list-backend/CHANGELOG.md +++ b/plugins/example-todo-list-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @internal/plugin-todo-list-backend +## 1.0.2-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + ## 1.0.2-next.0 ### Patch Changes diff --git a/plugins/example-todo-list-backend/package.json b/plugins/example-todo-list-backend/package.json index b32dbf48c4..cafba4cfdf 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.2-next.0", + "version": "1.0.2-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -20,10 +20,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.0", + "@backstage/plugin-auth-node": "^0.2.2-next.2", "@types/express": "^4.17.6", "cross-fetch": "^3.1.5", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", "msw": "^0.42.0", diff --git a/plugins/example-todo-list/package.json b/plugins/example-todo-list/package.json index 47e2173a7d..4be80a0c33 100644 --- a/plugins/example-todo-list/package.json +++ b/plugins/example-todo-list/package.json @@ -21,7 +21,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -33,7 +33,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/explore/package.json b/plugins/explore/package.json index 2eec2b07cd..4c6102634b 100644 --- a/plugins/explore/package.json +++ b/plugins/explore/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/plugin-explore-react": "^0.0.18-next.0", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/firehydrant/package.json b/plugins/firehydrant/package.json index 8fb92336d3..4ca06743ca 100644 --- a/plugins/firehydrant/package.json +++ b/plugins/firehydrant/package.json @@ -25,7 +25,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -39,7 +39,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/fossa/package.json b/plugins/fossa/package.json index 8c14c50b90..7c20b13ed6 100644 --- a/plugins/fossa/package.json +++ b/plugins/fossa/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/gcp-projects/package.json b/plugins/gcp-projects/package.json index 9a5a864dcf..6d43d6516d 100644 --- a/plugins/gcp-projects/package.json +++ b/plugins/gcp-projects/package.json @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -47,7 +47,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/git-release-manager/package.json b/plugins/git-release-manager/package.json index 24bd8e6e6e..512fccdc27 100644 --- a/plugins/git-release-manager/package.json +++ b/plugins/git-release-manager/package.json @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/integration": "^1.2.1-next.1", "@backstage/theme": "^0.2.15", @@ -43,7 +43,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/github-actions/package.json b/plugins/github-actions/package.json index 3467f83b23..002f1af792 100644 --- a/plugins/github-actions/package.json +++ b/plugins/github-actions/package.json @@ -37,7 +37,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/integration": "^1.2.1-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -55,7 +55,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/github-deployments/package.json b/plugins/github-deployments/package.json index 4a0b14c89b..ddd8fc0107 100644 --- a/plugins/github-deployments/package.json +++ b/plugins/github-deployments/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.1", @@ -43,7 +43,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/github-pull-requests-board/package.json b/plugins/github-pull-requests-board/package.json index df8237ec9e..046e465f33 100644 --- a/plugins/github-pull-requests-board/package.json +++ b/plugins/github-pull-requests-board/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/integration": "^1.2.1-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -49,7 +49,7 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/gitops-profiles/package.json b/plugins/gitops-profiles/package.json index 22d4e5868d..4564eb6ed1 100644 --- a/plugins/gitops-profiles/package.json +++ b/plugins/gitops-profiles/package.json @@ -35,7 +35,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -48,7 +48,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/gocd/package.json b/plugins/gocd/package.json index f033734e6d..6607d68843 100644 --- a/plugins/gocd/package.json +++ b/plugins/gocd/package.json @@ -32,7 +32,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -49,7 +49,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/graphiql/package.json b/plugins/graphiql/package.json index e3667589dd..80e0c72b9d 100644 --- a/plugins/graphiql/package.json +++ b/plugins/graphiql/package.json @@ -34,22 +34,22 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "graphiql": "^1.5.12", - "graphql-ws": "^5.4.1", "graphql": "^16.0.0", + "graphql-ws": "^5.4.1", "react-use": "^17.2.4" }, "peerDependencies": { "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/graphql-backend/CHANGELOG.md b/plugins/graphql-backend/CHANGELOG.md index ccb38a0783..d86cb3c336 100644 --- a/plugins/graphql-backend/CHANGELOG.md +++ b/plugins/graphql-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-graphql-backend +## 0.1.23-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.1.23-next.1 ### Patch Changes diff --git a/plugins/graphql-backend/package.json b/plugins/graphql-backend/package.json index 82e8c2c0f5..705f760a93 100644 --- a/plugins/graphql-backend/package.json +++ b/plugins/graphql-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-graphql-backend", "description": "An experimental Backstage backend plugin for GraphQL", - "version": "0.1.23-next.1", + "version": "0.1.23-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/plugin-catalog-graphql": "^0.3.10-next.0", "@graphql-tools/schema": "^8.3.1", @@ -51,7 +51,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/home/package.json b/plugins/home/package.json index 115e374ec9..c92bcde87c 100644 --- a/plugins/home/package.json +++ b/plugins/home/package.json @@ -35,12 +35,12 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/config": "^1.0.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/plugin-stack-overflow": "^0.1.2-next.1", "@backstage/theme": "^0.2.15", - "@backstage/config": "^1.0.1", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/ilert/package.json b/plugins/ilert/package.json index ab8ad3fec9..1593d3b677 100644 --- a/plugins/ilert/package.json +++ b/plugins/ilert/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -43,7 +43,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/jenkins-backend/CHANGELOG.md b/plugins/jenkins-backend/CHANGELOG.md index bd28ea2ddc..02b02592c8 100644 --- a/plugins/jenkins-backend/CHANGELOG.md +++ b/plugins/jenkins-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-jenkins-backend +## 0.1.23-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + ## 0.1.23-next.1 ### Patch Changes diff --git a/plugins/jenkins-backend/package.json b/plugins/jenkins-backend/package.json index 968688ed85..79c48454e4 100644 --- a/plugins/jenkins-backend/package.json +++ b/plugins/jenkins-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-jenkins-backend", "description": "A Backstage backend plugin that integrates towards Jenkins", - "version": "0.1.23-next.1", + "version": "0.1.23-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,12 +25,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.1", + "@backstage/plugin-auth-node": "^0.2.2-next.2", "@backstage/plugin-jenkins-common": "^0.1.5-next.0", "@backstage/plugin-permission-common": "^0.6.2-next.0", "@types/express": "^4.17.6", @@ -41,7 +41,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/jenkins": "^0.23.1", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/jenkins/package.json b/plugins/jenkins/package.json index 57350cf513..7354e68150 100644 --- a/plugins/jenkins/package.json +++ b/plugins/jenkins/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -54,7 +54,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/kafka-backend/CHANGELOG.md b/plugins/kafka-backend/CHANGELOG.md index e1bbf42420..45f1657be1 100644 --- a/plugins/kafka-backend/CHANGELOG.md +++ b/plugins/kafka-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-kafka-backend +## 0.2.26-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.2.26-next.1 ### Patch Changes diff --git a/plugins/kafka-backend/package.json b/plugins/kafka-backend/package.json index ca7a93721e..aaa6666b1d 100644 --- a/plugins/kafka-backend/package.json +++ b/plugins/kafka-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kafka-backend", "description": "A Backstage backend plugin that integrates towards Kafka", - "version": "0.2.26-next.1", + "version": "0.2.26-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,7 +35,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", @@ -47,7 +47,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/jest-when": "^3.5.0", "@types/lodash": "^4.14.151", "jest-when": "^3.1.0", diff --git a/plugins/kafka/package.json b/plugins/kafka/package.json index 8665bd6867..893196d629 100644 --- a/plugins/kafka/package.json +++ b/plugins/kafka/package.json @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -39,7 +39,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/kubernetes-backend/CHANGELOG.md b/plugins/kubernetes-backend/CHANGELOG.md index 2f9c1090d8..99078af649 100644 --- a/plugins/kubernetes-backend/CHANGELOG.md +++ b/plugins/kubernetes-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-kubernetes-backend +## 0.6.0-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.6.0-next.1 ### Patch Changes diff --git a/plugins/kubernetes-backend/package.json b/plugins/kubernetes-backend/package.json index db732b8634..441c258a20 100644 --- a/plugins/kubernetes-backend/package.json +++ b/plugins/kubernetes-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes-backend", "description": "A Backstage backend plugin that integrates towards Kubernetes", - "version": "0.6.0-next.1", + "version": "0.6.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,7 +36,7 @@ }, "dependencies": { "@azure/identity": "^2.0.4", - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", @@ -61,7 +61,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/aws4": "^1.5.1", "aws-sdk-mock": "^5.2.1", "supertest": "^6.1.3" diff --git a/plugins/kubernetes/CHANGELOG.md b/plugins/kubernetes/CHANGELOG.md index 3c7c63be2f..2d2125efc0 100644 --- a/plugins/kubernetes/CHANGELOG.md +++ b/plugins/kubernetes/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-kubernetes +## 0.6.6-next.2 + +### Patch Changes + +- 5553f09e80: ability to configure refresh interval on Kubernetes tab +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.6.6-next.1 ### Patch Changes diff --git a/plugins/kubernetes/package.json b/plugins/kubernetes/package.json index 6c62f832a8..a302f22e48 100644 --- a/plugins/kubernetes/package.json +++ b/plugins/kubernetes/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes", "description": "A Backstage plugin that integrates towards Kubernetes", - "version": "0.6.6-next.1", + "version": "0.6.6-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,7 +36,7 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/plugin-kubernetes-common": "^0.3.0-next.1", @@ -57,7 +57,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/lighthouse/package.json b/plugins/lighthouse/package.json index 49b87f4020..c7e78ecb8f 100644 --- a/plugins/lighthouse/package.json +++ b/plugins/lighthouse/package.json @@ -37,7 +37,7 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -51,7 +51,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/newrelic-dashboard/package.json b/plugins/newrelic-dashboard/package.json index 21635530c6..3dc7a5105b 100644 --- a/plugins/newrelic-dashboard/package.json +++ b/plugins/newrelic-dashboard/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -34,7 +34,7 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/dev-utils": "^1.0.3-next.1", "@testing-library/jest-dom": "^5.10.1", "@types/react": "^16.13.1 || ^17.0.0", diff --git a/plugins/newrelic/package.json b/plugins/newrelic/package.json index 73871b1c16..51ad2fec3b 100644 --- a/plugins/newrelic/package.json +++ b/plugins/newrelic/package.json @@ -35,7 +35,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -47,7 +47,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/org/CHANGELOG.md b/plugins/org/CHANGELOG.md index 5ddc18f331..8ff62a756c 100644 --- a/plugins/org/CHANGELOG.md +++ b/plugins/org/CHANGELOG.md @@ -1,5 +1,35 @@ # @backstage/plugin-org +## 0.5.6-next.2 + +### Patch Changes + +- 306d0b4fdd: Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: + + ```diff + // app/src/components/Root/Root.tsx + + + //... + }> + {/* Global nav, not org-specific */} + //... + + + //... + + + + ``` + +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.5.6-next.1 ### Patch Changes diff --git a/plugins/org/package.json b/plugins/org/package.json index 72541bf2cd..5ca199d76c 100644 --- a/plugins/org/package.json +++ b/plugins/org/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-org", "description": "A Backstage plugin that helps you create entity pages for your organization", - "version": "0.5.6-next.1", + "version": "0.5.6-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,7 +30,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -49,7 +49,7 @@ }, "devDependencies": { "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/pagerduty/CHANGELOG.md b/plugins/pagerduty/CHANGELOG.md index 2fc920bf7e..3f5b0bba16 100644 --- a/plugins/pagerduty/CHANGELOG.md +++ b/plugins/pagerduty/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-pagerduty +## 0.4.0-next.2 + +### Minor Changes + +- b157c2eb1c: **Breaking**: Use identityApi to provide auth token for pagerduty API calls. + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.3.33-next.1 ### Patch Changes diff --git a/plugins/pagerduty/package.json b/plugins/pagerduty/package.json index 1540b7c037..5a8706db15 100644 --- a/plugins/pagerduty/package.json +++ b/plugins/pagerduty/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-pagerduty", "description": "A Backstage plugin that integrates towards PagerDuty", - "version": "0.3.33-next.1", + "version": "0.4.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -52,7 +52,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/periskop-backend/CHANGELOG.md b/plugins/periskop-backend/CHANGELOG.md index cba5567119..36a577fb22 100644 --- a/plugins/periskop-backend/CHANGELOG.md +++ b/plugins/periskop-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-periskop-backend +## 0.1.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/periskop-backend/package.json b/plugins/periskop-backend/package.json index 1aab766dfa..6ed539484b 100644 --- a/plugins/periskop-backend/package.json +++ b/plugins/periskop-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-periskop-backend", - "version": "0.1.4-next.1", + "version": "0.1.4-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "*", "cross-fetch": "^3.0.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.6" diff --git a/plugins/periskop/package.json b/plugins/periskop/package.json index 2fdd267253..a6eb2ab005 100644 --- a/plugins/periskop/package.json +++ b/plugins/periskop/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -42,7 +42,7 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/permission-backend/CHANGELOG.md b/plugins/permission-backend/CHANGELOG.md index aba8c95522..5094d9c34d 100644 --- a/plugins/permission-backend/CHANGELOG.md +++ b/plugins/permission-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-permission-backend +## 0.5.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + ## 0.5.8-next.1 ### Patch Changes diff --git a/plugins/permission-backend/package.json b/plugins/permission-backend/package.json index 4856b706c2..4a59de4467 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.8-next.1", + "version": "0.5.8-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,12 +22,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.1", + "@backstage/plugin-auth-node": "^0.2.2-next.2", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.1", + "@backstage/plugin-permission-node": "^0.6.2-next.2", "@types/express": "*", "dataloader": "^2.0.0", "express": "^4.17.1", @@ -39,7 +39,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/lodash": "^4.14.151", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/permission-node/CHANGELOG.md b/plugins/permission-node/CHANGELOG.md index 245c1abe57..ac4c9df7b4 100644 --- a/plugins/permission-node/CHANGELOG.md +++ b/plugins/permission-node/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-permission-node +## 0.6.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + ## 0.6.2-next.1 ### Patch Changes diff --git a/plugins/permission-node/package.json b/plugins/permission-node/package.json index b95e5d9497..0cb25d2949 100644 --- a/plugins/permission-node/package.json +++ b/plugins/permission-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-permission-node", "description": "Common permission and authorization utilities for backend plugins", - "version": "0.6.2-next.1", + "version": "0.6.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,10 +33,10 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.1", + "@backstage/plugin-auth-node": "^0.2.2-next.2", "@backstage/plugin-permission-common": "^0.6.2-next.0", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -44,7 +44,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/proxy-backend/CHANGELOG.md b/plugins/proxy-backend/CHANGELOG.md index c95d2c1d26..c0372e3a97 100644 --- a/plugins/proxy-backend/CHANGELOG.md +++ b/plugins/proxy-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-proxy-backend +## 0.2.27-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.2.27-next.0 ### Patch Changes diff --git a/plugins/proxy-backend/package.json b/plugins/proxy-backend/package.json index 82a5dbe711..f996cdbe69 100644 --- a/plugins/proxy-backend/package.json +++ b/plugins/proxy-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-proxy-backend", "description": "A Backstage backend plugin that helps you set up proxy endpoints in the backend", - "version": "0.2.27-next.0", + "version": "0.2.27-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,7 +32,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -46,7 +46,7 @@ "yup": "^0.32.9" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.2-next.2", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", diff --git a/plugins/rollbar-backend/CHANGELOG.md b/plugins/rollbar-backend/CHANGELOG.md index edb5011b6f..0b2b4733a5 100644 --- a/plugins/rollbar-backend/CHANGELOG.md +++ b/plugins/rollbar-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-rollbar-backend +## 0.1.30-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.1.30-next.1 ### Patch Changes diff --git a/plugins/rollbar-backend/package.json b/plugins/rollbar-backend/package.json index efe84fcfe4..f4d5e3bdb4 100644 --- a/plugins/rollbar-backend/package.json +++ b/plugins/rollbar-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-rollbar-backend", "description": "A Backstage backend plugin that integrates towards Rollbar", - "version": "0.1.30-next.1", + "version": "0.1.30-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "camelcase-keys": "^7.0.1", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/rollbar/package.json b/plugins/rollbar/package.json index 745796e1c5..06b8c4a79f 100644 --- a/plugins/rollbar/package.json +++ b/plugins/rollbar/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md index 5633aade4c..7db0dd7428 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-backend-module-cookiecutter +## 0.2.8-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 0.2.8-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-cookiecutter/package.json b/plugins/scaffolder-backend-module-cookiecutter/package.json index b49c573d71..88aab6634e 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/package.json +++ b/plugins/scaffolder-backend-module-cookiecutter/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-cookiecutter", "description": "A module for the scaffolder backend that lets you template projects using cookiecutter", - "version": "0.2.8-next.1", + "version": "0.2.8-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/fs-extra": "^9.0.1", "@types/mock-fs": "^4.13.0", "@types/jest": "^26.0.7", diff --git a/plugins/scaffolder-backend-module-rails/CHANGELOG.md b/plugins/scaffolder-backend-module-rails/CHANGELOG.md index 1e4a50833b..2b89dc7462 100644 --- a/plugins/scaffolder-backend-module-rails/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-rails/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-backend-module-rails +## 0.4.1-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0-next.2 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 0.4.1-next.0 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-rails/package.json b/plugins/scaffolder-backend-module-rails/package.json index f25db32f10..485987b4b1 100644 --- a/plugins/scaffolder-backend-module-rails/package.json +++ b/plugins/scaffolder-backend-module-rails/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-rails", "description": "A module for the scaffolder backend that lets you template projects using Rails", - "version": "0.4.1-next.0", + "version": "0.4.1-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,17 +24,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.0", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.0", + "@backstage/integration": "^1.2.1-next.2", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", "fs-extra": "^10.0.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.2-next.2", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "@types/command-exists": "^1.2.0", diff --git a/plugins/scaffolder-backend-module-yeoman/package.json b/plugins/scaffolder-backend-module-yeoman/package.json index e823ac0ab9..4a69a10248 100644 --- a/plugins/scaffolder-backend-module-yeoman/package.json +++ b/plugins/scaffolder-backend-module-yeoman/package.json @@ -24,13 +24,13 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.0", + "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", "@backstage/types": "^1.0.0", "winston": "^3.2.1", "yeoman-environment": "^3.9.1" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.0", + "@backstage/backend-common": "^0.14.0-next.2", "@types/jest": "^26.0.7" }, "files": [ diff --git a/plugins/scaffolder-backend/CHANGELOG.md b/plugins/scaffolder-backend/CHANGELOG.md index 47c6fd99ef..99a54c1ddf 100644 --- a/plugins/scaffolder-backend/CHANGELOG.md +++ b/plugins/scaffolder-backend/CHANGELOG.md @@ -1,5 +1,40 @@ # @backstage/plugin-scaffolder-backend +## 1.3.0-next.2 + +### Minor Changes + +- ce0d8d7eb1: Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. + This fix required changing the way parameters are passed to the action. + In order to add a team as collaborator, now you must use the `team` field instead of `username`. + In order to add a user as collaborator, you must use the `user` field. + + It's still possible to use the field `username` but is deprecated in favor of `team`. + + ```yaml + - id: publish + name: Publish + action: publish:github + input: + repoUrl: ... + collaborators: + - access: ... + team: my_team + - access: ... + user: my_username + ``` + +- 582003a059: - Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` + - Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` + - Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-catalog-backend@1.2.0-next.2 + ## 1.3.0-next.1 ### Minor Changes diff --git a/plugins/scaffolder-backend/package.json b/plugins/scaffolder-backend/package.json index 22390252cc..b69327ae1c 100644 --- a/plugins/scaffolder-backend/package.json +++ b/plugins/scaffolder-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend", "description": "The Backstage backend plugin that helps you create new things", - "version": "1.3.0-next.1", + "version": "1.3.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,13 +34,13 @@ "build:assets": "node scripts/build-nunjucks.js" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0-next.2", "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", "@backstage/types": "^1.0.0", "@gitbeaker/core": "^35.6.0", @@ -76,8 +76,8 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/command-exists": "^1.2.0", "@types/fs-extra": "^9.0.1", "@types/git-url-parse": "^9.0.0", diff --git a/plugins/scaffolder/CHANGELOG.md b/plugins/scaffolder/CHANGELOG.md index 50b1ba913e..1e8710f96d 100644 --- a/plugins/scaffolder/CHANGELOG.md +++ b/plugins/scaffolder/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-scaffolder +## 1.3.0-next.2 + +### Minor Changes + +- dc39366bdb: - Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. + - Ability to filter these tasks by the signed in user, and all tasks. + - Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. + +### Patch Changes + +- ac0c7e45ee: Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. +- fd505f40c0: Handle binary files and files that are too large during dry-run content upload. +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/core-components@0.9.5-next.2 + - @backstage/integration@1.2.1-next.2 + ## 1.3.0-next.1 ### Patch Changes diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index 5b8ed32b9e..af78b55ed5 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder", "description": "The Backstage plugin that helps you create new things", - "version": "1.3.0-next.1", + "version": "1.3.0-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -38,12 +38,12 @@ "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", + "@backstage/plugin-catalog-common": "^1.0.3-next.1", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/plugin-permission-react": "^0.4.2-next.0", "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", @@ -81,7 +81,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/plugin-catalog": "^1.2.1-next.1", diff --git a/plugins/search-backend-module-elasticsearch/CHANGELOG.md b/plugins/search-backend-module-elasticsearch/CHANGELOG.md index b73f906d5f..d279931754 100644 --- a/plugins/search-backend-module-elasticsearch/CHANGELOG.md +++ b/plugins/search-backend-module-elasticsearch/CHANGELOG.md @@ -1,5 +1,24 @@ # @backstage/plugin-search-backend-module-elasticsearch +## 0.1.5-next.2 + +### Patch Changes + +- 7d8acfc32e: Additional types now exported publicly: + + - ElasticSearchAgentOptions + - ElasticSearchConcreteQuery + - ElasticSearchQueryTranslator + - ElasticSearchConnectionConstructor, + - ElasticSearchTransportConstructor, + - ElasticSearchNodeOptions, + - ElasticSearchOptions, + - ElasticSearchAuth, + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + ## 0.1.5-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-elasticsearch/package.json b/plugins/search-backend-module-elasticsearch/package.json index 272953c83a..87cebc3a71 100644 --- a/plugins/search-backend-module-elasticsearch/package.json +++ b/plugins/search-backend-module-elasticsearch/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-elasticsearch", "description": "A module for the search backend that implements search using ElasticSearch", - "version": "0.1.5-next.1", + "version": "0.1.5-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,8 +25,8 @@ "dependencies": { "@acuris/aws-es-connection": "^2.2.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-search-backend-node": "^0.6.2-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-backend-node": "^0.6.2-next.2", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@elastic/elasticsearch": "7.13.0", "aws-sdk": "^2.948.0", "elastic-builder": "^2.16.0", @@ -35,8 +35,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/cli": "^0.17.2-next.2", "@elastic/elasticsearch-mock": "^1.0.0" }, "files": [ diff --git a/plugins/search-backend-module-pg/CHANGELOG.md b/plugins/search-backend-module-pg/CHANGELOG.md index 6e9d3c10f8..1744ffae49 100644 --- a/plugins/search-backend-module-pg/CHANGELOG.md +++ b/plugins/search-backend-module-pg/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-search-backend-module-pg +## 0.3.4-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + ## 0.3.4-next.1 ### Patch Changes diff --git a/plugins/search-backend-module-pg/package.json b/plugins/search-backend-module-pg/package.json index e80be9a56d..20cf9f561c 100644 --- a/plugins/search-backend-module-pg/package.json +++ b/plugins/search-backend-module-pg/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-pg", "description": "A module for the search backend that implements search using PostgreSQL", - "version": "0.3.4-next.1", + "version": "0.3.4-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,15 +23,15 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/plugin-search-backend-node": "^0.6.2-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/plugin-search-backend-node": "^0.6.2-next.2", + "@backstage/plugin-search-common": "^0.3.5-next.1", "lodash": "^4.17.21", "knex": "^1.0.2" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1" + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist", diff --git a/plugins/search-backend-node/CHANGELOG.md b/plugins/search-backend-node/CHANGELOG.md index e154076388..1482abbee8 100644 --- a/plugins/search-backend-node/CHANGELOG.md +++ b/plugins/search-backend-node/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-backend-node +## 0.6.2-next.2 + +### Patch Changes + +- 7d8acfc32e: Replaced all `@beta` exports with `@public` exports +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + ## 0.6.2-next.1 ### Patch Changes diff --git a/plugins/search-backend-node/package.json b/plugins/search-backend-node/package.json index 1e0b348927..c0c6804455 100644 --- a/plugins/search-backend-node/package.json +++ b/plugins/search-backend-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-node", "description": "A library for Backstage backend plugins that want to interact with the search backend plugin", - "version": "0.6.2-next.1", + "version": "0.6.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@types/lunr": "^2.3.3", "lodash": "^4.17.21", "lunr": "^2.3.9", @@ -38,8 +38,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/ndjson": "^2.0.1" }, "files": [ diff --git a/plugins/search-backend/CHANGELOG.md b/plugins/search-backend/CHANGELOG.md index e6d3278d05..3fd518cb01 100644 --- a/plugins/search-backend/CHANGELOG.md +++ b/plugins/search-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-search-backend +## 0.5.3-next.2 + +### Patch Changes + +- 7d8acfc32e: `RouterOptions` and `createRouter` now marked as public exports +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-search-backend-node@0.6.2-next.2 + - @backstage/plugin-auth-node@0.2.2-next.2 + - @backstage/plugin-permission-node@0.6.2-next.2 + ## 0.5.3-next.1 ### Patch Changes diff --git a/plugins/search-backend/package.json b/plugins/search-backend/package.json index 903dcf9617..eeb1f5b194 100644 --- a/plugins/search-backend/package.json +++ b/plugins/search-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend", "description": "The Backstage backend plugin that provides your backstage app with search", - "version": "0.5.3-next.1", + "version": "0.5.3-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,14 +23,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.1", + "@backstage/plugin-auth-node": "^0.2.2-next.2", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.1", - "@backstage/plugin-search-backend-node": "^0.6.2-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-permission-node": "^0.6.2-next.2", + "@backstage/plugin-search-backend-node": "^0.6.2-next.2", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", "dataloader": "^2.0.0", @@ -43,7 +43,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/search-common/CHANGELOG.md b/plugins/search-common/CHANGELOG.md index 2775d37b58..ea383888c4 100644 --- a/plugins/search-common/CHANGELOG.md +++ b/plugins/search-common/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/plugin-search-common +## 0.3.5-next.1 + +### Patch Changes + +- 7d8acfc32e: `@beta` exports now replaced with `@public` exports + ## 0.3.5-next.0 ### Patch Changes diff --git a/plugins/search-common/package.json b/plugins/search-common/package.json index 472a040b1d..9144536d47 100644 --- a/plugins/search-common/package.json +++ b/plugins/search-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-common", "description": "Common functionalities for Search, to be shared between various search-enabled plugins", - "version": "0.3.5-next.0", + "version": "0.3.5-next.1", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -43,7 +43,7 @@ "@backstage/plugin-permission-common": "^0.6.2-next.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2-next.2" }, "jest": { "roots": [ diff --git a/plugins/search/CHANGELOG.md b/plugins/search/CHANGELOG.md index 6ed8b636e3..21b5a76e7f 100644 --- a/plugins/search/CHANGELOG.md +++ b/plugins/search/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-search +## 0.8.2-next.2 + +### Patch Changes + +- 5388e6bdc5: Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/core-components@0.9.5-next.2 + ## 0.8.2-next.1 ### Patch Changes diff --git a/plugins/search/package.json b/plugins/search/package.json index 368a488ea9..04c3468c6e 100644 --- a/plugins/search/package.json +++ b/plugins/search/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search", "description": "The Backstage plugin that provides your backstage app with search", - "version": "0.8.2-next.1", + "version": "0.8.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@backstage/plugin-search-react": "^0.2.1-next.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -57,7 +57,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/sentry/package.json b/plugins/sentry/package.json index 0e8e3dda2d..f76f69adc8 100644 --- a/plugins/sentry/package.json +++ b/plugins/sentry/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/shortcuts/package.json b/plugins/shortcuts/package.json index 8c19ac2d25..9ee1fffbee 100644 --- a/plugins/shortcuts/package.json +++ b/plugins/shortcuts/package.json @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -42,7 +42,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/sonarqube/CHANGELOG.md b/plugins/sonarqube/CHANGELOG.md index 8e3a080fdf..28787ac8b7 100644 --- a/plugins/sonarqube/CHANGELOG.md +++ b/plugins/sonarqube/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-sonarqube +## 0.3.6-next.2 + +### Patch Changes + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5-next.2 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/sonarqube/package.json b/plugins/sonarqube/package.json index 011b5ffe52..8fe7e16f30 100644 --- a/plugins/sonarqube/package.json +++ b/plugins/sonarqube/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-sonarqube", "description": "", - "version": "0.3.6-next.1", + "version": "0.3.6-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -37,7 +37,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -53,7 +53,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/splunk-on-call/package.json b/plugins/splunk-on-call/package.json index 74d0dfd038..b69e747db2 100644 --- a/plugins/splunk-on-call/package.json +++ b/plugins/splunk-on-call/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", @@ -51,7 +51,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/stack-overflow/package.json b/plugins/stack-overflow/package.json index 76abb2399d..02a1cb40d4 100644 --- a/plugins/stack-overflow/package.json +++ b/plugins/stack-overflow/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/plugin-home": "^0.4.22-next.1", "@backstage/plugin-search-common": "^0.3.5-next.0", @@ -42,7 +42,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md index e063f03eb8..d59e3686d5 100644 --- a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md +++ b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-tech-insights-backend-module-jsonfc +## 0.1.17-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + ## 0.1.17-next.0 ### Patch Changes diff --git a/plugins/tech-insights-backend-module-jsonfc/package.json b/plugins/tech-insights-backend-module-jsonfc/package.json index e490cfb2bb..b84c73eed5 100644 --- a/plugins/tech-insights-backend-module-jsonfc/package.json +++ b/plugins/tech-insights-backend-module-jsonfc/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend-module-jsonfc", - "version": "0.1.17-next.0", + "version": "0.1.17-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.0", + "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", "ajv": "^8.10.0", "json-rules-engine": "^6.1.2", "lodash": "^4.17.21", @@ -46,7 +46,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist" diff --git a/plugins/tech-insights-backend/CHANGELOG.md b/plugins/tech-insights-backend/CHANGELOG.md index 95e9131d27..4cc368fbe2 100644 --- a/plugins/tech-insights-backend/CHANGELOG.md +++ b/plugins/tech-insights-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-tech-insights-backend +## 0.4.1-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/backend-tasks@0.3.2-next.2 + - @backstage/plugin-tech-insights-node@0.3.1-next.1 + ## 0.4.1-next.1 ### Patch Changes diff --git a/plugins/tech-insights-backend/package.json b/plugins/tech-insights-backend/package.json index 36bc90464e..f4286a2404 100644 --- a/plugins/tech-insights-backend/package.json +++ b/plugins/tech-insights-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend", - "version": "0.4.1-next.1", + "version": "0.4.1-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,14 +34,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-tasks": "^0.3.2-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.0", + "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -54,8 +54,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "@types/semver": "^7.3.8", "supertest": "^6.1.3", diff --git a/plugins/tech-insights-node/CHANGELOG.md b/plugins/tech-insights-node/CHANGELOG.md index f6beecb3bb..607548384a 100644 --- a/plugins/tech-insights-node/CHANGELOG.md +++ b/plugins/tech-insights-node/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-tech-insights-node +## 0.3.1-next.1 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + ## 0.3.1-next.0 ### Patch Changes diff --git a/plugins/tech-insights-node/package.json b/plugins/tech-insights-node/package.json index 2ce04e01c6..b17c635a8a 100644 --- a/plugins/tech-insights-node/package.json +++ b/plugins/tech-insights-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-node", - "version": "0.3.1-next.0", + "version": "0.3.1-next.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.0", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/plugin-tech-insights-common": "^0.2.4", "@types/luxon": "^2.0.5", @@ -41,7 +41,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.2-next.2" }, "files": [ "dist" diff --git a/plugins/tech-insights/package.json b/plugins/tech-insights/package.json index 2e0253fcd2..f0f75c5caf 100644 --- a/plugins/tech-insights/package.json +++ b/plugins/tech-insights/package.json @@ -29,7 +29,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -47,7 +47,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/tech-radar/package.json b/plugins/tech-radar/package.json index 4057d33039..1a6c57cb9c 100644 --- a/plugins/tech-radar/package.json +++ b/plugins/tech-radar/package.json @@ -34,7 +34,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -49,7 +49,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/techdocs-backend/CHANGELOG.md b/plugins/techdocs-backend/CHANGELOG.md index 7a4219d5de..a85df108f2 100644 --- a/plugins/techdocs-backend/CHANGELOG.md +++ b/plugins/techdocs-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-techdocs-backend +## 1.1.2-next.2 + +### Patch Changes + +- 61fba6e50b: In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/plugin-catalog-common@1.0.3-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + - @backstage/plugin-techdocs-node@1.1.2-next.2 + ## 1.1.2-next.1 ### Patch Changes diff --git a/plugins/techdocs-backend/package.json b/plugins/techdocs-backend/package.json index cd095a331b..8c5a6ee703 100644 --- a/plugins/techdocs-backend/package.json +++ b/plugins/techdocs-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-backend", "description": "The Backstage backend plugin that renders technical documentation for your components", - "version": "1.1.2-next.1", + "version": "1.1.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-catalog-common": "^1.0.3-next.1", "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.0", - "@backstage/plugin-techdocs-node": "^1.1.2-next.1", + "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/plugin-techdocs-node": "^1.1.2-next.2", "@types/express": "^4.17.6", "dockerode": "^3.3.1", "express": "^4.17.1", @@ -56,9 +56,9 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", - "@backstage/plugin-search-backend-node": "0.6.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/cli": "^0.17.2-next.2", + "@backstage/plugin-search-backend-node": "0.6.2-next.2", "@types/dockerode": "^3.3.0", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/techdocs-node/CHANGELOG.md b/plugins/techdocs-node/CHANGELOG.md index 76a02e28bb..22ff6f9b79 100644 --- a/plugins/techdocs-node/CHANGELOG.md +++ b/plugins/techdocs-node/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-techdocs-node +## 1.1.2-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5-next.1 + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 1.1.2-next.1 ### Patch Changes diff --git a/plugins/techdocs-node/package.json b/plugins/techdocs-node/package.json index 44cdafe8b9..9dc3c11f01 100644 --- a/plugins/techdocs-node/package.json +++ b/plugins/techdocs-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-node", "description": "Common node.js functionalities for TechDocs, to be shared between techdocs-backend plugin and techdocs-cli", - "version": "1.1.2-next.1", + "version": "1.1.2-next.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -42,12 +42,12 @@ "dependencies": { "@azure/identity": "^2.0.1", "@azure/storage-blob": "^12.5.0", - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/integration": "^1.2.1-next.2", + "@backstage/plugin-search-common": "^0.3.5-next.1", "@google-cloud/storage": "^5.6.0", "@trendyol-js/openstack-swift-sdk": "^0.0.5", "@types/express": "^4.17.6", @@ -64,7 +64,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/fs-extra": "^9.0.5", "@types/js-yaml": "^4.0.0", "@types/mime-types": "^2.1.0", diff --git a/plugins/techdocs/package.json b/plugins/techdocs/package.json index 0f1c77fa60..7b3f688fea 100644 --- a/plugins/techdocs/package.json +++ b/plugins/techdocs/package.json @@ -37,7 +37,7 @@ "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.1", @@ -67,7 +67,7 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", @@ -75,8 +75,8 @@ "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", "@testing-library/user-event": "^14.0.0", - "@types/event-source-polyfill": "^1.0.0", "@types/dompurify": "^2.2.2", + "@types/event-source-polyfill": "^1.0.0", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "canvas": "^2.6.1", diff --git a/plugins/todo-backend/CHANGELOG.md b/plugins/todo-backend/CHANGELOG.md index 0040a3271e..f82cf165a6 100644 --- a/plugins/todo-backend/CHANGELOG.md +++ b/plugins/todo-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-todo-backend +## 0.1.30-next.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0-next.2 + - @backstage/integration@1.2.1-next.2 + ## 0.1.30-next.1 ### Patch Changes diff --git a/plugins/todo-backend/package.json b/plugins/todo-backend/package.json index 25ee25a4e4..0f87525304 100644 --- a/plugins/todo-backend/package.json +++ b/plugins/todo-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-todo-backend", "description": "A Backstage backend plugin that lets you browse TODO comments in your source code", - "version": "0.1.30-next.1", + "version": "0.1.30-next.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,12 +29,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-client": "^1.0.3-next.0", "@backstage/catalog-model": "^1.0.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1-next.2", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -43,7 +43,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/todo/package.json b/plugins/todo/package.json index 60737ff28d..f302a27e79 100644 --- a/plugins/todo/package.json +++ b/plugins/todo/package.json @@ -31,7 +31,7 @@ }, "dependencies": { "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1-next.1", @@ -45,7 +45,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/user-settings/package.json b/plugins/user-settings/package.json index 8cb560b3ed..279f711b2f 100644 --- a/plugins/user-settings/package.json +++ b/plugins/user-settings/package.json @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -48,7 +48,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", diff --git a/plugins/xcmetrics/package.json b/plugins/xcmetrics/package.json index ff36637720..80ab7ea1fb 100644 --- a/plugins/xcmetrics/package.json +++ b/plugins/xcmetrics/package.json @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-components": "^0.9.5-next.2", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -40,7 +40,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2-next.2", "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.3-next.1", "@backstage/test-utils": "^1.1.1-next.0", From ed1d7c137bc7374ef62991de9c811da057e3cf4c Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Fri, 3 Jun 2022 13:38:50 -0700 Subject: [PATCH 173/550] fix: update @backstage/core-app-api to latest version Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/package.json | 2 +- yarn.lock | 1161 +++++++++++++++++++++++++++++++- 2 files changed, 1144 insertions(+), 19 deletions(-) diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index 570dfa1a40..ec3b7c99d4 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -38,7 +38,7 @@ }, "devDependencies": { "@backstage/cli": "^0.16.1-next.0", - "@backstage/core-app-api": "^1.0.1-next.0", + "@backstage/core-app-api": "^1.0.3-next.0", "@backstage/dev-utils": "^1.0.1-next.0", "@backstage/test-utils": "^1.0.1-next.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/yarn.lock b/yarn.lock index f736a9a620..5e74a1e1ec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -346,6 +346,11 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz#31560f9f29fdf1868de8cb55049538a1b9732a60" integrity sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q== +"@babel/compat-data@^7.17.10": + version "7.17.10" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" + integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw== + "@babel/compat-data@^7.17.7": version "7.17.7" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2" @@ -393,6 +398,27 @@ json5 "^2.1.2" semver "^6.3.0" +"@babel/core@^7.7.5": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz#87b2fcd7cce9becaa7f5acebdc4f09f3dd19d876" + integrity sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ== + dependencies: + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.18.2" + "@babel/helper-compilation-targets" "^7.18.2" + "@babel/helper-module-transforms" "^7.18.0" + "@babel/helpers" "^7.18.2" + "@babel/parser" "^7.18.0" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.18.2" + "@babel/types" "^7.18.2" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.1" + semver "^6.3.0" + "@babel/generator@^7.14.0", "@babel/generator@^7.16.8", "@babel/generator@^7.7.2": version "7.16.8" resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz#359d44d966b8cd059d543250ce79596f792f2ebe" @@ -411,6 +437,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz#33873d6f89b21efe2da63fe554460f3df1c5880d" + integrity sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw== + dependencies: + "@babel/types" "^7.18.2" + "@jridgewell/gen-mapping" "^0.3.0" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" @@ -446,6 +481,16 @@ browserslist "^4.17.5" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz#67a85a10cbd5fc7f1457fec2e7f45441dc6c754b" + integrity sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ== + dependencies: + "@babel/compat-data" "^7.17.10" + "@babel/helper-validator-option" "^7.16.7" + browserslist "^4.20.2" + semver "^6.3.0" + "@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7": version "7.16.10" resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.10.tgz#8a6959b9cc818a88815ba3c5474619e9c0f2c21c" @@ -488,6 +533,11 @@ dependencies: "@babel/types" "^7.16.7" +"@babel/helper-environment-visitor@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz#8a6d2dedb53f6bf248e31b4baf38739ee4a637bd" + integrity sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ== + "@babel/helper-explode-assignable-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" @@ -504,6 +554,14 @@ "@babel/template" "^7.16.7" "@babel/types" "^7.16.7" +"@babel/helper-function-name@^7.17.9": + version "7.17.9" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz#136fcd54bc1da82fcb47565cf16fd8e444b1ff12" + integrity sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg== + dependencies: + "@babel/template" "^7.16.7" + "@babel/types" "^7.17.0" + "@babel/helper-get-function-arity@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" @@ -560,6 +618,20 @@ "@babel/traverse" "^7.17.3" "@babel/types" "^7.17.0" +"@babel/helper-module-transforms@^7.18.0": + version "7.18.0" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz#baf05dec7a5875fb9235bd34ca18bad4e21221cd" + integrity sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA== + dependencies: + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-simple-access" "^7.17.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.18.0" + "@babel/types" "^7.18.0" + "@babel/helper-optimise-call-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" @@ -658,6 +730,15 @@ "@babel/traverse" "^7.17.3" "@babel/types" "^7.17.0" +"@babel/helpers@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz#970d74f0deadc3f5a938bfa250738eb4ac889384" + integrity sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg== + dependencies: + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.18.2" + "@babel/types" "^7.18.2" + "@babel/highlight@^7.0.0", "@babel/highlight@^7.16.7": version "7.16.10" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" @@ -672,6 +753,11 @@ resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz#9c94189a6062f0291418ca021077983058e171ef" integrity sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg== +"@babel/parser@^7.18.0": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz#6774231779dd700e0af29f6ad8d479582d7ce5ef" + integrity sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" @@ -1419,6 +1505,22 @@ "@babel/parser" "^7.16.7" "@babel/types" "^7.16.7" +"@babel/traverse@^7.1.0", "@babel/traverse@^7.18.0", "@babel/traverse@^7.18.2": + version "7.18.2" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz#b77a52604b5cc836a9e1e08dca01cba67a12d2e8" + integrity sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.18.2" + "@babel/helper-environment-visitor" "^7.18.2" + "@babel/helper-function-name" "^7.17.9" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/parser" "^7.18.0" + "@babel/types" "^7.18.2" + debug "^4.1.0" + globals "^11.1.0" + "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.16.10", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2": version "7.16.10" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz#448f940defbe95b5a8029975b051f75993e8239f" @@ -1467,6 +1569,28 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" +"@babel/types@^7.18.0", "@babel/types@^7.18.2": + version "7.18.4" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz#27eae9b9fd18e9dccc3f9d6ad051336f307be354" + integrity sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + to-fast-properties "^2.0.0" + +"@backstage/app-defaults@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.2.tgz#0260b470551ea3ce6ea9d7fae33429bceb41bac4" + integrity sha512-G8/seM6GWevrM5wZmF6X+u9Bs5yPZHsog6mJstMw2Z63d57boLGZAHpBh3DQpqGs6QY9lBFvoub4lxmOkNoAzA== + dependencies: + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + react-router-dom "6.0.0-beta.0" + "@backstage/catalog-client@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" @@ -1489,7 +1613,139 @@ lodash "^4.17.21" uuid "^8.0.0" -"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": +"@backstage/cli@^0.16.1-next.0": + version "0.16.1-next.0" + resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.16.1-next.0.tgz#b21c4bcc4f2dd8ad305cc3073ffb6fc55105a2a0" + integrity sha512-PjQ4qHuaLYZYhs/JG2H1FGd2LwoE+SIrvNPh1cUNfWApB5qR3sjyUnkkfTByJuMoyREtA1cH/o+Hh0v63CG0Xg== + dependencies: + "@backstage/cli-common" "^0.1.8" + "@backstage/config" "^1.0.0" + "@backstage/config-loader" "^1.0.1-next.0" + "@backstage/errors" "^1.0.0" + "@backstage/release-manifests" "^0.0.2" + "@backstage/types" "^1.0.0" + "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" + "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" + "@manypkg/get-packages" "^1.1.3" + "@octokit/request" "^5.4.12" + "@rollup/plugin-commonjs" "^21.0.1" + "@rollup/plugin-json" "^4.1.0" + "@rollup/plugin-node-resolve" "^13.0.0" + "@rollup/plugin-yaml" "^3.1.0" + "@spotify/eslint-config-base" "^12.0.0" + "@spotify/eslint-config-react" "^12.0.0" + "@spotify/eslint-config-typescript" "^12.0.0" + "@sucrase/jest-plugin" "^2.1.1" + "@sucrase/webpack-loader" "^2.0.0" + "@svgr/plugin-jsx" "6.2.x" + "@svgr/plugin-svgo" "6.2.x" + "@svgr/rollup" "6.2.x" + "@svgr/webpack" "6.2.x" + "@types/webpack-env" "^1.15.2" + "@typescript-eslint/eslint-plugin" "^5.9.0" + "@typescript-eslint/parser" "^5.9.0" + "@yarnpkg/lockfile" "^1.1.0" + bfj "^7.0.2" + buffer "^6.0.3" + chalk "^4.0.0" + chokidar "^3.3.1" + commander "^6.1.0" + css-loader "^6.5.1" + diff "^5.0.0" + esbuild "^0.14.10" + esbuild-loader "^2.18.0" + eslint "^8.6.0" + eslint-config-prettier "^8.3.0" + eslint-formatter-friendly "^7.0.0" + eslint-plugin-deprecation "^1.3.2" + eslint-plugin-import "^2.25.4" + eslint-plugin-jest "^25.3.4" + eslint-plugin-jsx-a11y "^6.5.1" + eslint-plugin-monorepo "^0.3.2" + eslint-plugin-react "^7.28.0" + eslint-plugin-react-hooks "^4.3.0" + eslint-webpack-plugin "^2.6.0" + express "^4.17.1" + fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" + fs-extra "10.0.1" + glob "^7.1.7" + handlebars "^4.7.3" + html-webpack-plugin "^5.3.1" + inquirer "^8.2.0" + jest "^26.0.1" + jest-css-modules "^2.1.0" + jest-transform-yaml "^1.0.0" + json-schema "^0.4.0" + lodash "^4.17.21" + mini-css-extract-plugin "^2.4.2" + minimatch "5.0.1" + node-libs-browser "^2.2.1" + npm-packlist "^3.0.0" + ora "^5.3.0" + postcss "^8.1.0" + process "^0.11.10" + react-dev-utils "^12.0.0-next.60" + react-hot-loader "^4.13.0" + recursive-readdir "^2.2.2" + replace-in-file "^6.0.0" + rollup "^2.60.2" + rollup-plugin-dts "^4.0.1" + rollup-plugin-esbuild "^4.7.2" + rollup-plugin-postcss "^4.0.0" + rollup-pluginutils "^2.8.2" + run-script-webpack-plugin "^0.0.11" + semver "^7.3.2" + style-loader "^3.3.1" + sucrase "^3.20.2" + tar "^6.1.2" + terser-webpack-plugin "^5.1.3" + util "^0.12.3" + webpack "^5.66.0" + webpack-dev-server "^4.7.3" + webpack-node-externals "^3.0.0" + yaml "^1.10.0" + yml-loader "^2.1.0" + yn "^4.0.0" + zod "^3.11.6" + +"@backstage/config-loader@^1.0.1-next.0": + version "1.1.1" + resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" + integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== + dependencies: + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/json-schema" "^7.0.6" + ajv "^8.10.0" + chokidar "^3.5.2" + fs-extra "10.1.0" + json-schema "^0.4.0" + json-schema-merge-allof "^0.8.1" + json-schema-traverse "^1.0.0" + node-fetch "^2.6.7" + typescript-json-schema "^0.53.0" + yaml "^1.9.2" + yup "^0.32.9" + +"@backstage/core-app-api@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.2.tgz#466b660db644150bc4639244c42bdebcddb3bc79" + integrity sha512-9CM/60hR6xEZmUEVyhdyFiyZrG95S299KyZh8R1s4/ndX86Wmqu0zBBBeufXJnCWYa8ebo/IVhCJF4YIAFAI3g== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + "@types/prop-types" "^15.7.3" + prop-types "^15.7.2" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + zod "^3.11.6" + +"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.3-next.0", "@backstage/core-components@^0.9.4": version "0.9.4" resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" integrity sha512-zg297mSw1BIc/BENrSClmgMx4kp0so0cK+lQ4FVa22+Dg5PDc2/NXWId2qEN2zD2XV/nm9RFBQM02gd6M6q3jQ== @@ -1546,7 +1802,32 @@ react-router-dom "6.0.0-beta.0" zen-observable "^0.8.15" -"@backstage/integration-react@^1.0.0": +"@backstage/dev-utils@^1.0.1-next.0": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.2.tgz#ec1b261b7277b7d2f16952df64e7aaf0b8ae2adc" + integrity sha512-7g3yqlaIQqn/wTDYr7iatBxsuSFnprYGC0pwd3+owR2W7RMo5E900yS5yZ/WjzrwJ4i/Gsper013unuZTukxZA== + dependencies: + "@backstage/app-defaults" "^1.0.2" + "@backstage/catalog-model" "^1.0.2" + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/integration-react" "^1.1.0" + "@backstage/plugin-catalog-react" "^1.1.0" + "@backstage/test-utils" "^1.1.0" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + react-hot-loader "^4.13.0" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + +"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== @@ -1682,6 +1963,13 @@ qs "^6.9.4" react-use "^17.2.4" +"@backstage/release-manifests@^0.0.2": + version "0.0.2" + resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.2.tgz#42faca60dae0c89cf6bc6fbf1b34e1e8cb2a564b" + integrity sha512-gBzcxIlDM3k0SXhVfyKQDxRvwS2hdXPy1qQU+wcVijImGez0CIIw1iD1+ksCYpWKb8uGZFovLj4fEvm5fA942g== + dependencies: + cross-fetch "^3.1.5" + "@backstage/search-common@^0.3.4": version "0.3.4" resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" @@ -1689,6 +1977,28 @@ dependencies: "@backstage/plugin-search-common" "0.3.4" +"@backstage/test-utils@^1.0.1-next.0", "@backstage/test-utils@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.1.0.tgz#9ec83ae08aec975b1d3edad2a84c5d8d310378d2" + integrity sha512-ZQSA58fWwfhscIFwM+1GFR8QR0nJCz4mZxnaYDycLueDrOA4vHpkqzdgkytqMbCvV16xJaa+UUkGkhUf0gzQyg== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/theme" "^0.2.15" + "@backstage/types" "^1.0.0" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.11.2" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + cross-fetch "^3.1.5" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + zen-observable "^0.8.15" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -1902,6 +2212,14 @@ human-id "^1.0.2" prettier "^1.19.1" +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + "@codemirror/autocomplete@^0.20.0": version "0.20.0" resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-0.20.0.tgz#390cc444ea36474e77117f2153caad84214f0edf" @@ -2789,6 +3107,18 @@ resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + "@jest/console@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" @@ -2801,6 +3131,40 @@ jest-util "^27.5.1" slash "^3.0.0" +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + "@jest/core@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" @@ -2835,6 +3199,16 @@ slash "^3.0.0" strip-ansi "^6.0.0" +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + "@jest/environment@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" @@ -2845,6 +3219,18 @@ "@types/node" "*" jest-mock "^27.5.1" +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + "@jest/fake-timers@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" @@ -2857,6 +3243,15 @@ jest-mock "^27.5.1" jest-util "^27.5.1" +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + "@jest/globals@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" @@ -2866,6 +3261,38 @@ "@jest/types" "^27.5.1" expect "^27.5.1" +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + "@jest/reporters@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" @@ -2897,6 +3324,15 @@ terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + "@jest/source-map@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" @@ -2906,6 +3342,16 @@ graceful-fs "^4.2.9" source-map "^0.6.0" +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + "@jest/test-result@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" @@ -2916,6 +3362,17 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + "@jest/test-sequencer@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" @@ -2926,6 +3383,27 @@ jest-haste-map "^27.5.1" jest-runtime "^27.5.1" +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + "@jest/transform@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" @@ -3305,11 +3783,25 @@ resolved "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz#69bc4db754d79e1a2f17a650d3466e038d94a5eb" integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== +"@jridgewell/gen-mapping@^0.3.0": + version "0.3.1" + resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz#cf92a983c83466b8c0ce9124fadeaf09f7c66ea9" + integrity sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/resolve-uri@^3.0.3": version "3.0.7" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== +"@jridgewell/set-array@^1.0.0": + version "1.1.1" + resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea" + integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ== + "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.13" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" @@ -3331,7 +3823,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.7": +"@jridgewell/trace-mapping@^0.3.7", "@jridgewell/trace-mapping@^0.3.9": version "0.3.13" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" integrity sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w== @@ -5153,6 +5645,19 @@ react-router-dom "6.0.0-beta.0" react-use "^17.2.4" +"@rollup/plugin-commonjs@^21.0.1": + version "21.1.0" + resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.1.0.tgz#45576d7b47609af2db87f55a6d4b46e44fc3a553" + integrity sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA== + dependencies: + "@rollup/pluginutils" "^3.1.0" + commondir "^1.0.1" + estree-walker "^2.0.1" + glob "^7.1.6" + is-reference "^1.2.1" + magic-string "^0.25.7" + resolve "^1.17.0" + "@rollup/plugin-commonjs@^22.0.0": version "22.0.0" resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz#f4d87016e2fbf187a593ab9f46626fe05b59e8bd" @@ -5292,6 +5797,13 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + "@sinonjs/fake-timers@^8.0.1": version "8.1.0" resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" @@ -5313,16 +5825,31 @@ resolved "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== +"@spotify/eslint-config-base@^12.0.0": + version "12.0.0" + resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-12.0.0.tgz#0b1e41bb436d5c1c20714703629514d64c3c0f06" + integrity sha512-5Uud/TmzakqmdUNCZpD8JFQRa2VG3dVd3DanSMpU/nVdu6K5LyX8EMU3Tz1vGP18Wih8iAu/sBSJhntNzw7e6w== + "@spotify/eslint-config-base@^13.0.0": version "13.0.0" resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.0.tgz#bb748bb2b705ffb5085f873aa0daf94dfad59985" integrity sha512-BrnexUcUQkp6XUw8HWSmE4LpWtJGgEC6A7vrSkgpgKJtZaYkpw8O+Xnk60DA266ecbFHYbQD6ngqKHlvjNB+pA== +"@spotify/eslint-config-react@^12.0.0": + version "12.0.0" + resolved "https://registry.npmjs.org/@spotify/eslint-config-react/-/eslint-config-react-12.0.0.tgz#5b8d4bc3b81a8ec2824648f482f1f6c3cf711893" + integrity sha512-lNHZRtJesNA273OJHBVUGAg2JYyVDZ+bsT7h3OwnX1HYgejJ3YcKPSziPM8TGFAN8DruH3tHFfaM63uAIA1+uw== + "@spotify/eslint-config-react@^13.0.0": version "13.0.1" resolved "https://registry.npmjs.org/@spotify/eslint-config-react/-/eslint-config-react-13.0.1.tgz#f309f5d3c53ef1e2c7c6ce05f76ee681970112c3" integrity sha512-gyC0CtJ2H9K57HyQG5/RcMsJiB6qmVbBHOHWukZcPLfYtwkK201kgMjHrVfJXoSN+mJxcWhDVPxqe+eA7LHshQ== +"@spotify/eslint-config-typescript@^12.0.0": + version "12.0.0" + resolved "https://registry.npmjs.org/@spotify/eslint-config-typescript/-/eslint-config-typescript-12.0.0.tgz#4c7af3f74a47668bec0c860b72e2a0103e78a138" + integrity sha512-nMVll8ZkN/W8+IHn6Iz3YzCKW0qhrn3TVfyxkAr3qmXm5cex+GzyUdZEuxb8rdN2inZL6A1Il2NFfO5p/UKxog== + "@spotify/eslint-config-typescript@^13.0.0": version "13.0.1" resolved "https://registry.npmjs.org/@spotify/eslint-config-typescript/-/eslint-config-typescript-13.0.1.tgz#47801a66d5569074a110f4422eba60aafc6bd7f8" @@ -5534,6 +6061,13 @@ "@testing-library/dom" "^8.0.0" "@types/react-dom" "<18.0.0" +"@testing-library/user-event@^13.1.8": + version "13.5.0" + resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz#69d77007f1e124d55314a2b73fd204b333b13295" + integrity sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg== + dependencies: + "@babel/runtime" "^7.12.5" + "@testing-library/user-event@^14.0.0": version "14.2.0" resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.2.0.tgz#8293560f8f80a00383d6c755ec3e0b918acb1683" @@ -5664,6 +6198,17 @@ "@types/babel__template" "*" "@types/babel__traverse" "*" +"@types/babel__core@^7.1.7": + version "7.1.19" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" + integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + "@types/babel__generator@*": version "7.6.1" resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" @@ -6522,6 +7067,11 @@ resolved "https://registry.npmjs.org/@types/pluralize/-/pluralize-0.0.29.tgz#6ffa33ed1fc8813c469b859681d09707eb40d03c" integrity sha512-BYOID+l2Aco2nBik+iYS4SZX0Lf20KPILP5RGmM1IgzdwNdTs0eebiFriOPcej1sX9mLnSoiNte5zcFxssgpGA== +"@types/prettier@^2.0.0": + version "2.6.3" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.3.tgz#68ada76827b0010d0db071f739314fa429943d0a" + integrity sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg== + "@types/prettier@^2.1.5": version "2.4.3" resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.3.tgz#a3c65525b91fca7da00ab1a3ac2b5a2a4afbffbf" @@ -7614,6 +8164,14 @@ any-promise@^1.0.0: resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" @@ -8149,6 +8707,20 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + babel-jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" @@ -8170,7 +8742,7 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" -babel-plugin-istanbul@^6.1.1: +babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== @@ -8181,6 +8753,16 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + babel-plugin-jest-hoist@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" @@ -8280,6 +8862,14 @@ babel-preset-fbjs@^3.4.0: "@babel/plugin-transform-template-literals" "^7.0.0" babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + babel-preset-jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" @@ -8731,6 +9321,17 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4 node-releases "^2.0.1" picocolors "^1.0.0" +browserslist@^4.20.2: + version "4.20.3" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" + integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== + dependencies: + caniuse-lite "^1.0.30001332" + electron-to-chromium "^1.4.118" + escalade "^3.1.1" + node-releases "^2.0.3" + picocolors "^1.0.0" + bser@2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -8978,7 +9579,7 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0, camelcase@^6.3.0: +camelcase@^6.0.0, camelcase@^6.2.0, camelcase@^6.3.0: version "6.3.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== @@ -8998,6 +9599,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001286: resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001315.tgz#f1b1efd1171ee1170d52709a7252632dacbd7c77" integrity sha512-5v7LFQU4Sb/qvkz7JcZkvtSH1Ko+1x2kgo3ocdBeMGZSOFpuE1kkm0kpTwLtWeFrw5qw08ulLxJjVIXIS8MkiQ== +caniuse-lite@^1.0.30001332: + version "1.0.30001346" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001346.tgz#e895551b46b9cc9cc9de852facd42f04839a8fbe" + integrity sha512-q6ibZUO2t88QCIPayP/euuDREq+aMAxFE5S70PkrLh0iTDj/zEhgvJRKC2+CvXY6EWc6oQwUR48lL5vCW6jiXQ== + canvas@^2.6.1: version "2.9.1" resolved "https://registry.npmjs.org/canvas/-/canvas-2.9.1.tgz#58ec841cba36cef0675bc7a74ebd1561f0b476b0" @@ -9016,6 +9622,13 @@ capital-case@^1.0.4: tslib "^2.0.3" upper-case-first "^2.0.2" +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + caseless@~0.12.0: version "0.12.0" resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -9225,6 +9838,11 @@ circleci-api@^4.0.0: dependencies: axios "^0.21.1" +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + cjs-module-lexer@^1.0.0: version "1.2.2" resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" @@ -9623,6 +10241,11 @@ commander@^5.1.0: resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== +commander@^6.1.0: + version "6.2.1" + resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + commander@^7.2.0: version "7.2.0" resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" @@ -11450,6 +12073,11 @@ elastic-builder@^2.16.0: lodash.isstring "^4.0.1" lodash.omit "^4.5.0" +electron-to-chromium@^1.4.118: + version "1.4.145" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.145.tgz#5be3aa470cae3c2bccd20afc4d2a5efdca337b7b" + integrity sha512-g4VQCi61gA0t5fJHsalxAc8NpvxC/CEwLAGLfJ+DmkRXTEyntJA7H01771uVD6X6nnViv3GToPgb0QOVA8ivOQ== + electron-to-chromium@^1.4.17: version "1.4.35" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.35.tgz#69aabb73d7030733e71c1e970ec16f5ceefbaea4" @@ -11473,6 +12101,11 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + emittery@^0.8.1: version "0.8.1" resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" @@ -11964,6 +12597,13 @@ eslint-plugin-import@^2.25.4: resolve "^1.22.0" tsconfig-paths "^3.14.1" +eslint-plugin-jest@^25.3.4: + version "25.7.0" + resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz#ff4ac97520b53a96187bad9c9814e7d00de09a6a" + integrity sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ== + dependencies: + "@typescript-eslint/experimental-utils" "^5.0.0" + eslint-plugin-jest@^26.1.2: version "26.2.2" resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.2.2.tgz#74e000544259f1ef0462a609a3fc9e5da3768f6c" @@ -12069,6 +12709,18 @@ eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== +eslint-webpack-plugin@^2.6.0: + version "2.6.0" + resolved "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-2.6.0.tgz#3bd4ada4e539cb1f6687d2f619073dbb509361cd" + integrity sha512-V+LPY/T3kur5QO3u+1s34VDTcRxjXWPUGM4hlmTb5DwVD0OQz631yGTxJZf4SpAqAjdbBVe978S8BJeHpAdOhQ== + dependencies: + "@types/eslint" "^7.28.2" + arrify "^2.0.1" + jest-worker "^27.3.1" + micromatch "^4.0.4" + normalize-path "^3.0.0" + schema-utils "^3.1.1" + eslint-webpack-plugin@^3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz#83dad2395e5f572d6f4d919eedaa9cf902890fcb" @@ -12265,6 +12917,7 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-dynatrace" "^0.0.0" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12315,7 +12968,12 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: react-use "^17.2.4" zen-observable "^0.8.15" -execa@4.1.0: +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@4.1.0, execa@^4.0.0: version "4.1.0" resolved "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== @@ -12428,6 +13086,18 @@ expand-template@^2.0.3: resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + expect@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" @@ -12476,7 +13146,7 @@ express-xml-bodyparser@^0.3.0: dependencies: xml2js "^0.4.11" -express@^4.17.1, express@^4.17.3: +express@^4.17.1, express@^4.17.3, express@^4.18.1: version "4.18.1" resolved "https://registry.npmjs.org/express/-/express-4.18.1.tgz#7797de8b9c72c857b9cd0e14a5eea80666267caf" integrity sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q== @@ -13180,7 +13850,7 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@^2.1.2, fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -13790,6 +14460,11 @@ grouped-queue@^2.0.0: resolved "https://registry.npmjs.org/grouped-queue/-/grouped-queue-2.0.0.tgz#a2c6713f2171e45db2c300a3a9d7c119d694dac8" integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== + gtoken@^5.0.4: version "5.1.0" resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz#4ba8d2fc9a8459098f76e7e8fd7beaa39fda9fe4" @@ -15428,6 +16103,16 @@ istanbul-lib-coverage@^3.2.0: resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== +istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" @@ -15457,7 +16142,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.1.3: +istanbul-reports@^3.0.2, istanbul-reports@^3.1.3: version "3.1.4" resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== @@ -15487,6 +16172,15 @@ jenkins@^0.28.1: dependencies: papi "^0.29.0" +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + jest-changed-files@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" @@ -15521,6 +16215,25 @@ jest-circus@^27.5.1: stack-utils "^2.0.3" throat "^6.0.1" +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + jest-cli@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" @@ -15539,6 +16252,30 @@ jest-cli@^27.5.1: prompts "^2.0.1" yargs "^16.2.0" +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + jest-config@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" @@ -15576,7 +16313,7 @@ jest-css-modules@^2.1.0: dependencies: identity-obj-proxy "3.0.0" -jest-diff@^26.0.0: +jest-diff@^26.0.0, jest-diff@^26.6.2: version "26.6.2" resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== @@ -15596,6 +16333,13 @@ jest-diff@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + jest-docblock@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" @@ -15603,6 +16347,17 @@ jest-docblock@^27.5.1: dependencies: detect-newline "^3.0.0" +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + jest-each@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" @@ -15614,6 +16369,19 @@ jest-each@^27.5.1: jest-util "^27.5.1" pretty-format "^27.5.1" +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + jest-environment-jsdom@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" @@ -15627,6 +16395,18 @@ jest-environment-jsdom@^27.5.1: jest-util "^27.5.1" jsdom "^16.6.0" +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jest-environment-node@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" @@ -15649,6 +16429,27 @@ jest-get-type@^27.5.1: resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + jest-haste-map@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" @@ -15669,6 +16470,30 @@ jest-haste-map@^27.5.1: optionalDependencies: fsevents "^2.3.2" +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + jest-jasmine2@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" @@ -15692,6 +16517,14 @@ jest-jasmine2@^27.5.1: pretty-format "^27.5.1" throat "^6.0.1" +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + jest-leak-detector@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" @@ -15700,6 +16533,16 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" @@ -15710,6 +16553,21 @@ jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + jest-message-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" @@ -15725,6 +16583,14 @@ jest-message-util@^27.5.1: slash "^3.0.0" stack-utils "^2.0.3" +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" @@ -15738,11 +16604,25 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + jest-regex-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + jest-resolve-dependencies@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" @@ -15752,6 +16632,20 @@ jest-resolve-dependencies@^27.5.1: jest-regex-util "^27.5.1" jest-snapshot "^27.5.1" +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + jest-resolve@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" @@ -15768,6 +16662,32 @@ jest-resolve@^27.5.1: resolve.exports "^1.1.0" slash "^3.0.0" +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + jest-runner@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" @@ -15795,6 +16715,39 @@ jest-runner@^27.5.1: source-map-support "^0.5.6" throat "^6.0.1" +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + jest-runtime@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" @@ -15823,6 +16776,14 @@ jest-runtime@^27.5.1: slash "^3.0.0" strip-bom "^4.0.0" +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + jest-serializer@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" @@ -15831,6 +16792,28 @@ jest-serializer@^27.5.1: "@types/node" "*" graceful-fs "^4.2.9" +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + jest-snapshot@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" @@ -15866,6 +16849,18 @@ jest-transform-yaml@^1.0.0: dependencies: js-yaml "4.1.0" +jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + jest-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" @@ -15878,6 +16873,18 @@ jest-util@^27.5.1: graceful-fs "^4.2.9" picomatch "^2.2.3" +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + jest-validate@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" @@ -15890,6 +16897,19 @@ jest-validate@^27.5.1: leven "^3.1.0" pretty-format "^27.5.1" +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + jest-watcher@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" @@ -15908,6 +16928,15 @@ jest-when@^3.1.0: resolved "https://registry.npmjs.org/jest-when/-/jest-when-3.5.1.tgz#33ab6f923661cf878cd08fe9df64b507934603db" integrity sha512-o+HiaIVCg1IC95sMDKHU9G5v5N5l3UHqXvJpf0PgAMThZeQo4Hf5Sgoj+wpCBRGg4/KtzSAZZZEKNiLqE0i4eQ== +jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" @@ -15917,6 +16946,15 @@ jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: merge-stream "^2.0.0" supports-color "^8.0.0" +jest@^26.0.1: + version "26.6.3" + resolved "https://registry.npmjs.org/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" @@ -16092,7 +17130,7 @@ jscodeshift@^0.13.0: temp "^0.8.4" write-file-atomic "^2.3.0" -jsdom@^16.5.2, jsdom@^16.6.0: +jsdom@^16.4.0, jsdom@^16.5.2, jsdom@^16.6.0: version "16.7.0" resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== @@ -16270,7 +17308,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.1.3, json5@^2.2.0: +json5@^2.1.2, json5@^2.1.3, json5@^2.2.0, json5@^2.2.1: version "2.2.1" resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== @@ -17438,6 +18476,13 @@ make-fetch-happen@^9.1.0: socks-proxy-agent "^6.0.0" ssri "^8.0.0" +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -18061,7 +19106,7 @@ micromark@^3.0.0: micromark-util-types "^1.0.1" parse-entities "^3.0.0" -micromatch@^3.1.10: +micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -18206,6 +19251,13 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" +minimatch@5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" + integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== + dependencies: + brace-expansion "^2.0.1" + minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" @@ -18236,7 +19288,7 @@ minimist-options@4.1.0, minimist-options@^4.0.2: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: version "1.2.6" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== @@ -18805,11 +19857,28 @@ node-modules-regexp@^1.0.0: resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== + dependencies: + growly "^1.3.0" + is-wsl "^2.2.0" + semver "^7.3.2" + shellwords "^0.1.1" + uuid "^8.3.0" + which "^2.0.2" + node-releases@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== +node-releases@^2.0.3: + version "2.0.5" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" + integrity sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q== + nodemon@^2.0.2: version "2.0.16" resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz#d71b31bfdb226c25de34afea53486c8ef225fdef" @@ -19438,6 +20507,11 @@ p-cancelable@^2.0.0: resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + p-filter@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" @@ -22233,7 +23307,7 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.22.0: +resolve@^1.18.1, resolve@^1.22.0: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -22447,6 +23521,11 @@ rollup@^2.60.2: optionalDependencies: fsevents "~2.3.2" +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + rtl-css-js@^1.14.0: version "1.14.0" resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.14.0.tgz#daa4f192a92509e292a0519f4b255e6e3c076b7d" @@ -22466,6 +23545,11 @@ run-parallel@^1.1.9: resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== +run-script-webpack-plugin@^0.0.11: + version "0.0.11" + resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.11.tgz#04c510bed06b907fa2285e75feece71a25691171" + integrity sha512-QmuBhiqBPmhQLpO5vMBHVTAGyoPBnrCM5gQ3IzgieiImBXiBbXcIv4kysCT1gilFNFxQk22oKQfiIhWbT/zXCw== + run-script-webpack-plugin@^0.0.14: version "0.0.14" resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" @@ -22531,6 +23615,21 @@ safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + sanitize-filename@^1.6.1: version "1.6.3" resolved "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" @@ -22867,6 +23966,11 @@ shelljs@^0.8.5: interpret "^1.0.0" rechoir "^0.6.2" +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + shx@^0.3.2: version "0.3.4" resolved "https://registry.npmjs.org/shx/-/shx-0.3.4.tgz#74289230b4b663979167f94e1935901406e40f02" @@ -23407,7 +24511,7 @@ stack-trace@0.0.x: resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= -stack-utils@^2.0.3: +stack-utils@^2.0.2, stack-utils@^2.0.3: version "2.0.5" resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== @@ -24250,6 +25354,11 @@ thenify-all@^1.0.0: dependencies: any-promise "^1.0.0" +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + throat@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" @@ -24365,7 +25474,7 @@ tmp@^0.2.0, tmp@~0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.x: +tmpl@1.0.5, tmpl@1.0.x: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -25280,6 +26389,15 @@ v8-compile-cache@^2.0.3: resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== +v8-to-istanbul@^7.0.0: + version "7.1.2" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" + integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + v8-to-istanbul@^8.1.0: version "8.1.1" resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" @@ -25476,6 +26594,13 @@ walker@^1.0.7: dependencies: makeerror "1.0.x" +walker@~1.0.5: + version "1.0.8" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + watchpack@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" @@ -26099,7 +27224,7 @@ yargs-parser@^3.2.0: camelcase "^3.0.0" lodash.assign "^4.1.0" -yargs@^15.1.0, yargs@^15.3.1: +yargs@^15.1.0, yargs@^15.3.1, yargs@^15.4.1: version "15.4.1" resolved "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== From cb2e505736f6c7611aaec85fc29e5adeb29ad1a0 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Fri, 3 Jun 2022 13:54:03 -0700 Subject: [PATCH 174/550] fix: upgrade backstage package versions Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/package.json | 14 +- yarn.lock | 1151 +------------------------------- 2 files changed, 24 insertions(+), 1141 deletions(-) diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index ec3b7c99d4..c9c2180a53 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -22,9 +22,9 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.2", - "@backstage/core-components": "^0.9.3-next.0", - "@backstage/core-plugin-api": "^1.0.0", + "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -33,14 +33,14 @@ "react-use": "^17.2.4" }, "peerDependencies": { - "@backstage/plugin-catalog-react": "^1.0.0", + "@backstage/plugin-catalog-react": "^1.1.1-next.1", "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.16.1-next.0", + "@backstage/cli": "^0.17.2-next.1", "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.1-next.0", - "@backstage/test-utils": "^1.0.1-next.0", + "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^13.1.8", diff --git a/yarn.lock b/yarn.lock index 5e74a1e1ec..8057b1932e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -346,11 +346,6 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.8.tgz#31560f9f29fdf1868de8cb55049538a1b9732a60" integrity sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q== -"@babel/compat-data@^7.17.10": - version "7.17.10" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" - integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw== - "@babel/compat-data@^7.17.7": version "7.17.7" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2" @@ -398,27 +393,6 @@ json5 "^2.1.2" semver "^6.3.0" -"@babel/core@^7.7.5": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz#87b2fcd7cce9becaa7f5acebdc4f09f3dd19d876" - integrity sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.18.2" - "@babel/helper-compilation-targets" "^7.18.2" - "@babel/helper-module-transforms" "^7.18.0" - "@babel/helpers" "^7.18.2" - "@babel/parser" "^7.18.0" - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.18.2" - "@babel/types" "^7.18.2" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.1" - semver "^6.3.0" - "@babel/generator@^7.14.0", "@babel/generator@^7.16.8", "@babel/generator@^7.7.2": version "7.16.8" resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.16.8.tgz#359d44d966b8cd059d543250ce79596f792f2ebe" @@ -437,15 +411,6 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/generator@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz#33873d6f89b21efe2da63fe554460f3df1c5880d" - integrity sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw== - dependencies: - "@babel/types" "^7.18.2" - "@jridgewell/gen-mapping" "^0.3.0" - jsesc "^2.5.1" - "@babel/helper-annotate-as-pure@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" @@ -481,16 +446,6 @@ browserslist "^4.17.5" semver "^6.3.0" -"@babel/helper-compilation-targets@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz#67a85a10cbd5fc7f1457fec2e7f45441dc6c754b" - integrity sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ== - dependencies: - "@babel/compat-data" "^7.17.10" - "@babel/helper-validator-option" "^7.16.7" - browserslist "^4.20.2" - semver "^6.3.0" - "@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7": version "7.16.10" resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.10.tgz#8a6959b9cc818a88815ba3c5474619e9c0f2c21c" @@ -533,11 +488,6 @@ dependencies: "@babel/types" "^7.16.7" -"@babel/helper-environment-visitor@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz#8a6d2dedb53f6bf248e31b4baf38739ee4a637bd" - integrity sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ== - "@babel/helper-explode-assignable-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" @@ -554,14 +504,6 @@ "@babel/template" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/helper-function-name@^7.17.9": - version "7.17.9" - resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz#136fcd54bc1da82fcb47565cf16fd8e444b1ff12" - integrity sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg== - dependencies: - "@babel/template" "^7.16.7" - "@babel/types" "^7.17.0" - "@babel/helper-get-function-arity@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" @@ -618,20 +560,6 @@ "@babel/traverse" "^7.17.3" "@babel/types" "^7.17.0" -"@babel/helper-module-transforms@^7.18.0": - version "7.18.0" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz#baf05dec7a5875fb9235bd34ca18bad4e21221cd" - integrity sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA== - dependencies: - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-simple-access" "^7.17.7" - "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/helper-validator-identifier" "^7.16.7" - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.18.0" - "@babel/types" "^7.18.0" - "@babel/helper-optimise-call-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" @@ -730,15 +658,6 @@ "@babel/traverse" "^7.17.3" "@babel/types" "^7.17.0" -"@babel/helpers@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz#970d74f0deadc3f5a938bfa250738eb4ac889384" - integrity sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg== - dependencies: - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.18.2" - "@babel/types" "^7.18.2" - "@babel/highlight@^7.0.0", "@babel/highlight@^7.16.7": version "7.16.10" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" @@ -753,11 +672,6 @@ resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz#9c94189a6062f0291418ca021077983058e171ef" integrity sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg== -"@babel/parser@^7.18.0": - version "7.18.4" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz#6774231779dd700e0af29f6ad8d479582d7ce5ef" - integrity sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow== - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" @@ -1505,22 +1419,6 @@ "@babel/parser" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.18.0", "@babel/traverse@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz#b77a52604b5cc836a9e1e08dca01cba67a12d2e8" - integrity sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA== - dependencies: - "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.18.2" - "@babel/helper-environment-visitor" "^7.18.2" - "@babel/helper-function-name" "^7.17.9" - "@babel/helper-hoist-variables" "^7.16.7" - "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/parser" "^7.18.0" - "@babel/types" "^7.18.2" - debug "^4.1.0" - globals "^11.1.0" - "@babel/traverse@^7.13.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.16.10", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2": version "7.16.10" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.10.tgz#448f940defbe95b5a8029975b051f75993e8239f" @@ -1569,28 +1467,6 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@babel/types@^7.18.0", "@babel/types@^7.18.2": - version "7.18.4" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz#27eae9b9fd18e9dccc3f9d6ad051336f307be354" - integrity sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw== - dependencies: - "@babel/helper-validator-identifier" "^7.16.7" - to-fast-properties "^2.0.0" - -"@backstage/app-defaults@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.2.tgz#0260b470551ea3ce6ea9d7fae33429bceb41bac4" - integrity sha512-G8/seM6GWevrM5wZmF6X+u9Bs5yPZHsog6mJstMw2Z63d57boLGZAHpBh3DQpqGs6QY9lBFvoub4lxmOkNoAzA== - dependencies: - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-react" "^0.4.1" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - react-router-dom "6.0.0-beta.0" - "@backstage/catalog-client@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" @@ -1613,139 +1489,7 @@ lodash "^4.17.21" uuid "^8.0.0" -"@backstage/cli@^0.16.1-next.0": - version "0.16.1-next.0" - resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.16.1-next.0.tgz#b21c4bcc4f2dd8ad305cc3073ffb6fc55105a2a0" - integrity sha512-PjQ4qHuaLYZYhs/JG2H1FGd2LwoE+SIrvNPh1cUNfWApB5qR3sjyUnkkfTByJuMoyREtA1cH/o+Hh0v63CG0Xg== - dependencies: - "@backstage/cli-common" "^0.1.8" - "@backstage/config" "^1.0.0" - "@backstage/config-loader" "^1.0.1-next.0" - "@backstage/errors" "^1.0.0" - "@backstage/release-manifests" "^0.0.2" - "@backstage/types" "^1.0.0" - "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" - "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" - "@manypkg/get-packages" "^1.1.3" - "@octokit/request" "^5.4.12" - "@rollup/plugin-commonjs" "^21.0.1" - "@rollup/plugin-json" "^4.1.0" - "@rollup/plugin-node-resolve" "^13.0.0" - "@rollup/plugin-yaml" "^3.1.0" - "@spotify/eslint-config-base" "^12.0.0" - "@spotify/eslint-config-react" "^12.0.0" - "@spotify/eslint-config-typescript" "^12.0.0" - "@sucrase/jest-plugin" "^2.1.1" - "@sucrase/webpack-loader" "^2.0.0" - "@svgr/plugin-jsx" "6.2.x" - "@svgr/plugin-svgo" "6.2.x" - "@svgr/rollup" "6.2.x" - "@svgr/webpack" "6.2.x" - "@types/webpack-env" "^1.15.2" - "@typescript-eslint/eslint-plugin" "^5.9.0" - "@typescript-eslint/parser" "^5.9.0" - "@yarnpkg/lockfile" "^1.1.0" - bfj "^7.0.2" - buffer "^6.0.3" - chalk "^4.0.0" - chokidar "^3.3.1" - commander "^6.1.0" - css-loader "^6.5.1" - diff "^5.0.0" - esbuild "^0.14.10" - esbuild-loader "^2.18.0" - eslint "^8.6.0" - eslint-config-prettier "^8.3.0" - eslint-formatter-friendly "^7.0.0" - eslint-plugin-deprecation "^1.3.2" - eslint-plugin-import "^2.25.4" - eslint-plugin-jest "^25.3.4" - eslint-plugin-jsx-a11y "^6.5.1" - eslint-plugin-monorepo "^0.3.2" - eslint-plugin-react "^7.28.0" - eslint-plugin-react-hooks "^4.3.0" - eslint-webpack-plugin "^2.6.0" - express "^4.17.1" - fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" - fs-extra "10.0.1" - glob "^7.1.7" - handlebars "^4.7.3" - html-webpack-plugin "^5.3.1" - inquirer "^8.2.0" - jest "^26.0.1" - jest-css-modules "^2.1.0" - jest-transform-yaml "^1.0.0" - json-schema "^0.4.0" - lodash "^4.17.21" - mini-css-extract-plugin "^2.4.2" - minimatch "5.0.1" - node-libs-browser "^2.2.1" - npm-packlist "^3.0.0" - ora "^5.3.0" - postcss "^8.1.0" - process "^0.11.10" - react-dev-utils "^12.0.0-next.60" - react-hot-loader "^4.13.0" - recursive-readdir "^2.2.2" - replace-in-file "^6.0.0" - rollup "^2.60.2" - rollup-plugin-dts "^4.0.1" - rollup-plugin-esbuild "^4.7.2" - rollup-plugin-postcss "^4.0.0" - rollup-pluginutils "^2.8.2" - run-script-webpack-plugin "^0.0.11" - semver "^7.3.2" - style-loader "^3.3.1" - sucrase "^3.20.2" - tar "^6.1.2" - terser-webpack-plugin "^5.1.3" - util "^0.12.3" - webpack "^5.66.0" - webpack-dev-server "^4.7.3" - webpack-node-externals "^3.0.0" - yaml "^1.10.0" - yml-loader "^2.1.0" - yn "^4.0.0" - zod "^3.11.6" - -"@backstage/config-loader@^1.0.1-next.0": - version "1.1.1" - resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" - integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== - dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - "@types/json-schema" "^7.0.6" - ajv "^8.10.0" - chokidar "^3.5.2" - fs-extra "10.1.0" - json-schema "^0.4.0" - json-schema-merge-allof "^0.8.1" - json-schema-traverse "^1.0.0" - node-fetch "^2.6.7" - typescript-json-schema "^0.53.0" - yaml "^1.9.2" - yup "^0.32.9" - -"@backstage/core-app-api@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.2.tgz#466b660db644150bc4639244c42bdebcddb3bc79" - integrity sha512-9CM/60hR6xEZmUEVyhdyFiyZrG95S299KyZh8R1s4/ndX86Wmqu0zBBBeufXJnCWYa8ebo/IVhCJF4YIAFAI3g== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - "@types/prop-types" "^15.7.3" - prop-types "^15.7.2" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - zod "^3.11.6" - -"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.3-next.0", "@backstage/core-components@^0.9.4": +"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": version "0.9.4" resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" integrity sha512-zg297mSw1BIc/BENrSClmgMx4kp0so0cK+lQ4FVa22+Dg5PDc2/NXWId2qEN2zD2XV/nm9RFBQM02gd6M6q3jQ== @@ -1802,32 +1546,7 @@ react-router-dom "6.0.0-beta.0" zen-observable "^0.8.15" -"@backstage/dev-utils@^1.0.1-next.0": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.2.tgz#ec1b261b7277b7d2f16952df64e7aaf0b8ae2adc" - integrity sha512-7g3yqlaIQqn/wTDYr7iatBxsuSFnprYGC0pwd3+owR2W7RMo5E900yS5yZ/WjzrwJ4i/Gsper013unuZTukxZA== - dependencies: - "@backstage/app-defaults" "^1.0.2" - "@backstage/catalog-model" "^1.0.2" - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/integration-react" "^1.1.0" - "@backstage/plugin-catalog-react" "^1.1.0" - "@backstage/test-utils" "^1.1.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - react-hot-loader "^4.13.0" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - -"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.1.0": +"@backstage/integration-react@^1.0.0": version "1.1.0" resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== @@ -1963,13 +1682,6 @@ qs "^6.9.4" react-use "^17.2.4" -"@backstage/release-manifests@^0.0.2": - version "0.0.2" - resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.2.tgz#42faca60dae0c89cf6bc6fbf1b34e1e8cb2a564b" - integrity sha512-gBzcxIlDM3k0SXhVfyKQDxRvwS2hdXPy1qQU+wcVijImGez0CIIw1iD1+ksCYpWKb8uGZFovLj4fEvm5fA942g== - dependencies: - cross-fetch "^3.1.5" - "@backstage/search-common@^0.3.4": version "0.3.4" resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" @@ -1977,28 +1689,6 @@ dependencies: "@backstage/plugin-search-common" "0.3.4" -"@backstage/test-utils@^1.0.1-next.0", "@backstage/test-utils@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.1.0.tgz#9ec83ae08aec975b1d3edad2a84c5d8d310378d2" - integrity sha512-ZQSA58fWwfhscIFwM+1GFR8QR0nJCz4mZxnaYDycLueDrOA4vHpkqzdgkytqMbCvV16xJaa+UUkGkhUf0gzQyg== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/plugin-permission-react" "^0.4.1" - "@backstage/theme" "^0.2.15" - "@backstage/types" "^1.0.0" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.11.2" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - cross-fetch "^3.1.5" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - zen-observable "^0.8.15" - "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -2212,14 +1902,6 @@ human-id "^1.0.2" prettier "^1.19.1" -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== - dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" - "@codemirror/autocomplete@^0.20.0": version "0.20.0" resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-0.20.0.tgz#390cc444ea36474e77117f2153caad84214f0edf" @@ -3107,18 +2789,6 @@ resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" - integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^26.6.2" - jest-util "^26.6.2" - slash "^3.0.0" - "@jest/console@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" @@ -3131,40 +2801,6 @@ jest-util "^27.5.1" slash "^3.0.0" -"@jest/core@^26.6.3": - version "26.6.3" - resolved "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" - integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/reporters" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^26.6.2" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-resolve-dependencies "^26.6.3" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - jest-watcher "^26.6.2" - micromatch "^4.0.2" - p-each-series "^2.1.0" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - "@jest/core@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" @@ -3199,16 +2835,6 @@ slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" - integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== - dependencies: - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - "@jest/environment@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" @@ -3219,18 +2845,6 @@ "@types/node" "*" jest-mock "^27.5.1" -"@jest/fake-timers@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" - integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== - dependencies: - "@jest/types" "^26.6.2" - "@sinonjs/fake-timers" "^6.0.1" - "@types/node" "*" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-util "^26.6.2" - "@jest/fake-timers@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" @@ -3243,15 +2857,6 @@ jest-mock "^27.5.1" jest-util "^27.5.1" -"@jest/globals@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" - integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/types" "^26.6.2" - expect "^26.6.2" - "@jest/globals@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" @@ -3261,38 +2866,6 @@ "@jest/types" "^27.5.1" expect "^27.5.1" -"@jest/reporters@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" - integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.4" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^26.6.2" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^7.0.0" - optionalDependencies: - node-notifier "^8.0.0" - "@jest/reporters@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" @@ -3324,15 +2897,6 @@ terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" -"@jest/source-map@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" - integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.4" - source-map "^0.6.0" - "@jest/source-map@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" @@ -3342,16 +2906,6 @@ graceful-fs "^4.2.9" source-map "^0.6.0" -"@jest/test-result@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" - integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - "@jest/test-result@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" @@ -3362,17 +2916,6 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.6.3": - version "26.6.3" - resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" - integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== - dependencies: - "@jest/test-result" "^26.6.2" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - "@jest/test-sequencer@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" @@ -3383,27 +2926,6 @@ jest-haste-map "^27.5.1" jest-runtime "^27.5.1" -"@jest/transform@^26.6.2": - version "26.6.2" - resolved "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" - integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.6.2" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-regex-util "^26.0.0" - jest-util "^26.6.2" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - "@jest/transform@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" @@ -3783,25 +3305,11 @@ resolved "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz#69bc4db754d79e1a2f17a650d3466e038d94a5eb" integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== -"@jridgewell/gen-mapping@^0.3.0": - version "0.3.1" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz#cf92a983c83466b8c0ce9124fadeaf09f7c66ea9" - integrity sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg== - dependencies: - "@jridgewell/set-array" "^1.0.0" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - "@jridgewell/resolve-uri@^3.0.3": version "3.0.7" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== -"@jridgewell/set-array@^1.0.0": - version "1.1.1" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea" - integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ== - "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.13" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" @@ -3823,7 +3331,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.7", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.7": version "0.3.13" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" integrity sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w== @@ -5645,19 +5153,6 @@ react-router-dom "6.0.0-beta.0" react-use "^17.2.4" -"@rollup/plugin-commonjs@^21.0.1": - version "21.1.0" - resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.1.0.tgz#45576d7b47609af2db87f55a6d4b46e44fc3a553" - integrity sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA== - dependencies: - "@rollup/pluginutils" "^3.1.0" - commondir "^1.0.1" - estree-walker "^2.0.1" - glob "^7.1.6" - is-reference "^1.2.1" - magic-string "^0.25.7" - resolve "^1.17.0" - "@rollup/plugin-commonjs@^22.0.0": version "22.0.0" resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz#f4d87016e2fbf187a593ab9f46626fe05b59e8bd" @@ -5797,13 +5292,6 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@sinonjs/fake-timers@^8.0.1": version "8.1.0" resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" @@ -5825,31 +5313,16 @@ resolved "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== -"@spotify/eslint-config-base@^12.0.0": - version "12.0.0" - resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-12.0.0.tgz#0b1e41bb436d5c1c20714703629514d64c3c0f06" - integrity sha512-5Uud/TmzakqmdUNCZpD8JFQRa2VG3dVd3DanSMpU/nVdu6K5LyX8EMU3Tz1vGP18Wih8iAu/sBSJhntNzw7e6w== - "@spotify/eslint-config-base@^13.0.0": version "13.0.0" resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.0.tgz#bb748bb2b705ffb5085f873aa0daf94dfad59985" integrity sha512-BrnexUcUQkp6XUw8HWSmE4LpWtJGgEC6A7vrSkgpgKJtZaYkpw8O+Xnk60DA266ecbFHYbQD6ngqKHlvjNB+pA== -"@spotify/eslint-config-react@^12.0.0": - version "12.0.0" - resolved "https://registry.npmjs.org/@spotify/eslint-config-react/-/eslint-config-react-12.0.0.tgz#5b8d4bc3b81a8ec2824648f482f1f6c3cf711893" - integrity sha512-lNHZRtJesNA273OJHBVUGAg2JYyVDZ+bsT7h3OwnX1HYgejJ3YcKPSziPM8TGFAN8DruH3tHFfaM63uAIA1+uw== - "@spotify/eslint-config-react@^13.0.0": version "13.0.1" resolved "https://registry.npmjs.org/@spotify/eslint-config-react/-/eslint-config-react-13.0.1.tgz#f309f5d3c53ef1e2c7c6ce05f76ee681970112c3" integrity sha512-gyC0CtJ2H9K57HyQG5/RcMsJiB6qmVbBHOHWukZcPLfYtwkK201kgMjHrVfJXoSN+mJxcWhDVPxqe+eA7LHshQ== -"@spotify/eslint-config-typescript@^12.0.0": - version "12.0.0" - resolved "https://registry.npmjs.org/@spotify/eslint-config-typescript/-/eslint-config-typescript-12.0.0.tgz#4c7af3f74a47668bec0c860b72e2a0103e78a138" - integrity sha512-nMVll8ZkN/W8+IHn6Iz3YzCKW0qhrn3TVfyxkAr3qmXm5cex+GzyUdZEuxb8rdN2inZL6A1Il2NFfO5p/UKxog== - "@spotify/eslint-config-typescript@^13.0.0": version "13.0.1" resolved "https://registry.npmjs.org/@spotify/eslint-config-typescript/-/eslint-config-typescript-13.0.1.tgz#47801a66d5569074a110f4422eba60aafc6bd7f8" @@ -6198,17 +5671,6 @@ "@types/babel__template" "*" "@types/babel__traverse" "*" -"@types/babel__core@^7.1.7": - version "7.1.19" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" - integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - "@types/babel__generator@*": version "7.6.1" resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" @@ -7067,11 +6529,6 @@ resolved "https://registry.npmjs.org/@types/pluralize/-/pluralize-0.0.29.tgz#6ffa33ed1fc8813c469b859681d09707eb40d03c" integrity sha512-BYOID+l2Aco2nBik+iYS4SZX0Lf20KPILP5RGmM1IgzdwNdTs0eebiFriOPcej1sX9mLnSoiNte5zcFxssgpGA== -"@types/prettier@^2.0.0": - version "2.6.3" - resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.3.tgz#68ada76827b0010d0db071f739314fa429943d0a" - integrity sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg== - "@types/prettier@^2.1.5": version "2.4.3" resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.3.tgz#a3c65525b91fca7da00ab1a3ac2b5a2a4afbffbf" @@ -8164,14 +7621,6 @@ any-promise@^1.0.0: resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" @@ -8707,20 +8156,6 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-jest@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" - integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== - dependencies: - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/babel__core" "^7.1.7" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - slash "^3.0.0" - babel-jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" @@ -8742,7 +8177,7 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" -babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: +babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== @@ -8753,16 +8188,6 @@ babel-plugin-istanbul@^6.0.0, babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" - integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - babel-plugin-jest-hoist@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" @@ -8862,14 +8287,6 @@ babel-preset-fbjs@^3.4.0: "@babel/plugin-transform-template-literals" "^7.0.0" babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" -babel-preset-jest@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" - integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== - dependencies: - babel-plugin-jest-hoist "^26.6.2" - babel-preset-current-node-syntax "^1.0.0" - babel-preset-jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" @@ -9321,17 +8738,6 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4 node-releases "^2.0.1" picocolors "^1.0.0" -browserslist@^4.20.2: - version "4.20.3" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" - integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== - dependencies: - caniuse-lite "^1.0.30001332" - electron-to-chromium "^1.4.118" - escalade "^3.1.1" - node-releases "^2.0.3" - picocolors "^1.0.0" - bser@2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -9579,7 +8985,7 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0, camelcase@^6.3.0: +camelcase@^6.2.0, camelcase@^6.3.0: version "6.3.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== @@ -9599,11 +9005,6 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001286: resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001315.tgz#f1b1efd1171ee1170d52709a7252632dacbd7c77" integrity sha512-5v7LFQU4Sb/qvkz7JcZkvtSH1Ko+1x2kgo3ocdBeMGZSOFpuE1kkm0kpTwLtWeFrw5qw08ulLxJjVIXIS8MkiQ== -caniuse-lite@^1.0.30001332: - version "1.0.30001346" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001346.tgz#e895551b46b9cc9cc9de852facd42f04839a8fbe" - integrity sha512-q6ibZUO2t88QCIPayP/euuDREq+aMAxFE5S70PkrLh0iTDj/zEhgvJRKC2+CvXY6EWc6oQwUR48lL5vCW6jiXQ== - canvas@^2.6.1: version "2.9.1" resolved "https://registry.npmjs.org/canvas/-/canvas-2.9.1.tgz#58ec841cba36cef0675bc7a74ebd1561f0b476b0" @@ -9622,13 +9023,6 @@ capital-case@^1.0.4: tslib "^2.0.3" upper-case-first "^2.0.2" -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -9838,11 +9232,6 @@ circleci-api@^4.0.0: dependencies: axios "^0.21.1" -cjs-module-lexer@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" - integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== - cjs-module-lexer@^1.0.0: version "1.2.2" resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" @@ -10241,11 +9630,6 @@ commander@^5.1.0: resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== -commander@^6.1.0: - version "6.2.1" - resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" - integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== - commander@^7.2.0: version "7.2.0" resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" @@ -12073,11 +11457,6 @@ elastic-builder@^2.16.0: lodash.isstring "^4.0.1" lodash.omit "^4.5.0" -electron-to-chromium@^1.4.118: - version "1.4.145" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.145.tgz#5be3aa470cae3c2bccd20afc4d2a5efdca337b7b" - integrity sha512-g4VQCi61gA0t5fJHsalxAc8NpvxC/CEwLAGLfJ+DmkRXTEyntJA7H01771uVD6X6nnViv3GToPgb0QOVA8ivOQ== - electron-to-chromium@^1.4.17: version "1.4.35" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.35.tgz#69aabb73d7030733e71c1e970ec16f5ceefbaea4" @@ -12101,11 +11480,6 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" -emittery@^0.7.1: - version "0.7.2" - resolved "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" - integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== - emittery@^0.8.1: version "0.8.1" resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" @@ -12597,13 +11971,6 @@ eslint-plugin-import@^2.25.4: resolve "^1.22.0" tsconfig-paths "^3.14.1" -eslint-plugin-jest@^25.3.4: - version "25.7.0" - resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz#ff4ac97520b53a96187bad9c9814e7d00de09a6a" - integrity sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ== - dependencies: - "@typescript-eslint/experimental-utils" "^5.0.0" - eslint-plugin-jest@^26.1.2: version "26.2.2" resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.2.2.tgz#74e000544259f1ef0462a609a3fc9e5da3768f6c" @@ -12709,18 +12076,6 @@ eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint-webpack-plugin@^2.6.0: - version "2.6.0" - resolved "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-2.6.0.tgz#3bd4ada4e539cb1f6687d2f619073dbb509361cd" - integrity sha512-V+LPY/T3kur5QO3u+1s34VDTcRxjXWPUGM4hlmTb5DwVD0OQz631yGTxJZf4SpAqAjdbBVe978S8BJeHpAdOhQ== - dependencies: - "@types/eslint" "^7.28.2" - arrify "^2.0.1" - jest-worker "^27.3.1" - micromatch "^4.0.4" - normalize-path "^3.0.0" - schema-utils "^3.1.1" - eslint-webpack-plugin@^3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz#83dad2395e5f572d6f4d919eedaa9cf902890fcb" @@ -12968,12 +12323,7 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: react-use "^17.2.4" zen-observable "^0.8.15" -exec-sh@^0.3.2: - version "0.3.6" - resolved "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" - integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== - -execa@4.1.0, execa@^4.0.0: +execa@4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== @@ -13086,18 +12436,6 @@ expand-template@^2.0.3: resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== -expect@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" - integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== - dependencies: - "@jest/types" "^26.6.2" - ansi-styles "^4.0.0" - jest-get-type "^26.3.0" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - expect@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" @@ -13850,7 +13188,7 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@^2.1.2, fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -14460,11 +13798,6 @@ grouped-queue@^2.0.0: resolved "https://registry.npmjs.org/grouped-queue/-/grouped-queue-2.0.0.tgz#a2c6713f2171e45db2c300a3a9d7c119d694dac8" integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== - gtoken@^5.0.4: version "5.1.0" resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz#4ba8d2fc9a8459098f76e7e8fd7beaa39fda9fe4" @@ -16103,16 +15436,6 @@ istanbul-lib-coverage@^3.2.0: resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" @@ -16142,7 +15465,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.0.2, istanbul-reports@^3.1.3: +istanbul-reports@^3.1.3: version "3.1.4" resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== @@ -16172,15 +15495,6 @@ jenkins@^0.28.1: dependencies: papi "^0.29.0" -jest-changed-files@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" - integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== - dependencies: - "@jest/types" "^26.6.2" - execa "^4.0.0" - throat "^5.0.0" - jest-changed-files@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" @@ -16215,25 +15529,6 @@ jest-circus@^27.5.1: stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" - integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== - dependencies: - "@jest/core" "^26.6.3" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.6.3" - jest-util "^26.6.2" - jest-validate "^26.6.2" - prompts "^2.0.1" - yargs "^15.4.1" - jest-cli@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" @@ -16252,30 +15547,6 @@ jest-cli@^27.5.1: prompts "^2.0.1" yargs "^16.2.0" -jest-config@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" - integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.6.3" - "@jest/types" "^26.6.2" - babel-jest "^26.6.3" - chalk "^4.0.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.4" - jest-environment-jsdom "^26.6.2" - jest-environment-node "^26.6.2" - jest-get-type "^26.3.0" - jest-jasmine2 "^26.6.3" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - micromatch "^4.0.2" - pretty-format "^26.6.2" - jest-config@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" @@ -16313,7 +15584,7 @@ jest-css-modules@^2.1.0: dependencies: identity-obj-proxy "3.0.0" -jest-diff@^26.0.0, jest-diff@^26.6.2: +jest-diff@^26.0.0: version "26.6.2" resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== @@ -16333,13 +15604,6 @@ jest-diff@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - jest-docblock@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" @@ -16347,17 +15611,6 @@ jest-docblock@^27.5.1: dependencies: detect-newline "^3.0.0" -jest-each@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" - integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - jest-get-type "^26.3.0" - jest-util "^26.6.2" - pretty-format "^26.6.2" - jest-each@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" @@ -16369,19 +15622,6 @@ jest-each@^27.5.1: jest-util "^27.5.1" pretty-format "^27.5.1" -jest-environment-jsdom@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" - integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - jsdom "^16.4.0" - jest-environment-jsdom@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" @@ -16395,18 +15635,6 @@ jest-environment-jsdom@^27.5.1: jest-util "^27.5.1" jsdom "^16.6.0" -jest-environment-node@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" - integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - jest-environment-node@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" @@ -16429,27 +15657,6 @@ jest-get-type@^27.5.1: resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== -jest-haste-map@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" - integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== - dependencies: - "@jest/types" "^26.6.2" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.1.2" - jest-haste-map@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" @@ -16470,30 +15677,6 @@ jest-haste-map@^27.5.1: optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" - integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^26.6.2" - is-generator-fn "^2.0.0" - jest-each "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - pretty-format "^26.6.2" - throat "^5.0.0" - jest-jasmine2@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" @@ -16517,14 +15700,6 @@ jest-jasmine2@^27.5.1: pretty-format "^27.5.1" throat "^6.0.1" -jest-leak-detector@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" - integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== - dependencies: - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - jest-leak-detector@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" @@ -16533,16 +15708,6 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-matcher-utils@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" - integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== - dependencies: - chalk "^4.0.0" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" @@ -16553,21 +15718,6 @@ jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-message-util@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" - integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - micromatch "^4.0.2" - pretty-format "^26.6.2" - slash "^3.0.0" - stack-utils "^2.0.2" - jest-message-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" @@ -16583,14 +15733,6 @@ jest-message-util@^27.5.1: slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" - integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" @@ -16604,25 +15746,11 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - jest-regex-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== -jest-resolve-dependencies@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" - integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== - dependencies: - "@jest/types" "^26.6.2" - jest-regex-util "^26.0.0" - jest-snapshot "^26.6.2" - jest-resolve-dependencies@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" @@ -16632,20 +15760,6 @@ jest-resolve-dependencies@^27.5.1: jest-regex-util "^27.5.1" jest-snapshot "^27.5.1" -jest-resolve@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" - integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.2" - jest-util "^26.6.2" - read-pkg-up "^7.0.1" - resolve "^1.18.1" - slash "^3.0.0" - jest-resolve@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" @@ -16662,32 +15776,6 @@ jest-resolve@^27.5.1: resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" - integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.7.1" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-docblock "^26.0.0" - jest-haste-map "^26.6.2" - jest-leak-detector "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - jest-runtime "^26.6.3" - jest-util "^26.6.2" - jest-worker "^26.6.2" - source-map-support "^0.5.6" - throat "^5.0.0" - jest-runner@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" @@ -16715,39 +15803,6 @@ jest-runner@^27.5.1: source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^26.6.3: - version "26.6.3" - resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" - integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/globals" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - cjs-module-lexer "^0.6.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - slash "^3.0.0" - strip-bom "^4.0.0" - yargs "^15.4.1" - jest-runtime@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" @@ -16776,14 +15831,6 @@ jest-runtime@^27.5.1: slash "^3.0.0" strip-bom "^4.0.0" -jest-serializer@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" - integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.4" - jest-serializer@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" @@ -16792,28 +15839,6 @@ jest-serializer@^27.5.1: "@types/node" "*" graceful-fs "^4.2.9" -jest-snapshot@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" - integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.0.0" - chalk "^4.0.0" - expect "^26.6.2" - graceful-fs "^4.2.4" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - jest-haste-map "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - natural-compare "^1.4.0" - pretty-format "^26.6.2" - semver "^7.3.2" - jest-snapshot@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" @@ -16849,18 +15874,6 @@ jest-transform-yaml@^1.0.0: dependencies: js-yaml "4.1.0" -jest-util@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - jest-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" @@ -16873,18 +15886,6 @@ jest-util@^27.5.1: graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" - integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== - dependencies: - "@jest/types" "^26.6.2" - camelcase "^6.0.0" - chalk "^4.0.0" - jest-get-type "^26.3.0" - leven "^3.1.0" - pretty-format "^26.6.2" - jest-validate@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" @@ -16897,19 +15898,6 @@ jest-validate@^27.5.1: leven "^3.1.0" pretty-format "^27.5.1" -jest-watcher@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" - integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== - dependencies: - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^26.6.2" - string-length "^4.0.1" - jest-watcher@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" @@ -16928,15 +15916,6 @@ jest-when@^3.1.0: resolved "https://registry.npmjs.org/jest-when/-/jest-when-3.5.1.tgz#33ab6f923661cf878cd08fe9df64b507934603db" integrity sha512-o+HiaIVCg1IC95sMDKHU9G5v5N5l3UHqXvJpf0PgAMThZeQo4Hf5Sgoj+wpCBRGg4/KtzSAZZZEKNiLqE0i4eQ== -jest-worker@^26.6.2: - version "26.6.2" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" @@ -16946,15 +15925,6 @@ jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^26.0.1: - version "26.6.3" - resolved "https://registry.npmjs.org/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" - integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== - dependencies: - "@jest/core" "^26.6.3" - import-local "^3.0.2" - jest-cli "^26.6.3" - jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" @@ -17130,7 +16100,7 @@ jscodeshift@^0.13.0: temp "^0.8.4" write-file-atomic "^2.3.0" -jsdom@^16.4.0, jsdom@^16.5.2, jsdom@^16.6.0: +jsdom@^16.5.2, jsdom@^16.6.0: version "16.7.0" resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== @@ -17308,7 +16278,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.1.3, json5@^2.2.0, json5@^2.2.1: +json5@^2.1.2, json5@^2.1.3, json5@^2.2.0: version "2.2.1" resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== @@ -18476,13 +17446,6 @@ make-fetch-happen@^9.1.0: socks-proxy-agent "^6.0.0" ssri "^8.0.0" -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== - dependencies: - tmpl "1.0.5" - makeerror@1.0.x: version "1.0.11" resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -19106,7 +18069,7 @@ micromark@^3.0.0: micromark-util-types "^1.0.1" parse-entities "^3.0.0" -micromatch@^3.1.10, micromatch@^3.1.4: +micromatch@^3.1.10: version "3.1.10" resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -19251,13 +18214,6 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== - dependencies: - brace-expansion "^2.0.1" - minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" @@ -19288,7 +18244,7 @@ minimist-options@4.1.0, minimist-options@^4.0.2: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: +minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: version "1.2.6" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== @@ -19857,28 +18813,11 @@ node-modules-regexp@^1.0.0: resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-notifier@^8.0.0: - version "8.0.2" - resolved "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" - integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== - dependencies: - growly "^1.3.0" - is-wsl "^2.2.0" - semver "^7.3.2" - shellwords "^0.1.1" - uuid "^8.3.0" - which "^2.0.2" - node-releases@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== -node-releases@^2.0.3: - version "2.0.5" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" - integrity sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q== - nodemon@^2.0.2: version "2.0.16" resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.16.tgz#d71b31bfdb226c25de34afea53486c8ef225fdef" @@ -20507,11 +19446,6 @@ p-cancelable@^2.0.0: resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== -p-each-series@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" - integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== - p-filter@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" @@ -23307,7 +22241,7 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.18.1, resolve@^1.22.0: +resolve@^1.22.0: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -23521,11 +22455,6 @@ rollup@^2.60.2: optionalDependencies: fsevents "~2.3.2" -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== - rtl-css-js@^1.14.0: version "1.14.0" resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.14.0.tgz#daa4f192a92509e292a0519f4b255e6e3c076b7d" @@ -23545,11 +22474,6 @@ run-parallel@^1.1.9: resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== -run-script-webpack-plugin@^0.0.11: - version "0.0.11" - resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.11.tgz#04c510bed06b907fa2285e75feece71a25691171" - integrity sha512-QmuBhiqBPmhQLpO5vMBHVTAGyoPBnrCM5gQ3IzgieiImBXiBbXcIv4kysCT1gilFNFxQk22oKQfiIhWbT/zXCw== - run-script-webpack-plugin@^0.0.14: version "0.0.14" resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" @@ -23615,21 +22539,6 @@ safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - sanitize-filename@^1.6.1: version "1.6.3" resolved "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" @@ -23966,11 +22875,6 @@ shelljs@^0.8.5: interpret "^1.0.0" rechoir "^0.6.2" -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - shx@^0.3.2: version "0.3.4" resolved "https://registry.npmjs.org/shx/-/shx-0.3.4.tgz#74289230b4b663979167f94e1935901406e40f02" @@ -24511,7 +23415,7 @@ stack-trace@0.0.x: resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= -stack-utils@^2.0.2, stack-utils@^2.0.3: +stack-utils@^2.0.3: version "2.0.5" resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== @@ -25354,11 +24258,6 @@ thenify-all@^1.0.0: dependencies: any-promise "^1.0.0" -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== - throat@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" @@ -25474,7 +24373,7 @@ tmp@^0.2.0, tmp@~0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.5, tmpl@1.0.x: +tmpl@1.0.x: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -26389,15 +25288,6 @@ v8-compile-cache@^2.0.3: resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== -v8-to-istanbul@^7.0.0: - version "7.1.2" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" - integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - v8-to-istanbul@^8.1.0: version "8.1.1" resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" @@ -26594,13 +25484,6 @@ walker@^1.0.7: dependencies: makeerror "1.0.x" -walker@~1.0.5: - version "1.0.8" - resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== - dependencies: - makeerror "1.0.12" - watchpack@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" @@ -27224,7 +26107,7 @@ yargs-parser@^3.2.0: camelcase "^3.0.0" lodash.assign "^4.1.0" -yargs@^15.1.0, yargs@^15.3.1, yargs@^15.4.1: +yargs@^15.1.0, yargs@^15.3.1: version "15.4.1" resolved "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== From 8f5f04d3ba9d405cc50da7e817213923ad5b9ddf Mon Sep 17 00:00:00 2001 From: Jason Nguyen Date: Fri, 3 Jun 2022 16:41:18 -0600 Subject: [PATCH 175/550] Update 20220518-01.yaml correct youtubeUrl Signed-off-by: Jason Nguyen --- microsite/data/on-demand/20220518-01.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/on-demand/20220518-01.yaml b/microsite/data/on-demand/20220518-01.yaml index b84c78455f..e8d70df2d9 100644 --- a/microsite/data/on-demand/20220518-01.yaml +++ b/microsite/data/on-demand/20220518-01.yaml @@ -3,7 +3,7 @@ title: Adopters Community Sessions date: May 18, 2022 category: Meetup description: Adopters Community Session ✨. It's the monthly meetup where we all come together to listen to the latest maintainer updates, learn from each other about adopting, share exciting new demos or discuss any relevant topic like developer effectiveness, developer experience, developer portals, etc. -youtubeUrl: https://youtu.be/dEd1fl3wRv +youtubeUrl: https://youtu.be/dEd1fl3wRvo youtubeImgUrl: https://backstage.io/img/b-sessions.png rsvpUrl: https://calendar.google.com/calendar/embed?src=c_qup9gbhn9sqpuao6trttd8mk5s@group.calendar.google.com eventUrl: https://github.com/backstage/community/issues/46 From 4261e960ae62c620b1c88b9c1203b5c3bce76245 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sat, 4 Jun 2022 23:52:59 +0000 Subject: [PATCH 176/550] fix(deps): update dependency eslint-plugin-jest to v26.5.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f736a9a620..a94e250f89 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11965,9 +11965,9 @@ eslint-plugin-import@^2.25.4: tsconfig-paths "^3.14.1" eslint-plugin-jest@^26.1.2: - version "26.2.2" - resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.2.2.tgz#74e000544259f1ef0462a609a3fc9e5da3768f6c" - integrity sha512-etSFZ8VIFX470aA6kTqDPhIq7YWe0tjBcboFNV3WeiC18PJ/AVonGhuTwlmuz2fBkH8FJHA7JQ4k7GsQIj1Gew== + version "26.5.0" + resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.5.0.tgz#d32dbe8141effccfbc9ae964a10e66e4e50a563f" + integrity sha512-myQMd4piRn7otD1d1fAC7FRZO+WiDCiksejuyeHZ2b3LO7o5bE0Q7u0cuq7/kzBBVqFs+uFSAIBQAAuBbOpKsg== dependencies: "@typescript-eslint/utils" "^5.10.0" From 0df86daccad97ab80897c6244ab4711abdd53841 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 01:03:57 +0000 Subject: [PATCH 177/550] chore(deps): update dependency @testing-library/cypress to v8.0.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a94e250f89..971599dadb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5481,9 +5481,9 @@ defer-to-connect "^2.0.0" "@testing-library/cypress@^8.0.2": - version "8.0.2" - resolved "https://registry.npmjs.org/@testing-library/cypress/-/cypress-8.0.2.tgz#b13f0ff2424dec4368b6670dfbfb7e43af8eefc9" - integrity sha512-KVdm7n37sg/A4e3wKMD4zUl0NpzzVhx06V9Tf0hZHZ7nrZ4yFva6Zwg2EFF1VzHkEfN/ahUzRtT1qiW+vuWnJw== + version "8.0.3" + resolved "https://registry.npmjs.org/@testing-library/cypress/-/cypress-8.0.3.tgz#24ab34df34d7896866603ade705afbdd186e273c" + integrity sha512-nY2YaSbmuPo5k6kL0iLj/pGPPfka3iwb3kpTx8QN/vOCns92Saz9wfACqB8FJzcR7+lfA4d5HUOWqmTddBzczg== dependencies: "@babel/runtime" "^7.14.6" "@testing-library/dom" "^8.1.0" From 79c0bb212622540db1b1c07e9fc78e24fda2b834 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 01:46:52 +0000 Subject: [PATCH 178/550] chore(deps): update dependency ts-node to v10.8.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 971599dadb..fe4a167684 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24562,9 +24562,9 @@ ts-morph@^15.0.0: code-block-writer "^11.0.0" ts-node@^10.0.0, ts-node@^10.2.1, ts-node@^10.4.0: - version "10.8.0" - resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.8.0.tgz#3ceb5ac3e67ae8025c1950626aafbdecb55d82ce" - integrity sha512-/fNd5Qh+zTt8Vt1KbYZjRHCE9sI5i7nqfD/dzBBRDeVXZXS6kToW6R7tTU6Nd4XavFs0mAVCg29Q//ML7WsZYA== + version "10.8.1" + resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.8.1.tgz#ea2bd3459011b52699d7e88daa55a45a1af4f066" + integrity sha512-Wwsnao4DQoJsN034wePSg5nZiw4YKXf56mPIAeD6wVmiv+RytNSWqc2f3fKvcUoV+Yn2+yocD71VOfQHbmVX4g== dependencies: "@cspotcode/source-map-support" "^0.8.0" "@tsconfig/node10" "^1.0.7" From d94a74d32f2737e47a11a707620358825127ec38 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 02:36:00 +0000 Subject: [PATCH 179/550] fix(deps): update apollo graphql packages to v3.8.2 Signed-off-by: Renovate Bot --- yarn.lock | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index fe4a167684..c2d9788e74 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7644,10 +7644,10 @@ apollo-server-caching@^3.3.0: dependencies: lru-cache "^6.0.0" -apollo-server-core@^3.8.1: - version "3.8.1" - resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.8.1.tgz#51baba3a1073ad7aa950ffbfc5e3bbb5740d013c" - integrity sha512-7A6F+HWmz/1gIW/MvE/0yq/UwrYG/dQCyfk2areoWkvSmg86oV2umuvlnEvTbLE2LiJHBoDP4T+PIqv6pnlLGw== +apollo-server-core@^3.8.2: + version "3.8.2" + resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.8.2.tgz#a065e00220d6c709b11b824197520adee6d897d2" + integrity sha512-cbzG928HG27W+juMVCIL1O//iyAj/Q2hnOu6YwrGrcqeE75ZIJSgSBm/gPHK20cI7nEjK2IWACx8Hj1nGAQ5Zg== dependencies: "@apollo/utils.logger" "^1.0.0" "@apollo/utils.usagereporting" "^1.0.0" @@ -7684,10 +7684,10 @@ apollo-server-errors@^3.3.1: resolved "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz#ba5c00cdaa33d4cbd09779f8cb6f47475d1cd655" integrity sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA== -apollo-server-express@^3.0.0, apollo-server-express@^3.8.1: - version "3.8.1" - resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.8.1.tgz#79a979c60a6e6d49ae5396c13aeb467389831500" - integrity sha512-58QJFFbLoBfQ3SOp+0PHOqJWVxHf2WzjB3DU2MlVxHi/CfrDbjf7EYjuWTtuvIuzuoEG6kAWLGn2zEDlLmXk1A== +apollo-server-express@^3.0.0, apollo-server-express@^3.8.2: + version "3.8.2" + resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.8.2.tgz#51285279f8a52eb7d88a4f4145261b6f69b12ba6" + integrity sha512-UIpjs0qwOGJ0U1IokrtfjgpQVoirr7E1w446mx6B0EqV8sIFgdEE253utxtHi80va37h/xuEIUuAZFRQaY6ClQ== dependencies: "@types/accepts" "^1.3.5" "@types/body-parser" "1.19.2" @@ -7695,7 +7695,7 @@ apollo-server-express@^3.0.0, apollo-server-express@^3.8.1: "@types/express" "4.17.13" "@types/express-serve-static-core" "4.17.28" accepts "^1.3.5" - apollo-server-core "^3.8.1" + apollo-server-core "^3.8.2" apollo-server-types "^3.6.0" body-parser "^1.19.0" cors "^2.8.5" @@ -7719,13 +7719,13 @@ apollo-server-types@^3.6.0: apollo-server-env "^4.2.1" apollo-server@^3.0.0: - version "3.8.1" - resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.8.1.tgz#ff607983344d56a9288a1df457d61ad3fa1afdeb" - integrity sha512-y6g3ISeUbsLao06lt2ZIhtR+cXtIYZspl0UIv2vA2eyp8hHGk6ocKm4+joQzzugqEdV1wusUswWsL4klECq5jg== + version "3.8.2" + resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.8.2.tgz#15a9263d56ac3a44a5c186d9aafed90c1c2687da" + integrity sha512-XBWTn9uMLKgob60qOlAphOIpY81dDfF5uonCvO154Qx5TJ6IRqER38StIgEgQLLRcR4RZ40uMvbwofZRHfXecA== dependencies: "@types/express" "4.17.13" - apollo-server-core "^3.8.1" - apollo-server-express "^3.8.1" + apollo-server-core "^3.8.2" + apollo-server-express "^3.8.2" express "^4.17.1" aproba@^1.0.3: From 2431c1eaa451b049c0d9acf2278d2a8a4ca64119 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 03:38:03 +0000 Subject: [PATCH 180/550] fix(deps): update dependency eslint-plugin-jest to v26.5.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c2d9788e74..760139016e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11965,9 +11965,9 @@ eslint-plugin-import@^2.25.4: tsconfig-paths "^3.14.1" eslint-plugin-jest@^26.1.2: - version "26.5.0" - resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.5.0.tgz#d32dbe8141effccfbc9ae964a10e66e4e50a563f" - integrity sha512-myQMd4piRn7otD1d1fAC7FRZO+WiDCiksejuyeHZ2b3LO7o5bE0Q7u0cuq7/kzBBVqFs+uFSAIBQAAuBbOpKsg== + version "26.5.1" + resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.5.1.tgz#a6b4cbd6884c1b5dcbe6afc0f43dde9afba29229" + integrity sha512-IUEw6DCJ7qPGffK2pc6ly3L+1HBXdT673pY5nson8Mu4Vwgc/8d4Hf8NhsZwkuspPdi/QMj83ugXND7OLTu6Bg== dependencies: "@typescript-eslint/utils" "^5.10.0" From 0d3d186bb8f2792e01b9b0918464dcfff4a614eb Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 04:32:05 +0000 Subject: [PATCH 181/550] fix(deps): update dependency graphiql to v1.9.5 Signed-off-by: Renovate Bot --- yarn.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/yarn.lock b/yarn.lock index 760139016e..ac62003e5b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2271,10 +2271,10 @@ uuid "^8.0.0" xdg-basedir "^4.0.0" -"@graphiql/react@^0.2.1": - version "0.2.1" - resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.2.1.tgz#e7309e6acea07cfdaa1333cdb7688b06046dcc09" - integrity sha512-Ceuv4p++WWHx++wnBgu1eIoRmQbuESfOR76HgRSHlMsR8Vj4mgixbHANOmU2F3H1dc3uKObUVF+Cjcs+f7V08g== +"@graphiql/react@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.3.0.tgz#3e5100b977a15020514350a6cbd9440a3430e73a" + integrity sha512-XA+khix70FM5yQ0l0xTHC1y2LZ2v/mYWQAhxKo9+5mGfIiMtuo2hEEdJeQvX03CGfIIDjZHD6KOzQNO4LTLqxA== dependencies: "@graphiql/toolkit" "^0.6.0" codemirror "^5.65.3" @@ -2283,6 +2283,7 @@ escape-html "^1.0.3" graphql-language-service "^5.0.4" markdown-it "^12.2.0" + set-value "^4.1.0" "@graphiql/toolkit@^0.6.0": version "0.6.0" @@ -13691,16 +13692,15 @@ grapheme-splitter@^1.0.4: integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== graphiql@^1.5.12, graphiql@^1.8.8: - version "1.9.4" - resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.4.tgz#ad020c33f1941954fa2c83b458119a6520c4591f" - integrity sha512-fDzmuSIJHYJAY/SyThEi4qXz8KIgy9/2s/7jOarhWDiPI5l/jYGDQSgxtM3KKhhKwuRaQrG4MjcguBhUvfu+lw== + version "1.9.5" + resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.5.tgz#586e9ec62a7952726481458dfc7f9164a4d9cc2d" + integrity sha512-maX8AQ4ww2hxo0Jrbyi3xtwmm4Th6kx2sEfnusN+r8gm0QsmMc+0VZ/HwMXEAzMj0ckNmv0mMz9tBBJVp4FQ4A== dependencies: - "@graphiql/react" "^0.2.1" + "@graphiql/react" "^0.3.0" "@graphiql/toolkit" "^0.6.0" entities "^2.0.0" graphql-language-service "^5.0.4" markdown-it "^12.2.0" - set-value "^4.1.0" graphlib@^2.1.8: version "2.1.8" From 57b63d292865cbe23def81dae51a0c4a84203320 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 05:29:09 +0000 Subject: [PATCH 182/550] fix(deps): update dependency typescript to v4.7.3 Signed-off-by: Renovate Bot --- cypress/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cypress/yarn.lock b/cypress/yarn.lock index 7fcd0f98af..81a4260299 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -1059,9 +1059,9 @@ type-fest@^0.21.3: integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== typescript@^4.1.3: - version "4.7.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4" - integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A== + version "4.7.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d" + integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA== universalify@^2.0.0: version "2.0.0" From ca1884e30b4c881b0321879fc31029ab7d5cc2a5 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 06:00:23 +0000 Subject: [PATCH 183/550] chore(deps): update dependency ts-morph to v15.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index ac62003e5b..d60b1c8a5b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5570,13 +5570,13 @@ resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@ts-morph/common@~0.15.0": - version "0.15.0" - resolved "https://registry.npmjs.org/@ts-morph/common/-/common-0.15.0.tgz#aece752746fc0d779d2acfaece95fb2c23327ba5" - integrity sha512-QefRbadcwfBnd3HWrltpjRJprHgeKfQsnbyGbRF8pEjMqISAljJwq4wfRETxxojsmN4GWuJv3PWG+W7kBIHMMw== +"@ts-morph/common@~0.16.0": + version "0.16.0" + resolved "https://registry.npmjs.org/@ts-morph/common/-/common-0.16.0.tgz#57e27d4b3fd65a4cd72cb36679ed08acb40fa3ba" + integrity sha512-SgJpzkTgZKLKqQniCjLaE3c2L2sdL7UShvmTmPBejAKd2OKV/yfMpQ2IWpAuA+VY5wy7PkSUaEObIqEK6afFuw== dependencies: fast-glob "^3.2.11" - minimatch "^5.0.1" + minimatch "^5.1.0" mkdirp "^1.0.4" path-browserify "^1.0.1" @@ -18206,7 +18206,7 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: +minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1, minimatch@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== @@ -24554,11 +24554,11 @@ ts-log@^2.2.3: integrity sha512-XvB+OdKSJ708Dmf9ore4Uf/q62AYDTzFcAdxc8KNML1mmAWywRFVt/dn1KYJH8Agt5UJNujfM3znU5PxgAzA2w== ts-morph@^15.0.0: - version "15.0.0" - resolved "https://registry.npmjs.org/ts-morph/-/ts-morph-15.0.0.tgz#927a85d22909b95fa81e399c94fea655d98be514" - integrity sha512-OZkg0TI1h6FVe8DZXyBo6p7NfCN9EZZkkA736f243KzQ3cypYWtaLc9eyNn/JH/fWYfQ4d6wIA4oM0vElRTGcQ== + version "15.1.0" + resolved "https://registry.npmjs.org/ts-morph/-/ts-morph-15.1.0.tgz#53deea5296d967ff6eba8f15f99d378aa7074a4e" + integrity sha512-RBsGE2sDzUXFTnv8Ba22QfeuKbgvAGJFuTN7HfmIRUkgT/NaVLfDM/8OFm2NlFkGlWEXdpW5OaFIp1jvqdDuOg== dependencies: - "@ts-morph/common" "~0.15.0" + "@ts-morph/common" "~0.16.0" code-block-writer "^11.0.0" ts-node@^10.0.0, ts-node@^10.2.1, ts-node@^10.4.0: From f83f98d1c0627665c4895711258fd343a7f31304 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 06:50:32 +0000 Subject: [PATCH 184/550] fix(deps): update dependency eslint to v8.17.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d60b1c8a5b..13fc0d2a06 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12082,9 +12082,9 @@ eslint-webpack-plugin@^3.1.1: schema-utils "^3.1.1" eslint@^8.6.0: - version "8.16.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.16.0.tgz#6d936e2d524599f2a86c708483b4c372c5d3bbae" - integrity sha512-MBndsoXY/PeVTDJeWsYj7kLZ5hQpJOfMYLsF6LicLHQWbRDG19lK5jOix4DPl8yY4SUFcE3txy86OzFLWT+yoA== + version "8.17.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz#1cfc4b6b6912f77d24b874ca1506b0fe09328c21" + integrity sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw== dependencies: "@eslint/eslintrc" "^1.3.0" "@humanwhocodes/config-array" "^0.9.2" From 9c4d9853f5ce3c35ec20516b35cb913cb196cca5 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sun, 5 Jun 2022 07:33:08 +0000 Subject: [PATCH 185/550] fix(deps): update dependency swagger-ui-react to v4.12.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 13fc0d2a06..a9e132e185 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23945,9 +23945,9 @@ swagger-client@^3.18.5: url "~0.11.0" swagger-ui-react@^4.1.3: - version "4.11.1" - resolved "https://registry.npmjs.org/swagger-ui-react/-/swagger-ui-react-4.11.1.tgz#1de7feea2f99aa292d52cfa3d31edf665eaa6181" - integrity sha512-w7WkrEL7uw1EofILX9hNKQXqy5EQhxTU3u+Ob8YcLqeAEUjECewtyTvsQ+79Xypj9yXbqSvgdPkpho1n5Bo2NQ== + version "4.12.0" + resolved "https://registry.npmjs.org/swagger-ui-react/-/swagger-ui-react-4.12.0.tgz#bfdf67bd0679fdd62ec3fb98bd827afb81fb7fe6" + integrity sha512-pkSkUe4WVb7omoScK8GG2qgD6LxwZEIA+fKcxeACC7PCW52vFEjle6WO6lFOLj1JmfWriL7Ngi0+wJtVjfhnWw== dependencies: "@babel/runtime-corejs3" "^7.16.8" "@braintree/sanitize-url" "=6.0.0" From c1a4f18033f44efa9db64a7bfe03e22bd661d1a0 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Mon, 6 Jun 2022 17:31:03 +0000 Subject: [PATCH 186/550] chore(deps): update storybook monorepo to v6.5.7 Signed-off-by: Renovate Bot --- storybook/yarn.lock | 550 ++++++++++++++++++++++---------------------- 1 file changed, 275 insertions(+), 275 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index db4c28460f..829bc8dc35 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1273,18 +1273,18 @@ source-map "^0.7.3" "@storybook/addon-a11y@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.6.tgz#fb87c49f7d878f1f89cca7cfe7193614ba661c9c" - integrity sha512-h9HPDVWbVMzwplthYVj3JokCMxEzVVIuSOqr2sJ7OsYhPqeJCvanJG7ZHGR3fzEdPkIaJ9X+ePHKdXzi+PtEvg== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.7.tgz#76edaf292b3d2c3ad0e3c48d8d007dcefdad5506" + integrity sha512-twez2iAnAZH3WTDCN7C7WNbhXP5JJNoev5umjNmmvjirihJH9sLgw35i6sqr1QKc3d0kn6cULw5RU9wDiU+7Bg== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.6" + "@storybook/theming" "6.5.7" axe-core "^4.2.0" core-js "^3.8.2" global "^4.4.0" @@ -1295,17 +1295,17 @@ util-deprecate "^1.0.2" "@storybook/addon-actions@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.6.tgz#0e980a0a6d8d47db8031108ffa1fd51cc627a466" - integrity sha512-AGtzpWOU/B0FxcqFDM7E/KSHQyr6tMbVts77JlAKCIbwqEncD1LIQoz9CyMdbr1jynkep0Ck0JjcDdmp7CXVoQ== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.7.tgz#0280a994f42e80ae7e8b71ccf04cd0279cbce01d" + integrity sha512-gTkPr2FYX+vySZKEg5Wq7uHPkVUq3hJ7ZKvGls+/xjgaTwfu3iIly53FEFUl8A6kMQ+4gtTC+YRr3cSJgXMbAg== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.6" + "@storybook/theming" "6.5.7" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1320,33 +1320,33 @@ uuid-browser "^3.1.0" "@storybook/addon-controls@^6.4.22": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.6.tgz#bca1e33dd1edb059b6d6b1e1616c60ecdc9eb294" - integrity sha512-pJz2ltdL8d9/2wX1XOMdXeGwMNoBX5hIXkNfBCvBfOCmeVEXOczPOZARvwx4QTqmMSu1KikhFIGT64wwoETmBg== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.7.tgz#ec1f3c26b494c5eccb44e172d17e23a267e3b514" + integrity sha512-1JGphHk1gcLLpkft/D5BkygXwelSdWQqvXnfFc62BVqvzxv8hCF4zuUosKLWMlB/nzVbd6W4oEDV/Mqmt6h/7w== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/core-common" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/core-common" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/node-logger" "6.5.6" - "@storybook/store" "6.5.6" - "@storybook/theming" "6.5.6" + "@storybook/node-logger" "6.5.7" + "@storybook/store" "6.5.7" + "@storybook/theming" "6.5.7" core-js "^3.8.2" lodash "^4.17.21" ts-dedent "^2.0.0" "@storybook/addon-links@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.6.tgz#1074d239c3c9c8b7168d20c9cc20b8918e4993a6" - integrity sha512-a4+9HLc6+M9qv5Fvezoc8AJYze8HDfHlsEFvCY1AtQiyVEmxFRNBdAp6w+/teNzihXWY78EKRcGM0jjyt+9mWg== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.7.tgz#b3a794b19c5c0277c3f20f86915c851f577dc45b" + integrity sha512-kiCzGLlCyhfBjwYfM/xACe5l6s2+8exQNOGoLzNeAhprgD7dzpsZ0ZaEgpF4ay9bG9H9gOeX4jc/TAvVW/v6nw== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.6" + "@storybook/router" "6.5.7" "@types/qs" "^6.9.5" core-js "^3.8.2" global "^4.4.0" @@ -1356,17 +1356,17 @@ ts-dedent "^2.0.0" "@storybook/addon-storysource@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.6.tgz#6d53e1d99972863265ecde9023367660636dbd33" - integrity sha512-QGGqo7ZaBaWPkKyaXm1uDNnV1+1idoFDTbFl9D3h82foDcvcgAp5PROcWAtXwUE4B3+wkjA/xTwwayKdjWO8Rw== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.7.tgz#a60ed17c324caf92b0fbb67626a4bdf8253e86af" + integrity sha512-4cquq0Oqf9skPdIYkVtO5lAPS7+83TyY4vT52HQ5LSpSekZELQkRxN793jNMQdu2IGQ/l9WqvyzFGaN62bRg7Q== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/router" "6.5.6" - "@storybook/source-loader" "6.5.6" - "@storybook/theming" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/router" "6.5.7" + "@storybook/source-loader" "6.5.7" + "@storybook/theming" "6.5.7" core-js "^3.8.2" estraverse "^5.2.0" loader-utils "^2.0.0" @@ -1374,35 +1374,35 @@ react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" -"@storybook/addons@6.5.6", "@storybook/addons@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.6.tgz#ed7ab72ac3a4e2d74e2ba4d10b4a0721d66cd1cd" - integrity sha512-Ktv7Pk4iq+8+6yifXu3bOiC1ii9VXD93mmha7XcrdW+wl8jti9Ll5jLKEN0lAhd+Qupz4R0g9+znpRXk5n0pBg== +"@storybook/addons@6.5.7", "@storybook/addons@^6.4.21": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.7.tgz#1c7256f696fb572f7c3c7ccbcb94988372b95cee" + integrity sha512-tUZ2c1uegUcwY31ztNQZGU/HUwAEEGIR8fEOvvO8S0TNQGoo6cwFtZmWBh3mTSRGcmzK2SNBjFHZua5Ee9TefA== dependencies: - "@storybook/api" "6.5.6" - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/api" "6.5.7" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.6" - "@storybook/theming" "6.5.6" + "@storybook/router" "6.5.7" + "@storybook/theming" "6.5.7" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" global "^4.4.0" regenerator-runtime "^0.13.7" -"@storybook/api@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.6.tgz#7f7c7bc561b3888033eb7074a8c9ecce9f07cb54" - integrity sha512-GHhjb6mji+R+FWytx7MIOKqca49ZXjvnIPpyp5zXAtgdk2Yn2j8C0MRPO1ovh4nHKWVvx6larmhskRxfUjk06g== +"@storybook/api@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.7.tgz#1a5fc381fd417fd1c8ab6e246af09fdcd20f9df0" + integrity sha512-QCNypz4X+lYuFW7EzvRPXMf8uS3gfSIV8sqXtEe5XoMb0HQXhy6AGU7/4iAeuUimtETqLTxq+kOxaSg4uPowxg== dependencies: - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.6" + "@storybook/router" "6.5.7" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.6" + "@storybook/theming" "6.5.7" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1414,28 +1414,28 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.6.tgz#49eb7272402ff185ae12ffc679aef4677c48537d" - integrity sha512-/nACQ5SoddCs1geGUKXrrXiYDvYdTVXWXc0L6mXawjYANBeWIkAKFlhRpoXGN/KiFuuExO2+UgNCKlUyD0a51Q== +"@storybook/builder-webpack4@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.7.tgz#043ad0625eedb39fcd07035cdb252973d3eb6ef9" + integrity sha512-8OB3mZ2L6kQBiAXlkhna/MHREXIPtqXi2AJLT3+bTzBlqkusH+PwMZxWHbcPl1vZrlNQBC40Elx9tdynGkVQ6g== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/channel-postmessage" "6.5.6" - "@storybook/channels" "6.5.6" - "@storybook/client-api" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/core-common" "6.5.6" - "@storybook/core-events" "6.5.6" - "@storybook/node-logger" "6.5.6" - "@storybook/preview-web" "6.5.6" - "@storybook/router" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/channel-postmessage" "6.5.7" + "@storybook/channels" "6.5.7" + "@storybook/client-api" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/core-common" "6.5.7" + "@storybook/core-events" "6.5.7" + "@storybook/node-logger" "6.5.7" + "@storybook/preview-web" "6.5.7" + "@storybook/router" "6.5.7" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.6" - "@storybook/theming" "6.5.6" - "@storybook/ui" "6.5.6" + "@storybook/store" "6.5.7" + "@storybook/theming" "6.5.7" + "@storybook/ui" "6.5.7" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" @@ -1467,51 +1467,51 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.2.2" -"@storybook/channel-postmessage@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.6.tgz#3cfaef29c9ff62321152924de478058fdfd9d812" - integrity sha512-kyYO84hItSE1SaEI1xpMYqJOM3MJ2Y2WHx1Hxu5prq2T2cIgUGURyNf3+5G0BLTf2XGNEN/7YYv9rHmQ9GUz8g== +"@storybook/channel-postmessage@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.7.tgz#7b4ab88e274a9584d5603f37ab7a985f08a3643e" + integrity sha512-X4UPgm4O0503CsSnqAM1ht/6R9ofnoMcqFZxYRu9PSvHlhaFR9V9AU4VjQhakH7alFzRsAhcAV2PFVTAdWhgtA== dependencies: - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" telejson "^6.0.8" -"@storybook/channel-websocket@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.6.tgz#9d31ef139f6d86b29278452e9977a47fd3cc9706" - integrity sha512-d09LfP4zVYCCeuCBn+R41jINUBzhRt78tKk5e1wEsMklV5p+l8Zoi3oJD/UQ/EgtMcnC1dKi3WfAPyx3U/wdgg== +"@storybook/channel-websocket@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.7.tgz#69e274319a995d1bd01b3783586cdefcb56277dc" + integrity sha512-C+l6t3ZgHzU8gL8GJ8c4GMttJglGJIwq1LtJJKnGzx2kJCD0HRMMqc/qFS2K2EwP99hLwwGIlCpom3UZ1aEanA== dependencies: - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" core-js "^3.8.2" global "^4.4.0" telejson "^6.0.8" -"@storybook/channels@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.6.tgz#a373127f0dd841dabfc31607e5cdac6245444b6c" - integrity sha512-rS0Dk9fSiMBsPvkiMo9CuvDCoXbGmYKiX/juS3F4u+sedhH+XtH4jFf49lJWoNVAE6eJPFyXATU4p1mm8Z85kQ== +"@storybook/channels@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.7.tgz#765b02e949f58c4181998c676b155f5c1914bec1" + integrity sha512-v880fWBpWgiWrDmZesTIstNfMZhrPfgXAtLNcL5Z89NAPahsHskOSszc0BDxKN3gb+ZeTKUqHxY57dQdp+1rhg== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.6.tgz#935026e682d41f8f9cd122dccd8a9ae3ebc3b613" - integrity sha512-+PV3eZ0Hr15volHE/ds6pxsoitsHkUuwGMVLUGvX5JuepDlhWOkQzCxPw2BuABJl6x40/w/Pj2DIyTrg37ZThg== +"@storybook/client-api@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.7.tgz#e5d7a5ca698138f4eba36e14d49138850163f252" + integrity sha512-na8NZhB6GnAGp3jRTV9wwue3WGwSZoi5jfxrKSYMPL/s/2n07/soixHggqueBDXuNBrPoJaXbY/nRHmSjLwxtQ== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/channel-postmessage" "6.5.6" - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/channel-postmessage" "6.5.7" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.6" + "@storybook/store" "6.5.7" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" @@ -1526,22 +1526,22 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.6.tgz#6ce56c687dcd7772247ffa3915b44737a62f729c" - integrity sha512-hJzhn5EO0S4fUAZkKzBGNACJfupV9n+7TSIaU4mpVP+/ImS9uPdorAAtyqp5HC6R6vA67POoSgX0+qPgZnWvaw== +"@storybook/client-logger@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.7.tgz#97a607b1d09d32a31091fe286510cf5d3995d2bf" + integrity sha512-ycDy1kXeXRg3djSTXRGMVxc0kvaWw/UhHDs2VGFmOPScsoeWpdbePHXJMFbsqippxuexpsofqTryBwH2b6BPhw== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.6.tgz#83f03967bdd1c509e5d18111b924a8cb0789718a" - integrity sha512-Qh40wMkqWD3ZbGqxqa0pi5JFWazIbcZWbqUakH9zARgLk+LBrpJvPuu7GmQrDUtJTA33H4tD/4ujt6AibnaQwQ== +"@storybook/components@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.7.tgz#28a509c0556f8df919c8c7f7076ca6785b22cb8d" + integrity sha512-xSOaOK8q6bXYkmN4LZKucvXU2HRHqKwwTafFDh5yzsCSEB2VQIJlyo4ePVyv/GJgBUX6+WdSA7c5r5ePXK6IYQ== dependencies: - "@storybook/client-logger" "6.5.6" + "@storybook/client-logger" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.6" + "@storybook/theming" "6.5.7" "@types/react-syntax-highlighter" "11.0.5" core-js "^3.8.2" qs "^6.10.0" @@ -1549,21 +1549,21 @@ regenerator-runtime "^0.13.7" util-deprecate "^1.0.2" -"@storybook/core-client@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.6.tgz#d09d144745c6d8a24dd002ae60ffa9b0c500ae54" - integrity sha512-Xmjt95GYYVRp7ra49Y955BLH/FYlOmuLC4aFTGurjmCay7zUqvExxFk9AUKOkyBb1/S/8iQCG59D0ES6YWoMRw== +"@storybook/core-client@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.7.tgz#556a38330c89adfacf5151cda0b5c32e24499737" + integrity sha512-GL7m33tpEyornhfnTddbvDuLkA9EMe1zKv9oZGsUYo78cWRTiEibYyHegIi9/ThplRXvpFR/5uHY4Zx5Z5rxJg== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/channel-postmessage" "6.5.6" - "@storybook/channel-websocket" "6.5.6" - "@storybook/client-api" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/channel-postmessage" "6.5.7" + "@storybook/channel-websocket" "6.5.7" + "@storybook/client-api" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/preview-web" "6.5.6" - "@storybook/store" "6.5.6" - "@storybook/ui" "6.5.6" + "@storybook/preview-web" "6.5.7" + "@storybook/store" "6.5.7" + "@storybook/ui" "6.5.7" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -1575,10 +1575,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.6.tgz#12c717f2fb9cad77b38e122fb89c15566130798a" - integrity sha512-+k+D9CzyFHNAy59jt2sfKnb/KU/nXO1hvBVaJAhdocjrDMvHtwYuXWWQrWYX3/VGp9wCa9TC0JG1kz+DWSYXaQ== +"@storybook/core-common@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.7.tgz#69519d02b48c719fba734b38bb6a4419abc77a4b" + integrity sha512-/b1oQlmhek8tKDu9ky2O1oEk9g2giAPpl192yRz4lIxap5CFJ7RCfgbkq+F3JBXnH2P84BufC0x3dj4jvBhxCw== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -1602,7 +1602,7 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.5.6" + "@storybook/node-logger" "6.5.7" "@storybook/semver" "^7.3.2" "@types/node" "^14.0.10 || ^16.0.0" "@types/pretty-hrtime" "^1.0.0" @@ -1631,30 +1631,30 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.6.tgz#b4e9150216810621ba00d8d1eb3f9414493d6e61" - integrity sha512-bzktgM1i0QPrayH1ANbKb7nYpehSpi5QHWps2vVQbvtpI/pGlTtpde1e87vfAt74Bvsvd3/9IpQkQKteDODAkA== +"@storybook/core-events@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.7.tgz#a533f3a57e495a1660c82c5d6164ca464bf4a2b2" + integrity sha512-epqYy67Ypry5QdCt7FpN57/X9uuS7R2+DLFORZIpL/SJG1dIdN4POQ1icWOhPzHl+eiSgaV7e2oPaUsN+LPhJQ== dependencies: core-js "^3.8.2" -"@storybook/core-server@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.6.tgz#4fe464847297117089900d5f9cc9acc08d638723" - integrity sha512-65kwbSXsKPl/0BKjGr9RTihv6jYGGIG/prfLscZPtm3u4/Z8ZxCX94rznztxcUatjLlUfKJ8iimizhUOIa0FJA== +"@storybook/core-server@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.7.tgz#3e849045617a3bc0cfa0091fc3952c150114428e" + integrity sha512-CGwFZ5kmKaCS/+tcrAbqQu4Owq86wXkWRapJB55S8AlUsf3c9gEC8a3+Ed9tZUlmjSH56CnDDfmt7AleToaQ9w== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.5.6" - "@storybook/core-client" "6.5.6" - "@storybook/core-common" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/builder-webpack4" "6.5.7" + "@storybook/core-client" "6.5.7" + "@storybook/core-common" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/csf-tools" "6.5.6" - "@storybook/manager-webpack4" "6.5.6" - "@storybook/node-logger" "6.5.6" + "@storybook/csf-tools" "6.5.7" + "@storybook/manager-webpack4" "6.5.7" + "@storybook/node-logger" "6.5.7" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.6" - "@storybook/telemetry" "6.5.6" + "@storybook/store" "6.5.7" + "@storybook/telemetry" "6.5.7" "@types/node" "^14.0.10 || ^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" @@ -1689,18 +1689,18 @@ ws "^8.2.3" x-default-browser "^0.4.0" -"@storybook/core@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.6.tgz#bc1792154ea010500950f0d43c78ae554ea4f9ec" - integrity sha512-DS6Q8SrEXBDoDS2K865NoWggSXEg8L9p+jx8sILLkLrr2QXJT0x6YIFSwEh6rGwkahxDV5ikON/rW39Wlxzk1w== +"@storybook/core@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.7.tgz#8db00f6af1c869574fa996c427faff74335c2325" + integrity sha512-YSu2qur1E5y9rjVspchtCfupPT3y1XyjBInhwzo8jC3rvm2WY0RS80VQU3dga4QBllO1M+cDmLzmOEPL82+Juw== dependencies: - "@storybook/core-client" "6.5.6" - "@storybook/core-server" "6.5.6" + "@storybook/core-client" "6.5.7" + "@storybook/core-server" "6.5.7" -"@storybook/csf-tools@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.6.tgz#147ced43313ee217c41b00d5fe32a80cb29b03bd" - integrity sha512-Gfah+5mEUoVG7v+E23svRjKAh546KCPIcwAvGU3m26j3hNbpvKq8edKDr+CCMfehG8VEGSZWfZPsgX04c/ItcA== +"@storybook/csf-tools@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.7.tgz#93780a2eee892c1c92f33a0be1d3fd52cda770ce" + integrity sha512-/vBaknzD8c7H/Zsz0gwhmlNlMwe5slZwXadi6rAQXDkKLzaR1kmz4cQFs8yDR1wWpXaGjNvQxOUAGYjFoGQxzA== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -1724,33 +1724,33 @@ dependencies: lodash "^4.17.15" -"@storybook/docs-tools@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.6.tgz#cf27e06ce25c55327048662f833628d2e329a140" - integrity sha512-QwOFWVzce4m5fQaC39rSUBVzNplpcSfGyIN3rBBen4wHllj43y7i30A69jSW24M15CKdcJmfDaLwN00s7y3ZHQ== +"@storybook/docs-tools@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.7.tgz#6ade71e90a84fbb92be708dc019adf7e7894724a" + integrity sha512-Aw9uUsqeuw0Z9fpiwxrstMNjNGB9s1Tm57SpMF8ibjLYBYFf5Apz5CwDX7bm6YFtCweaawx4MeQta8qnQMWCFw== dependencies: "@babel/core" "^7.12.10" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.6" + "@storybook/store" "6.5.7" core-js "^3.8.2" doctrine "^3.0.0" lodash "^4.17.21" regenerator-runtime "^0.13.7" -"@storybook/manager-webpack4@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.6.tgz#3a356ee52cb972533a98e4da426bc6cc3b8abaf3" - integrity sha512-GaUT1bNmGebq8Ci52M07XF0Zn9Ak7L8ZaKn8rdBJ4VSPhg0vEAeo7trD3aur3+h/3gLQmK64LhiNSOfvZfQDAw== +"@storybook/manager-webpack4@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.7.tgz#9e851022241f8b472da3c2b27d24b1f2c0085151" + integrity sha512-RmGsr/6PNsafaSm8aTD7e2VXSKT8BQ6Hkg6TAArLoS2TpIUvrNuM2hEqOHzm2POcApC+OE/HN1H0GiXBkH533Q== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.6" - "@storybook/core-client" "6.5.6" - "@storybook/core-common" "6.5.6" - "@storybook/node-logger" "6.5.6" - "@storybook/theming" "6.5.6" - "@storybook/ui" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/core-client" "6.5.7" + "@storybook/core-common" "6.5.7" + "@storybook/node-logger" "6.5.7" + "@storybook/theming" "6.5.7" + "@storybook/ui" "6.5.7" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" babel-loader "^8.0.0" @@ -1795,10 +1795,10 @@ prettier ">=2.2.1 <=2.3.0" ts-dedent "^2.0.0" -"@storybook/node-logger@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.6.tgz#24422886f894978b10c2e23feb6bf0657f5e514f" - integrity sha512-bT0R0skDWW9iJS8AIG9zfSF8XzTffdc8hRlpXUF9+VQKds+8H9FyoV4tl8ySCuNNunt8Ic9GvW3Fakq49FUcgw== +"@storybook/node-logger@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.7.tgz#a31d91be3cd9d9f033d340b1dc2b8e1c0de61cb6" + integrity sha512-OrHu5p2E5i7P2v2hQAOtZw6Od1e2nrP6L7w5SxUPgccUnKUD9dRX5Y8qbAcPZO3XCkMLjpjAbC1xBXG0eFkn9g== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -1806,17 +1806,17 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/preview-web@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.6.tgz#d4cf4a90a27819aa3315b48b21df6a515bb49b7a" - integrity sha512-fjWfe1ZqtMMS3UFiL6XDYVR0T5QVhXIp/Ax19tuW2VJ/NL/zl4+c9v9lx5jSY5iD5tKwYYRrbH8VS2Pm/CNAzA== +"@storybook/preview-web@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.7.tgz#1eb8e11756896390345a17bafe411146c2066a48" + integrity sha512-EH8gdl334D8EDVL1VJjRURcUou5Sv6BwgismL4E6wjSFmWxL9egxYDnGJJEh3mjIkAtGb0zpksYn/VNWPA8c8A== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/channel-postmessage" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/channel-postmessage" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.6" + "@storybook/store" "6.5.7" ansi-to-html "^0.6.11" core-js "^3.8.2" global "^4.4.0" @@ -1842,23 +1842,23 @@ tslib "^2.0.0" "@storybook/react@^6.4.21": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.6.tgz#9b7ddc678790a8af100c26b8d47c332bc6f4fc84" - integrity sha512-lU2ggvZe9PbKWK4cbwHI6eDT7tlRAqdx489kLrfKhGTUVE8zhc/uosVEMpxbxS/zf1YYnXumr2DH1Uw2S3JeqA== + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.7.tgz#70224ddd150f31fc1cb0e2f7bf9ba56657f38644" + integrity sha512-jMY1vk1WL1otEODl5BxD1kSh5Eqg+SvZW5CJ7sS6q53i3teOhaGhugvuSTuV9lnBzLOZu8atIdFL0ewdOkpwsg== dependencies: "@babel/preset-flow" "^7.12.1" "@babel/preset-react" "^7.12.10" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" - "@storybook/addons" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core" "6.5.6" - "@storybook/core-common" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core" "6.5.7" + "@storybook/core-common" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.6" - "@storybook/node-logger" "6.5.6" + "@storybook/docs-tools" "6.5.7" + "@storybook/node-logger" "6.5.7" "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.6" + "@storybook/store" "6.5.7" "@types/estree" "^0.0.51" "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" @@ -1882,12 +1882,12 @@ util-deprecate "^1.0.2" webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.6.tgz#83b442635c5a32a0eb0b4cd3f2da8b7cbecc32e7" - integrity sha512-SL9X/+bkJxafH5V9r65liMgs+EvGddMCQ/4JP/p3GIu6+2G3pW613Ww5sqCBCB1R4zoYcsMT7F1q/D5NWByVHg== +"@storybook/router@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.7.tgz#3d962cbf5d9e9779d8dbd33a20d0210feb982635" + integrity sha512-edWEdAb8O0rSgdXoBZDDuNlQg2cOmC/nJ6gXj9zBotzmXqsbxWyjKGooG1dU6dnKshUqE1RmWF7/N1WMluLf0A== dependencies: - "@storybook/client-logger" "6.5.6" + "@storybook/client-logger" "6.5.7" core-js "^3.8.2" regenerator-runtime "^0.13.7" @@ -1899,13 +1899,13 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.6.tgz#e20c6a827c2021bbbab05d0bb2c1e6fb66e133a9" - integrity sha512-KsV9DU3JucYjWHq55f1bOu52mprgSpTIRUnvK2BojQdjY+kqN2ow0pP/I9FZzNpEKKsGFWdnREfYM5dYHZyvLw== +"@storybook/source-loader@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.7.tgz#c77ae805e02ce83975558973fe46b7366f810fb1" + integrity sha512-nj24TSGdF9J1gD5Fj9Z2hPRAQwqBJoBKD/fmTSFZop0qaJOOyeuxZR5022dQh8UWWoBa3WOQADMTNi5RqQZkiA== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/client-logger" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/client-logger" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" estraverse "^5.2.0" @@ -1915,14 +1915,14 @@ prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" -"@storybook/store@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.6.tgz#0250d92f10d9590f4df2f7e6e11a07103055c350" - integrity sha512-ftU40jN5IV26Mj4QjqgsooWFYXDNtcwByH9JrbIlZv7L8HySqVHqeOMrk2Bbt2EkM3urhc5yd0Bbr8EuKlbZVQ== +"@storybook/store@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.7.tgz#7f5220f76f72ed2ad38b3e0799ed51dc366ee496" + integrity sha512-d64towcdylC6TXNL2oJklCpwN3XcUGgZzQ9zgoV8BUlOlsj9tNq8eo95uzTURnLg1Q5uHoDDKWuXrrKj03HHxw== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/core-events" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/core-events" "6.5.7" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -1936,13 +1936,13 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/telemetry@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.6.tgz#a7da1fa0019b307ceac24e65ff1e14ee0f36a8a5" - integrity sha512-l0vbStCgVA9u0ITvowZ1LNxmf32vAAdnPqSmB9DdA3ZO2wCpttW9rPyg1O4OV8c5uq7QJZ7mrKZ04p9SLo8wrw== +"@storybook/telemetry@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.7.tgz#744050ec84b8d8effeab448b9b2e190951a2e070" + integrity sha512-RHrjAConMqGIsu1TgNXztWtWOXTvvCHDWyGoLagCgZYgjGJ4sukp+ZtrbkayNDkkWWD0lpMzsdDEYCJuru/Sig== dependencies: - "@storybook/client-logger" "6.5.6" - "@storybook/core-common" "6.5.6" + "@storybook/client-logger" "6.5.7" + "@storybook/core-common" "6.5.7" chalk "^4.1.0" core-js "^3.8.2" detect-package-manager "^2.0.1" @@ -1954,29 +1954,29 @@ read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.6.tgz#519e1675a7ff5c780f5a41b05b4b679c37b62fe8" - integrity sha512-JEKl9gdVD2Ef9xSwRtaq6EpjJD5xe7X2OP/4e61ucrp/rSOk7SOpYUZYQh6PhYLGhnGbgQkedVVc9CUhK8bs6Q== +"@storybook/theming@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.7.tgz#63afa3838a9c1ba07d443ce6988f6ed99af62b75" + integrity sha512-6zp1V84DSBcS8BtFOCJlF2/nIonjQmr+dILPxaM3lCm/X003i2jAQrBKTfPlmzCeDn07PBhzHaRJ3wJskfmeNw== dependencies: - "@storybook/client-logger" "6.5.6" + "@storybook/client-logger" "6.5.7" core-js "^3.8.2" regenerator-runtime "^0.13.7" -"@storybook/ui@6.5.6": - version "6.5.6" - resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.6.tgz#3b312728c11d1bdba9cac41d18d91b6806496028" - integrity sha512-EU/YGczcA/v7jHlXIJ7CytK+FH2X9tlsjQbcQW8niPkwtk/gvG7vTfNhanbDlWMKnDLuFWhyHJ33nrW2mIyqkw== +"@storybook/ui@6.5.7": + version "6.5.7" + resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.7.tgz#d4814c88bd1ca4781891611c2c1fbb23e221d95a" + integrity sha512-NOg44bc/w7FweuM2fa99PxsgI9qoG2p5vhTQ4MOI/7QnOUDn+EenlapsRos+/Sk2XTaB2QmM43boUkravMSouA== dependencies: - "@storybook/addons" "6.5.6" - "@storybook/api" "6.5.6" - "@storybook/channels" "6.5.6" - "@storybook/client-logger" "6.5.6" - "@storybook/components" "6.5.6" - "@storybook/core-events" "6.5.6" - "@storybook/router" "6.5.6" + "@storybook/addons" "6.5.7" + "@storybook/api" "6.5.7" + "@storybook/channels" "6.5.7" + "@storybook/client-logger" "6.5.7" + "@storybook/components" "6.5.7" + "@storybook/core-events" "6.5.7" + "@storybook/router" "6.5.7" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.6" + "@storybook/theming" "6.5.7" core-js "^3.8.2" regenerator-runtime "^0.13.7" resolve-from "^5.0.0" @@ -2070,9 +2070,9 @@ form-data "^3.0.0" "@types/node@*": - version "17.0.38" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.38.tgz#f8bb07c371ccb1903f3752872c89f44006132947" - integrity sha512-5jY9RhV7c0Z4Jy09G+NIDTsCZ5G0L5n+Z+p+Y7t5VJHM30bgwzSjVtlcBxqAj+6L/swIlvtOSzr8rBk/aNyV2g== + version "17.0.40" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090" + integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg== "@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": version "16.11.38" @@ -2122,9 +2122,9 @@ "@types/react" "*" "@types/react@*": - version "18.0.10" - resolved "https://registry.npmjs.org/@types/react/-/react-18.0.10.tgz#5692944d4a45e204fb7a981eb1388afe919cf4d0" - integrity sha512-dIugadZuIPrRzvIEevIu7A1smqOAjkSMv8qOfwPt9Ve6i6JT/FQcCHyk2qIAxwsQNKZt5/oGR0T4z9h2dXRAkg== + version "18.0.12" + resolved "https://registry.npmjs.org/@types/react/-/react-18.0.12.tgz#cdaa209d0a542b3fcf69cf31a03976ec4cdd8840" + integrity sha512-duF1OTASSBQtcigUvhuiTB1Ya3OvSy+xORCiEf20H0P0lzx+/KeVsA99U5UjLXSbyo1DRJDlLKqTeM1ngosqtg== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -4083,9 +4083,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.118: - version "1.4.144" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.144.tgz#9a5d1f41452ecc65b686d529ae919248da44f406" - integrity sha512-R3RV3rU1xWwFJlSClVWDvARaOk6VUO/FubHLodIASDB3Mc2dzuWvNdfOgH9bwHUTqT79u92qw60NWfwUdzAqdg== + version "1.4.146" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.146.tgz#fd20970c3def2f9e6b32ac13a2e7a6b64e1b0c48" + integrity sha512-4eWebzDLd+hYLm4csbyMU2EbBnqhwl8Oe9eF/7CBDPWcRxFmqzx4izxvHH+lofQxzieg8UbB8ZuzNTxeukzfTg== element-resize-detector@^1.2.2: version "1.2.4" @@ -4175,11 +4175,11 @@ error-ex@^1.2.0, error-ex@^1.3.1: is-arrayish "^0.2.1" error-stack-parser@^2.0.6: - version "2.0.7" - resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.7.tgz#b0c6e2ce27d0495cf78ad98715e0cad1219abb57" - integrity sha512-chLOW0ZGRf4s8raLrDxa5sdkvPec5YdvwbFnqJme4rk0rFajP8mPtrDL1+I+CwrQDCjswDA5sREX7jYQDQs9vA== + version "2.1.3" + resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.3.tgz#ab877c676540507dbe6429974ea66833ae68b7cb" + integrity sha512-F9KypcaAvLzI4yXneZzOvzZoqakhbjuAGFK0aLy33tYaDqdu6v+lzrN/TTG/mM48Op624zZZ2RpXRx3wA0+zmg== dependencies: - stackframe "^1.1.1" + stackframe "^1.3.4" es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5, es-abstract@^1.20.1: version "1.20.1" @@ -8121,9 +8121,9 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + version "0.7.4" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== space-separated-tokens@^1.0.0: version "1.1.5" @@ -8182,10 +8182,10 @@ stable@^0.1.8: resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -stackframe@^1.1.1: - version "1.2.1" - resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.2.1.tgz#1033a3473ee67f08e2f2fc8eba6aef4f845124e1" - integrity sha512-h88QkzREN/hy8eRdyNhhsO7RSJ5oyTqxxmmn0dzBIMUclZsjpfmrsg81vp8mjjAs2vAZ72nyWxRUwSwmh0e4xg== +stackframe@^1.3.4: + version "1.3.4" + resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" + integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== state-toggle@^1.0.0: version "1.0.3" @@ -8703,9 +8703,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= uglify-js@^3.1.4: - version "3.15.5" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.5.tgz#2b10f9e0bfb3f5c15a8e8404393b6361eaeb33b3" - integrity sha512-hNM5q5GbBRB5xB+PMqVRcgYe4c8jbyZ1pzZhS6jbq54/4F2gFK869ZheiE5A8/t+W5jtTNpWef/5Q9zk639FNQ== + version "3.16.0" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.0.tgz#b778ba0831ca102c1d8ecbdec2d2bdfcc7353190" + integrity sha512-FEikl6bR30n0T3amyBh3LoiBdqHRy/f4H80+My34HOesOKyHfOsxAPAxOoqC0JUnC1amnO0IwkYC3sko51caSw== unbox-primitive@^1.0.2: version "1.0.2" @@ -9027,9 +9027,9 @@ watchpack@^1.7.4: watchpack-chokidar2 "^2.0.1" watchpack@^2.2.0, watchpack@^2.3.1: - version "2.3.1" - resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25" - integrity sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA== + version "2.4.0" + resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" + integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== dependencies: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" @@ -9128,9 +9128,9 @@ webpack@4: webpack-sources "^1.4.1" "webpack@>=4.43.0 <6.0.0": - version "5.72.1" - resolved "https://registry.npmjs.org/webpack/-/webpack-5.72.1.tgz#3500fc834b4e9ba573b9f430b2c0a61e1bb57d13" - integrity sha512-dXG5zXCLspQR4krZVR6QgajnZOjW2K/djHvdcRaDQvsjV9z9vaW6+ja5dZOYbqBBjF6kGXka/2ZyxNdc+8Jung== + version "5.73.0" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz#bbd17738f8a53ee5760ea2f59dce7f3431d35d38" + integrity sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA== dependencies: "@types/eslint-scope" "^3.7.3" "@types/estree" "^0.0.51" From f5ba358d8ecb408a5728524e9baf62343d73241f Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Mon, 6 Jun 2022 17:55:57 +0000 Subject: [PATCH 187/550] fix(deps): update dependency eslint-plugin-jest to v26.5.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a9e132e185..e9c30969af 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11966,9 +11966,9 @@ eslint-plugin-import@^2.25.4: tsconfig-paths "^3.14.1" eslint-plugin-jest@^26.1.2: - version "26.5.1" - resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.5.1.tgz#a6b4cbd6884c1b5dcbe6afc0f43dde9afba29229" - integrity sha512-IUEw6DCJ7qPGffK2pc6ly3L+1HBXdT673pY5nson8Mu4Vwgc/8d4Hf8NhsZwkuspPdi/QMj83ugXND7OLTu6Bg== + version "26.5.3" + resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.5.3.tgz#a3ceeaf4a757878342b8b00eca92379b246e5505" + integrity sha512-sICclUqJQnR1bFRZGLN2jnSVsYOsmPYYnroGCIMVSvTS3y8XR3yjzy1EcTQmk6typ5pRgyIWzbjqxK6cZHEZuQ== dependencies: "@typescript-eslint/utils" "^5.10.0" From ee1bb5afd1e4ed9e4481f837ac1efce51148948d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Mon, 6 Jun 2022 18:58:55 +0000 Subject: [PATCH 188/550] fix(deps): update dependency dockerode to v3.3.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e9c30969af..d772972ab4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11223,9 +11223,9 @@ docker-modem@^3.0.0: ssh2 "^1.4.0" dockerode@^3.3.1: - version "3.3.1" - resolved "https://registry.npmjs.org/dockerode/-/dockerode-3.3.1.tgz#74f66e239e092e7910e2beae6322d35c44b08cdc" - integrity sha512-AS2mr8Lp122aa5n6d99HkuTNdRV1wkkhHwBdcnY6V0+28D3DSYwhxAk85/mM9XwD3RMliTxyr63iuvn5ZblFYQ== + version "3.3.2" + resolved "https://registry.npmjs.org/dockerode/-/dockerode-3.3.2.tgz#f3545700d2f7f86141b58843a755eeb21e38d5cd" + integrity sha512-oXN+1XVH2TeyE0Jj9Ci6Fim8ZIDxyqeJrkx9qhEOaRiA+nhLihKfd3M2L+Aqrj5C2ObPw8RVN2zPWvvk0x2dwg== dependencies: docker-modem "^3.0.0" tar-fs "~2.0.1" From 539946e0eed8c0754832c0ee58e951c758b71a6c Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Mon, 6 Jun 2022 19:59:36 +0000 Subject: [PATCH 189/550] fix(deps): update dependency graphiql to v1.9.6 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index d772972ab4..5c93d38c4f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2271,10 +2271,10 @@ uuid "^8.0.0" xdg-basedir "^4.0.0" -"@graphiql/react@^0.3.0": - version "0.3.0" - resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.3.0.tgz#3e5100b977a15020514350a6cbd9440a3430e73a" - integrity sha512-XA+khix70FM5yQ0l0xTHC1y2LZ2v/mYWQAhxKo9+5mGfIiMtuo2hEEdJeQvX03CGfIIDjZHD6KOzQNO4LTLqxA== +"@graphiql/react@^0.4.0": + version "0.4.0" + resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.4.0.tgz#55099632c29be0c49f1251904b74cbfd2d31993b" + integrity sha512-9OtwzJ3EaDgD5Qi+WtnHA8Wv0XL9l+W4n3jtNR+wFDjC2vvbEd/grPm0eSikryVcq/0q6aR4HyR3SuKj6tKPYg== dependencies: "@graphiql/toolkit" "^0.6.0" codemirror "^5.65.3" @@ -13692,11 +13692,11 @@ grapheme-splitter@^1.0.4: integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== graphiql@^1.5.12, graphiql@^1.8.8: - version "1.9.5" - resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.5.tgz#586e9ec62a7952726481458dfc7f9164a4d9cc2d" - integrity sha512-maX8AQ4ww2hxo0Jrbyi3xtwmm4Th6kx2sEfnusN+r8gm0QsmMc+0VZ/HwMXEAzMj0ckNmv0mMz9tBBJVp4FQ4A== + version "1.9.6" + resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.6.tgz#ab1714a0200bdcf358761d7e9625de41fe06a98c" + integrity sha512-HxKM2cu6SQUi8x1QqZc/GkLBnyjZerPOKmiBfsZmIWYLtZTJTd4dezeraD2klB80FkYKgPVPbojGLofuLq8w3w== dependencies: - "@graphiql/react" "^0.3.0" + "@graphiql/react" "^0.4.0" "@graphiql/toolkit" "^0.6.0" entities "^2.0.0" graphql-language-service "^5.0.4" From e6433b7dcd9ffada7c3518c6f1ff639ee2490b02 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Mon, 6 Jun 2022 20:45:58 +0000 Subject: [PATCH 190/550] chore(deps): update dependency cypress to v10.0.3 Signed-off-by: Renovate Bot --- cypress/yarn.lock | 116 +++++++++++++++++++++++----------------------- yarn.lock | 6 +-- 2 files changed, 61 insertions(+), 61 deletions(-) diff --git a/cypress/yarn.lock b/cypress/yarn.lock index 81a4260299..53f61fd113 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -40,14 +40,14 @@ lodash.once "^4.1.1" "@types/node@*": - version "17.0.25" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.25.tgz#527051f3c2f77aa52e5dc74e45a3da5fb2301448" - integrity sha512-wANk6fBrUwdpY4isjWrKTufkrXdu1D2YHCot2fD/DfWxF5sMrVSA+KN7ydckvaTCh0HiqX9IVl0L5/ZoXg5M7w== + version "17.0.40" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090" + integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg== "@types/node@^14.14.31": - version "14.18.13" - resolved "https://registry.npmjs.org/@types/node/-/node-14.18.13.tgz#6ad4d9db59e6b3faf98dcfe4ca9d2aec84443277" - integrity sha512-Z6/KzgyWOga3pJNS42A+zayjhPbf2zM3hegRQaOPnLOzEi86VV++6FLDWgR1LGrVCRufP/ph2daa3tEa5br1zA== + version "14.18.20" + resolved "https://registry.npmjs.org/@types/node/-/node-14.18.20.tgz#268f028b36eaf51181c3300252f605488c4f0650" + integrity sha512-Q8KKwm9YqEmUBRsqJ2GWJDtXltBDxTdC4m5vTdXBolu2PeQh8LX+f6BTwU+OuXPu37fLxoN6gidqBmnky36FXA== "@types/sinonjs__fake-timers@8.1.1": version "8.1.1" @@ -75,9 +75,9 @@ aggregate-error@^3.0.0: indent-string "^4.0.0" ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + version "4.1.3" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^4.3.0: version "4.3.2" @@ -113,7 +113,7 @@ asn1@~0.2.3: assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== astral-regex@^2.0.0: version "2.0.0" @@ -128,7 +128,7 @@ async@^3.2.0: asynckit@^0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== at-least-node@^1.0.0: version "1.0.0" @@ -138,7 +138,7 @@ at-least-node@^1.0.0: aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== aws4@^1.8.0: version "1.11.0" @@ -158,7 +158,7 @@ base64-js@^1.3.1: bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" @@ -183,7 +183,7 @@ brace-expansion@^1.1.7: buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== buffer@^5.6.0: version "5.7.1" @@ -201,7 +201,7 @@ cachedir@^2.3.0: caseless@~0.12.0: version "0.12.0" resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== chalk@^4.1.0: version "4.1.2" @@ -214,12 +214,12 @@ chalk@^4.1.0: check-more-types@^2.24.0: version "2.24.0" resolved "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" - integrity sha1-FCD/sQ/URNz8ebQ4kbv//TKoRgA= + integrity sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA== ci-info@^3.2.0: - version "3.3.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" - integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== + version "3.3.1" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.1.tgz#58331f6f472a25fe3a50a351ae3052936c2c7f32" + integrity sha512-SXgeMX9VwDe7iFFaEWkA5AstuER9YKqy4EhHqr4DVqkwmD9rpVimkMKWHdjn30Ja45txyjhSn63lVX69eVCckg== clean-stack@^2.0.0: version "2.2.0" @@ -263,9 +263,9 @@ color-name@~1.1.4: integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== colorette@^2.0.16: - version "2.0.16" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" - integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== + version "2.0.17" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.17.tgz#5dd4c0d15e2984b7433cb4a9f2ead45063b80c47" + integrity sha512-hJo+3Bkn0NCHybn9Tu35fIeoOKGOk5OCC32y4Hz2It+qlCO2Q3DeQ1hRn/tDDMQKRYUEzqsl7jbF6dYKjlE60g== combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" @@ -287,12 +287,12 @@ common-tags@^1.8.0: concat-map@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== core-util-is@1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== cross-spawn@^7.0.0: version "7.0.3" @@ -304,9 +304,9 @@ cross-spawn@^7.0.0: which "^2.0.1" cypress@^10.0.0: - version "10.0.2" - resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.2.tgz#6aeac1923d534f9850d57dad9496f9ea74034a23" - integrity sha512-7+C4KHYBcfZrawss+Gt5PlS35rfc6ySc59JcHDVsIMm1E/J35dqE41UEXpdtwIq3549umCerNWnFADzqib4kcA== + version "10.0.3" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.3.tgz#889b4bef863b7d1ef1b608b85b964394ad350c5f" + integrity sha512-8C82XTybsEmJC9POYSNITGUhMLCRwB9LadP0x33H+52QVoBjhsWvIzrI+ybCe0+TyxaF0D5/9IL2kSTgjqCB9A== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" @@ -354,14 +354,14 @@ cypress@^10.0.0: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== dependencies: assert-plus "^1.0.0" dayjs@^1.10.4: - version "1.11.1" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.1.tgz#90b33a3dda3417258d48ad2771b415def6545eb0" - integrity sha512-ER7EjqVAMkRRsxNCC5YqJ9d9VQYuWdGt7aiH2qA5R5wt8ZmWaP2dLUSIK6y/kVzLMlmh1Tvu5xUf4M/wdGJ5KA== + version "1.11.3" + resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.3.tgz#4754eb694a624057b9ad2224b67b15d552589258" + integrity sha512-xxwlswWOlGhzgQ4TKzASQkUhqERI3egRNqgV4ScR8wlANA/A9tZ7miXa44vTTKEq5l7vWoL5G57bG3zA+Kow0A== debug@^3.1.0: version "3.2.7" @@ -380,12 +380,12 @@ debug@^4.1.1, debug@^4.3.2: delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" @@ -412,7 +412,7 @@ enquirer@^2.3.6: escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== eventemitter2@^6.4.3: version "6.4.5" @@ -460,7 +460,7 @@ extract-zip@2.0.1: extsprintf@1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== extsprintf@^1.2.0: version "1.4.1" @@ -470,7 +470,7 @@ extsprintf@^1.2.0: fd-slicer@~1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" - integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4= + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== dependencies: pend "~1.2.0" @@ -484,7 +484,7 @@ figures@^3.2.0: forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== form-data@~2.3.2: version "2.3.3" @@ -508,7 +508,7 @@ fs-extra@^9.1.0: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== get-stream@^5.0.0, get-stream@^5.1.0: version "5.2.0" @@ -527,19 +527,19 @@ getos@^3.2.1: getpass@^0.1.1: version "0.1.7" resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== dependencies: assert-plus "^1.0.0" glob@^7.1.3: - version "7.2.0" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== + version "7.2.3" + resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^3.1.1" once "^1.3.0" path-is-absolute "^1.0.0" @@ -587,7 +587,7 @@ indent-string@^4.0.0: inflight@^1.0.4: version "1.0.6" resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" @@ -635,7 +635,7 @@ is-stream@^2.0.0: is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-unicode-supported@^0.1.0: version "0.1.0" @@ -645,17 +645,17 @@ is-unicode-supported@^0.1.0: isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isstream@~0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== jsbn@~0.1.0: version "0.1.1" resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== json-schema@0.4.0: version "0.4.0" @@ -665,7 +665,7 @@ json-schema@0.4.0: json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== jsonfile@^6.0.1: version "6.1.0" @@ -689,7 +689,7 @@ jsprim@^2.0.2: lazy-ass@^1.6.0: version "1.6.0" resolved "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513" - integrity sha1-eZllXoZGwX8In90YfRUNMyTVRRM= + integrity sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw== listr2@^3.8.3: version "3.14.0" @@ -708,7 +708,7 @@ listr2@^3.8.3: lodash.once@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= + integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== lodash@^4.17.21: version "4.17.21" @@ -762,7 +762,7 @@ mimic-fn@^2.1.0: resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimatch@^3.0.4: +minimatch@^3.1.1: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -794,7 +794,7 @@ npm-run-path@^4.0.0: once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" @@ -808,7 +808,7 @@ onetime@^5.1.0: ospath@^1.2.2: version "1.2.2" resolved "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz#1276639774a3f8ef2572f7fe4280e0ea4550c07b" - integrity sha1-EnZjl3Sj+O8lcvf+QoDg6kVQwHs= + integrity sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA== p-map@^4.0.0: version "4.0.0" @@ -820,7 +820,7 @@ p-map@^4.0.0: path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" @@ -830,17 +830,17 @@ path-key@^3.0.0, path-key@^3.1.0: pend@~1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== performance-now@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== pify@^2.2.0: version "2.3.0" resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pretty-bytes@^5.6.0: version "5.6.0" diff --git a/yarn.lock b/yarn.lock index 5c93d38c4f..33907e2310 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10470,9 +10470,9 @@ cypress-plugin-snapshots@^1.4.4: unidiff "1.0.2" cypress@^10.0.0: - version "10.0.2" - resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.2.tgz#6aeac1923d534f9850d57dad9496f9ea74034a23" - integrity sha512-7+C4KHYBcfZrawss+Gt5PlS35rfc6ySc59JcHDVsIMm1E/J35dqE41UEXpdtwIq3549umCerNWnFADzqib4kcA== + version "10.0.3" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.3.tgz#889b4bef863b7d1ef1b608b85b964394ad350c5f" + integrity sha512-8C82XTybsEmJC9POYSNITGUhMLCRwB9LadP0x33H+52QVoBjhsWvIzrI+ybCe0+TyxaF0D5/9IL2kSTgjqCB9A== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" From 35bc0a7c27b717943ea78737ff73c0f2d44a5eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Tue, 7 Jun 2022 09:30:23 +0200 Subject: [PATCH 191/550] update catalog client readme to correctly point to catalog-react MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/ten-suits-prove.md | 5 +++++ packages/catalog-client/README.md | 7 +++---- 2 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 .changeset/ten-suits-prove.md diff --git a/.changeset/ten-suits-prove.md b/.changeset/ten-suits-prove.md new file mode 100644 index 0000000000..a8f648b71e --- /dev/null +++ b/.changeset/ten-suits-prove.md @@ -0,0 +1,5 @@ +--- +'@backstage/catalog-client': patch +--- + +Update README to point to catalog-react for frontend usage diff --git a/packages/catalog-client/README.md b/packages/catalog-client/README.md index 574e23cf62..330c1f3ea1 100644 --- a/packages/catalog-client/README.md +++ b/packages/catalog-client/README.md @@ -5,10 +5,9 @@ Backstage Catalog. Backend code may import and use this package directly. -However, frontend code will not want to import this package directly - use the -`@backstage/plugin-catalog` package instead, which re-exports all of the types -and classes from this package. Thereby, you will also gain access to its -`catalogApiRef`. +However, frontend code will not want to instantiate a catalog client directly - +use the `@backstage/plugin-catalog-react` package instead, which exports a +`catalogApiRef` that can be leveraged like other frontend utility APIs. ## Links From 3a135616dd8b97580edc9b9a01ba26cdc8de51e0 Mon Sep 17 00:00:00 2001 From: Sebastian Spier Date: Tue, 7 Jun 2022 10:02:59 +0200 Subject: [PATCH 192/550] Adding Meltwater to Backstage Adopters Signed-off-by: Sebastian Spier --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 68ecc42767..4c07c247e4 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -155,3 +155,4 @@ _If you're using Backstage in your organization, please try to add your company | [Absa Group Limited](https://www.absa.africa/absaafrica/) | [Chris Kieser](mailto:chris.kieser@absa.africa) | Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more | | [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | | [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. +| [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. From 75f1f7bd45a396787366e8614df4ed4ca6fc00aa Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Fri, 3 Jun 2022 10:14:19 +0200 Subject: [PATCH 193/550] fix: do not send empty timestamp The `last_activity_after` timestamp was being sent as current time when the cache is empty. Now it should not be sent at all and as we assert in the test. Fixes #10399 Signed-off-by: Zee V. (Philip) --- .../src/GitLabDiscoveryProcessor.test.ts | 59 ++++++++++++------- .../src/GitLabDiscoveryProcessor.ts | 26 +++++--- 2 files changed, 55 insertions(+), 30 deletions(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts index 278efe8036..1b52fea7b5 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts @@ -17,7 +17,7 @@ import { getVoidLogger } from '@backstage/backend-common'; import { ConfigReader } from '@backstage/config'; import { LocationSpec } from '@backstage/plugin-catalog-backend'; -import { rest } from 'msw'; +import { rest, RestRequest } from 'msw'; import { setupServer } from 'msw/node'; import { GitLabDiscoveryProcessor, parseUrl } from './GitLabDiscoveryProcessor'; import { GitLabProject } from './lib'; @@ -48,6 +48,7 @@ const GROUP_LOCATION_CUSTOM_BRANCH: LocationSpec = { type: 'gitlab-discovery', target: `${SERVER_URL}/group/subgroup/blob/test/catalog-info.yaml`, }; +const SERVER_TIME = '2001-01-01T12:34:56.000Z'; function setupFakeServer( url: string, @@ -58,9 +59,15 @@ function setupFakeServer( data: GitLabProject[]; nextPage?: number; }, + assertion?: (r: RestRequest) => any, ) { server.use( rest.get(url, (req, res, ctx) => { + // Send the request to the assertion to give the test an opportunity to inspect the parameters. + if (assertion !== undefined) { + assertion(req) + } + if (req.headers.get('private-token') !== 'test-token') { return res(ctx.status(401), ctx.json({})); } @@ -145,7 +152,7 @@ describe('GitlabDiscoveryProcessor', () => { beforeAll(() => { server.listen(); jest.useFakeTimers('modern'); - jest.setSystemTime(new Date('2001-01-01T12:34:56Z')); + jest.setSystemTime(new Date(SERVER_TIME)); }); afterEach(() => server.resetHandlers()); afterAll(() => { @@ -394,33 +401,35 @@ describe('GitlabDiscoveryProcessor', () => { }); it('uses the previous scan timestamp to filter', async () => { + const payload = { + data: [ + { + id: 1, + archived: false, + default_branch: 'main', + last_activity_at: '2000-01-01T00:00:00Z', + web_url: 'https://gitlab.fake/1', + }, + { + id: 2, + archived: false, + default_branch: 'main', + last_activity_at: '2002-01-01T00:00:00Z', + web_url: 'https://gitlab.fake/2', + }, + ], + }; const processor = getProcessor(); setupFakeServer(PROJECTS_URL, request => { switch (request.page) { case 1: - return { - data: [ - { - id: 1, - archived: false, - default_branch: 'main', - last_activity_at: '2000-01-01T00:00:00Z', - web_url: 'https://gitlab.fake/1', - path_with_namespace: '1', - }, - { - id: 2, - archived: false, - default_branch: 'main', - last_activity_at: '2002-01-01T00:00:00Z', - web_url: 'https://gitlab.fake/2', - path_with_namespace: '2', - }, - ], - }; + return payload; default: throw new Error('Invalid request'); } + }, request => { + // We assert that the last activity timestamp is not being sent to the GitLab API as we expect the cache to be empty. + expect(request.url.searchParams.get('last_activity_after')).toBeNull() }); const result: any[] = []; @@ -433,6 +442,12 @@ describe('GitlabDiscoveryProcessor', () => { // Second scan should have used the mocked Date to set the last scanned time to 2001 // This should result in only the second repo being scanned, since that has a timestamp of 2002 + setupFakeServer(PROJECTS_URL, _ => { + return payload; + }, request => { + // We assert that the last activity timestamp is being sent to the GitLab API since we expect it to be in the cache. + expect(request.url.searchParams.get('last_activity_after')).toMatch(SERVER_TIME) + }); const result2: any[] = []; await processor.readLocation(PROJECT_LOCATION, false, e => { result2.push(e); diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 73b8c52358..2c94826b88 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -100,11 +100,22 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { const startTimestamp = Date.now(); this.logger.debug(`Reading GitLab projects from ${location.target}`); - const projects = paginated(options => client.listProjects(options), { + + const opts = { group, - last_activity_after: await this.updateLastActivity(), page: 1, - }); + } as { + group: string + page: number + last_activity_after: string | undefined + } + + const lastActivity = await this.cache.get(this.getCacheKey()) as string; + if (lastActivity !== "") { + opts.last_activity_after = lastActivity + } + + const projects = paginated(options => client.listProjects(options), opts); const res: Result = { scanned: 0, @@ -156,6 +167,8 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { ); } + await this.cache.set(this.getCacheKey(), new Date().toISOString()); + const duration = ((Date.now() - startTimestamp) / 1000).toFixed(1); this.logger.debug( `Read ${res.scanned} GitLab repositories in ${duration} seconds`, @@ -164,11 +177,8 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { return true; } - private async updateLastActivity(): Promise { - const cacheKey = `processors/${this.getProcessorName()}/last-activity`; - const lastActivity = await this.cache.get(cacheKey); - await this.cache.set(cacheKey, new Date().toISOString()); - return lastActivity as string | undefined; + private getCacheKey(): string { + return `processors/${this.getProcessorName()}/last-activity`; } } From 3bf6fa5fa840cb6275bf25e2ead36a13a202151e Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Fri, 3 Jun 2022 10:15:49 +0200 Subject: [PATCH 194/550] chore: run prettier to tidy up Signed-off-by: Zee V. (Philip) --- .../src/GitLabDiscoveryProcessor.test.ts | 51 ++++++++++++------- .../src/GitLabDiscoveryProcessor.ts | 17 +++---- 2 files changed, 40 insertions(+), 28 deletions(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts index 1b52fea7b5..341167f279 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.test.ts @@ -65,9 +65,9 @@ function setupFakeServer( rest.get(url, (req, res, ctx) => { // Send the request to the assertion to give the test an opportunity to inspect the parameters. if (assertion !== undefined) { - assertion(req) + assertion(req); } - + if (req.headers.get('private-token') !== 'test-token') { return res(ctx.status(401), ctx.json({})); } @@ -420,17 +420,24 @@ describe('GitlabDiscoveryProcessor', () => { ], }; const processor = getProcessor(); - setupFakeServer(PROJECTS_URL, request => { - switch (request.page) { - case 1: - return payload; - default: - throw new Error('Invalid request'); - } - }, request => { - // We assert that the last activity timestamp is not being sent to the GitLab API as we expect the cache to be empty. - expect(request.url.searchParams.get('last_activity_after')).toBeNull() - }); + + setupFakeServer( + PROJECTS_URL, + request => { + switch (request.page) { + case 1: + return payload; + default: + throw new Error('Invalid request'); + } + }, + request => { + // We assert that the last activity timestamp is not being sent to the GitLab API as we expect the cache to be empty. + expect( + request.url.searchParams.get('last_activity_after'), + ).toBeNull(); + }, + ); const result: any[] = []; @@ -442,12 +449,18 @@ describe('GitlabDiscoveryProcessor', () => { // Second scan should have used the mocked Date to set the last scanned time to 2001 // This should result in only the second repo being scanned, since that has a timestamp of 2002 - setupFakeServer(PROJECTS_URL, _ => { - return payload; - }, request => { - // We assert that the last activity timestamp is being sent to the GitLab API since we expect it to be in the cache. - expect(request.url.searchParams.get('last_activity_after')).toMatch(SERVER_TIME) - }); + setupFakeServer( + PROJECTS_URL, + _ => { + return payload; + }, + request => { + // We assert that the last activity timestamp is being sent to the GitLab API since we expect it to be in the cache. + expect(request.url.searchParams.get('last_activity_after')).toMatch( + SERVER_TIME, + ); + }, + ); const result2: any[] = []; await processor.readLocation(PROJECT_LOCATION, false, e => { result2.push(e); diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 2c94826b88..8fb6fbe4da 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -100,19 +100,18 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { const startTimestamp = Date.now(); this.logger.debug(`Reading GitLab projects from ${location.target}`); - const opts = { group, page: 1, } as { - group: string - page: number - last_activity_after: string | undefined - } - - const lastActivity = await this.cache.get(this.getCacheKey()) as string; - if (lastActivity !== "") { - opts.last_activity_after = lastActivity + group: string; + page: number; + last_activity_after: string | undefined; + }; + + const lastActivity = (await this.cache.get(this.getCacheKey())) as string; + if (lastActivity !== '') { + opts.last_activity_after = lastActivity; } const projects = paginated(options => client.listProjects(options), opts); From bad907d794ff5c34323f6cfe241bd1de9d071198 Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Tue, 3 May 2022 13:44:01 +0200 Subject: [PATCH 195/550] chore: include a changeset Signed-off-by: Zee V. (Philip) --- .changeset/long-spiders-wave.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/long-spiders-wave.md diff --git a/.changeset/long-spiders-wave.md b/.changeset/long-spiders-wave.md new file mode 100644 index 0000000000..8c836621db --- /dev/null +++ b/.changeset/long-spiders-wave.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': patch +--- + +The `last_activity_after` timestamp is now being omitted when querying the GitLab API for the first time. From 7819f995debfbc71843a4ef831a6e4c4e298cdd0 Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Mon, 16 May 2022 15:53:36 +0200 Subject: [PATCH 196/550] =?UTF-8?q?fix:=20check=20if=20lastActivity=20is?= =?UTF-8?q?=20=E2=80=9Ctruthy=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We do this rather than checking that it’s not an empty string to make sure we capture the case where it might be undefined. Signed-off-by: Zee V. (Philip) --- .../src/GitLabDiscoveryProcessor.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 8fb6fbe4da..7f81683408 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -110,7 +110,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { }; const lastActivity = (await this.cache.get(this.getCacheKey())) as string; - if (lastActivity !== '') { + if (lastActivity) { opts.last_activity_after = lastActivity; } From f8d0c432bb9b003c352c7139aff9c564d5e4edbd Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Fri, 3 Jun 2022 10:09:38 +0200 Subject: [PATCH 197/550] fix: ensure we do not have a race condition We achieve this by setting the start time prior to making the request. Signed-off-by: Zee V. (Philip) --- .../src/GitLabDiscoveryProcessor.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 7f81683408..a23d1f2803 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -84,6 +84,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { return false; } + const startTime = new Date(); const { group, host, branch, catalogPath } = parseUrl(location.target); const integration = this.integrations.gitlab.byUrl(`https://${host}`); @@ -97,7 +98,6 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { config: integration.config, logger: this.logger, }); - const startTimestamp = Date.now(); this.logger.debug(`Reading GitLab projects from ${location.target}`); const opts = { @@ -110,6 +110,8 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { }; const lastActivity = (await this.cache.get(this.getCacheKey())) as string; + // 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. if (lastActivity) { opts.last_activity_after = lastActivity; } @@ -166,9 +168,10 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { ); } - await this.cache.set(this.getCacheKey(), new Date().toISOString()); + // Save an ISO formatted string in the cache as that's what GitLab expects in the API request. + await this.cache.set(this.getCacheKey(), startTime.toISOString()); - const duration = ((Date.now() - startTimestamp) / 1000).toFixed(1); + const duration = ((Date.now() - startTime.getTime()) / 1000).toFixed(1); this.logger.debug( `Read ${res.scanned} GitLab repositories in ${duration} seconds`, ); From 4e2028456654f6b1c9805e5f6a3d8f57b60e7037 Mon Sep 17 00:00:00 2001 From: "Zee V. (Philip)" Date: Tue, 7 Jun 2022 10:34:42 +0200 Subject: [PATCH 198/550] refactor: clean up construction of opts Signed-off-by: Zee V. (Philip) --- .../src/GitLabDiscoveryProcessor.ts | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index a23d1f2803..25240d2d14 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -100,20 +100,13 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { }); this.logger.debug(`Reading GitLab projects from ${location.target}`); + const lastActivity = (await this.cache.get(this.getCacheKey())) as string; const opts = { group, page: 1, - } as { - group: string; - page: number; - last_activity_after: string | undefined; - }; - - const lastActivity = (await this.cache.get(this.getCacheKey())) as string; - // 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. - if (lastActivity) { - opts.last_activity_after = lastActivity; + // 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 }), } const projects = paginated(options => client.listProjects(options), opts); From 09f1256a850fa391653dacbb036a490c447d3116 Mon Sep 17 00:00:00 2001 From: ivgo Date: Mon, 9 May 2022 16:15:22 +0200 Subject: [PATCH 199/550] First implementation of vault-plugin Signed-off-by: ivgo --- .../well-known-annotations.md | 13 + plugins/vault-backend/.eslintrc.js | 1 + plugins/vault-backend/README.md | 140 + plugins/vault-backend/config.d.ts | 41 + plugins/vault-backend/package.json | 63 + plugins/vault-backend/src/index.ts | 19 + plugins/vault-backend/src/run.ts | 33 + .../src/service/VaultBuilder.tsx | 116 + plugins/vault-backend/src/service/router.ts | 33 + .../src/service/runPeriodically.ts | 54 + .../src/service/standaloneApplication.ts | 54 + .../src/service/standaloneServer.ts | 50 + .../vault-backend/src/service/vaultApi.tsx | 131 + plugins/vault-backend/src/setupTests.ts | 17 + plugins/vault/.eslintrc.js | 1 + plugins/vault/README.md | 96 + plugins/vault/dev/index.tsx | 19 + plugins/vault/images/annotation-missing.png | Bin 0 -> 24435 bytes plugins/vault/images/vault-table.png | Bin 0 -> 21276 bytes plugins/vault/package.json | 66 + plugins/vault/src/api.ts | 73 + .../EntityVaultCard/EntityVaultCard.tsx | 75 + .../src/components/EntityVaultCard/index.ts | 16 + .../EntityVaultTable/EntityVaultTable.tsx | 98 + .../src/components/EntityVaultTable/index.tsx | 16 + plugins/vault/src/conditions.ts | 23 + plugins/vault/src/constants.ts | 16 + plugins/vault/src/index.ts | 16 + plugins/vault/src/plugin.test.ts | 22 + plugins/vault/src/plugin.ts | 48 + plugins/vault/src/routes.ts | 20 + plugins/vault/src/setupTests.ts | 17 + yarn.lock | 4977 ++++++++--------- 33 files changed, 3658 insertions(+), 2706 deletions(-) create mode 100644 plugins/vault-backend/.eslintrc.js create mode 100644 plugins/vault-backend/README.md create mode 100644 plugins/vault-backend/config.d.ts create mode 100644 plugins/vault-backend/package.json create mode 100644 plugins/vault-backend/src/index.ts create mode 100644 plugins/vault-backend/src/run.ts create mode 100644 plugins/vault-backend/src/service/VaultBuilder.tsx create mode 100644 plugins/vault-backend/src/service/router.ts create mode 100644 plugins/vault-backend/src/service/runPeriodically.ts create mode 100644 plugins/vault-backend/src/service/standaloneApplication.ts create mode 100644 plugins/vault-backend/src/service/standaloneServer.ts create mode 100644 plugins/vault-backend/src/service/vaultApi.tsx create mode 100644 plugins/vault-backend/src/setupTests.ts create mode 100644 plugins/vault/.eslintrc.js create mode 100644 plugins/vault/README.md create mode 100644 plugins/vault/dev/index.tsx create mode 100644 plugins/vault/images/annotation-missing.png create mode 100644 plugins/vault/images/vault-table.png create mode 100644 plugins/vault/package.json create mode 100644 plugins/vault/src/api.ts create mode 100644 plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx create mode 100644 plugins/vault/src/components/EntityVaultCard/index.ts create mode 100644 plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx create mode 100644 plugins/vault/src/components/EntityVaultTable/index.tsx create mode 100644 plugins/vault/src/conditions.ts create mode 100644 plugins/vault/src/constants.ts create mode 100644 plugins/vault/src/index.ts create mode 100644 plugins/vault/src/plugin.test.ts create mode 100644 plugins/vault/src/plugin.ts create mode 100644 plugins/vault/src/routes.ts create mode 100644 plugins/vault/src/setupTests.ts diff --git a/docs/features/software-catalog/well-known-annotations.md b/docs/features/software-catalog/well-known-annotations.md index 4fa71329dd..189bf22be2 100644 --- a/docs/features/software-catalog/well-known-annotations.md +++ b/docs/features/software-catalog/well-known-annotations.md @@ -353,6 +353,19 @@ to `scm-only`, the plugin will only take into account files stored in source control (e.g. ignoring generated code). If set to `enabled`, all files covered by a coverage report will be taken into account. +### vault.io/secrets-path + +```yaml +# Example: +metadata: + annotations: + vault.io/secrets-path: test/backstage +``` + +The value of this annotation contains the vault that vault curator is using to fetch +all the relative secrets for a component. If not present when the Vault plugin is in use, +a message will be shown instead, letting the user know what is missing in the `catalog-info.yaml`. + ## Deprecated Annotations The following annotations are deprecated, and only listed here to aid in diff --git a/plugins/vault-backend/.eslintrc.js b/plugins/vault-backend/.eslintrc.js new file mode 100644 index 0000000000..e2a53a6ad2 --- /dev/null +++ b/plugins/vault-backend/.eslintrc.js @@ -0,0 +1 @@ +module.exports = require('@backstage/cli/config/eslint-factory')(__dirname); diff --git a/plugins/vault-backend/README.md b/plugins/vault-backend/README.md new file mode 100644 index 0000000000..997a6a6a4d --- /dev/null +++ b/plugins/vault-backend/README.md @@ -0,0 +1,140 @@ +# @backstage/plugin-vault-backend + +A backend for [Vault](https://www.vaultproject.io/), this plugin adds a few routes that are used by the frontend plugin to fetch the information from Vault. + +## Introduction + +Vault is an identity-based secrets and encryption management system. A secret is anything that you want to tightly control access to, such as API encryption keys, passwords, or certificates. Vault provides encryption services that are gated by authentication and authorization methods. + +This plugins allows you to view all the available secrets at a certain location, and redirect you to the official UI so backstage can rely on LIST permissions, which is safer. + +## Getting started + +To get started, first you need a running instance of Vault. You can follow [this tutorial](https://learn.hashicorp.com/tutorials/vault/getting-started-intro?in=vault/getting-started) to install vault and start your server locally. + +1. When your Vault instance is up and running, then you will need to install the plugin into your app: + + ```bash + # From your Backstage root directory + yarn add --cwd packages/backend @backstage/plugin-vault-backend + ``` + +2. Create a file in `src/plugins/vault.ts` and add a reference to it in `src/index.ts`: + + ```typescript + // In packages/backend/src/plugins/vault.ts + import { createRouter } from '@backstage/plugin-vault-backend'; + import { Router } from 'express'; + import { PluginEnvironment } from '../types'; + + export default async function createPlugin( + env: PluginEnvironment, + ): Promise { + return await createRouter({ + logger: env.logger, + config: env.config, + }); + } + ``` + + ```diff + diff --git a/packages/backend/src/index.ts b/packages/backend/src/index.ts + index f2b14b2..2c64f47 100644 + --- a/packages/backend/src/index.ts + +++ b/packages/backend/src/index.ts + @@ -22,6 +22,7 @@ import { Config } from '@backstage/config'; + import app from './plugins/app'; + +import vault from './plugins/vault'; + import scaffolder from './plugins/scaffolder'; + @@ -56,6 +57,7 @@ async function main() { + const authEnv = useHotMemoize(module, () => createEnv('auth')); + + const vaultEnv = useHotMemoize(module, () => createEnv('vault')); + const proxyEnv = useHotMemoize(module, () => createEnv('proxy')); + @@ -63,6 +65,7 @@ async function main() { + + const apiRouter = Router(); + apiRouter.use('/catalog', await catalog(catalogEnv)); + + apiRouter.use('/vault', await vault(vaultEnv)); + apiRouter.use('/scaffolder', await scaffolder(scaffolderEnv)); + ``` + +3. Add some extra configurations in your [`app-config.yaml`](https://github.com/backstage/backstage/blob/master/app-config.yaml). + + ```yaml + vault: + sourceUrl: http://your-vault-url + token: + secretEngine: 'customSecretEngine' # Optional. By default it uses 'secrets' + kvVersion: # Optional. The K/V version that your instance is using. The available options are '1' or '2' + ``` + +4. Get a `VAULT_TOKEN` with **LIST** permissions, as it's enough for the plugin. You can check [this tutorial](https://learn.hashicorp.com/tutorials/vault/tokens) for more info. + +5. If you also want to use the `renew` functionality, you need to attach the following block to your custom policy, so that Backstage can perform a token-renew: + ``` + # Allow tokens to renew themselves + path "auth/token/renew-self" { + capabilities = ["update"] + } + ``` + +## Integration with the Catalog + +The plugin can be integrated into each Component in the catalog. To allow listing the available secrets a new annotation must be added to the `catalog-info.yaml`: + +```yaml +apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + # ... + annotations: + vault.io/secrets-path: path/to/secrets +``` + +The path is relative to your secrets engine folder. So if you want to get the secrets for backstage and you have the following directory structure: + + . + ├── ... + ├── secrets # Your secret engine name (usually it is `secrets`) + │ ├── test # Folder with test secrets + │ │ ├── backstage # In this folder there are secrets for Backstage + │ ├── other # Other folder with more secrets inside + │ └── folder # And another folder + └── ... + +You will set the `vault.io/secret-path` to `test/backstage`. If the folder `backstage` contains other sub-folders, the plugin will fetch the secrets inside them and adapt the **View** and **Edit** URLs to point to the correct place. + +## Renew token + +In a secure Vault instance, it's usual that the tokens are refreshed after some time. In order to always have a valid token to fetch the secrets, it might be necessary to execute a renew action after some time. By default this is deactivated, but it can be easily activated and configured to be executed periodically. In order to do that, modify your `src/plugins/vault.ts` file to look like this one: + +```typescript +import { VaultBuilder } from '@backstage/plugin-vault-backend'; +import { Router } from 'express'; +import { Duration } from 'luxon'; +import { PluginEnvironment } from '../types'; + +export default async function createPlugin( + env: PluginEnvironment, +): Promise { + const builder = VaultBuilder.createBuilder({ + logger: env.logger, + config: env.config, + }) + .setVaultTokenRefreshInterval(Duration.fromObject({ hours: 5 })) // Optional, by default it's executed every hour + .enableTokenRenew(); + + const { router } = await builder.build(); + + return router; +} +``` + +## Features + +- List the secrets present in a certain path +- Open a link to view the secret +- Open a link to edit the secret +- Renew the token automatically with a defined periodicity + +The secrets cannot be edited/viewed from within Backstage to make it more secure. Backstage will only have permissions to LIST data from Vault or to renew its own token if that is needed. And the user who wants to edit/view a certain secret needs the correct permissions to do so. diff --git a/plugins/vault-backend/config.d.ts b/plugins/vault-backend/config.d.ts new file mode 100644 index 0000000000..69ca560e61 --- /dev/null +++ b/plugins/vault-backend/config.d.ts @@ -0,0 +1,41 @@ +/* + * Copyright 2022 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. + */ + +/** Configuration for the Jira plugin */ +export interface Config { + vault?: { + /** + * The sourceUrl for your Vault instance. + */ + sourceUrl: string; + + /** + * The token used by Backstage to access Vault. + * @visibility secret + */ + token: string; + + /** + * The secret engine name where in vault. Defaults to `secrets`. + */ + secretEngine?: string; + + /** + * The version of the K/V API. Defaults to `2`. + */ + kvVersion?: 1 | 2; + }; +} diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json new file mode 100644 index 0000000000..9fe00fedc9 --- /dev/null +++ b/plugins/vault-backend/package.json @@ -0,0 +1,63 @@ +{ + "name": "@backstage/plugin-vault-backend", + "description": "A Backstage backend plugin that integrates towards Vault", + "version": "0.1.0", + "main": "src/index.ts", + "types": "src/index.ts", + "license": "Apache-2.0", + "private": false, + "publishConfig": { + "access": "public", + "main": "dist/index.cjs.js", + "types": "dist/index.d.ts" + }, + "backstage": { + "role": "backend-plugin" + }, + "homepage": "https://backstage.io", + "repository": { + "type": "git", + "url": "https://github.com/backstage/backstage", + "directory": "plugins/vault" + }, + "keywords": [ + "backstage", + "vault" + ], + "scripts": { + "start": "backstage-cli package start", + "build": "backstage-cli package build", + "lint": "backstage-cli package lint", + "test": "backstage-cli package test", + "clean": "backstage-cli package clean", + "prepack": "backstage-cli package prepack", + "postpack": "backstage-cli package postpack" + }, + "dependencies": { + "@backstage/backend-common": "^0.13.2", + "@backstage/config": "^1.0.0", + "@types/compression": "^1.7.2", + "@types/express": "*", + "compression": "^1.7.4", + "cors": "^2.8.5", + "cross-fetch": "^3.1.5", + "express": "^4.17.1", + "express-promise-router": "^4.1.0", + "helmet": "^5.0.2", + "luxon": "^2.4.0", + "winston": "^3.7.2", + "yn": "^5.0.0" + }, + "devDependencies": { + "@backstage/cli": "^0.17.0", + "@types/compression": "^1.7.2", + "@types/supertest": "^2.0.8", + "msw": "^0.35.0", + "supertest": "^4.0.2" + }, + "files": [ + "dist", + "config.d.ts" + ], + "configSchema": "config.d.ts" +} diff --git a/plugins/vault-backend/src/index.ts b/plugins/vault-backend/src/index.ts new file mode 100644 index 0000000000..4c74fd051f --- /dev/null +++ b/plugins/vault-backend/src/index.ts @@ -0,0 +1,19 @@ +/* + * Copyright 2020 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 './service/router'; +export * from './service/VaultBuilder'; +export * from './service/vaultApi'; diff --git a/plugins/vault-backend/src/run.ts b/plugins/vault-backend/src/run.ts new file mode 100644 index 0000000000..0a3ed2b7f0 --- /dev/null +++ b/plugins/vault-backend/src/run.ts @@ -0,0 +1,33 @@ +/* + * Copyright 2020 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 { getRootLogger } from '@backstage/backend-common'; +import yn from 'yn'; +import { startStandaloneServer } from './service/standaloneServer'; + +const port = process.env.PLUGIN_PORT ? Number(process.env.PLUGIN_PORT) : 7007; +const enableCors = yn(process.env.PLUGIN_CORS, { default: false }); +const logger = getRootLogger(); + +startStandaloneServer({ port, enableCors, logger }).catch(err => { + logger.error(err); + process.exit(1); +}); + +process.on('SIGINT', () => { + logger.info('CTRL+C pressed; exiting.'); + process.exit(0); +}); diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx new file mode 100644 index 0000000000..675dabaffc --- /dev/null +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -0,0 +1,116 @@ +/* + * Copyright 2022 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 { Config } from '@backstage/config'; +import { Logger } from 'winston'; +import express, { Router } from 'express'; +import { Duration } from 'luxon'; +import { VaultClient } from './vaultApi'; +import { runPeriodically } from './runPeriodically'; + +export interface VaultEnvironment { + logger: Logger; + config: Config; +} + +export type VaultBuilderReturn = Promise<{ + router: express.Router; +}>; + +export class VaultBuilder { + private vaultTokenRefreshInterval: Duration = Duration.fromObject({ + minutes: 60, + }); + private vaultClient?: VaultClient; + + static createBuilder(env: VaultEnvironment) { + return new VaultBuilder(env); + } + constructor(protected readonly env: VaultEnvironment) {} + + public async build(): VaultBuilderReturn { + const { logger, config } = this.env; + + logger.info('Initializing Vault backend'); + + if (!config.has('vault')) { + logger.warn( + 'Failed to initialize Vault backend: vault config is missing', + ); + return { + router: Router(), + }; + } + + this.vaultClient = this.vaultClient ?? new VaultClient(this.env); + + const router = this.buildRouter(this.vaultClient); + + await this.renewToken(this.vaultClient); + + return { + router: router, + }; + } + + public setVaultClient(vaultClient: VaultClient) { + this.vaultClient = vaultClient; + return this; + } + + public setVaultTokenRefreshInterval(refreshInterval: Duration) { + this.vaultTokenRefreshInterval = refreshInterval; + return this; + } + + public enableTokenRenew() { + runPeriodically(async () => { + this.env.logger.info('Renewing Vault token'); + const vaultClient = this.vaultClient ?? new VaultClient(this.env); + await this.renewToken(vaultClient); + }, this.vaultTokenRefreshInterval.toMillis()); + return this; + } + + protected async renewToken(vaultClient: VaultClient) { + const result = await vaultClient.renewToken(); + if (!result) { + this.env.logger.warn('Error renewing vault token'); + } else { + this.env.logger.info('Vault token renewed'); + } + } + + protected buildRouter(vaultClient: VaultClient): express.Router { + const router = Router(); + router.use(express.json()); + + router.get('/v1/secrets', async (req, res) => { + const path = req.query.path; + if (typeof path !== 'string') { + res + .status(400) + .send('Something was unexpected about the path query string'); + + return; + } + + const secrets = await vaultClient.listSecrets(path); + res.json(secrets); + }); + + return router; + } +} diff --git a/plugins/vault-backend/src/service/router.ts b/plugins/vault-backend/src/service/router.ts new file mode 100644 index 0000000000..5ad98b5610 --- /dev/null +++ b/plugins/vault-backend/src/service/router.ts @@ -0,0 +1,33 @@ +/* + * Copyright 2020 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 { Config } from '@backstage/config'; +import express from 'express'; +import { Logger } from 'winston'; +import { VaultBuilder } from './VaultBuilder'; + +export interface RouterOptions { + logger: Logger; + config: Config; +} + +export async function createRouter( + options: RouterOptions, +): Promise { + const { router } = await VaultBuilder.createBuilder(options).build(); + + return router; +} diff --git a/plugins/vault-backend/src/service/runPeriodically.ts b/plugins/vault-backend/src/service/runPeriodically.ts new file mode 100644 index 0000000000..2f3104e221 --- /dev/null +++ b/plugins/vault-backend/src/service/runPeriodically.ts @@ -0,0 +1,54 @@ +/* + * Copyright 2020 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. + */ + +/** + * Runs a function repeatedly, with a fixed wait between invocations. + * + * Supports async functions, and silently ignores exceptions and rejections. + * + * @param fn - The function to run. May return a Promise. + * @param delayMs - The delay between a completed function invocation and the + * next. + * @returns A function that, when called, stops the invocation loop. + */ +export function runPeriodically(fn: () => any, delayMs: number): () => void { + let cancel: () => void; + let cancelled = false; + const cancellationPromise = new Promise(resolve => { + cancel = () => { + resolve(); + cancelled = true; + }; + }); + + const startRefresh = async () => { + while (!cancelled) { + try { + await fn(); + } catch { + // ignore intentionally + } + + await Promise.race([ + new Promise(resolve => setTimeout(resolve, delayMs)), + cancellationPromise, + ]); + } + }; + startRefresh(); + + return cancel!; +} diff --git a/plugins/vault-backend/src/service/standaloneApplication.ts b/plugins/vault-backend/src/service/standaloneApplication.ts new file mode 100644 index 0000000000..29262744e5 --- /dev/null +++ b/plugins/vault-backend/src/service/standaloneApplication.ts @@ -0,0 +1,54 @@ +/* + * Copyright 2020 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 { + errorHandler, + notFoundHandler, + requestLoggingHandler, +} from '@backstage/backend-common'; +import compression from 'compression'; +import cors from 'cors'; +import express from 'express'; +import helmet from 'helmet'; +import { Logger } from 'winston'; +import { createRouter } from './router'; +import { ConfigReader } from '@backstage/config'; + +export interface ApplicationOptions { + enableCors: boolean; + logger: Logger; +} + +export async function createStandaloneApplication( + options: ApplicationOptions, +): Promise { + const { enableCors, logger } = options; + const config = new ConfigReader({}); + const app = express(); + + app.use(helmet()); + if (enableCors) { + app.use(cors()); + } + app.use(compression()); + app.use(express.json()); + app.use(requestLoggingHandler()); + app.use('/', await createRouter({ logger, config })); + app.use(notFoundHandler()); + app.use(errorHandler()); + + return app; +} diff --git a/plugins/vault-backend/src/service/standaloneServer.ts b/plugins/vault-backend/src/service/standaloneServer.ts new file mode 100644 index 0000000000..8d42b1d4c8 --- /dev/null +++ b/plugins/vault-backend/src/service/standaloneServer.ts @@ -0,0 +1,50 @@ +/* + * Copyright 2020 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 { Server } from 'http'; +import { Logger } from 'winston'; +import { createStandaloneApplication } from './standaloneApplication'; + +export interface ServerOptions { + port: number; + enableCors: boolean; + logger: Logger; +} + +export async function startStandaloneServer( + options: ServerOptions, +): Promise { + const logger = options.logger.child({ service: 'vault-backend' }); + + logger.debug('Creating application...'); + const app = await createStandaloneApplication({ + enableCors: options.enableCors, + logger, + }); + + logger.debug('Starting application server...'); + return await new Promise((resolve, reject) => { + const server = app.listen(options.port, (err?: Error) => { + if (err) { + reject(err); + return; + } + + logger.info(`Listening on port ${options.port}`); + resolve(server); + }); + }); +} diff --git a/plugins/vault-backend/src/service/vaultApi.tsx b/plugins/vault-backend/src/service/vaultApi.tsx new file mode 100644 index 0000000000..75eb9163dc --- /dev/null +++ b/plugins/vault-backend/src/service/vaultApi.tsx @@ -0,0 +1,131 @@ +/* + * Copyright 2020 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 { Config } from '@backstage/config'; +import fetch from 'cross-fetch'; + +type VaultSecretList = { + data: { + keys: string[]; + }; +}; + +type Secret = { + name: string; + showUrl: string; + editUrl: string; +}; + +type RenewTokenResponse = { + auth: { + client_token: string; + }; +}; + +export interface VaultApi { + getFrontendSecretsUrl(): string; + listSecrets(secretPath: string): Promise; + renewToken?(): Promise; +} + +export class VaultClient implements VaultApi { + private readonly vaultUrl: string; + private vaultToken: string; + private readonly kvVersion: number; + private readonly secretEngineName: string; + + constructor({ config }: { config: Config }) { + this.vaultUrl = config.getString('vault.sourceUrl'); + this.vaultToken = config.getString('vault.token'); + this.kvVersion = config.getOptionalNumber('vault.kvVersion') ?? 2; + this.secretEngineName = + config.getOptionalString('vault.secretEngine') ?? 'secrets'; + } + + private async callApi( + path: string, + query: { [key in string]: any }, + method: string = 'GET', + ): Promise { + const response = await fetch( + `${this.vaultUrl}/${path}?${new URLSearchParams(query).toString()}`, + { + method, + headers: { + Accept: 'application/json', + 'X-Vault-Token': this.vaultToken, + }, + }, + ); + if (response.status === 200) { + return (await response.json()) as T; + } + return undefined; + } + + private isFolder(secretName: string): boolean { + const regex = /^.*\/$/gm; + return regex.test(secretName); + } + + getFrontendSecretsUrl(): string { + return `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}`; + } + + async listSecrets(secretPath: string): Promise { + const listUrl = + this.kvVersion === 2 + ? `v1/${this.secretEngineName}/metadata/${secretPath}` + : `v1/${this.secretEngineName}/${secretPath}`; + const result = await this.callApi(listUrl, { list: true }); + if (!result) { + return []; + } + + const secrets: Secret[] = []; + await Promise.all( + result.data.keys.map(async secret => { + if (this.isFolder(secret)) { + secrets.push( + ...(await this.listSecrets(`${secretPath}/${secret.slice(0, -1)}`)), + ); + } else { + secrets.push({ + name: secret, + editUrl: `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}/edit/${secretPath}/${secret}`, + showUrl: `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}/show/${secretPath}/${secret}`, + }); + } + }), + ); + + return secrets; + } + + async renewToken(): Promise { + const result = await this.callApi( + 'v1/auth/token/renew-self', + {}, + 'POST', + ); + if (!result) { + return false; + } + + this.vaultToken = result.auth.client_token; + return true; + } +} diff --git a/plugins/vault-backend/src/setupTests.ts b/plugins/vault-backend/src/setupTests.ts new file mode 100644 index 0000000000..d3232290a7 --- /dev/null +++ b/plugins/vault-backend/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2020 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 {}; diff --git a/plugins/vault/.eslintrc.js b/plugins/vault/.eslintrc.js new file mode 100644 index 0000000000..e2a53a6ad2 --- /dev/null +++ b/plugins/vault/.eslintrc.js @@ -0,0 +1 @@ +module.exports = require('@backstage/cli/config/eslint-factory')(__dirname); diff --git a/plugins/vault/README.md b/plugins/vault/README.md new file mode 100644 index 0000000000..42e9fcd71f --- /dev/null +++ b/plugins/vault/README.md @@ -0,0 +1,96 @@ +# @backstage/plugin-vault + +A frontend for [Vault](https://www.vaultproject.io/), this plugin allows you to display a list of secrets in a certain path inside your vault instance. There are also some useful links to edit and/or view them using the official UI. + +![Screenshot of the vault plugin table](images/vault-table.png) + +## Introduction + +Vault is an identity-based secrets and encryption management system. A secret is anything that you want to tightly control access to, such as API encryption keys, passwords, or certificates. Vault provides encryption services that are gated by authentication and authorization methods. + +This plugins allows you to view all the available secrets at a certain location, and redirect you to the official UI so backstage can rely on LIST permissions, which is safer. + +## Getting started + +To get started, first you need a running instance of Vault. You can follow [this tutorial](https://learn.hashicorp.com/tutorials/vault/getting-started-intro?in=vault/getting-started) to install vault and start your server locally. + +1. When your Vault instance is up and running, then you will need to install the plugin into your app: + + ```bash + # From your Backstage root directory + yarn add --cwd packages/app @backstage/plugin-vault + ``` + +2. Add the Vault card to the overview tab on the EntityPage: + + ```typescript + // In packages/app/src/components/catalog/EntityPage.tsx + import { EntityVaultCard } from '@backstage/plugin-vault'; + + const overviewContent = ( + + {/* ...other content */} + + + + ); + ``` + +3. Add some extra configurations in your [`app-config.yaml`](https://github.com/backstage/backstage/blob/master/app-config.yaml). + + ```yaml + vault: + sourceUrl: http://your-vault-url + token: + secretEngine: 'customSecretEngine' # Optional. By default it uses 'secrets' + kvVersion: # Optional. The K/V version that your instance is using. The available options are '1' or '2' + ``` + +4. Get a `VAULT_TOKEN` with **LIST** permissions, as it's enough for the plugin. You can check [this tutorial](https://learn.hashicorp.com/tutorials/vault/tokens) for more info. + +5. If you also want to use the `renew` functionality, you need to attach the following block to your custom policy, so that Backstage can perform a token-renew: + ``` + # Allow tokens to renew themselves + path "auth/token/renew-self" { + capabilities = ["update"] + } + ``` + +## Integration with the Catalog + +The plugin can be integrated into each Component in the catalog. To allow listing the available secrets a new annotation must be added to the `catalog-info.yaml`: + +```yaml +apiVersion: backstage.io/v1alpha1 +kind: Component +metadata: + # ... + annotations: + vault.io/secrets-path: path/to/secrets +``` + +The path is relative to your secrets engine folder. So if you want to get the secrets for backstage and you have the following directory structure: + + . + ├── ... + ├── secrets # Your secret engine name (usually it is `secrets`) + │ ├── test # Folder with test secrets + │ │ ├── backstage # In this folder there are secrets for Backstage + │ ├── other # Other folder with more secrets inside + │ └── folder # And another folder + └── ... + +You will set the `vault.io/secret-path` to `test/backstage`. If the folder `backstage` contains other sub-folders, the plugin will fetch the secrets inside them and adapt the **View** and **Edit** URLs to point to the correct place. + +If the annotation is missing for a certain component, then the card will show some information to the user: + +![Screenshot of the vault plugin with missing annotation](images/annotation-missing.png) + +## Features + +- List the secrets present in a certain path +- Open a link to view the secret +- Open a link to edit the secret +- Renew the token automatically with a defined periodicity + +The secrets cannot be edited/viewed from within Backstage to make it more secure. Backstage will only have permissions to LIST data from Vault. And the user who wants to edit/view a certain secret needs the correct permissions to do so. diff --git a/plugins/vault/dev/index.tsx b/plugins/vault/dev/index.tsx new file mode 100644 index 0000000000..fd89e65889 --- /dev/null +++ b/plugins/vault/dev/index.tsx @@ -0,0 +1,19 @@ +/* + * Copyright 2020 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 { createDevApp } from '@backstage/dev-utils'; +import { vaultPlugin } from '../src/plugin'; + +createDevApp().registerPlugin(vaultPlugin).render(); diff --git a/plugins/vault/images/annotation-missing.png b/plugins/vault/images/annotation-missing.png new file mode 100644 index 0000000000000000000000000000000000000000..1d0be0c99bc50ebc473773cd72b595d4b195056e GIT binary patch literal 24435 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 DYTuWt literal 0 HcmV?d00001 diff --git a/plugins/vault/images/vault-table.png b/plugins/vault/images/vault-table.png new file mode 100644 index 0000000000000000000000000000000000000000..18a4b22dc589563680c1fbbbd639d9457c082d37 GIT binary patch literal 21276 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 + id: 'plugin.vault.service', +}); + +export type VaultSecretList = { + data: { + keys: string[]; + }; +}; + +export type Secret = { + name: string; + showUrl: string; + editUrl: string; +}; + +export interface VaultApi { + listSecrets(secretPath: string): Promise; +} + +export class VaultClient implements VaultApi { + private readonly discoveryApi: DiscoveryApi; + + constructor({ discoveryApi }: { discoveryApi: DiscoveryApi }) { + this.discoveryApi = discoveryApi; + } + + private async callApi( + path: string, + query: { [key in string]: any }, + ): Promise { + const apiUrl = `${await this.discoveryApi.getBaseUrl('vault')}`; + const response = await fetch( + `${apiUrl}/${path}?${new URLSearchParams(query).toString()}`, + { + headers: { + Accept: 'application/json', + }, + }, + ); + if (response.status === 200) { + return (await response.json()) as T; + } + return undefined; + } + + async listSecrets(secretPath: string): Promise { + const result = await this.callApi('v1/secrets', { + path: secretPath, + }); + if (!result) { + return []; + } + return result; + } +} diff --git a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx new file mode 100644 index 0000000000..f1c5ff4d9f --- /dev/null +++ b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx @@ -0,0 +1,75 @@ +/* + * Copyright 2020 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 from 'react'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import { makeStyles, Typography } from '@material-ui/core'; +import { isVaultAvailable } from '../../conditions'; +import { CodeSnippet, InfoCard, Button } from '@backstage/core-components'; +import { BackstageTheme } from '@backstage/theme'; +import { VAULT_SECRET_PATH_ANNOTATION } from '../../constants'; +import { EntityVaultTable } from '../EntityVaultTable'; + +const COMPONENT_YAML = `metadata: + name: example + annotations: + ${VAULT_SECRET_PATH_ANNOTATION}: value`; + +const useStyles = makeStyles( + theme => ({ + code: { + borderRadius: 6, + margin: `${theme.spacing(2)}px 0px`, + background: theme.palette.type === 'dark' ? '#444' : '#fff', + }, + }), + { name: 'BackstageMissingVaultAnnotation' }, +); + +export const EntityVaultCard = () => { + const { entity } = useEntity(); + const classes = useStyles(); + + if (isVaultAvailable(entity)) { + return ; + } + return ( + + <> + + Add the annotation to your component YAML as shown in the highlighted + example below: + +
+ +
+ + +
+ ); +}; diff --git a/plugins/vault/src/components/EntityVaultCard/index.ts b/plugins/vault/src/components/EntityVaultCard/index.ts new file mode 100644 index 0000000000..0b91f6dde4 --- /dev/null +++ b/plugins/vault/src/components/EntityVaultCard/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2020 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 { EntityVaultCard } from './EntityVaultCard'; diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx new file mode 100644 index 0000000000..5356342a5c --- /dev/null +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx @@ -0,0 +1,98 @@ +/* + * Copyright 2020 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 from 'react'; +import { Entity } from '@backstage/catalog-model'; +import { Table, TableColumn } from '@backstage/core-components'; +import { useApi } from '@backstage/core-plugin-api'; +import { Box, Typography } from '@material-ui/core'; +import Edit from '@material-ui/icons/Edit'; +import Visibility from '@material-ui/icons/Visibility'; +import Alert from '@material-ui/lab/Alert'; +import useAsync from 'react-use/lib/useAsync'; +import { Secret, vaultApiRef } from '../../api'; +import { VAULT_SECRET_PATH_ANNOTATION } from '../../constants'; + +export const vaultSecretPath = (entity: Entity) => { + const secretPath = + entity.metadata.annotations?.[VAULT_SECRET_PATH_ANNOTATION] ?? ''; + + return { secretPath }; +}; + +export const EntityVaultTable = ({ entity }: { entity: Entity }) => { + const vaultApi = useApi(vaultApiRef); + const { secretPath } = vaultSecretPath(entity); + const { value, loading, error } = useAsync(async (): Promise => { + return vaultApi.listSecrets(secretPath); + }, []); + + const columns: TableColumn[] = [ + { title: 'Secret', field: 'secret', highlight: true }, + { title: 'View URL', field: 'view', width: '10%' }, + { title: 'Edit URL', field: 'edit', width: '10%' }, + ]; + + const data = (value || []).map(secret => { + return { + secret: secret.name, + view: ( + + + + ), + edit: ( + + + + ), + }; + }); + + if (error) { + return {error.message}; + } + + return ( +
customised cell {data.col1}
+ + No secrets found for {entity.metadata.name} in {secretPath} + + + } + /> + ); +}; diff --git a/plugins/vault/src/components/EntityVaultTable/index.tsx b/plugins/vault/src/components/EntityVaultTable/index.tsx new file mode 100644 index 0000000000..eeb8440b5c --- /dev/null +++ b/plugins/vault/src/components/EntityVaultTable/index.tsx @@ -0,0 +1,16 @@ +/* + * Copyright 2020 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 { EntityVaultTable } from './EntityVaultTable'; diff --git a/plugins/vault/src/conditions.ts b/plugins/vault/src/conditions.ts new file mode 100644 index 0000000000..0ce34085e0 --- /dev/null +++ b/plugins/vault/src/conditions.ts @@ -0,0 +1,23 @@ +/* + * Copyright 2020 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 { Entity } from '@backstage/catalog-model'; +import { VAULT_SECRET_PATH_ANNOTATION } from './constants'; + +export function isVaultAvailable(entity: Entity): boolean { + return Boolean( + entity.metadata.annotations?.hasOwnProperty(VAULT_SECRET_PATH_ANNOTATION), + ); +} diff --git a/plugins/vault/src/constants.ts b/plugins/vault/src/constants.ts new file mode 100644 index 0000000000..1ac8b80b73 --- /dev/null +++ b/plugins/vault/src/constants.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2020 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 const VAULT_SECRET_PATH_ANNOTATION = 'vault.io/secrets-path'; diff --git a/plugins/vault/src/index.ts b/plugins/vault/src/index.ts new file mode 100644 index 0000000000..c2d1fc3419 --- /dev/null +++ b/plugins/vault/src/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2020 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 { vaultPlugin, EntityVaultCard } from './plugin'; diff --git a/plugins/vault/src/plugin.test.ts b/plugins/vault/src/plugin.test.ts new file mode 100644 index 0000000000..b6c5a9c9a0 --- /dev/null +++ b/plugins/vault/src/plugin.test.ts @@ -0,0 +1,22 @@ +/* + * Copyright 2020 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 { vaultPlugin } from './plugin'; + +describe('vault', () => { + it('should export plugin', () => { + expect(vaultPlugin).toBeDefined(); + }); +}); diff --git a/plugins/vault/src/plugin.ts b/plugins/vault/src/plugin.ts new file mode 100644 index 0000000000..b07d7820f3 --- /dev/null +++ b/plugins/vault/src/plugin.ts @@ -0,0 +1,48 @@ +/* + * Copyright 2020 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 { + createApiFactory, + createComponentExtension, + createPlugin, + DiscoveryApi, + discoveryApiRef, +} from '@backstage/core-plugin-api'; + +import { VaultClient, vaultApiRef } from './api'; + +export const vaultPlugin = createPlugin({ + id: 'vault', + apis: [ + createApiFactory({ + api: vaultApiRef, + deps: { discoveryApi: discoveryApiRef }, + factory: ({ discoveryApi }: { discoveryApi: DiscoveryApi }) => + new VaultClient({ + discoveryApi, + }), + }), + ], +}); + +export const EntityVaultCard = vaultPlugin.provide( + createComponentExtension({ + name: 'EntityVaultCard', + component: { + lazy: () => + import('./components/EntityVaultCard').then(m => m.EntityVaultCard), + }, + }), +); diff --git a/plugins/vault/src/routes.ts b/plugins/vault/src/routes.ts new file mode 100644 index 0000000000..40743b524f --- /dev/null +++ b/plugins/vault/src/routes.ts @@ -0,0 +1,20 @@ +/* + * Copyright 2020 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 { createRouteRef } from '@backstage/core-plugin-api'; + +export const rootRouteRef = createRouteRef({ + id: 'vault', +}); diff --git a/plugins/vault/src/setupTests.ts b/plugins/vault/src/setupTests.ts new file mode 100644 index 0000000000..b201a9c83e --- /dev/null +++ b/plugins/vault/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2020 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 '@testing-library/jest-dom'; +import 'cross-fetch/polyfill'; diff --git a/yarn.lock b/yarn.lock index 5c93d38c4f..8b218802af 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1403,7 +1403,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.17.7" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.7.tgz#a5f3328dc41ff39d803f311cfe17703418cf9825" integrity sha512-L6rvG9GDxaLgFjg41K+5Yv9OMrU98sWe+Ykmc6FDJW/+vYZMhdOMKkISgzptMaERHvS2Y2lw9MDRm2gHhlQQoA== @@ -1955,9 +1955,9 @@ "@codemirror/language" "^0.20.0" "@codemirror/lint@^0.20.0": - version "0.20.1" - resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-0.20.1.tgz#791c83642f76103bbf6b8bfdc8020eff2b78b5e2" - integrity sha512-aWbeicDiNe5tb2aZuXs7sKk3hQ89Z1YcUuUX8ngQu23tT6EY4kcY2cayDjizvkLn8iHkObNf97uSudjNmUon2Q== + version "0.20.2" + resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-0.20.2.tgz#e47307167ff7e5bb14b717f4084a386dd7f8954e" + integrity sha512-xEH3wlzoFLEhPEeMVRNoQIhoTCMEtXhVxemGh3FYjLfl/CL3B2Wz+CU7ooP5SKhN1le7JqUNSfiTArFP+IzFuw== dependencies: "@codemirror/state" "^0.20.0" "@codemirror/view" "^0.20.2" @@ -2041,9 +2041,9 @@ lodash.once "^4.1.1" "@dabh/diagnostics@^2.0.2": - version "2.0.2" - resolved "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.2.tgz#290d08f7b381b8f94607dc8f471a12c675f9db31" - integrity sha512-+A1YivoVDNNVCdfozHSR8v/jyuuLTMXwjWuxPFlFlUapXoGc+Gj9mDlTDDfrwl7rXCl2tNZ0kE8sIBO6YOn96Q== + version "2.0.3" + resolved "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz#7f7e97ee9a725dffc7808d93668cc984e1dc477a" + integrity sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA== dependencies: colorspace "1.1.x" enabled "2.0.x" @@ -2107,41 +2107,10 @@ ts-node "^9" tslib "^2" -"@envelop/core@^2.0.0": - version "2.3.1" - resolved "https://registry.npmjs.org/@envelop/core/-/core-2.3.1.tgz#77d502db2aa97846573d7c2e87a00bde840c7ebb" - integrity sha512-AnYUci7EGyA8flml881lDvVDl6n/u6GQpVIOTsZVO29d4/rPqSJ2KFguDD3mjDL406doTTLNuDI4ndxfJl6fmQ== - dependencies: - "@envelop/types" "2.2.0" - -"@envelop/disable-introspection@^3.0.0": - version "3.3.1" - resolved "https://registry.npmjs.org/@envelop/disable-introspection/-/disable-introspection-3.3.1.tgz#616747a42b28172ff223a7c667a21b70a4bac66f" - integrity sha512-THR8UnRQQB5nCLmITXvebwXwSHvFjS+ThA3RRVXpFX9EupMbTFN5a4NHty7+BYD798c3VrBZ/InbMlEWqw1c9g== - -"@envelop/parser-cache@^4.0.0": - version "4.3.1" - resolved "https://registry.npmjs.org/@envelop/parser-cache/-/parser-cache-4.3.1.tgz#3d9cfb869f5953bb866f3c82e28fc8606b576a60" - integrity sha512-IqerCVjvVTiGvSZ8qSpdEc55hhiuekufJd0+ldWtyMPznhMaYOzpLifFUhjhhD7004eJM17n9vjJQFa7fIGz8Q== - dependencies: - tiny-lru "7.0.6" - -"@envelop/types@2.2.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@envelop/types/-/types-2.2.0.tgz#95776d9b63ba8974f52b476d4db5bb169febbe32" - integrity sha512-Lghvfs0kh53G5mUKpCMlB/FhHh3O8SSR4hewB7JyE9hOEu/9h/6u+GHH/OEgdaRHky1Sae5Jf4grO+h21ka4ig== - -"@envelop/validation-cache@^4.0.0": - version "4.3.1" - resolved "https://registry.npmjs.org/@envelop/validation-cache/-/validation-cache-4.3.1.tgz#a1f83e339d22d787cec3d6859e7abc9d4249aeb6" - integrity sha512-lmtu9idhdWqbYkcFoFsL1ED4y38DLvj6EDEwE9tULXWuZm4WWmlNQAmKHAwB1d3kGVQAMtxM59crkOOJGRBgHQ== - dependencies: - tiny-lru "7.0.6" - -"@eslint/eslintrc@^1.3.0": - version "1.3.0" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz#29f92c30bb3e771e4a2048c95fa6855392dfac4f" - integrity sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw== +"@eslint/eslintrc@^1.2.3": + version "1.2.3" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz#fcaa2bcef39e13d6e9e7f6271f4cc7cae1174886" + integrity sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -2160,10 +2129,10 @@ dependencies: yaml-ast-parser "0.0.43" -"@gar/promisify@^1.0.1": - version "1.1.2" - resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" - integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== +"@gar/promisify@^1.0.1", "@gar/promisify@^1.1.3": + version "1.1.3" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== "@gitbeaker/browser@^35.6.0": version "35.6.0" @@ -2233,14 +2202,14 @@ extend "^3.0.2" "@google-cloud/projectify@^2.0.0": - version "2.0.1" - resolved "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.0.1.tgz#13350ee609346435c795bbfe133a08dfeab78d65" - integrity sha512-ZDG38U/Yy6Zr21LaR3BTiiLtpJl6RkPS/JwoRT453G+6Q1DhlV0waNf8Lfu+YVYGIIxgKnLayJRfYlFJfiI8iQ== + version "2.1.1" + resolved "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz#ae6af4fee02d78d044ae434699a630f8df0084ef" + integrity sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ== "@google-cloud/promisify@^2.0.0": - version "2.0.3" - resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.3.tgz#f934b5cdc939e3c7039ff62b9caaf59a9d89e3a8" - integrity sha512-d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw== + version "2.0.4" + resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz#9d8705ecb2baa41b6b2673f3a8e9b7b7e1abc52a" + integrity sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA== "@google-cloud/storage@^5.6.0", "@google-cloud/storage@^5.8.0": version "5.20.5" @@ -2422,140 +2391,140 @@ tslib "~2.4.0" "@graphql-tools/apollo-engine-loader@^7.0.5": - version "7.2.11" - resolved "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.2.11.tgz#c247eef8986ce259de6dd2da39daeaba7960ac33" - integrity sha512-0NmAlTd/lQl35OaP18dhxlcdu4w4K+auPfbkiaDfArzdhn6Duhq+ATqMvj6Fx5C23zlcvQ0AJnT5a5Yb55K/5w== + version "7.2.16" + resolved "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.2.16.tgz#bf130e0a7910cd43200871b2376fe0d952713809" + integrity sha512-e21qGgkyhogdQREB6wOLvxUlGYpcxrEQm6u6OyVaGjZUJvLo8wFT2eIwgMCY/m1woWx2OdfdBq6/1TTScJhfcA== dependencies: - "@graphql-tools/utils" "8.6.9" - cross-undici-fetch "^0.3.0" + "@graphql-tools/utils" "8.6.10" + cross-undici-fetch "^0.4.0" sync-fetch "0.3.1" - tslib "~2.3.0" + tslib "~2.4.0" -"@graphql-tools/batch-execute@8.4.6": - version "8.4.6" - resolved "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.4.6.tgz#6033cbf0b7d30c901ae4a1a7de7501aedf5a6a10" - integrity sha512-8O42fReZMssrA4HCkpK68RlRQz/QAvLfOkz+/6dDX2X7VgZtRx3VvFiJd2hFaGdNbLzklBWXF9E6hJdJGkEO5g== +"@graphql-tools/batch-execute@8.4.7": + version "8.4.7" + resolved "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.4.7.tgz#199d0ec7fbe6539056fdfd28e015c612926a7932" + integrity sha512-+ZXikTo8kJ1hJAQrT94sUrwmdL8EcvoDz4HULbb4B8hIFw0PPBaGkEaN8u5ylsCLOEoWIQNe1SwHx9yDhlvnJg== dependencies: - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/utils" "8.6.10" dataloader "2.1.0" - tslib "~2.3.0" + tslib "~2.4.0" value-or-promise "1.0.11" "@graphql-tools/code-file-loader@^7.0.6": - version "7.2.14" - resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-7.2.14.tgz#b43ce0c682040b3969f1f785b18fc33c79341084" - integrity sha512-ajNET8XO2e3SgIXXAskc/Dv/M/+Z35TgXopf3axt1e9TboG/KkQxIE0Mi84XqCYDMtF5UqmIWqQ2gVdwFPfjiw== + version "7.2.15" + resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-7.2.15.tgz#2307741bec6987c88a1a53695cb17dc59c8ba7a0" + integrity sha512-tqViC0MEXadcGofqDU4mL7eA/+TyM4iCP+XRkL/mdAMYWp1JdzMYUJcCH47ZK1+EvNctYx8sJOpSGlvLR4ZFFg== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.6" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/graphql-tag-pluck" "7.2.7" + "@graphql-tools/utils" "8.6.10" globby "^11.0.3" - tslib "~2.3.0" + tslib "~2.4.0" unixify "^1.0.0" -"@graphql-tools/delegate@8.7.7": - version "8.7.7" - resolved "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.7.7.tgz#8626e5734eff1643f99b10202bb324c8a4a8c210" - integrity sha512-Yb9UHG+Upm0M+5FgtWipXM0/Q8Vuuh1Ieod7hFDmAwHGHbmwG0YpcS/NMdxrQAZYWnli9EdnSPgDAFnWLFN+ZQ== +"@graphql-tools/delegate@8.7.8": + version "8.7.8" + resolved "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.7.8.tgz#c7e94d66825286615f738367665aa3036d79eff0" + integrity sha512-QRpk0B0VD+23mC3ePBLM542TvCXbQhdr0V/AmcnpxQLsV27/NA6fDxxN/zjjjs15M5v9/M2DaBT4rwY9NMMlQA== dependencies: - "@graphql-tools/batch-execute" "8.4.6" - "@graphql-tools/schema" "8.3.10" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/batch-execute" "8.4.7" + "@graphql-tools/schema" "8.3.11" + "@graphql-tools/utils" "8.6.10" dataloader "2.1.0" graphql-executor "0.0.23" - tslib "~2.3.0" + tslib "~2.4.0" value-or-promise "1.0.11" "@graphql-tools/git-loader@^7.0.5": - version "7.1.13" - resolved "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-7.1.13.tgz#95f4715f4caf290dde975813bc87e0a96a81095d" - integrity sha512-VuX7TMsmWyt6ldykJ5+xfEVM0ctIq0rdWC5YC7icd/0xn5kx2V/SkompBXE0XjgZGznzveucKwGY7UGHVb2wuw== + version "7.1.14" + resolved "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-7.1.14.tgz#f8dfb8a5cade31ddbd625571e9db6ebe9155474c" + integrity sha512-i1uZ1zxbzrEK+h7wttGpJbGiw80EVop/lNwHtdEOdQd4kp/DKqAJaJJjjvUwi5IBWwtp/BM2ujBAwe1+3R2MSA== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.6" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/graphql-tag-pluck" "7.2.7" + "@graphql-tools/utils" "8.6.10" is-glob "4.0.3" micromatch "^4.0.4" - tslib "~2.3.0" + tslib "~2.4.0" unixify "^1.0.0" "@graphql-tools/github-loader@^7.0.5": - version "7.2.15" - resolved "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-7.2.15.tgz#c0c2ae06c7a6c0b5d572e0455abb6ceb8d28fc28" - integrity sha512-5Za+1y7XTCVNOqxYU1HV1eLs99Wy7EZ6j8hsgJKNLHfRG3IegtWyU3ShQQ1bCTwpt57cwiWaVGgvf0rEqrZkPw== + version "7.2.20" + resolved "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-7.2.20.tgz#bbf923264f5983888f425265305fe3929e79fe63" + integrity sha512-Ua2eJ61+NHSOYemoAkWY1kFv83J+BkEONz3cqcrhCa7wWMW4OUUzzvw1g+A2fuMLk7R6ATgKADjDPTMyfRYnyQ== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.6" - "@graphql-tools/utils" "8.6.9" - cross-undici-fetch "^0.3.0" + "@graphql-tools/graphql-tag-pluck" "7.2.7" + "@graphql-tools/utils" "8.6.10" + cross-undici-fetch "^0.4.0" sync-fetch "0.3.1" - tslib "~2.3.0" + tslib "~2.4.0" -"@graphql-tools/graphql-file-loader@^7.0.5", "@graphql-tools/graphql-file-loader@^7.3.2": - version "7.3.11" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.11.tgz#3acc3fffdba5e1d47750ea693577c2388e6cf22b" - integrity sha512-3RMTfBN0VYSJH+5he9DxW8nGSn5p2+dNN2O2H88QSSwGorkONmKBdmf+9+JTzrEDvPObOzBjIuSD8wCnXlNaQA== +"@graphql-tools/graphql-file-loader@^7.0.5", "@graphql-tools/graphql-file-loader@^7.3.7": + version "7.3.12" + resolved "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.12.tgz#1d0ef43bd2066d517788fa36668e2486c47724c2" + integrity sha512-V1K+g0QBflBnN58pU6jo7qrmXfIJjSgmIGo4zYxbMwfvcYCQcTmfYnKWUkvZmBj0cXIAGfhqSOQZsxZW9rgXIA== dependencies: - "@graphql-tools/import" "6.6.13" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/import" "6.6.14" + "@graphql-tools/utils" "8.6.10" globby "^11.0.3" - tslib "~2.3.0" + tslib "~2.4.0" unixify "^1.0.0" -"@graphql-tools/graphql-tag-pluck@7.2.6": - version "7.2.6" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.2.6.tgz#0bddc23b354c2912e17b15209ad1e7117f9fa4da" - integrity sha512-TWF+0MTdWIfETYt2Pm1+jg608aIavgGkjJuN3f2Z4iWhPNvupHkHexAzV4GNkrQa0yXzIl6bQF8uNRjz4v31SA== +"@graphql-tools/graphql-tag-pluck@7.2.7": + version "7.2.7" + resolved "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.2.7.tgz#c137a3460898c7f82fcab20b958010637009a9b1" + integrity sha512-leh6rVHNoGXjmbOtTaKNXQtFw4Gu7PokTlEOweNKYMssbH6L1zrKA0G4cE55s60JBo9SF4hjg8X7Gkech5t+mQ== dependencies: "@babel/parser" "^7.16.8" "@babel/traverse" "^7.16.8" "@babel/types" "^7.16.8" - "@graphql-tools/utils" "8.6.9" - tslib "~2.3.0" + "@graphql-tools/utils" "8.6.10" + tslib "~2.4.0" -"@graphql-tools/import@6.6.13": - version "6.6.13" - resolved "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.13.tgz#5561204a16ce3d1308aa96fb5e54cd1e550c748c" - integrity sha512-yqdCem+ZZFVAaIC2IxWyAXSEHLNPIuMzm4avTQe/LbYNRFRTpzyIYo3clc22ixeuh2LqSL3tLXKq2IsggCAeQw== +"@graphql-tools/import@6.6.14": + version "6.6.14" + resolved "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.14.tgz#d5bcbc23abc1563346081155afec003f4eb8e47b" + integrity sha512-XN6swtMdUxd9czmdNIK6yJ0w5t4FOUWSoSkYP0+to8j44r8zdM3nsAppoA0OLmsUY+JnTBgkW3jGlOFvqC3HWg== dependencies: - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/utils" "8.6.10" resolve-from "5.0.0" - tslib "~2.3.0" + tslib "~2.4.0" -"@graphql-tools/json-file-loader@^7.1.2", "@graphql-tools/json-file-loader@^7.3.2": - version "7.3.11" - resolved "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.11.tgz#2d4fde06136d97c1b3d3939699976fb11260a22c" - integrity sha512-3in/1y+OVKP3eJ8aloxWD2HdZLcZChgHRk5j3ey3C+ANTwoedIgTWcwxro+iLH40IZ7a6z+I/Lb2dEc8xlgwug== +"@graphql-tools/json-file-loader@^7.1.2", "@graphql-tools/json-file-loader@^7.3.7": + version "7.3.12" + resolved "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.12.tgz#e841e2539d5eeea0b0847fd002a3584c791e9d06" + integrity sha512-gmH6XFN7Alt/hGXeez6Jlp0/lHuY9O1rLVKq5w5FqslkQvWYg2dqzhn2U9jRqD42NbEmSQ5Sjhfkdmc4VT6OfA== dependencies: - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/utils" "8.6.10" globby "^11.0.3" - tslib "~2.3.0" + tslib "~2.4.0" unixify "^1.0.0" -"@graphql-tools/load@^7.3.0", "@graphql-tools/load@^7.4.1": - version "7.5.10" - resolved "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.10.tgz#6e53dd62ec081b3a2966ab9d93e8b991f06501b3" - integrity sha512-I9b9Md1DdB7Du//+x8CtBAKUW21jyuENCPssvlBjHZjvmx5cIGrTftqwGzuDBgR0Zm72tkmat/FTu6/SQPiyeQ== +"@graphql-tools/load@^7.3.0", "@graphql-tools/load@^7.5.5": + version "7.5.11" + resolved "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.11.tgz#0309054298b912321d6822e3f73c5f7ba0c84ea4" + integrity sha512-a8sD3iHfxcbIwP0nSxF+DUAVg+/MuLNOizVJHcZGGS8AdDoezUsnWRkNDT6FlVqRoxHNbkpq8+6B55JKtqHSxg== dependencies: - "@graphql-tools/schema" "8.3.10" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/schema" "8.3.11" + "@graphql-tools/utils" "8.6.10" p-limit "3.1.0" - tslib "~2.3.0" + tslib "~2.4.0" -"@graphql-tools/merge@8.2.10", "@graphql-tools/merge@^8.2.1": - version "8.2.10" - resolved "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.10.tgz#fe2fe5ad33dc2d1b0af8751c0c08d18bb6bb6d88" - integrity sha512-wpg22seOTNfkIO8jFAgo8w1BsT3IS2OTMpkCNf+dvcKSP09SVidYCOliyWHgjDCmpCrvvSjOX855NUKDx/Biew== +"@graphql-tools/merge@8.2.11", "@graphql-tools/merge@^8.2.6": + version "8.2.11" + resolved "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.11.tgz#0cdc6c9feb32e3392bf0c633881a78ccc1d24368" + integrity sha512-fsjJVdsk9GV1jj1Ed2AKLlHYlsf0ZadTK8X5KxFRE1ZSnKqh56BLVX93JrtOIAnsiHkwOK2TC43HGhApF1swpQ== dependencies: - "@graphql-tools/utils" "8.6.9" - tslib "~2.3.0" + "@graphql-tools/utils" "8.6.10" + tslib "~2.4.0" "@graphql-tools/mock@^8.1.2": - version "8.6.8" - resolved "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.6.8.tgz#232a23c0c14dcfca88012886230b93e6fc2303e2" - integrity sha512-zBZApp8dDAovWKZ0rkZ4CwDT8Z+B35pIyRjeHkxvtKt5XyEAabEwkuSYMyFdsghDWwhMD/VAZ/6DXtA62Hnf+A== + version "8.6.9" + resolved "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.6.9.tgz#78ba3498dbf0cf371afd8558dd714c013e932639" + integrity sha512-Pto23TeUkUn0BYI6UtclPbKjunXvOGtDO7DZC8KagDfgMTu0ZMNTovv0kq+sgJBsnqD4Q9eRkR4IetSujHQBsA== dependencies: - "@graphql-tools/schema" "8.3.10" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/schema" "8.3.11" + "@graphql-tools/utils" "8.6.10" fast-json-stable-stringify "^2.1.0" - tslib "~2.3.0" + tslib "~2.4.0" "@graphql-tools/optimize@^1.0.1": version "1.2.0" @@ -2565,12 +2534,12 @@ tslib "~2.3.0" "@graphql-tools/prisma-loader@^7.0.6": - version "7.1.13" - resolved "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-7.1.13.tgz#3b46e9d9414e71cfeb1a8284c945329eca77a190" - integrity sha512-rctgCI11ZjPJd4ncNTV7mmjV2WN2LRL3aTuTJWHjudO+iJPgoWyor0idl+aP0fOX2GnDK7zASmWwVShuGBJb9g== + version "7.1.20" + resolved "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-7.1.20.tgz#a64ac87a2511bbbd4fca163378c75ad8544cabd1" + integrity sha512-of7yQ/GDSqca54YjUC6FZlvmN3fXHT3VrpIbK0P0F9N2Z/cDK0E7OEF+YKS7jk8gUsFgM1+sfbFk5B11CTWP1Q== dependencies: - "@graphql-tools/url-loader" "7.9.14" - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/url-loader" "7.9.21" + "@graphql-tools/utils" "8.6.10" "@types/js-yaml" "^4.0.0" "@types/json-stable-stringify" "^1.0.32" "@types/jsonwebtoken" "^8.5.0" @@ -2587,40 +2556,39 @@ lodash "^4.17.20" replaceall "^0.1.6" scuid "^1.1.0" - tslib "~2.3.0" + tslib "~2.4.0" yaml-ast-parser "^0.0.43" "@graphql-tools/relay-operation-optimizer@^6.3.7": - version "6.4.9" - resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.9.tgz#f3e1960ac8e6429a09156836701a03ebf523f0e1" - integrity sha512-fHMR1bNyx+ryBnmtXWnYmxvQLEx0O3yIG0MTVB1Mp6GlsyKTGI3O9njvjv0EI2JmCszs1uakT/6BW0LO37E6tQ== + version "6.4.10" + resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.10.tgz#30bafaf6f35708784dceace430c793181efcef8e" + integrity sha512-a5wDdXP7MmwZDy9R8+RZ0ajJBWX1Lk9sIG6uSIo5G/LnGpXncgBhKpJf5r6rOf0zsFLWnAkYm/dCDMpFaGE/Yw== dependencies: - "@graphql-tools/utils" "8.6.9" + "@graphql-tools/utils" "8.6.10" relay-compiler "12.0.0" - tslib "~2.3.0" + tslib "~2.4.0" -"@graphql-tools/schema@8.3.10", "@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.1.1", "@graphql-tools/schema@^8.1.2", "@graphql-tools/schema@^8.3.1": - version "8.3.10" - resolved "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.10.tgz#c3e373e6ad854f533fc7e55859dd8f9e81de30dd" - integrity sha512-tfhjSTi3OzheDrVzG7rkPZg2BbQjmZRLM2vvQoM2b1TnUwgUIbpAgcnf+AWDLRsoCOWlezeLgij1BLeAR0Q0jg== +"@graphql-tools/schema@8.3.11", "@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.1.1", "@graphql-tools/schema@^8.1.2", "@graphql-tools/schema@^8.3.1": + version "8.3.11" + resolved "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.11.tgz#c0606b301852820a46042ebb888fd09cc402518a" + integrity sha512-esMEnbyXbp8B5VEI4o395+x0G7Qmz3JSX5onFBF8HeLYcqWJasY5vBuWkO18VxrZpEnvnryodP6Y00bVag9O3Q== dependencies: - "@graphql-tools/merge" "8.2.10" - "@graphql-tools/utils" "8.6.9" - tslib "~2.3.0" + "@graphql-tools/merge" "8.2.11" + "@graphql-tools/utils" "8.6.10" + tslib "~2.4.0" value-or-promise "1.0.11" -"@graphql-tools/url-loader@7.9.14", "@graphql-tools/url-loader@^7.0.11", "@graphql-tools/url-loader@^7.4.2": - version "7.9.14" - resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.14.tgz#9f76af9a6c55a0cf2e87ccf9b3be15eeb6af188c" - integrity sha512-7IXiqUYp0cHeM+qvgjM4jAq8uJhl3PDdQYkyIj5wzZ7XjrkdV3JjPt0cHj2IBIeEwQJOjEKNeFYXjOlg73guCQ== +"@graphql-tools/url-loader@7.9.21", "@graphql-tools/url-loader@^7.0.11", "@graphql-tools/url-loader@^7.9.7": + version "7.9.21" + resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.21.tgz#4ceeca79ac71ac0ed2358360ef6f94594033ed52" + integrity sha512-OPE08LVvKmeGyauWWksRYTBtQ1lB0kHUv2hofb0lOlD4TKURg53TwFopncof+1IT+1hTl3sLsERn7S5M1Z5PhQ== dependencies: - "@graphql-tools/delegate" "8.7.7" - "@graphql-tools/utils" "8.6.9" - "@graphql-tools/wrap" "8.4.16" - "@graphql-yoga/node" "2.3.0" + "@graphql-tools/delegate" "8.7.8" + "@graphql-tools/utils" "8.6.10" + "@graphql-tools/wrap" "8.4.17" "@n1ru4l/graphql-live-query" "^0.9.0" "@types/ws" "^8.0.0" - cross-undici-fetch "^0.3.0" + cross-undici-fetch "^0.4.0" dset "^3.1.0" extract-files "^11.0.0" graphql-ws "^5.4.1" @@ -2631,66 +2599,36 @@ value-or-promise "^1.0.11" ws "^8.3.0" -"@graphql-tools/utils@8.6.9", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.1", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.0": +"@graphql-tools/utils@8.6.10", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.5": + version "8.6.10" + resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.10.tgz#38e42a97a74ffcf5a21e816401e2ca1647194f6a" + integrity sha512-bJH9qwuyM3BP0PTU6/lvBDkk6jdEIOn+dbyk4pHMVNnvbJ1gZQwo62To8SHxxaUTus8OMhhVPSh9ApWXREURcg== + dependencies: + tslib "~2.4.0" + +"@graphql-tools/utils@8.6.9": version "8.6.9" resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.9.tgz#fe1b81df29c9418b41b7a1ffe731710b93d3a1fe" integrity sha512-Z1X4d4GCT81+8CSt6SgU4t1w1UAUsAIRb67mI90k/zAs+ArkB95iE3bWXuJCUmd1+r8DGGtmUNOArtd6wkt+OQ== dependencies: tslib "~2.3.0" -"@graphql-tools/wrap@8.4.16", "@graphql-tools/wrap@^8.3.1": - version "8.4.16" - resolved "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.16.tgz#87dce9ec623a921e5a62f44e75abc9655892724b" - integrity sha512-b3yz7uN0en44sBEv/fAEQIqdiCEM/gQJSaLyA7Z2hWJwM0gQ5kiq0XMwKvyUAIY8NGig7IywC7bbup5Jc2F35Q== +"@graphql-tools/wrap@8.4.17", "@graphql-tools/wrap@^8.3.1": + version "8.4.17" + resolved "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.17.tgz#7c8906a0a7d463aeff8d3c01e94095e93af42ee4" + integrity sha512-oXTNXuUsty2smv3wm9M0W3Pon+fofy9ItIgGT3xfHnJITCNC2GC1s29lhcr0pIZL4Tjp7oTlqMx+sPjLHETSzw== dependencies: - "@graphql-tools/delegate" "8.7.7" - "@graphql-tools/schema" "8.3.10" - "@graphql-tools/utils" "8.6.9" - tslib "~2.3.0" + "@graphql-tools/delegate" "8.7.8" + "@graphql-tools/schema" "8.3.11" + "@graphql-tools/utils" "8.6.10" + tslib "~2.4.0" value-or-promise "1.0.11" -"@graphql-typed-document-node/core@^3.1.0", "@graphql-typed-document-node/core@^3.1.1": +"@graphql-typed-document-node/core@^3.1.0": version "3.1.1" resolved "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.1.tgz#076d78ce99822258cf813ecc1e7fa460fa74d052" integrity sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg== -"@graphql-yoga/common@2.3.0": - version "2.3.0" - resolved "https://registry.npmjs.org/@graphql-yoga/common/-/common-2.3.0.tgz#29fa754d42bf01337facc1bca803ccf8a0186013" - integrity sha512-EPKK97953c8E1FiaLHMMGqLKtoAN5H9qHr0AiAzMlruJHn0JcbMf2qFTUXklCsuk6UEwNtxeHX42zim11O/E1g== - dependencies: - "@envelop/core" "^2.0.0" - "@envelop/disable-introspection" "^3.0.0" - "@envelop/parser-cache" "^4.0.0" - "@envelop/validation-cache" "^4.0.0" - "@graphql-tools/schema" "^8.3.1" - "@graphql-tools/utils" "^8.6.0" - "@graphql-typed-document-node/core" "^3.1.1" - "@graphql-yoga/subscription" "2.0.0" - cross-undici-fetch "^0.2.5" - dset "^3.1.1" - tslib "^2.3.1" - -"@graphql-yoga/node@2.3.0": - version "2.3.0" - resolved "https://registry.npmjs.org/@graphql-yoga/node/-/node-2.3.0.tgz#e22f29f179707a07a720507b7af3c44ad65499b5" - integrity sha512-uofEmKIDYthJuCcdhbgU0VW5i2cCqZVKIiEW/xbwvCOBJt439k46D+M6youiQYJ1miaA/m0btbuZ1sAo/TLjdQ== - dependencies: - "@envelop/core" "^2.0.0" - "@graphql-tools/utils" "^8.6.0" - "@graphql-yoga/common" "2.3.0" - "@graphql-yoga/subscription" "2.0.0" - cross-undici-fetch "^0.2.5" - tslib "^2.3.1" - -"@graphql-yoga/subscription@2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-2.0.0.tgz#8c6d3d78b2938a554efced7fd6c80cfaa80f7b8f" - integrity sha512-HlG+gIddjIP3/BDrMZymdzmzDjNdYuSGMxx6+1JA83gAEVRDR4yOoT4QeNKYqRhLK9xca/Hxp1PfBpquSa244Q== - dependencies: - "@repeaterjs/repeater" "^3.0.4" - tslib "^2.3.1" - "@grpc/grpc-js@~1.6.0": version "1.6.7" resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz#4c4fa998ff719fe859ac19fe977fdef097bb99aa" @@ -2711,14 +2649,14 @@ yargs "^16.2.0" "@hapi/hoek@^9.0.0": - version "9.0.4" - resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.0.4.tgz#e80ad4e8e8d2adc6c77d985f698447e8628b6010" - integrity sha512-EwaJS7RjoXUZ2cXXKZZxZqieGtc7RbvQhUy8FwDoMQtxWVi14tFjeFCYPZAM1mBCpOpiBpyaZbb9NeHc7eGKgw== + version "9.3.0" + resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" + integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== "@hapi/topo@^5.0.0": - version "5.0.0" - resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.0.0.tgz#c19af8577fa393a06e9c77b60995af959be721e7" - integrity sha512-tFJlT47db0kMqVm3H4nQYgn6Pwg10GTZHb1pwmSiv1K4ks6drQOtfEF5ZnPjkvC+y4/bUPHK+bc87QvLcL+WMw== + version "5.1.0" + resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" + integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== dependencies: "@hapi/hoek" "^9.0.0" @@ -2742,9 +2680,9 @@ scheduler "^0.20.2" "@humanwhocodes/config-array@^0.9.2": - version "0.9.2" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz#68be55c737023009dfc5fe245d51181bb6476914" - integrity sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA== + version "0.9.5" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7" + integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw== dependencies: "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" @@ -2776,19 +2714,20 @@ integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== "@istanbuljs/load-nyc-config@^1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b" - integrity sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg== + version "1.1.0" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" find-up "^4.1.0" + get-package-type "^0.1.0" js-yaml "^3.13.1" resolve-from "^5.0.0" "@istanbuljs/schema@^0.1.2": - version "0.1.2" - resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" - integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== + version "0.1.3" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/console@^27.5.1": version "27.5.1" @@ -2959,17 +2898,6 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^27.2.5": - version "27.2.5" - resolved "https://registry.npmjs.org/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132" - integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" @@ -3316,18 +3244,10 @@ resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== -"@jridgewell/trace-mapping@0.3.9": - version "0.3.9" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" - integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== - dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping@^0.3.0": - version "0.3.4" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" - integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== + version "0.3.10" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.10.tgz#db436f0917d655393851bc258918c00226c9b183" + integrity sha512-Q0YbBd6OTsXm8Y21+YUSDXupHnodNC2M4O18jtd3iwJ3+vMZNdKGols0a9G6JOK0dcJ3IdUUHoh908ZI6qhk8Q== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" @@ -3386,9 +3306,9 @@ ws "^7.3.1" "@leichtgewicht/ip-codec@^2.0.1": - version "2.0.3" - resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz#0300943770e04231041a51bd39f0439b5c7ab4f0" - integrity sha512-nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg== + version "2.0.4" + resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" + integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== "@lerna/add@4.0.0": version "4.0.0" @@ -4074,9 +3994,9 @@ "@lezer/common" "^0.16.0" "@lezer/lr@^0.16.0": - version "0.16.1" - resolved "https://registry.npmjs.org/@lezer/lr/-/lr-0.16.1.tgz#abe8c538d3f1a811ce5731847e3d0470c7709dcd" - integrity sha512-RuRD84dWY9If8BanfaaWNe0YhRdYWtni92GpB4C4/7JgHyAIfdkJz7miBjgILm3gOsBjJsJh56vb1ckxSQEWBg== + version "0.16.2" + resolved "https://registry.npmjs.org/@lezer/lr/-/lr-0.16.2.tgz#a26e2572b6acf60815b12d898341ed02464f1c5e" + integrity sha512-bx7kkp4eLOzp+YclKMOx1P0OzWRH/6Y3EdEvsHC+rhsc7H72GvccwlKfuXlWkiKjnmzlxLTFxsNjA8v+Yj75mQ== dependencies: "@lezer/common" "^0.16.0" @@ -4103,24 +4023,24 @@ read-yaml-file "^1.1.0" "@mapbox/node-pre-gyp@^1.0.0": - version "1.0.5" - resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz#2a0b32fcb416fb3f2250fd24cb2a81421a4f5950" - integrity sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA== + version "1.0.9" + resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz#09a8781a3a036151cdebbe8719d6f8b25d4058bc" + integrity sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw== dependencies: - detect-libc "^1.0.3" + detect-libc "^2.0.0" https-proxy-agent "^5.0.0" make-dir "^3.1.0" - node-fetch "^2.6.1" + node-fetch "^2.6.7" nopt "^5.0.0" - npmlog "^4.1.2" + npmlog "^5.0.1" rimraf "^3.0.2" - semver "^7.3.4" - tar "^6.1.0" + semver "^7.3.5" + tar "^6.1.11" "@material-table/core@^3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@material-table/core/-/core-3.1.0.tgz#4fc3bd1553359e628413437a4102d8469852c253" - integrity sha512-46vpm1q9v2B5t/VgaEq2JmnftTBYle1yNAX3cfdQsTRZ1iWkpG34qBkNHx/hbOauQPsm5hmeUo1KJJZdwtGL1g== + version "3.2.5" + resolved "https://registry.npmjs.org/@material-table/core/-/core-3.2.5.tgz#37b3c665bed3ded6c147ad74adb330bf49efb213" + integrity sha512-TmVN/In15faabezW3COb4Ve5+YhqxFEQnf2Q2Cz3FVXXCFqJvtu3pkRLi+7N9UJ5bvistszz6wfHeiZZY1Rf9Q== dependencies: "@babel/runtime" "^7.12.5" "@date-io/date-fns" "^1.3.13" @@ -4133,6 +4053,7 @@ prop-types "^15.7.2" react-beautiful-dnd "^13.0.0" react-double-scrollbar "0.0.15" + uuid "^3.4.0" "@material-ui/core@^4.11.0", "@material-ui/core@^4.11.3", "@material-ui/core@^4.12.1", "@material-ui/core@^4.12.2", "@material-ui/core@^4.9.10", "@material-ui/core@^4.9.13": version "4.12.4" @@ -4263,38 +4184,38 @@ "@types/gapi.client" "*" "@microsoft/api-documenter@^7.17.11": - version "7.17.11" - resolved "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.17.11.tgz#7f1b50e610e45f581ff4344c73b184d822e6bc11" - integrity sha512-VdCu4eG5RISGEiG/hFO3jaN3gEgMZVXZRFpch/PQzrLO3Vh2QhZTz2LsZ2SYyb7UwBZCK9Z76ULv5cGoflylNA== + version "7.17.13" + resolved "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.17.13.tgz#a3b397f3192b584185077282693c01adbae2587a" + integrity sha512-EGH1M70QS/NibdlmC33/wj5a9rSbzdWNQekvd/RdD0nDB/tNOamjmaBISEOg5y7DFLn18sZhwDKD/Q9jtYtN3g== dependencies: - "@microsoft/api-extractor-model" "7.17.2" + "@microsoft/api-extractor-model" "7.17.3" "@microsoft/tsdoc" "0.14.1" - "@rushstack/node-core-library" "3.45.4" - "@rushstack/ts-command-line" "4.10.10" + "@rushstack/node-core-library" "3.45.5" + "@rushstack/ts-command-line" "4.11.0" colors "~1.2.1" js-yaml "~3.13.1" resolve "~1.17.0" -"@microsoft/api-extractor-model@7.17.2", "@microsoft/api-extractor-model@^7.17.2": - version "7.17.2" - resolved "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.17.2.tgz#033b39a7bac4f3eee3e5ffd406d2af61cedc727e" - integrity sha512-fYfCeBeLm7jnZligC64qHiH4/vzswFLDfyPpX+uKO36OI2kIeMHrYG0zaezmuinKvE4vg1dAz38zZeDbPvBKGg== +"@microsoft/api-extractor-model@7.17.3", "@microsoft/api-extractor-model@^7.17.2": + version "7.17.3" + resolved "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.17.3.tgz#06899902ab1c10b85690232f21c1585cc158d983" + integrity sha512-ETslFxVEZTEK6mrOARxM34Ll2W/5H2aTk9Pe9dxsMCnthE8O/CaStV4WZAGsvvZKyjelSWgPVYGowxGVnwOMlQ== dependencies: "@microsoft/tsdoc" "0.14.1" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.45.4" + "@rushstack/node-core-library" "3.45.5" "@microsoft/api-extractor@^7.23.0": - version "7.23.0" - resolved "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.23.0.tgz#8bd5a197e04b0ba92fb85e0f53b4d7cadd0a95b2" - integrity sha512-fbdX05RVE1EMA7nvyRHuS9nx1pryhjgURDx6pQlE/9yOXQ5PO7MpYdfWGaRsQwyYuU3+tPxgro819c0R3AK6KA== + version "7.23.2" + resolved "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.23.2.tgz#fb3c4a94751ba6759b8038d3405dda5da17c82b1" + integrity sha512-0LABOAmsHDomKihjoqLvY0mR1dh7R7fqB0O6qrjqAgQGBPxlRJCDH1tzFzlDS2OdeCxhMtFB3xd8EAr44huujg== dependencies: - "@microsoft/api-extractor-model" "7.17.2" + "@microsoft/api-extractor-model" "7.17.3" "@microsoft/tsdoc" "0.14.1" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.45.4" + "@rushstack/node-core-library" "3.45.5" "@rushstack/rig-package" "0.3.11" - "@rushstack/ts-command-line" "4.10.10" + "@rushstack/ts-command-line" "4.11.0" colors "~1.2.1" lodash "~4.17.15" resolve "~1.17.0" @@ -4380,52 +4301,29 @@ integrity sha512-BTpWy1e+FxN82RnLz4x1+JcEewVdfmUhV1C6/XYD5AjS7PQp9QFF7K8bCD6gzPTr2l+prvqOyVueQhFJxB1vfg== "@n1ru4l/push-pull-async-iterable-iterator@^3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@n1ru4l/push-pull-async-iterable-iterator/-/push-pull-async-iterable-iterator-3.1.0.tgz#be450c97d1c7cd6af1a992d53232704454345df9" - integrity sha512-K4scWxGhdQM0masHHy4gIQs2iGiLEXCrXttumknyPJqtdl4J179BjpibWSSQ1fxKdCcHgIlCTKXJU6cMM6D6Wg== + version "3.2.0" + resolved "https://registry.npmjs.org/@n1ru4l/push-pull-async-iterable-iterator/-/push-pull-async-iterable-iterator-3.2.0.tgz#c15791112db68dd9315d329d652b7e797f737655" + integrity sha512-3fkKj25kEjsfObL6IlKPAlHYPq/oYwUkkQ03zsTTiDjD7vg/RxjdiLeCydqtxHZP0JgsXL3D/X5oAkMGzuUp/Q== -"@nestjs/common@8.4.4": - version "8.4.4" - resolved "https://registry.npmjs.org/@nestjs/common/-/common-8.4.4.tgz#0914c6c0540b5a344c7c8fd6072faa1a49af1158" - integrity sha512-QHi7QcgH/5Jinz+SCfIZJkFHc6Cch1YsAEGFEhi6wSp6MILb0sJMQ1CX06e9tCOAjSlBwaJj4PH0eFCVau5v9Q== +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - axios "0.26.1" - iterare "1.2.1" - tslib "2.3.1" - uuid "8.3.2" - -"@nestjs/core@8.4.4": - version "8.4.4" - resolved "https://registry.npmjs.org/@nestjs/core/-/core-8.4.4.tgz#94fd2d63fd77791f616fbecafb79faa2235eeeff" - integrity sha512-Ef3yJPuzAttpNfehnGqIV5kHIL9SHptB5F4ERxoU7pT61H3xiYpZw6hSjx68cJO7cc6rm7/N+b4zeuJvFHtvBg== - dependencies: - "@nuxtjs/opencollective" "0.3.2" - fast-safe-stringify "2.1.1" - iterare "1.2.1" - object-hash "3.0.0" - path-to-regexp "3.2.0" - tslib "2.3.1" - uuid "8.3.2" - -"@nodelib/fs.scandir@2.1.3": - version "2.1.3" - resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" - integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== - dependencies: - "@nodelib/fs.stat" "2.0.3" + "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": - version "2.0.3" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" - integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": - version "1.2.4" - resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" - integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== + version "1.2.8" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: - "@nodelib/fs.scandir" "2.1.3" + "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" "@npmcli/arborist@^4.0.4": @@ -4467,19 +4365,27 @@ walk-up-path "^1.0.0" "@npmcli/ci-detect@^1.0.0": - version "1.3.0" - resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.3.0.tgz#6c1d2c625fb6ef1b9dea85ad0a5afcbef85ef22a" - integrity sha512-oN3y7FAROHhrAt7Rr7PnTSwrHrZVRTS2ZbyxeQwSSYD0ifwM3YNgQqbaRmjcWoPyq77MjchusjJDspbzMmip1Q== + version "1.4.0" + resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" + integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== "@npmcli/fs@^1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" - integrity sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ== + version "1.1.1" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== dependencies: "@gar/promisify" "^1.0.1" semver "^7.3.5" -"@npmcli/git@^2.0.1", "@npmcli/git@^2.1.0": +"@npmcli/fs@^2.1.0": + version "2.1.0" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz#f2a21c28386e299d1a9fae8051d35ad180e33109" + integrity sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ== + dependencies: + "@gar/promisify" "^1.1.3" + semver "^7.3.5" + +"@npmcli/git@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== @@ -4502,14 +4408,14 @@ npm-normalize-package-bin "^1.0.1" "@npmcli/map-workspaces@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.0.tgz#e342efbbdd0dad1bba5d7723b674ca668bf8ac5a" - integrity sha512-QBJfpCY1NOAkkW3lFfru9VTdqvMB2TN0/vrevl5xBCv5Fi0XDVcA6rqqSau4Ysi4Iw3fBzyXV7hzyTBDfadf7g== + version "2.0.3" + resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.3.tgz#2d3c75119ee53246e9aa75bc469a55281cd5f08f" + integrity sha512-X6suAun5QyupNM8iHkNPh0AHdRC2rb1W+MTdMvvA/2ixgmqZwlq5cGUBgmKHUHT2LgrkKJMAXbfAoTxOigpK8Q== dependencies: "@npmcli/name-from-folder" "^1.0.1" - glob "^7.1.6" - minimatch "^3.0.4" - read-package-json-fast "^2.0.1" + glob "^8.0.1" + minimatch "^5.0.1" + read-package-json-fast "^2.0.3" "@npmcli/metavuln-calculator@^2.0.0": version "2.0.0" @@ -4521,14 +4427,7 @@ pacote "^12.0.0" semver "^7.3.2" -"@npmcli/move-file@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" - integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== - dependencies: - mkdirp "^1.0.4" - -"@npmcli/move-file@^1.1.0": +"@npmcli/move-file@^1.0.1", "@npmcli/move-file@^1.1.0": version "1.1.2" resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== @@ -4536,6 +4435,14 @@ mkdirp "^1.0.4" rimraf "^3.0.2" +"@npmcli/move-file@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.0.tgz#417f585016081a0184cef3e38902cd917a9bbd02" + integrity sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + "@npmcli/name-from-folder@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" @@ -4561,15 +4468,13 @@ infer-owner "^1.0.4" "@npmcli/run-script@^1.8.2": - version "1.8.3" - resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.3.tgz#07f440ed492400bb1114369bc37315eeaaae2bb3" - integrity sha512-ELPGWAVU/xyU+A+H3pEPj0QOvYwLTX71RArXcClFzeiyJ/b/McsZ+d0QxpznvfFtZzxGN/gz/1cvlqICR4/suQ== + version "1.8.6" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" + integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== dependencies: "@npmcli/node-gyp" "^1.0.2" "@npmcli/promise-spawn" "^1.3.2" - infer-owner "^1.0.4" node-gyp "^7.1.0" - puka "^1.0.1" read-package-json-fast "^2.0.1" "@npmcli/run-script@^2.0.0": @@ -4621,41 +4526,29 @@ universal-user-agent "^6.0.0" "@octokit/auth-oauth-app@^4.0.0", "@octokit/auth-oauth-app@^4.3.0": - version "4.3.0" - resolved "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.0.tgz#de02f184360ffd7cfccef861053784fc4410e7ea" - integrity sha512-cETmhmOQRHCz6cLP7StThlJROff3A/ln67Q961GuIr9zvyFXZ4lIJy9RE6Uw5O7D8IXWPU3jhDnG47FTSGQr8Q== + version "4.3.1" + resolved "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.1.tgz#c5c423f17519eb7e039a7d60936dfb869c7bdf36" + integrity sha512-FXkKcGtTXS2987rp11mSuhMOXDw8Iy/ED9aXs83T29VeMEWjv40q4ytC0voUDxkBC/of1QYOPQUAdI2tv/dwNg== dependencies: "@octokit/auth-oauth-device" "^3.1.1" "@octokit/auth-oauth-user" "^1.2.1" - "@octokit/request" "^5.3.0" + "@octokit/request" "^5.6.3" "@octokit/types" "^6.0.3" "@types/btoa-lite" "^1.0.0" btoa-lite "^1.0.0" universal-user-agent "^6.0.0" "@octokit/auth-oauth-device@^3.1.1": - version "3.1.1" - resolved "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.1.tgz#380499f9a850425e2c7bdeb62afc070181c536a9" - integrity sha512-ykDZROilszXZJ6pYdl6SZ15UZniCs0zDcKgwOZpMz3U0QDHPUhFGXjHToBCAIHwbncMu+jLt4/Nw4lq3FwAw/w== + version "3.1.2" + resolved "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.2.tgz#d299f51f491669f37fe7af8738f5ac921e63973c" + integrity sha512-w7Po4Ck6N2aAn2VQyKLuojruiyKROTBv4qs6IwE5rbwF7HhBXXp4A/NKmkpoFIZkiXQtM+N8QtkSck4ApYWdGg== dependencies: "@octokit/oauth-methods" "^1.1.0" "@octokit/request" "^5.4.14" "@octokit/types" "^6.10.0" universal-user-agent "^6.0.0" -"@octokit/auth-oauth-user@^1.2.1", "@octokit/auth-oauth-user@^1.2.3": - version "1.2.4" - resolved "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.2.4.tgz#3594eb7d40cb462240e7e90849781dfa0045aed5" - integrity sha512-efOajupCZBP1veqx5w59Qey0lIud1rDUgxTRjjkQDU3eOBmkAasY1pXemDsQwW0I85jb1P/gn2dMejedVxf9kw== - dependencies: - "@octokit/auth-oauth-device" "^3.1.1" - "@octokit/oauth-methods" "^1.1.0" - "@octokit/request" "^5.4.14" - "@octokit/types" "^6.12.2" - btoa-lite "^1.0.0" - universal-user-agent "^6.0.0" - -"@octokit/auth-oauth-user@^1.3.0": +"@octokit/auth-oauth-user@^1.2.1", "@octokit/auth-oauth-user@^1.2.3", "@octokit/auth-oauth-user@^1.3.0": version "1.3.0" resolved "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.3.0.tgz#da4e4529145181a6aa717ae858afb76ebd6e3360" integrity sha512-3QC/TAdk7onnxfyZ24BnJRfZv8TRzQK7SEFUS9vLng4Vv6Hv6I64ujdk/CUkREec8lhrwU764SZ/d+yrjjqhaQ== @@ -4668,11 +4561,11 @@ universal-user-agent "^6.0.0" "@octokit/auth-token@^2.4.4": - version "2.4.4" - resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz#ee31c69b01d0378c12fd3ffe406030f3d94d3b56" - integrity sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q== + version "2.5.0" + resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" + integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== dependencies: - "@octokit/types" "^6.0.0" + "@octokit/types" "^6.0.3" "@octokit/auth-unauthenticated@^2.0.0", "@octokit/auth-unauthenticated@^2.0.4": version "2.1.0" @@ -4682,39 +4575,27 @@ "@octokit/request-error" "^2.1.0" "@octokit/types" "^6.0.3" -"@octokit/core@^3.2.3": - version "3.2.4" - resolved "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz#5791256057a962eca972e31818f02454897fd106" - integrity sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg== - dependencies: - "@octokit/auth-token" "^2.4.4" - "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.4.12" - "@octokit/types" "^6.0.3" - before-after-hook "^2.1.0" - universal-user-agent "^6.0.0" - "@octokit/core@^3.3.2", "@octokit/core@^3.4.0", "@octokit/core@^3.5.1": - version "3.5.1" - resolved "https://registry.npmjs.org/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" - integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw== + version "3.6.0" + resolved "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" + integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== dependencies: "@octokit/auth-token" "^2.4.4" "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.6.0" + "@octokit/request" "^5.6.3" "@octokit/request-error" "^2.0.5" "@octokit/types" "^6.0.3" before-after-hook "^2.2.0" universal-user-agent "^6.0.0" "@octokit/endpoint@^6.0.1": - version "6.0.3" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487" - integrity sha512-Y900+r0gIz+cWp6ytnkibbD95ucEzDSKzlEnaWS52hbCDNcCJYO5mRmWW7HRAnDc7am+N/5Lnd8MppSaTYx1Yg== + version "6.0.12" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" + integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== dependencies: - "@octokit/types" "^5.0.0" - is-plain-object "^3.0.0" - universal-user-agent "^5.0.0" + "@octokit/types" "^6.0.3" + is-plain-object "^5.0.0" + universal-user-agent "^6.0.0" "@octokit/graphql@^4.5.8": version "4.8.0" @@ -4740,28 +4621,12 @@ fromentries "^1.3.1" universal-user-agent "^6.0.0" -"@octokit/oauth-authorization-url@^4.2.1": +"@octokit/oauth-authorization-url@^4.2.1", "@octokit/oauth-authorization-url@^4.3.1": version "4.3.3" resolved "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.3.tgz#6a6ef38f243086fec882b62744f39b517528dfb9" integrity sha512-lhP/t0i8EwTmayHG4dqLXgU+uPVys4WD/qUNvC+HfB1S1dyqULm5Yx9uKc1x79aP66U1Cb4OZeW8QU/RA9A4XA== -"@octokit/oauth-authorization-url@^4.3.1": - version "4.3.1" - resolved "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.1.tgz#008d09bf427a7f61c70b5283040d60a456011a51" - integrity sha512-sI/SOEAvzRhqdzj+kJl+2ifblRve2XU6ZB36Lq25Su8R31zE3GoKToSLh64nWFnKePNi2RrdcMm94UEIQZslOw== - -"@octokit/oauth-methods@^1.1.0": - version "1.2.2" - resolved "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.2.tgz#3d98c548aa2ace36ad8d0ce6593fd49dcbe103cc" - integrity sha512-CFMUMn9DdPLMcpffhKgkwIIClfv0ZToJM4qcg4O0egCoHMYkVlxl22bBoo9qCnuF1U/xn871KEXuozKIX+bA2w== - dependencies: - "@octokit/oauth-authorization-url" "^4.3.1" - "@octokit/request" "^5.4.14" - "@octokit/request-error" "^2.0.5" - "@octokit/types" "^6.12.2" - btoa-lite "^1.0.0" - -"@octokit/oauth-methods@^1.2.2": +"@octokit/oauth-methods@^1.1.0", "@octokit/oauth-methods@^1.2.2": version "1.2.6" resolved "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.6.tgz#b9ac65e374b2cc55ee9dd8dcdd16558550438ea7" integrity sha512-nImHQoOtKnSNn05uk2o76om1tJWiAo4lOu2xMAHYsNr0fwopP+Dv+2MlGvaMMlFjoqVd3fF3X5ZDTKCsqgmUaQ== @@ -4777,11 +4642,6 @@ resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== -"@octokit/openapi-types@^7.3.2": - version "7.3.2" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.3.2.tgz#065ce49b338043ec7f741316ce06afd4d459d944" - integrity sha512-oJhK/yhl9Gt430OrZOzAl2wJqR0No9445vmZ9Ey8GjUZUpwuu/vmEFP0TDhDXdpGDoxD6/EIFHJEcY8nHXpDTA== - "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" @@ -4794,31 +4654,11 @@ dependencies: "@octokit/types" "^6.34.0" -"@octokit/plugin-paginate-rest@^2.6.2": - version "2.7.0" - resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.7.0.tgz#6bb7b043c246e0654119a6ec4e72a172c9e2c7f3" - integrity sha512-+zARyncLjt9b0FjqPAbJo4ss7HOlBi1nprq+cPlw5vu2+qjy7WvlXhtXFdRHQbSL1Pt+bfAKaLADEkkvg8sP8w== - dependencies: - "@octokit/types" "^6.0.1" - -"@octokit/plugin-request-log@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz#394d59ec734cd2f122431fbaf05099861ece3c44" - integrity sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg== - "@octokit/plugin-request-log@^1.0.4": version "1.0.4" resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== -"@octokit/plugin-rest-endpoint-methods@5.3.1": - version "5.3.1" - resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.3.1.tgz#deddce769b4ec3179170709ab42e4e9e6195aaa9" - integrity sha512-3B2iguGmkh6bQQaVOtCsS0gixrz8Lg0v4JuXPqBcFqLKuJtxAUf3K88RxMEf/naDOI73spD+goJ/o7Ie7Cvdjg== - dependencies: - "@octokit/types" "^6.16.2" - deprecation "^2.3.1" - "@octokit/plugin-rest-endpoint-methods@^5.12.0": version "5.13.0" resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" @@ -4836,9 +4676,9 @@ bottleneck "^2.15.3" "@octokit/plugin-throttling@^3.5.1": - version "3.5.2" - resolved "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.5.2.tgz#8b1797a5f14edbca0b8af619394056ed0ed5c9b5" - integrity sha512-Eu7kfJxU8vmHqWGNszWpg+GVp2tnAfax3XQV5CkYPEE69C+KvInJXW9WajgSeW+cxYe0UVdouzCtcreGNuJo7A== + version "3.6.2" + resolved "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.6.2.tgz#abfc045309b8e46f6d6b6c01047eb41c4031f2f8" + integrity sha512-0az5fxgVlhFfFtiKLKVXTpmCG2tK3BG0fYI8SO4pmGlN1kyJktJVQA+6KKaFxtxMIWsuHmSEAkR6zSgtk86g2A== dependencies: "@octokit/types" "^6.0.1" bottleneck "^2.15.3" @@ -4852,7 +4692,7 @@ deprecation "^2.0.0" once "^1.4.0" -"@octokit/request@^5.3.0", "@octokit/request@^5.4.12", "@octokit/request@^5.4.14", "@octokit/request@^5.6.0": +"@octokit/request@^5.4.12", "@octokit/request@^5.4.14", "@octokit/request@^5.6.0", "@octokit/request@^5.6.3": version "5.6.3" resolved "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== @@ -4864,17 +4704,7 @@ node-fetch "^2.6.7" universal-user-agent "^6.0.0" -"@octokit/rest@^18.1.0", "@octokit/rest@^18.5.3": - version "18.5.6" - resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.6.tgz#8c9a7c9329c7bbf478af20df78ddeab0d21f6d89" - integrity sha512-8HdG6ZjQdZytU6tCt8BQ2XLC7EJ5m4RrbyU/EARSkAM1/HP3ceOzMG/9atEfe17EDMer3IVdHWLedz2wDi73YQ== - dependencies: - "@octokit/core" "^3.2.3" - "@octokit/plugin-paginate-rest" "^2.6.2" - "@octokit/plugin-request-log" "^1.0.2" - "@octokit/plugin-rest-endpoint-methods" "5.3.1" - -"@octokit/rest@^18.12.0": +"@octokit/rest@^18.1.0", "@octokit/rest@^18.12.0", "@octokit/rest@^18.5.3": version "18.12.0" resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== @@ -4884,21 +4714,14 @@ "@octokit/plugin-request-log" "^1.0.4" "@octokit/plugin-rest-endpoint-methods" "^5.12.0" -"@octokit/types@^5.0.0", "@octokit/types@^5.0.1": +"@octokit/types@^5.0.1": version "5.5.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-5.5.0.tgz#e5f06e8db21246ca102aa28444cdb13ae17a139b" integrity sha512-UZ1pErDue6bZNjYOotCNveTXArOMZQFG6hKJfOnGnulVCMcVVi7YIIuuR4WfBhjo7zgpmzn/BkPDnUXtNx+PcQ== dependencies: "@types/node" ">= 8" -"@octokit/types@^6.0.0", "@octokit/types@^6.0.1", "@octokit/types@^6.0.3", "@octokit/types@^6.10.0", "@octokit/types@^6.12.2", "@octokit/types@^6.14.2", "@octokit/types@^6.16.1", "@octokit/types@^6.16.2", "@octokit/types@^6.8.2": - version "6.16.4" - resolved "https://registry.npmjs.org/@octokit/types/-/types-6.16.4.tgz#d24f5e1bacd2fe96d61854b5bda0e88cf8288dfe" - integrity sha512-UxhWCdSzloULfUyamfOg4dJxV9B+XjgrIZscI0VCbp4eNrjmorGEw+4qdwcpTsu6DIrm9tQsFQS2pK5QkqQ04A== - dependencies: - "@octokit/openapi-types" "^7.3.2" - -"@octokit/types@^6.26.0", "@octokit/types@^6.27.1", "@octokit/types@^6.34.0": +"@octokit/types@^6.0.1", "@octokit/types@^6.0.3", "@octokit/types@^6.10.0", "@octokit/types@^6.12.2", "@octokit/types@^6.14.2", "@octokit/types@^6.16.1", "@octokit/types@^6.26.0", "@octokit/types@^6.27.1", "@octokit/types@^6.34.0", "@octokit/types@^6.8.2": version "6.34.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== @@ -4931,12 +4754,11 @@ integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== "@openapi-contrib/openapi-schema-to-json-schema@^3.0.0": - version "3.0.3" - resolved "https://registry.npmjs.org/@openapi-contrib/openapi-schema-to-json-schema/-/openapi-schema-to-json-schema-3.0.3.tgz#c626eab186938f2751ee54ec68b345133bc0065c" - integrity sha512-/WX/Jos8n7CxvtWPmhlKl9qCAAW0I+VR+V4yXfQxCmB8wmjiz6lPLTGjNk5zD15qi2MGv58++hQLLdow89KdkA== + version "3.1.2" + resolved "https://registry.npmjs.org/@openapi-contrib/openapi-schema-to-json-schema/-/openapi-schema-to-json-schema-3.1.2.tgz#d4c1b0d4687292805482118c126b3c1e2a4e6bdd" + integrity sha512-dQVj/0CaXMw16eongqqxmKkdwNd5RxAC8JzsA/ICj0v6oz5cLetFQoMGwwfqsOXrfkdXUnRdqIRKIhC7TfFeyQ== dependencies: fast-deep-equal "^3.1.3" - lodash.clonedeep "^4.5.0" "@openapitools/openapi-generator-cli@^2.4.26": version "2.5.1" @@ -4960,9 +4782,9 @@ tslib "2.0.3" "@opentelemetry/api@^1.0.1": - version "1.0.4" - resolved "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz#a167e46c10d05a07ab299fc518793b0cff8f6924" - integrity sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog== + version "1.1.0" + resolved "https://registry.npmjs.org/@opentelemetry/api/-/api-1.1.0.tgz#563539048255bbe1a5f4f586a4a10a1bb737f44a" + integrity sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ== "@panva/asn1.js@^1.0.0": version "1.0.0" @@ -5041,11 +4863,6 @@ dependencies: "@react-hookz/deep-equal" "^1.0.2" -"@repeaterjs/repeater@^3.0.4": - version "3.0.4" - resolved "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.4.tgz#a04d63f4d1bf5540a41b01a921c9a7fddc3bd1ca" - integrity sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA== - "@rjsf/core@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@rjsf/core/-/core-3.2.1.tgz#8a7b24c9a6f01f0ecb093fdfc777172c12b1b009" @@ -5205,17 +5022,17 @@ picomatch "^2.2.2" "@rollup/pluginutils@^4.1.1": - version "4.1.1" - resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz#1d4da86dd4eded15656a57d933fda2b9a08d47ec" - integrity sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ== + version "4.2.1" + resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz#e6c6c3aba0744edce3fb2074922d3776c0af2a6d" + integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ== dependencies: estree-walker "^2.0.1" picomatch "^2.2.2" -"@rushstack/node-core-library@3.45.4": - version "3.45.4" - resolved "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.4.tgz#a5e1246c462940d16a5acc667c1ffe460b514087" - integrity sha512-FMoEQWjK7nWAO2uFgV1eVpVhY9ZDGOdIIomi9zTej64cKJ+8/Nvu+ny0xKaUDEjw/ALftN2D2ml7L0RDpW/Z9g== +"@rushstack/node-core-library@3.45.5": + version "3.45.5" + resolved "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.5.tgz#00f92143cc21c3ad94fcd81ba168a40ac8cb77f2" + integrity sha512-KbN7Hp9vH3bD3YJfv6RnVtzzTAwGYIBl7y2HQLY4WEQqRbvE3LgI78W9l9X+cTAXCX//p0EeoiUYNTFdqJrMZg== dependencies: "@types/node" "12.20.24" colors "~1.2.1" @@ -5235,10 +5052,10 @@ resolve "~1.17.0" strip-json-comments "~3.1.1" -"@rushstack/ts-command-line@4.10.10": - version "4.10.10" - resolved "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.10.10.tgz#69da17b03ce57795b67ea2aabf7c976c81816078" - integrity sha512-F+MH7InPDXqX40qvvcEsnvPpmg566SBpfFqj2fcCh8RjM6AyOoWlXc8zx7giBD3ZN85NVAEjZAgrcLU0z+R2yg== +"@rushstack/ts-command-line@4.11.0": + version "4.11.0" + resolved "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.11.0.tgz#4cd3b9f59b41aed600042936260fdaa55ca0184d" + integrity sha512-ptG9L0mjvJ5QtK11GsAFY+jGfsnqHDS6CY6Yw1xT7a9bhjfNYnf6UPwjV+pF6UgiucfNcMDNW9lkDLxvZKKxMg== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" @@ -5246,16 +5063,16 @@ string-argv "~0.3.1" "@samverschueren/stream-to-observable@^0.3.0": - version "0.3.0" - resolved "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" - integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== + version "0.3.1" + resolved "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz#a21117b19ee9be70c379ec1877537ef2e1c63301" + integrity sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ== dependencies: any-observable "^0.3.0" -"@sideway/address@^4.1.0": - version "4.1.1" - resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.1.tgz#9e321e74310963fdf8eebfbee09c7bd69972de4d" - integrity sha512-+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ== +"@sideway/address@^4.1.3": + version "4.1.4" + resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" + integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== dependencies: "@hapi/hoek" "^9.0.0" @@ -5275,9 +5092,9 @@ integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== "@sindresorhus/is@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.0.tgz#2ff674e9611b45b528896d820d3d7a812de2f0e4" - integrity sha512-FyD2meJpDPjyNQejSjvnhpgI/azsQkA4lGbuu5BQZfjvJ9cbRZXzeWL2HceCekW4lixO9JPesIIQkSoLjeJHNQ== + version "4.6.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" + integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.3": version "1.8.3" @@ -5315,9 +5132,9 @@ integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== "@spotify/eslint-config-base@^13.0.0": - version "13.0.0" - resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.0.tgz#bb748bb2b705ffb5085f873aa0daf94dfad59985" - integrity sha512-BrnexUcUQkp6XUw8HWSmE4LpWtJGgEC6A7vrSkgpgKJtZaYkpw8O+Xnk60DA266ecbFHYbQD6ngqKHlvjNB+pA== + version "13.0.1" + resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.1.tgz#91471028de6426a1f1a5cc06aa9aeb6d8c85565f" + integrity sha512-7dC5zMJpNud9UBCHVk/IWfZOXKyuRkcyopHzTJi3xsfmZcZvi0jTSVIf7sv8315lpjmqroVZoUdKbxZFkZcZpA== "@spotify/eslint-config-react@^13.0.0": version "13.0.1" @@ -5475,9 +5292,9 @@ defer-to-connect "^1.0.1" "@szmarczak/http-timer@^4.0.5": - version "4.0.5" - resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz#bfbd50211e9dfa51ba07da58a14cdfd333205152" - integrity sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ== + version "4.0.6" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807" + integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w== dependencies: defer-to-connect "^2.0.0" @@ -5490,9 +5307,9 @@ "@testing-library/dom" "^8.1.0" "@testing-library/dom@^8.0.0", "@testing-library/dom@^8.1.0": - version "8.11.3" - resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.11.3.tgz#38fd63cbfe14557021e88982d931e33fb7c1a808" - integrity sha512-9LId28I+lx70wUiZjLvi1DB/WT2zGOxUh46glrSNMaWVx849kKAluezVzZrXJfTKKoQTmEOutLes/bHg4Bj3aA== + version "8.13.0" + resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.13.0.tgz#bc00bdd64c7d8b40841e27a70211399ad3af46f5" + integrity sha512-9VHgfIatKNXQNaZTtLnalIy0jNZzY35a4S3oi08YAt9Hv1VsfZ/DfA45lM8D/UhtHBGJ4/lGwp0PZkVndRkoOQ== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" @@ -5627,14 +5444,14 @@ integrity sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA== "@types/aria-query@^4.2.0": - version "4.2.0" - resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.0.tgz#14264692a9d6e2fa4db3df5e56e94b5e25647ac0" - integrity sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A== + version "4.2.2" + resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.2.tgz#ed4e0ad92306a704f9fb132a0cfcf77486dbe2bc" + integrity sha512-HnYpAE1Y6kRyKM/XkEuiRQhTHvkzMBurTHnpFLYLBGPIylZNPs9jJcuOOYWxPLJCSEtmZT0Y8rHDokKN7rRTig== "@types/aws-lambda@^8.10.83": - version "8.10.92" - resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.92.tgz#645f769ff88b8eba1acd35542695ac322c7757c4" - integrity sha512-dB14TltT1SNq73z3MaZfKyyBZ37NAgAFl8jze59bisR4fJ6pB6AYGxItHFkooZbN7UcVJX/cFudM4p8wp1W4rA== + version "8.10.97" + resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.97.tgz#9b2f2adfa63a215173a9da37604e4f65dd56cb98" + integrity sha512-BZk3qO4R2KN8Ts3eR6CW1n8LI46UOgv1KoDZjo8J9vOQvDeX/rsrv1H0BpEAMcSqZ1mLwTEyAMtlua5tlSn0kw== "@types/aws4@^1.5.1": version "1.11.2" @@ -5643,21 +5460,10 @@ dependencies: "@types/node" "*" -"@types/babel__core@^7.0.0": - version "7.1.9" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" - integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__core@^7.1.14": - version "7.1.18" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" - integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": + version "7.1.19" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" + integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -5666,24 +5472,24 @@ "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.1" - resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" - integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== + version "7.6.4" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" + integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": - version "7.0.2" - resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" - integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== + version "7.4.1" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.0.15" - resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03" - integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A== + version "7.17.1" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz#1a0e73e8c28c7e832656db372b779bfd2ef37314" + integrity sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA== dependencies: "@babel/types" "^7.3.0" @@ -5715,9 +5521,9 @@ integrity sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg== "@types/cacheable-request@^6.0.1": - version "6.0.1" - resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976" - integrity sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ== + version "6.0.2" + resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9" + integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA== dependencies: "@types/http-cache-semantics" "*" "@types/keyv" "*" @@ -5774,7 +5580,7 @@ dependencies: commander "*" -"@types/compression@^1.7.0": +"@types/compression@^1.7.0", "@types/compression@^1.7.2": version "1.7.2" resolved "https://registry.npmjs.org/@types/compression/-/compression-1.7.2.tgz#7cc1cdb01b4730eea284615a68fc70a2cdfd5e71" integrity sha512-lwEL4M/uAGWngWFLSG87ZDr2kLrbuR8p7X+QZB1OQlT+qkHsCPDVFnHPyXf4Vyl4yDDorNY+mAhosxkCvppatg== @@ -5797,9 +5603,9 @@ "@types/node" "*" "@types/connect@*": - version "3.4.33" - resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" - integrity sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A== + version "3.4.35" + resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" + integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== dependencies: "@types/node" "*" @@ -5816,9 +5622,9 @@ integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== "@types/cookiejar@*": - version "2.1.1" - resolved "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.1.tgz#90b68446364baf9efd8e8349bb36bd3852b75b80" - integrity sha512-aRnpPa7ysx3aNW60hTiCtLHlQaIFsXFCgQlpakNgDNVFzbtusSY8PwjAQgRWfSk0ekNoBjO51eQRB6upA9uuyw== + version "2.1.2" + resolved "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.2.tgz#66ad9331f63fe8a3d3d9d8c6e3906dd10f6446e8" + integrity sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog== "@types/core-js@^2.5.4": version "2.5.5" @@ -5878,9 +5684,9 @@ integrity sha512-NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ== "@types/d3-path@^2": - version "2.0.1" - resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-2.0.1.tgz#ca03dfa8b94d8add97ad0cd97e96e2006b4763cb" - integrity sha512-6K8LaFlztlhZO7mwsZg7ClRsdLg3FJRzIIi6SZXDWmmSJc2x8dd2VkESbLXdk3p8cuvz71f36S0y8Zv2AxqvQw== + version "2.0.2" + resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-2.0.2.tgz#6052f38f6186319769dfabab61b5514b0e02c75c" + integrity sha512-3YHpvDw9LzONaJzejXLOwZ3LqwwkoXb9LI2YN7Hbd6pkGo5nIlJ09ul4bQhBN4hQZJKmUpX8HkVqbzgUKY48cg== "@types/d3-scale@^3.0.0": version "3.3.2" @@ -5895,9 +5701,9 @@ integrity sha512-d29EDd0iUBrRoKhPndhDY6U/PYxOWqgIZwKTooy2UkBfU7TNZNpRho0yLWPxlatQrFWk2mnTu71IZQ4+LRgKlQ== "@types/d3-shape@^1": - version "1.3.5" - resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.5.tgz#c0164c1be1429473016f855871d487f806c4e968" - integrity sha512-aPEax03owTAKynoK8ZkmkZEDZvvT4Y5pWgii4Jp4oQt0gH45j6siDl9gNDVC5kl64XHN2goN9jbYoHK88tFAcA== + version "1.3.8" + resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.8.tgz#c3c15ec7436b4ce24e38de517586850f1fea8e89" + integrity sha512-gqfnMz6Fd5H6GOLYixOZP/xlrMtJms9BaS+6oWxTKHNqPGZ93BkWWupQSCYm6YHqx6h9wjRupuJb90bun6ZaYg== dependencies: "@types/d3-path" "^1" @@ -5976,7 +5782,15 @@ "@types/eslint" "*" "@types/estree" "*" -"@types/eslint@*", "@types/eslint@^7.28.2": +"@types/eslint@*": + version "8.4.2" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz#48f2ac58ab9c631cb68845c3d956b28f79fad575" + integrity sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/eslint@^7.28.2": version "7.29.0" resolved "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== @@ -6056,9 +5870,9 @@ integrity sha512-Zf9mY4Mz7N3Nyi341nUkOtgVUQn4j6NS4ndqEha/lOgEbTkHzpD7wZuRagYKzrXNtvawWfsrojoC1nhsQexvNA== "@types/glob@*": - version "7.1.3" - resolved "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" - integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w== + version "7.2.0" + resolved "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" + integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== dependencies: "@types/minimatch" "*" "@types/node" "*" @@ -6103,9 +5917,9 @@ integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/http-cache-semantics@*": - version "4.0.0" - resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a" - integrity sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A== + version "4.0.1" + resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" + integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== "@types/http-errors@^1.6.3": version "1.8.2" @@ -6157,9 +5971,9 @@ ci-info "^3.1.0" "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" - integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== + version "2.0.4" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" + integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== "@types/istanbul-lib-report@*": version "3.0.0" @@ -6169,9 +5983,9 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" - integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== + version "3.0.1" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" @@ -6190,9 +6004,9 @@ "@types/jest" "*" "@types/jest@*": - version "27.4.1" - resolved "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz#185cbe2926eaaf9662d340cc02e548ce9e11ab6d" - integrity sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw== + version "27.5.0" + resolved "https://registry.npmjs.org/@types/jest/-/jest-27.5.0.tgz#e04ed1824ca6b1dd0438997ba60f99a7405d4c7b" + integrity sha512-9RBFx7r4k+msyj/arpfaa0WOOEcaAZNmN+j80KFbFCoSqCJGHTz7YMAMGQW9Xmqm5w6l5c25vbSjMwlikJi5+g== dependencies: jest-matcher-utils "^27.0.0" pretty-format "^27.0.0" @@ -6213,9 +6027,9 @@ "@types/sizzle" "*" "@types/js-cookie@^2.2.6": - version "2.2.6" - resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" - integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== + version "2.2.7" + resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz#226a9e31680835a6188e887f3988e60c04d3f6a3" + integrity sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA== "@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": version "1.1.1" @@ -6253,9 +6067,9 @@ integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== "@types/json-stable-stringify@^1.0.32": - version "1.0.32" - resolved "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.0.32.tgz#121f6917c4389db3923640b2e68de5fa64dda88e" - integrity sha512-q9Q6+eUEGwQkv4Sbst3J4PNgDOvpuVuKj79Hl/qnmBMEIPzB5QoFRUtjcgcg2xNUZyYUGXBk5wYIBKHt0A+Mxw== + version "1.0.34" + resolved "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.0.34.tgz#c0fb25e4d957e0ee2e497c1f553d7f8bb668fd75" + integrity sha512-s2cfwagOQAS8o06TcwKfr9Wx11dNGbH2E9vJz1cqV+a/LOyhWNLUNd6JSRYNzvB4d29UuJX2M0Dj9vE1T8fRXw== "@types/json5@^0.0.29": version "0.0.29" @@ -6263,9 +6077,9 @@ integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= "@types/jsonwebtoken@^8.3.3", "@types/jsonwebtoken@^8.5.0": - version "8.5.0" - resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz#2531d5e300803aa63279b232c014acf780c981c5" - integrity sha512-9bVao7LvyorRGZCw0VmH/dr7Og+NdjYSsKAxB43OQoComFbBgsEpoR9JW6+qSq/ogwVBg8GI2MfAlk4SYI4OLg== + version "8.5.8" + resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz#01b39711eb844777b7af1d1f2b4cf22fda1c0c44" + integrity sha512-zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A== dependencies: "@types/node" "*" @@ -6277,9 +6091,9 @@ jwt-decode "*" "@types/keyv@*": - version "3.1.1" - resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz#e45a45324fca9dab716ab1230ee249c9fb52cfa7" - integrity sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw== + version "3.1.4" + resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6" + integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg== dependencies: "@types/node" "*" @@ -6296,9 +6110,9 @@ integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q== "@types/long@^4.0.0", "@types/long@^4.0.1": - version "4.0.1" - resolved "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" - integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== + version "4.0.2" + resolved "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" + integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== "@types/lru-cache@^5.1.0": version "5.1.1" @@ -6320,7 +6134,7 @@ resolved "https://registry.npmjs.org/@types/marked/-/marked-4.0.3.tgz#2098f4a77adaba9ce881c9e0b6baf29116e5acc4" integrity sha512-HnMWQkLJEf/PnxZIfbm0yGJRRZYYMhb++O9M36UCTA9z53uPvVoSlAwJr3XOpDEryb7Hwl1qAx/MV6YIW1RXxg== -"@types/mdast@^3.0.0", "@types/mdast@^3.0.3": +"@types/mdast@^3.0.0": version "3.0.10" resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== @@ -6353,9 +6167,9 @@ integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== "@types/minipass@*": - version "2.2.0" - resolved "https://registry.npmjs.org/@types/minipass/-/minipass-2.2.0.tgz#51ad404e8eb1fa961f75ec61205796807b6f9651" - integrity sha512-wuzZksN4w4kyfoOv/dlpov4NOunwutLA/q7uc00xU02ZyUY+aoM5PWIXEKBMnm0NHd4a+N71BMjq+x7+2Af1fg== + version "3.1.2" + resolved "https://registry.npmjs.org/@types/minipass/-/minipass-3.1.2.tgz#e2d7f9df0698aff421dcf145b4fc05b8183b9030" + integrity sha512-foLGjgrJkUjLG/o2t2ymlZGEoBNBa/TfoUZ7oCTkOjP1T43UGBJspovJou/l3ZuHvye2ewR5cZNtp2zyWgILMA== dependencies: "@types/node" "*" @@ -6395,9 +6209,9 @@ form-data "^3.0.0" "@types/node@*", "@types/node@>= 8", "@types/node@>=12.12.47", "@types/node@>=13.7.0": - version "17.0.25" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.25.tgz#527051f3c2f77aa52e5dc74e45a3da5fb2301448" - integrity sha512-wANk6fBrUwdpY4isjWrKTufkrXdu1D2YHCot2fD/DfWxF5sMrVSA+KN7ydckvaTCh0HiqX9IVl0L5/ZoXg5M7w== + version "17.0.31" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" + integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== "@types/node@12.20.24": version "12.20.24" @@ -6410,9 +6224,9 @@ integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== "@types/node@^12.7.1": - version "12.20.48" - resolved "https://registry.npmjs.org/@types/node/-/node-12.20.48.tgz#55f70bd432b6515828c0298689776861b90ca4fa" - integrity sha512-4kxzqkrpwYtn6okJUcb2lfUu9ilnb3yhUOH6qX3nug8D2DupZ2drIkff2yJzYcNJVl3begnlcaBJ7tqiTTzjnQ== + version "12.20.50" + resolved "https://registry.npmjs.org/@types/node/-/node-12.20.50.tgz#14ba5198f1754ffd0472a2f84ab433b45ee0b65e" + integrity sha512-+9axpWx2b2JCVovr7Ilgt96uc6C1zBKOQMpGtRbWT9IoR/8ue32GGMfGA4woP8QyP2gBs6GQWEVM3tCybGCxDA== "@types/node@^14.14.31": version "14.18.16" @@ -6487,9 +6301,9 @@ "@types/passport-oauth2" "*" "@types/passport-oauth2@*": - version "1.4.9" - resolved "https://registry.npmjs.org/@types/passport-oauth2/-/passport-oauth2-1.4.9.tgz#134007c4b505a82548c9cb19094c5baeb2205c92" - integrity sha512-QP0q+NVQOaIu2r0e10QWkiUA0Ya5mOBHRJN0UrI+LolMLOP1/VN4EVIpJ3xVwFo+xqNFRoFvFwJhBvKnk7kpUA== + version "1.4.11" + resolved "https://registry.npmjs.org/@types/passport-oauth2/-/passport-oauth2-1.4.11.tgz#fbca527ecb44258774d17bcb251630c321515fa9" + integrity sha512-KUNwmGhe/3xPbjkzkPwwcPmyFwfyiSgtV1qOrPBLaU4i4q9GSCdAOyCbkFG0gUxAyEmYwqo9OAF/rjPjJ6ImdA== dependencies: "@types/express" "*" "@types/oauth" "*" @@ -6524,9 +6338,9 @@ integrity sha512-BYOID+l2Aco2nBik+iYS4SZX0Lf20KPILP5RGmM1IgzdwNdTs0eebiFriOPcej1sX9mLnSoiNte5zcFxssgpGA== "@types/prettier@^2.1.5": - version "2.4.3" - resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.3.tgz#a3c65525b91fca7da00ab1a3ac2b5a2a4afbffbf" - integrity sha512-QzSuZMBuG5u8HqYz01qtMdg/Jfctlnvj1z/lYnIDXs/golxw0fxtRAHd9KrzjR7Yxz1qVeI00o0kiO3PmVdJ9w== + version "2.6.0" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.0.tgz#efcbd41937f9ae7434c714ab698604822d890759" + integrity sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw== "@types/prop-types@*", "@types/prop-types@^15.0.0", "@types/prop-types@^15.7.3": version "15.7.5" @@ -6541,14 +6355,14 @@ "@types/node" "*" "@types/qs@*": - version "6.9.6" - resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" - integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== + version "6.9.7" + resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" + integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== "@types/range-parser@*": - version "1.2.3" - resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" - integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== + version "1.2.4" + resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" + integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== "@types/react-dom@*", "@types/react-dom@<18.0.0", "@types/react-dom@^17": version "17.0.17" @@ -6564,10 +6378,10 @@ dependencies: "@types/react" "*" -"@types/react-redux@^7.1.16": - version "7.1.19" - resolved "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.19.tgz#477bd0a9b01bae6d6bf809418cdfa7d3c16d4c62" - integrity sha512-L37dSCT0aoJnCgpR8Iuginlbxoh7qhWOXiaDqEsxVMrER1CmVhFD+63NxgJeT4pkmEM28oX0NH4S4f+sXHTZjA== +"@types/react-redux@^7.1.20": + version "7.1.24" + resolved "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.24.tgz#6caaff1603aba17b27d20f8ad073e4c077e975c0" + integrity sha512-7FkurKcS1k0FHZEtdbbgN8Oc6b+stGSfZYjQGicofJ0j4U0qIn/jaSvnP2pLwZKiai3/17xqqxkkrxTgN8UNbQ== dependencies: "@types/hoist-non-react-statics" "^3.3.0" "@types/react" "*" @@ -6596,9 +6410,9 @@ "@types/react" "*" "@types/react-transition-group@^4.2.0": - version "4.2.4" - resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.2.4.tgz#c7416225987ccdb719262766c1483da8f826838d" - integrity sha512-8DMUaDqh0S70TjkqU0DxOu80tFUiiaS9rxkWip/nb7gtvAsbqOXm02UCmR8zdcjWujgeYPiPNTVpVpKzUDotwA== + version "4.4.4" + resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.4.tgz#acd4cceaa2be6b757db61ed7b432e103242d163e" + integrity sha512-7gAPz7anVK5xzbeQW9wFBDg7G++aPLAFY0QaSMOou9rJZpbuI58WAuJrgu+qR92l61grlnCUe7AFX8KGahAgug== dependencies: "@types/react" "*" @@ -6646,9 +6460,9 @@ integrity sha512-i7KOGl6xdkfpq5+p2ooC+/XFIRUMkYymZ29SD8p+Ko9lesKGUsh6860ey3YM7Y+ZG7kEDGcjzyLO3sOhozqEeA== "@types/request@^2.47.1": - version "2.48.5" - resolved "https://registry.npmjs.org/@types/request/-/request-2.48.5.tgz#019b8536b402069f6d11bee1b2c03e7f232937a0" - integrity sha512-/LO7xRVnL3DxJ1WkPGDQrp4VTV1reX9RkC85mJ+Qzykj2Bdw+mG15aAfDahc76HtknjzE16SX/Yddn6MxVbmGQ== + version "2.48.8" + resolved "https://registry.npmjs.org/@types/request/-/request-2.48.8.tgz#0b90fde3b655ab50976cb8c5ac00faca22f5a82c" + integrity sha512-whjk1EDJPcAR2kYHRbFl/lKeeKYTi05A15K9bnLInCVroNDCtXce57xKdI0/rQaA3K+6q0eFyUBPmqfSndUZdQ== dependencies: "@types/caseless" "*" "@types/node" "*" @@ -6674,7 +6488,7 @@ dependencies: "@types/node" "*" -"@types/retry@^0.12.0": +"@types/retry@0.12.0": version "0.12.0" resolved "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== @@ -6702,14 +6516,14 @@ htmlparser2 "^6.0.0" "@types/scheduler@*": - version "0.16.1" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" - integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA== + version "0.16.2" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== "@types/semver@^6.0.0": - version "6.2.1" - resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.1.tgz#a236185670a7860f1597cf73bea2e16d001461ba" - integrity sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA== + version "6.2.3" + resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.3.tgz#5798ecf1bec94eaa64db39ee52808ec0693315aa" + integrity sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A== "@types/semver@^7.3.8": version "7.3.9" @@ -6731,17 +6545,17 @@ "@types/express" "*" "@types/serve-static@*": - version "1.13.9" - resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" - integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== + version "1.13.10" + resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" + integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== dependencies: "@types/mime" "^1" "@types/node" "*" "@types/set-cookie-parser@^2.4.0": - version "2.4.0" - resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.0.tgz#10cc0446bad372827671a5195fbd14ebce4a9baf" - integrity sha512-w7BFUq81sy7H/0jN0K5cax8MwRN6NOSURpY4YuO4+mOgoicxCZ33BUYz+gyF/sUf7uDl2We2yGJfppxzEXoAXQ== + version "2.4.2" + resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.2.tgz#b6a955219b54151bfebd4521170723df5e13caad" + integrity sha512-fBZgytwhYAUkj/jC/FAV4RQ5EerRup1YQsXQCh8rZfiHkc4UahC192oH0smGwsXol3cL3A5oETuAHeQHmhXM4w== dependencies: "@types/node" "*" @@ -6751,9 +6565,9 @@ integrity sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g== "@types/sizzle@*", "@types/sizzle@^2.3.2": - version "2.3.2" - resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz#a811b8c18e2babab7d542b3365887ae2e4d9de47" - integrity sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg== + version "2.3.3" + resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz#ff5e2f1902969d305225a047c8a0fd5c915cebef" + integrity sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ== "@types/sockjs@^0.3.33": version "0.3.33" @@ -6763,9 +6577,9 @@ "@types/node" "*" "@types/ssh2-streams@*": - version "0.1.8" - resolved "https://registry.npmjs.org/@types/ssh2-streams/-/ssh2-streams-0.1.8.tgz#142af404dae059931aea7fcd1511b5478964feb6" - integrity sha512-I7gixRPUvVIyJuCEvnmhr3KvA2dC0639kKswqD4H5b4/FOcnPtNU+qWLiXdKIqqX9twUvi5j0U1mwKE5CUsrfA== + version "0.1.9" + resolved "https://registry.npmjs.org/@types/ssh2-streams/-/ssh2-streams-0.1.9.tgz#8ca51b26f08750a780f82ee75ff18d7160c07a87" + integrity sha512-I2J9jKqfmvXLR5GomDiCoHrEJ58hAOmFrekfFqmCFd+A6gaEStvWnPykoWUwld1PNg4G5ag1LwdA+Lz1doRJqg== dependencies: "@types/node" "*" @@ -6778,9 +6592,9 @@ "@types/ssh2-streams" "*" "@types/stack-utils@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" - integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw== + version "2.0.1" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/stoppable@^1.1.0": version "1.1.1" @@ -6790,23 +6604,23 @@ "@types/node" "*" "@types/stream-buffers@^3.0.3": - version "3.0.3" - resolved "https://registry.npmjs.org/@types/stream-buffers/-/stream-buffers-3.0.3.tgz#34e565bf64e3e4bdeee23fd4aa58d4636014a02b" - integrity sha512-NeFeX7YfFZDYsCfbuaOmFQ0OjSmHreKBpp7MQ4alWQBHeh2USLsj7qyMyn9t82kjqIX516CR/5SRHnARduRtbQ== + version "3.0.4" + resolved "https://registry.npmjs.org/@types/stream-buffers/-/stream-buffers-3.0.4.tgz#bf128182da7bc62722ca0ddf5458a9c65f76e648" + integrity sha512-qU/K1tb2yUdhXkLIATzsIPwbtX6BpZk0l3dPW6xqWyhfzzM1ECaQ/8faEnu3CNraLiQ9LHyQQPBGp7N9Fbs25w== dependencies: "@types/node" "*" "@types/styled-jsx@^2.2.8": - version "2.2.8" - resolved "https://registry.npmjs.org/@types/styled-jsx/-/styled-jsx-2.2.8.tgz#b50d13d8a3c34036282d65194554cf186bab7234" - integrity sha512-Yjye9VwMdYeXfS71ihueWRSxrruuXTwKCbzue4+5b2rjnQ//AtyM7myZ1BEhNhBQ/nL/RE7bdToUoLln2miKvg== + version "2.2.9" + resolved "https://registry.npmjs.org/@types/styled-jsx/-/styled-jsx-2.2.9.tgz#e50b3f868c055bcbf9bc353eca6c10fdad32a53f" + integrity sha512-W/iTlIkGEyTBGTEvZCey8EgQlQ5l0DwMqi3iOXlLs2kyBwYTXHKEiU6IZ5EwoRwngL8/dGYuzezSup89ttVHLw== dependencies: "@types/react" "*" "@types/superagent@*": - version "4.1.7" - resolved "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.7.tgz#a7d92d98c490ee0f802a127fdf149b9a114f77a5" - integrity sha512-JSwNPgRYjIC4pIeOqLwWwfGj6iP1n5NE6kNBEbGx2V8H78xCPwx7QpNp9plaI30+W3cFEzJO7BIIsXE+dbtaGg== + version "4.1.15" + resolved "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.15.tgz#63297de457eba5e2bc502a7609426c4cceab434a" + integrity sha512-mu/N4uvfDN2zVQQ5AYJI/g4qxn2bHB6521t1UuH09ShNWjebTqN0ZFuYK9uYjcgmI0dTQEs+Owi1EO6U0OkOZQ== dependencies: "@types/cookiejar" "*" "@types/node" "*" @@ -6849,9 +6663,9 @@ "@types/node" "*" "@types/tern@*": - version "0.23.3" - resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.3.tgz#4b54538f04a88c9ff79de1f6f94f575a7f339460" - integrity sha512-imDtS4TAoTcXk0g7u4kkWqedB3E4qpjXzCpD2LU5M5NAXHzCDsypyvXSaG7mM8DKYkCRa7tFp4tS/lp/Wo7Q3w== + version "0.23.4" + resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" + integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== dependencies: "@types/estree" "*" @@ -6877,9 +6691,9 @@ "@types/node" "*" "@types/tough-cookie@*": - version "4.0.0" - resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.0.tgz#fef1904e4668b6e5ecee60c52cc6a078ffa6697d" - integrity sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A== + version "4.0.2" + resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" + integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== "@types/trusted-types@*": version "2.0.2" @@ -6894,9 +6708,9 @@ "@types/node" "*" "@types/underscore@^1.8.9": - version "1.10.23" - resolved "https://registry.npmjs.org/@types/underscore/-/underscore-1.10.23.tgz#cc672e8864000d288e1e39c609fd9cab84391ff3" - integrity sha512-vX1NPekXhrLquFWskH2thcvFAha187F/lM6xYOoEMZWwJ/6alSk0/ttmGP/YRqcqtCv0TMbZjYAdZyHAEcuU4g== + version "1.11.4" + resolved "https://registry.npmjs.org/@types/underscore/-/underscore-1.11.4.tgz#62e393f8bc4bd8a06154d110c7d042a93751def3" + integrity sha512-uO4CD2ELOjw8tasUrAhvnn2W4A0ZECOvMjCivJr4gA9pGgjv+qxKWY9GLTMVEK8ej85BxQOocUyE7hImmSQYcg== "@types/unist@*", "@types/unist@^2.0.0": version "2.0.6" @@ -6959,14 +6773,14 @@ "@types/node" "*" "@types/yargs-parser@*": - version "15.0.0" - resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" - integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== + version "21.0.0" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" + integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== "@types/yargs@^15.0.0": - version "15.0.4" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz#7e5d0f8ca25e9d5849f2ea443cf7c402decd8299" - integrity sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg== + version "15.0.14" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" + integrity sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ== dependencies: "@types/yargs-parser" "*" @@ -6983,9 +6797,9 @@ integrity sha512-8NYnGOctzsI4W0ApsP/BIHD/LnxpJ6XaGf2AZmz4EyDYJMxtprN4279dLNI1CPZcwC9H18qYcaFv4bXi0wmokg== "@types/yauzl@^2.9.1": - version "2.9.2" - resolved "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz#c48e5d56aff1444409e39fa164b0b4d4552a7b7a" - integrity sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA== + version "2.10.0" + resolved "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" + integrity sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw== dependencies: "@types/node" "*" @@ -7015,16 +6829,11 @@ tsutils "^3.21.0" "@typescript-eslint/experimental-utils@^5.0.0": - version "5.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.9.0.tgz#652762d37d6565ef07af285021b8347b6c79a827" - integrity sha512-ZnLVjBrf26dn7ElyaSKa6uDhqwvAi4jBBmHK1VxuFGPRAxhdi18ubQYSGA7SRiFiES3q9JiBOBHEBStOFkwD2g== + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.23.0.tgz#ea03860fa612dadf272789988f2ce41f0b7bb2f7" + integrity sha512-I+3YGQztH1DM9kgWzjslpZzJCBMRz0KhYG2WP62IwpooeZ1L6Qt0mNK8zs+uP+R2HOsr+TeDW35Pitc3PfVv8Q== dependencies: - "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.9.0" - "@typescript-eslint/types" "5.9.0" - "@typescript-eslint/typescript-estree" "5.9.0" - eslint-scope "^5.1.1" - eslint-utils "^3.0.0" + "@typescript-eslint/utils" "5.23.0" "@typescript-eslint/parser@^5.9.0": version "5.27.0" @@ -7036,18 +6845,18 @@ "@typescript-eslint/typescript-estree" "5.27.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@5.20.0": - version "5.20.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.20.0.tgz#79c7fb8598d2942e45b3c881ced95319818c7980" - integrity sha512-h9KtuPZ4D/JuX7rpp1iKg3zOH0WNEa+ZIXwpW/KWmEFDxlA/HSfCMhiyF1HS/drTICjIbpA6OqkAhrP/zkCStg== +"@typescript-eslint/scope-manager@5.23.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.23.0.tgz#4305e61c2c8e3cfa3787d30f54e79430cc17ce1b" + integrity sha512-EhjaFELQHCRb5wTwlGsNMvzK9b8Oco4aYNleeDlNuL6qXWDF47ch4EhVNPh8Rdhf9tmqbN4sWDk/8g+Z/J8JVw== dependencies: - "@typescript-eslint/types" "5.20.0" - "@typescript-eslint/visitor-keys" "5.20.0" + "@typescript-eslint/types" "5.23.0" + "@typescript-eslint/visitor-keys" "5.23.0" -"@typescript-eslint/scope-manager@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.27.0.tgz#a272178f613050ed62f51f69aae1e19e870a8bbb" - integrity sha512-VnykheBQ/sHd1Vt0LJ1JLrMH1GzHO+SzX6VTXuStISIsvRiurue/eRkTqSrG0CexHQgKG8shyJfR4o5VYioB9g== +"@typescript-eslint/scope-manager@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.24.0.tgz#ac8c4d65064204b596909c204fe9b7e30c3f51b2" + integrity sha512-WpMWipcDzGmMzdT7NtTjRXFabx10WleLUGrJpuJLGaxSqpcyq5ACpKSD5VE40h2nz3melQ91aP4Du7lh9FliCA== dependencies: "@typescript-eslint/types" "5.27.0" "@typescript-eslint/visitor-keys" "5.27.0" @@ -7069,15 +6878,15 @@ debug "^4.3.4" tsutils "^3.21.0" -"@typescript-eslint/types@5.20.0": - version "5.20.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.20.0.tgz#fa39c3c2aa786568302318f1cb51fcf64258c20c" - integrity sha512-+d8wprF9GyvPwtoB4CxBAR/s0rpP25XKgnOvMf/gMXYDvlUC3rPFHupdTQ/ow9vn7UDe5rX02ovGYQbv/IUCbg== +"@typescript-eslint/types@5.23.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.23.0.tgz#8733de0f58ae0ed318dbdd8f09868cdbf9f9ad09" + integrity sha512-NfBsV/h4dir/8mJwdZz7JFibaKC3E/QdeMEDJhiAE3/eMkoniZ7MjbEMCGXw6MZnZDMN3G9S0mH/6WUIj91dmw== -"@typescript-eslint/types@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.27.0.tgz#c3f44b9dda6177a9554f94a74745ca495ba9c001" - integrity sha512-lY6C7oGm9a/GWhmUDOs3xAVRz4ty/XKlQ2fOLr8GAIryGn0+UBOoJDWyHer3UgrHkenorwvBnphhP+zPmzmw0A== +"@typescript-eslint/types@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.24.0.tgz#565ff94a4b89073265e27514dc65225d18aabe6c" + integrity sha512-Tpg1c3shTDgTmZd3qdUyd+16r/pGmVaVEbLs+ufuWP0EruVbUiEOmpBBQxBb9a8iPRxi8Rb2oiwOxuZJzSq11A== "@typescript-eslint/types@5.9.0": version "5.9.0" @@ -7194,29 +7003,10 @@ version "1.11.1" resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== - -"@webassemblyjs/helper-api-error@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" - integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== - -"@webassemblyjs/helper-buffer@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" - integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== - -"@webassemblyjs/helper-numbers@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" - integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== - dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.1" - "@webassemblyjs/helper-api-error" "1.11.1" "@xtuc/long" "4.2.2" "@webassemblyjs/helper-wasm-bytecode@1.11.1": version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== "@webassemblyjs/helper-wasm-section@1.11.1": @@ -7261,28 +7051,6 @@ "@webassemblyjs/wasm-opt" "1.11.1" "@webassemblyjs/wasm-parser" "1.11.1" "@webassemblyjs/wast-printer" "1.11.1" - -"@webassemblyjs/wasm-gen@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" - integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.1" - "@webassemblyjs/ieee754" "1.11.1" - "@webassemblyjs/leb128" "1.11.1" - "@webassemblyjs/utf8" "1.11.1" - -"@webassemblyjs/wasm-opt@1.11.1": - version "1.11.1" - resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" - integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== - dependencies: - "@webassemblyjs/ast" "1.11.1" - "@webassemblyjs/helper-buffer" "1.11.1" - "@webassemblyjs/wasm-gen" "1.11.1" - "@webassemblyjs/wasm-parser" "1.11.1" - "@webassemblyjs/wasm-parser@1.11.1": version "1.11.1" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" @@ -7350,9 +7118,9 @@ a-sync-waterfall@^1.0.0: integrity sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA== abab@^2.0.3, abab@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" - integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + version "2.0.6" + resolved "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== abbrev@1: version "1.1.1" @@ -7367,9 +7135,9 @@ abort-controller@^3.0.0: event-target-shim "^5.0.0" abstract-logging@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.0.tgz#08a85814946c98ef06f4256ad470aba1886d4490" - integrity sha512-/oA9z7JszpIioo6J6dB79LVUgJ3eD3cxkAmdCkvWWS+Y9tPtALs1rLqOekLUXUbYqM2fB9TTK0ibAyZJJOP/CA== + version "2.0.1" + resolved "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839" + integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA== accepts@^1.3.5, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" @@ -7388,9 +7156,9 @@ acorn-globals@^6.0.0: acorn-walk "^7.1.1" acorn-import-assertions@^1.7.6: - version "1.7.6" - resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.7.6.tgz#580e3ffcae6770eebeec76c3b9723201e9d01f78" - integrity sha512-FlVvVFA1TX6l3lp8VjDnYYq7R1nyW6x3svAt4nDgrWQ9SBaSh9CnbwgSUTasgfNfOG5HlM1ehugCvM+hjo56LA== + version "1.8.0" + resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== acorn-jsx@^5.3.2: version "5.3.2" @@ -7398,9 +7166,9 @@ acorn-jsx@^5.3.2: integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^7.1.1: - version "7.1.1" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" - integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== + version "7.2.0" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" @@ -7412,12 +7180,7 @@ acorn@^7.1.1: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.0: - version "8.7.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" - integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== - -acorn@^8.4.1, acorn@^8.7.1: +acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0, acorn@^8.7.1: version "8.7.1" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== @@ -7428,9 +7191,9 @@ add-stream@^1.0.0: integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= address@^1.0.1, address@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== + version "1.2.0" + resolved "https://registry.npmjs.org/address/-/address-1.2.0.tgz#d352a62c92fee90f89a693eccd2a8b2139ab02d9" + integrity sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig== after@0.8.2: version "0.8.2" @@ -7444,10 +7207,10 @@ agent-base@6, agent-base@^6.0.2: dependencies: debug "4" -agentkeepalive@^4.1.3, agentkeepalive@^4.1.4, agentkeepalive@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.0.tgz#616ce94ccb41d1a39a45d203d8076fe98713062d" - integrity sha512-0PhAp58jZNw13UJv7NVdTGb0ZcghHUb3DrZ046JiiJY/BOaTTpbwdHq2VObPCBV8M2GPh7sgrJ3AQ8Ey468LJw== +agentkeepalive@^4.1.3, agentkeepalive@^4.1.4, agentkeepalive@^4.2.1: + version "4.2.1" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== dependencies: debug "^4.1.0" depd "^1.1.2" @@ -7480,7 +7243,7 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.10.0, ajv@^6.10.1, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5, ajv@^6.7.0, ajv@~6.12.6: +ajv@^6.10.0, ajv@^6.10.1, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.7.0, ajv@~6.12.6: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -7500,11 +7263,6 @@ ajv@^8.0.0, ajv@^8.10.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -alphanum-sort@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - already@^3.2.0: version "3.3.0" resolved "https://registry.npmjs.org/already/-/already-3.3.0.tgz#a5e5becd167cf537b45f8f1c23d331488ed77003" @@ -7518,11 +7276,11 @@ anafanafo@2.0.0: char-width-table-consumer "^1.0.0" ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" - integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + version "3.0.1" + resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== dependencies: - string-width "^3.0.0" + string-width "^4.1.0" ansi-colors@^4.1.1: version "4.1.1" @@ -7562,9 +7320,9 @@ ansi-regex@^3.0.0: integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + version "4.1.1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" + integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" @@ -7790,9 +7548,9 @@ are-we-there-yet@^3.0.0: readable-stream "^3.6.0" are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== + version "1.1.7" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" + integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -7815,9 +7573,9 @@ argparse@^2.0.1: integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== args@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/args/-/args-5.0.1.tgz#4bf298df90a4799a09521362c579278cc2fdd761" - integrity sha512-1kqmFCFsPffavQFGt8OxJdIcETti99kySRUPMpOhaGjL6mRJn8HFU1OxKY5bMqfZKUwTQc1mZkAjmGYaVOHFtQ== + version "5.0.3" + resolved "https://registry.npmjs.org/args/-/args-5.0.3.tgz#943256db85021a85684be2f0882f25d796278702" + integrity sha512-h6k/zfFgusnv3i5TU08KQkVKuCPBtL/PWQbWkHUxvJrZ2nAyeaUupneemcrgn1xmqxPQsPIzwkUhOpoqPDRZuA== dependencies: camelcase "5.0.0" chalk "2.4.2" @@ -7857,11 +7615,6 @@ array-differ@^3.0.0: resolved "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== -array-filter@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83" - integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM= - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -7877,14 +7630,14 @@ array-ify@^1.0.0: resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= -array-includes@^3.1.2, array-includes@^3.1.3, array-includes@^3.1.4: - version "3.1.4" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" - integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== +array-includes@^3.1.4: + version "3.1.5" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" + integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" get-intrinsic "^1.1.1" is-string "^1.0.7" @@ -7922,15 +7675,16 @@ array-unique@^0.3.2: integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= array.prototype.flat@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" - integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg== + version "1.3.0" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz#0b0c1567bf57b38b56b4c97b8aa72ab45e4adc7b" + integrity sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.0" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" -array.prototype.flatmap@^1.3.0: +array.prototype.flatmap@^1.2.5: version "1.3.0" resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f" integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg== @@ -7960,19 +7714,20 @@ asap@^2.0.0, asap@^2.0.3, asap@~2.0.3: resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== +asn1.js@^5.2.0: + version "5.4.1" + resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" + integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== dependencies: bn.js "^4.0.0" inherits "^2.0.1" minimalistic-assert "^1.0.0" + safer-buffer "^2.1.0" asn1@^0.2.4, asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + version "0.2.6" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== dependencies: safer-buffer "~2.1.0" @@ -8012,9 +7767,9 @@ astral-regex@^2.0.0: integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== async-lock@^1.1.0: - version "1.2.4" - resolved "https://registry.npmjs.org/async-lock/-/async-lock-1.2.4.tgz#80d0d612383045dd0c30eb5aad08510c1397cb91" - integrity sha512-UBQJC2pbeyGutIfYmErGc9RaJYnpZ1FHaxuKwb0ahvGiiCkPUf3p67Io+YLPmmv3RHY+mF6JEtNW8FlHsraAaA== + version "1.3.1" + resolved "https://registry.npmjs.org/async-lock/-/async-lock-1.3.1.tgz#f2301c200600cde97acc386453b7126fa8aced3c" + integrity sha512-zK7xap9UnttfbE23JmcrNIyueAn6jWshihJqA33U/hEnKprF/lVGBDsBv/bqLm2YMMl1DnpHhUY044eA0t1TUw== async-retry@^1.2.1, async-retry@^1.3.3: version "1.3.3" @@ -8054,18 +7809,16 @@ auto-bind@~4.0.0: integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== autolinker@^3.11.0: - version "3.14.1" - resolved "https://registry.npmjs.org/autolinker/-/autolinker-3.14.1.tgz#6ae4b812b6eaf42d4d68138b9e67757cbf2bc1e4" - integrity sha512-yvsRHIaY51EYDml6MGlbqyJGfl4n7zezGYf+R7gvM8c5LNpRGc4SISkvgAswSS8SWxk/OrGCylKV9mJyVstz7w== + version "3.15.0" + resolved "https://registry.npmjs.org/autolinker/-/autolinker-3.15.0.tgz#03956088648f236642a5783612f9ca16adbbed38" + integrity sha512-N/5Dk5AZnqL9k6kkHdFIGLm/0/rRuSnJwqYYhLCJjU7ZtiaJwCBzNTvjzy1zzJADngv/wvtHYcrPHytPnASeFA== dependencies: - tslib "^1.9.3" + tslib "^2.3.0" -available-typed-arrays@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz#6b098ca9d8039079ee3f77f7b783c4480ba513f5" - integrity sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ== - dependencies: - array-filter "^1.0.0" +available-typed-arrays@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== aws-sdk-mock@^5.2.1: version "5.7.0" @@ -8102,9 +7855,9 @@ aws4@^1.11.0, aws4@^1.8.0: integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== axe-core@^4.3.5: - version "4.3.5" - resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.3.5.tgz#78d6911ba317a8262bfee292aeafcc1e04b49cc5" - integrity sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA== + version "4.4.1" + resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz#7dbdc25989298f9ad006645cd396782443757413" + integrity sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw== axios-cached-dns-resolve@0.5.2: version "0.5.2" @@ -8202,38 +7955,14 @@ babel-plugin-polyfill-corejs2@^0.3.0: semver "^6.1.1" babel-plugin-polyfill-corejs3@^0.5.0: - version "0.5.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.1.tgz#d66183bf10976ea677f4149a7fcc4d8df43d4060" - integrity sha512-TihqEe4sQcb/QcPJvxe94/9RZuLQuF1+To4WqQcRvc+3J3gLCPIPgDKzGLG6zmQLfH3nn25heRuDNkS2KR4I8A== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.1" - core-js-compat "^3.20.0" - -babel-plugin-polyfill-regenerator@^0.3.0: - version "0.3.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz#2c0678ea47c75c8cc2fbb1852278d8fb68233990" - integrity sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.1" - -babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" - integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== - -babel-polyfill@^6.26.0: - version "6.26.0" - resolved "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153" - integrity sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM= - dependencies: + version "0.5.2" babel-runtime "^6.26.0" core-js "^2.5.0" regenerator-runtime "^0.10.5" - babel-preset-current-node-syntax@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.0.tgz#cf5feef29551253471cfa82fc8e0f5063df07a77" - integrity sha512-mGkvkpocWJes1CmMKtgGUwCeeq0pOhALyymozzDWYomHTbDLwueDYG6p4TK1YOeYHCzBzYPsWkgTto10JubI1Q== + version "1.0.1" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-bigint" "^7.8.3" @@ -8318,9 +8047,9 @@ badge-maker@^3.3.0: css-color-converter "^2.0.0" bail@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/bail/-/bail-2.0.1.tgz#d676736373a374058a935aec81b94c12ba815771" - integrity sha512-d5FoTAr2S5DSUPKl85WNm2yUwsINN8eidIdIwsOge2t33DaOfOdSmmsI11jMN3GmALCXaw+Y6HMVHDzePshFAA== + version "2.0.2" + resolved "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" + integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== balanced-match@^0.4.2: version "0.4.2" @@ -8389,7 +8118,7 @@ bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2: dependencies: tweetnacl "^0.14.3" -before-after-hook@^2.1.0, before-after-hook@^2.2.0: +before-after-hook@^2.2.0: version "2.2.2" resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== @@ -8430,26 +8159,26 @@ big.js@^5.2.2: integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== bignumber.js@^9.0.0: - version "9.0.1" - resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" - integrity sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA== + version "9.0.2" + resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" + integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== bin-links@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/bin-links/-/bin-links-3.0.0.tgz#8273063638919f6ba4fbe890de9438c1b3adf0b7" - integrity sha512-fC7kPWcEkAWBgCKxmAMqZldlIeHsXwQy9JXzrppAVQiukGiDKxmYesJcBKWu6UMwx/5GOfo10wtK/4zy+Xt/mg== + version "3.0.1" + resolved "https://registry.npmjs.org/bin-links/-/bin-links-3.0.1.tgz#cc70ffb481988b22c527d3e6e454787876987a49" + integrity sha512-9vx+ypzVhASvHTS6K+YSGf7nwQdANoz7v6MTC0aCtYnOEZ87YvMf81aY737EZnGZdpbRM3sfWjO9oWkKmuIvyQ== dependencies: - cmd-shim "^4.0.1" + cmd-shim "^5.0.0" mkdirp-infer-owner "^2.0.0" npm-normalize-package-bin "^1.0.0" - read-cmd-shim "^2.0.0" + read-cmd-shim "^3.0.0" rimraf "^3.0.0" write-file-atomic "^4.0.0" binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + version "2.2.0" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== binary-search@^1.3.5: version "1.3.6" @@ -8515,12 +8244,17 @@ bmp-js@^0.1.0: resolved "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz#e05a63f796a6c1ff25f4771ec7adadc148c07233" integrity sha1-4Fpj95amwf8l9Hcex62twUjAcjM= -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.9: +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -body-parser@1.20.0: +bn.js@^5.0.0, bn.js@^5.1.1: + version "5.2.0" + resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" + integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== + +body-parser@1.20.0, body-parser@^1.19.0: version "1.20.0" resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== @@ -8538,26 +8272,10 @@ body-parser@1.20.0: type-is "~1.6.18" unpipe "1.0.0" -body-parser@^1.19.0: - version "1.19.2" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" - integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== - dependencies: - bytes "3.1.2" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "1.8.1" - iconv-lite "0.4.24" - on-finished "~2.3.0" - qs "6.9.7" - raw-body "2.4.3" - type-is "~1.6.18" - bonjour-service@^1.0.11: - version "1.0.11" - resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.11.tgz#5418e5c1ac91c89a406f853a942e7892829c0d89" - integrity sha512-drMprzr2rDTCtgEE3VgdA9uUFaUHF+jXduwYSThHJnKMYM+FhI9Z3ph+TX3xy0LtgYHae6CHYPJ/2UnK8nQHcA== + version "1.0.12" + resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.12.tgz#28fbd4683f5f2e36feedb833e24ba661cac960c3" + integrity sha512-pMmguXYCu63Ug37DluMKEHdxc+aaIf/ay4YbF8Gxtba+9d3u+rmEWy61VK3Z3hp8Rskok3BunHYnG0dUHAsblw== dependencies: array-flatten "^2.1.2" dns-equal "^1.0.0" @@ -8693,26 +8411,28 @@ browserify-des@^1.0.0: inherits "^2.0.1" safe-buffer "^5.1.2" -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= +browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: + version "4.1.0" + resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" + integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== dependencies: - bn.js "^4.1.0" + bn.js "^5.0.0" randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= + version "4.2.1" + resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" + integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" + bn.js "^5.1.1" + browserify-rsa "^4.0.1" + create-hash "^1.2.0" + create-hmac "^1.1.7" + elliptic "^6.5.3" + inherits "^2.0.4" + parse-asn1 "^5.1.5" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" browserify-zlib@^0.2.0: version "0.2.0" @@ -8721,15 +8441,15 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.18.1, browserslist@^4.19.1: - version "4.19.1" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz#4ac0435b35ab655896c31d53018b6dd5e9e4c9a3" - integrity sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A== +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.18.1, browserslist@^4.20.3: + version "4.20.3" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" + integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== dependencies: - caniuse-lite "^1.0.30001286" - electron-to-chromium "^1.4.17" + caniuse-lite "^1.0.30001332" + electron-to-chromium "^1.4.118" escalade "^3.1.1" - node-releases "^2.0.1" + node-releases "^2.0.3" picocolors "^1.0.0" bser@2.1.1: @@ -8760,9 +8480,9 @@ buffer-equal@0.0.1: integrity sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs= buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + version "1.1.2" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== buffer-indexof-polyfill@~1.0.0: version "1.0.2" @@ -8809,6 +8529,11 @@ buffers@~0.1.1: resolved "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb" integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= +buildcheck@0.0.3: + version "0.0.3" + resolved "https://registry.npmjs.org/buildcheck/-/buildcheck-0.0.3.tgz#70451897a95d80f7807e68fc412eb2e7e35ff4d5" + integrity sha512-pziaA+p/wdVImfcbsZLNF32EiWyujlQLwolMqUQE8xpKNOH7KmZQaY8sXN7DGOEzPAElo9QTaeNRfGnf3iOJbA== + builtin-modules@^3.0.0: version "3.2.0" resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" @@ -8824,15 +8549,22 @@ builtins@^1.0.3: resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= +busboy@^1.6.0: + version "1.6.0" + resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== + dependencies: + streamsearch "^1.1.0" + byline@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= byte-size@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.0.tgz#36528cd1ca87d39bd9abd51f5715dc93b6ceb032" - integrity sha512-NNiBxKgxybMBtWdmvx7ZITJi4ZG+CYUgwOSZTfqB1qogkRHrhbQE/R2r5Fh94X+InN5MCYz6SvB/ejHMj/HbsQ== + version "7.0.1" + resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" + integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== bytes@3.0.0: version "3.0.0" @@ -8844,7 +8576,7 @@ bytes@3.1.2: resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0, cacache@^15.3.0: +cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0: version "15.3.0" resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== @@ -8868,6 +8600,30 @@ cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0, cacache@^15.3.0: tar "^6.0.2" unique-filename "^1.1.1" +cacache@^16.0.2: + version "16.0.7" + resolved "https://registry.npmjs.org/cacache/-/cacache-16.0.7.tgz#74a5d9bc4c17b4c0b373c1f5d42dadf5dc06638d" + integrity sha512-a4zfQpp5vm4Ipdvbj+ZrPonikRhm6WBEd4zT1Yc1DXsmAxrPgDwWBLF/u/wTVXSFPIgOJ1U3ghSa2Xm4s3h28w== + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + glob "^8.0.1" + infer-owner "^1.0.4" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -8884,9 +8640,9 @@ cache-base@^1.0.1: unset-value "^1.0.0" cacheable-lookup@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" - integrity sha512-W+JBqF9SWe18A72XFzN/V/CULFzPm7sBXzzR6ekkE+3tLG72wFZrBiBZhrZuDoYexop4PHJVdFAKb/Nj9+tm9w== + version "5.0.4" + resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" + integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== cacheable-request@^6.0.0: version "6.1.0" @@ -8994,10 +8750,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001286: - version "1.0.30001315" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001315.tgz#f1b1efd1171ee1170d52709a7252632dacbd7c77" - integrity sha512-5v7LFQU4Sb/qvkz7JcZkvtSH1Ko+1x2kgo3ocdBeMGZSOFpuE1kkm0kpTwLtWeFrw5qw08ulLxJjVIXIS8MkiQ== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001332: + version "1.0.30001339" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001339.tgz#f9aece4ea8156071613b27791547ba0b33f176cf" + integrity sha512-Es8PiVqCe+uXdms0Gu5xP5PF2bxLR7OBp3wUzUnuO7OHzhOfCyg3hdiGWVPVxhiuniOzng+hTc1u3fEQ0TlkSQ== canvas@^2.6.1: version "2.9.1" @@ -9023,9 +8779,9 @@ caseless@~0.12.0: integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= ccount@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.0.tgz#3d6fb55803832766a24c6f339abc507297eb5d25" - integrity sha512-VOR0NWFYX65n9gELQdcpqsie5L5ihBXuZGAgaPEp/U7IOSjnPMEH6geE+2f6lcekaNEfWzAHS45mPvSo5bqsUA== + version "2.0.1" + resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" + integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== chainsaw@~0.1.0: version "0.1.0" @@ -9129,31 +8885,21 @@ character-entities-legacy@^1.0.0: resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== -character-entities-legacy@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-2.0.0.tgz#57f4d00974c696e8f74e9f493e7fcb75b44d7ee7" - integrity sha512-YwaEtEvWLpFa6Wh3uVLrvirA/ahr9fki/NUd/Bd4OR6EdJ8D22hovYQEOUCBfQfcqnC4IAMGMsHXY1eXgL4ZZA== - character-entities@^1.0.0: version "1.2.4" resolved "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== character-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.0.tgz#508355fcc8c73893e0909efc1a44d28da2b6fdf3" - integrity sha512-oHqMj3eAuJ77/P5PaIRcqk+C3hdfNwyCD2DAUcD5gyXkegAuF2USC40CEqPscDk4I8FRGMTojGJQkXDsN5QlJA== + version "2.0.1" + resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.1.tgz#98724833e1e27990dee0bd0f2b8a859c3476aac7" + integrity sha512-OzmutCf2Kmc+6DrFrrPS8/tDh2+DpnrfzdICHWhcVC9eOd0N1PXmQEE1a8iM4IziIAG+8tmTq3K+oo0ubH6RRQ== character-reference-invalid@^1.0.0: version "1.1.4" resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== -character-reference-invalid@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.0.tgz#a0bdeb89c051fe7ed5d3158b2f06af06984f2813" - integrity sha512-pE3Z15lLRxDzWJy7bBHBopRwfI20sbrMVLQTC7xsPglCHf4Wv1e167OgYAFP78co2XlhojDyAqA+IAJse27//g== - chardet@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -9195,11 +8941,9 @@ chownr@^2.0.0: integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== chrome-trace-event@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" - integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== - dependencies: - tslib "^1.9.0" + version "1.0.3" + resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== ci-info@^2.0.0: version "2.0.0" @@ -9247,9 +8991,9 @@ classnames@*, classnames@^2.2.5, classnames@^2.2.6, classnames@^2.3.1: integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== clean-css@^5.2.2: - version "5.2.2" - resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.2.2.tgz#d3a7c6ee2511011e051719838bdcf8314dc4548d" - integrity sha512-/eR8ru5zyxKzpBLv9YZvMXgTSSQn7AdkMItMYynsFgGwTveCRVam9IUPFloE85B4vAIj05IuKmmEoV7/AQjT0w== + version "5.3.0" + resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.3.0.tgz#ad3d8238d5f3549e83d5f87205189494bc7cbb59" + integrity sha512-YYuuxv4H/iNb1Z/5IbMRoxgrzjWGhOEFfd+groZ5dMCVkpENiMZmwspdrzBo9286JjM1gZJPAyL7ZIdzuvu2AQ== dependencies: source-map "~0.6.0" @@ -9283,23 +9027,23 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz#12763e47251bf951cb75c201dfa58ff1bcb2d047" - integrity sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ== + version "2.6.1" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" + integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== cli-table3@~0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.1.tgz#36ce9b7af4847f288d3cdd081fbd09bf7bd237b8" - integrity sha512-w0q/enDHhPLq44ovMGdQeeDLvwxwavsJX7oQGYt/LrBlYsyaxyDnp6z3QzFut/6kLLKnlcUVJLrpB7KBfgG/RA== + version "0.6.2" + resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.2.tgz#aaf5df9d8b5bf12634dc8b3040806a0c07120d2a" + integrity sha512-QyavHCaIC80cMivimWu4aWHilIpiDpfm3hGmqAmXVL1UsnbLuBSMd21hTX6VY4ZSDSM73ESLeF8TOYId3rBTbw== dependencies: string-width "^4.2.0" optionalDependencies: - colors "1.4.0" + "@colors/colors" "1.5.0" cli-table@^0.3.1: - version "0.3.6" - resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.6.tgz#e9d6aa859c7fe636981fd3787378c2a20bce92fc" - integrity sha512-ZkNZbnZjKERTY5NwC2SeMeLeifSPq/pubeRoTpdr3WchLlnZg6hEgvHkK5zL7KNFdd9PmHN8lxrENUwI3cE8vQ== + version "0.3.11" + resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz#ac69cdecbe81dccdba4889b9a18b7da312a9d3ee" + integrity sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ== dependencies: colors "1.0.3" @@ -9414,13 +9158,20 @@ cluster-key-slot@^1.1.0: resolved "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz#30474b2a981fb12172695833052bc0d01336d10d" integrity sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw== -cmd-shim@^4.0.1, cmd-shim@^4.1.0: +cmd-shim@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== dependencies: mkdirp-infer-owner "^2.0.0" +cmd-shim@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" + integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== + dependencies: + mkdirp-infer-owner "^2.0.0" + co@^4.6.0: version "4.6.0" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -9466,9 +9217,9 @@ codeowners-utils@^1.0.2: locate-path "^5.0.0" collect-v8-coverage@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1" - integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ== + version "1.0.1" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== collection-visit@^1.0.0: version "1.0.0" @@ -9483,7 +9234,7 @@ color-convert@^0.5.2: resolved "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" integrity sha1-vbbGnOZg+t/+CwAHzER+G59ygr0= -color-convert@^1.9.0, color-convert@^1.9.1: +color-convert@^1.9.0, color-convert@^1.9.3: version "1.9.3" resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -9507,26 +9258,26 @@ color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.5.2, color-string@^1.9.0: - version "1.9.0" - resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.0.tgz#63b6ebd1bec11999d1df3a79a7569451ac2be8aa" - integrity sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ== +color-string@^1.6.0, color-string@^1.9.0: + version "1.9.1" + resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" + integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" -color-support@^1.1.2: +color-support@^1.1.2, color-support@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -color@3.0.x: - version "3.0.0" - resolved "https://registry.npmjs.org/color/-/color-3.0.0.tgz#d920b4328d534a3ac8295d68f7bd4ba6c427be9a" - integrity sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w== +color@^3.1.3: + version "3.2.1" + resolved "https://registry.npmjs.org/color/-/color-3.2.1.tgz#3544dc198caf4490c3ecc9a790b54fe9ff45e164" + integrity sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA== dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" + color-convert "^1.9.3" + color-string "^1.6.0" color@^4.0.1: version "4.2.3" @@ -9537,9 +9288,9 @@ color@^4.0.1: color-string "^1.9.0" colord@^2.9.1: - version "2.9.1" - resolved "https://registry.npmjs.org/colord/-/colord-2.9.1.tgz#c961ea0efeb57c9f0f4834458f26cb9cc4a3f90e" - integrity sha512-4LBMSt09vR0uLnPVkOUBnmxgoaeN4ewRbx801wY/bXcltXfpR/G46OdWn96XpYmCWuYvO46aBZP4NgX8HpNAcw== + version "2.9.2" + resolved "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz#25e2bacbbaa65991422c07ea209e2089428effb1" + integrity sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ== colorette@2.0.16, colorette@^2.0.10, colorette@^2.0.16: version "2.0.16" @@ -9551,30 +9302,25 @@ colors@1.0.3: resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= -colors@1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" - integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== - colors@~1.2.1: version "1.2.5" resolved "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz#89c7ad9a374bc030df8013241f68136ed8835afc" integrity sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg== colorspace@1.1.x: - version "1.1.2" - resolved "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz#e0128950d082b86a2168580796a0aa5d6c68d8c5" - integrity sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ== + version "1.1.4" + resolved "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz#8d442d1186152f60453bf8070cd66eb364e59243" + integrity sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w== dependencies: - color "3.0.x" + color "^3.1.3" text-hex "1.0.x" columnify@^1.5.4: - version "1.5.4" - resolved "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" - integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= + version "1.6.0" + resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" + integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== dependencies: - strip-ansi "^3.0.0" + strip-ansi "^6.0.1" wcwidth "^1.0.0" combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: @@ -9599,17 +9345,17 @@ command-exists@^1.2.9: resolved "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== -commander@*, commander@8.3.0, commander@^8.3.0: - version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== +commander@*, commander@^9.1.0: + version "9.2.0" + resolved "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== commander@7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz#f2eaecf131f10e36e07d894698226e36ae0eb5ff" integrity sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg== -commander@^2.20.0, commander@^2.20.3, commander@^2.7.1: +commander@^2.20.0, commander@^2.20.3: version "2.20.3" resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== @@ -9624,15 +9370,20 @@ commander@^5.1.0: resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== +commander@^6.1.0: + version "6.2.1" + resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + commander@^7.2.0: version "7.2.0" resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commander@^9.1.0, commander@^9.3.0: - version "9.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.3.0.tgz#f619114a5a2d2054e0d9ff1b31d5ccf89255e26b" - integrity sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw== +commander@^8.3.0: + version "8.3.0" + resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== common-ancestor-path@^1.0.1: version "1.0.1" @@ -9672,7 +9423,7 @@ component-emitter@1.2.1: resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= -component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: +component-emitter@^1.2.0, component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== @@ -9691,12 +9442,12 @@ compress-brotli@^1.3.8: json-buffer "~3.0.1" compress-commons@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.0.tgz#25ec7a4528852ccd1d441a7d4353cd0ece11371b" - integrity sha512-ofaaLqfraD1YRTkrRKPCrGJ1pFeDG/MVCkVVV2FNGeWquSlqw5wOrwOfPQ1xF2u+blpeWASie5EubHz+vsNIgA== + version "4.1.1" + resolved "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d" + integrity sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ== dependencies: buffer-crc32 "^0.2.13" - crc32-stream "^4.0.1" + crc32-stream "^4.0.2" normalize-path "^3.0.0" readable-stream "^3.6.0" @@ -9791,9 +9542,9 @@ concurrently@^7.0.0: yargs "^17.3.1" config-chain@^1.1.12: - version "1.1.12" - resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" - integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + version "1.1.13" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" proto-list "~1.2.1" @@ -9869,9 +9620,9 @@ content-type@~1.0.4: integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== conventional-changelog-angular@^5.0.12: - version "5.0.12" - resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz#c979b8b921cbfe26402eb3da5bbfda02d865a2b9" - integrity sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== + version "5.0.13" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" + integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== dependencies: compare-func "^2.0.0" q "^1.5.1" @@ -9925,9 +9676,9 @@ conventional-commits-filter@^2.0.7: modify-values "^1.0.0" conventional-commits-parser@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.1.tgz#ba44f0b3b6588da2ee9fd8da508ebff50d116ce2" - integrity sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA== + version "3.2.4" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" + integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== dependencies: JSONStream "^1.0.4" is-text-path "^1.0.1" @@ -9935,7 +9686,6 @@ conventional-commits-parser@^3.2.0: meow "^8.0.0" split2 "^3.0.0" through2 "^4.0.0" - trim-off-newlines "^1.0.0" conventional-recommended-bump@^6.1.0: version "6.1.0" @@ -9952,9 +9702,9 @@ conventional-recommended-bump@^6.1.0: q "^1.5.1" convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + version "1.8.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" @@ -10003,18 +9753,18 @@ copy-to-clipboard@^3, copy-to-clipboard@^3.2.0, copy-to-clipboard@^3.3.1: dependencies: toggle-selection "^1.0.6" -core-js-compat@^3.20.0, core-js-compat@^3.20.2: - version "3.20.3" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.20.3.tgz#d71f85f94eb5e4bea3407412e549daa083d23bd6" - integrity sha512-c8M5h0IkNZ+I92QhIpuSijOxGAcj3lgpsWdkCqmUTZNwidujF4r3pi6x1DCN+Vcs5qTS2XWWMfWSuCqyupX8gw== +core-js-compat@^3.20.2, core-js-compat@^3.21.0: + version "3.22.5" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.5.tgz#7fffa1d20cb18405bd22756ca1353c6f1a0e8614" + integrity sha512-rEF75n3QtInrYICvJjrAgV03HwKiYvtKHdPtaba1KucG+cNZ4NJnH9isqt979e67KZlhpbCOTwnsvnIr+CVeOg== dependencies: - browserslist "^4.19.1" + browserslist "^4.20.3" semver "7.0.0" core-js-pure@^3.20.2, core-js-pure@^3.6.5: - version "3.21.1" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" - integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== + version "3.22.5" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.5.tgz#bdee0ed2f9b78f2862cda4338a07b13a49b6c9a9" + integrity sha512-8xo9R00iYD7TcV7OrC98GwxiUEAabVWO3dix+uyWjnYrx9fyASLlIX+f/3p5dW5qByaP2bcZ8X/T47s55et/tA== core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.10: version "2.6.12" @@ -10026,11 +9776,16 @@ core-js@^3.4.1, core-js@^3.6.5: resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + cors@^2.8.5: version "2.8.5" resolved "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" @@ -10068,38 +9823,36 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" -cpu-features@0.0.2: - version "0.0.2" - resolved "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.2.tgz#9f636156f1155fd04bdbaa028bb3c2fbef3cea7a" - integrity sha512-/2yieBqvMcRj8McNzkycjW2v3OIUOibBfd2dLEJ0nWts8NobAxwiyw9phVNS6oDL8x8tz9F7uNVFEVpJncQpeA== +cpu-features@~0.0.4: + version "0.0.4" + resolved "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.4.tgz#0023475bb4f4c525869c162e4108099e35bf19d8" + integrity sha512-fKiZ/zp1mUwQbnzb9IghXtHtDoTMtNeb8oYGx6kX2SYfhnG0HNdBEBIzB9b5KlXu5DQPhfy3mInbBxFcgwAr3A== dependencies: - nan "^2.14.1" + buildcheck "0.0.3" + nan "^2.15.0" crc-32@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.0.tgz#cb2db6e29b88508e32d9dd0ec1693e7b41a18208" - integrity sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA== - dependencies: - exit-on-epipe "~1.0.1" - printj "~1.1.0" + version "1.2.2" + resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== -crc32-stream@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.1.tgz#0f047d74041737f8a55e86837a1b826bd8ab0067" - integrity sha512-FN5V+weeO/8JaXsamelVYO1PHyeCsuL3HcG4cqsj0ceARcocxalaShCsohZMSAF+db7UYFwBy1rARK/0oFItUw== +crc32-stream@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz#c922ad22b38395abe9d3870f02fa8134ed709007" + integrity sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w== dependencies: crc-32 "^1.2.0" readable-stream "^3.4.0" create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== + version "4.0.4" + resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" + integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== dependencies: bn.js "^4.1.0" - elliptic "^6.0.0" + elliptic "^6.5.3" -create-hash@^1.1.0, create-hash@^1.1.2: +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== @@ -10110,7 +9863,7 @@ create-hash@^1.1.0, create-hash@^1.1.2: ripemd160 "^2.0.1" sha.js "^2.4.0" -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: +create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: version "1.1.7" resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== @@ -10132,10 +9885,10 @@ crelt@^1.0.5: resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz#57c0d52af8c859e354bace1883eb2e1eb182bb94" integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== -cron@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/cron/-/cron-2.0.0.tgz#15c6bf37c1cebf6da1d7a688b9ba1c68338bfe6b" - integrity sha512-RPeRunBCFr/WEo7WLp8Jnm45F/ziGJiHVvVQEBSDTSGu6uHW49b2FOP2O14DcXlGJRLhwE7TIoDzHHK4KmlL6g== +cron@^1.8.2: + version "1.8.3" + resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" + integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== dependencies: luxon "^1.23.x" @@ -10151,7 +9904,7 @@ cross-env@^7.0.0: dependencies: cross-spawn "^7.0.1" -cross-fetch@3.1.5, cross-fetch@^3.0.4, cross-fetch@^3.0.6, cross-fetch@^3.1.3, cross-fetch@^3.1.5: +cross-fetch@3.1.5, cross-fetch@^3.0.6, cross-fetch@^3.1.3, cross-fetch@^3.1.5: version "3.1.5" resolved "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== @@ -10167,17 +9920,6 @@ cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -10187,28 +9929,17 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -cross-undici-fetch@^0.2.5: - version "0.2.5" - resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.2.5.tgz#0dd5bb3809a2fc4524fc777f1e6eb052203a6b68" - integrity sha512-6IR+JN6o2UMNj2f3fu0ZVkZeP0h22DRKzq78SiMenkqyBYyGIT1AkZjHkItvh0A80LdsAlWENHUpvapapePucw== +cross-undici-fetch@^0.4.0: + version "0.4.3" + resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.4.3.tgz#465d13d4d7d7a1dae75f8ad85aa0ecfa2752e99f" + integrity sha512-mv1jusEQsFnBHEBkpFaYROKAzAWyuW8ZyN48NcyqkjLGRrscMKuFRmUigUrkE/pdprQZjNTQQ/aWJKe6F4tzTA== dependencies: abort-controller "^3.0.0" + busboy "^1.6.0" form-data-encoder "^1.7.1" formdata-node "^4.3.1" node-fetch "^2.6.7" - undici "^5.0.0" - web-streams-polyfill "^3.2.0" - -cross-undici-fetch@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.3.0.tgz#d03764f0a1bcb745855bba8464c231d46ee14cfa" - integrity sha512-as3gHg3EJrc4QMS11/GdHtyY+m3LnIf8GrziHQRe/dGxSHqEP4RcONJ/3UVaPeA1j687aYvwzWMPWKgqsdXbtA== - dependencies: - abort-controller "^3.0.0" - form-data-encoder "^1.7.1" - formdata-node "^4.3.1" - node-fetch "^2.6.7" - undici "^5.0.0" + undici "^5.1.0" web-streams-polyfill "^3.2.0" crypto-browserify@^3.11.0: @@ -10249,12 +9980,10 @@ css-color-converter@^2.0.0: color-name "^1.1.4" css-unit-converter "^1.1.2" -css-declaration-sorter@^6.0.3: - version "6.1.3" - resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.1.3.tgz#e9852e4cf940ba79f509d9425b137d1f94438dc2" - integrity sha512-SvjQjNRZgh4ULK1LDJ2AduPKUKxIqmtU7ZAyi47BTV+M90Qvxr9AB6lKlLbDUfXqI9IQeYA8LbAsCZPpJEV3aA== - dependencies: - timsort "^0.3.0" +css-declaration-sorter@^6.2.2: + version "6.2.2" + resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.2.2.tgz#bfd2f6f50002d6a3ae779a87d3a0c5d5b10e0f02" + integrity sha512-Ufadglr88ZLsrvS11gjeu/40Lw74D9Am/Jpr3LlYm5Q4ZP5KdlUhG+6u2EjyXeZcxmZ2h1ebCKngDjolpeLHpg== css-in-js-utils@^2.0.0: version "2.0.1" @@ -10279,15 +10008,15 @@ css-loader@^6.5.1: semver "^7.3.5" css-select@^4.1.3: - version "4.1.3" - resolved "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz#a70440f70317f2669118ad74ff105e65849c7067" - integrity sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA== + version "4.3.0" + resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== dependencies: boolbase "^1.0.0" - css-what "^5.0.0" - domhandler "^4.2.0" - domutils "^2.6.0" - nth-check "^2.0.0" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" @@ -10310,10 +10039,10 @@ css-vendor@^2.0.8: "@babel/runtime" "^7.8.3" is-in-browser "^1.0.2" -css-what@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" - integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== +css-what@^6.0.1: + version "6.1.0" + resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== css.escape@1.5.1, css.escape@^1.5.1: version "1.5.1" @@ -10339,53 +10068,52 @@ cssfilter@0.0.10: resolved "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" integrity sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4= -cssnano-preset-default@^5.1.7: - version "5.1.7" - resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.1.7.tgz#68c3ad1ec6a810482ec7d06b2d70fc34b6b0d70c" - integrity sha512-bWDjtTY+BOqrqBtsSQIbN0RLGD2Yr2CnecpP0ydHNafh9ZUEre8c8VYTaH9FEbyOt0eIfEUAYYk5zj92ioO8LA== +cssnano-preset-default@^5.2.7: + version "5.2.7" + resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.7.tgz#791e3603fb8f1b46717ac53b47e3c418e950f5f3" + integrity sha512-JiKP38ymZQK+zVKevphPzNSGHSlTI+AOwlasoSRtSVMUU285O7/6uZyd5NbW92ZHp41m0sSHe6JoZosakj63uA== dependencies: - css-declaration-sorter "^6.0.3" - cssnano-utils "^2.0.1" - postcss-calc "^8.0.0" - postcss-colormin "^5.2.1" - postcss-convert-values "^5.0.2" - postcss-discard-comments "^5.0.1" - postcss-discard-duplicates "^5.0.1" - postcss-discard-empty "^5.0.1" - postcss-discard-overridden "^5.0.1" - postcss-merge-longhand "^5.0.4" - postcss-merge-rules "^5.0.3" - postcss-minify-font-values "^5.0.1" - postcss-minify-gradients "^5.0.3" - postcss-minify-params "^5.0.2" - postcss-minify-selectors "^5.1.0" - postcss-normalize-charset "^5.0.1" - postcss-normalize-display-values "^5.0.1" - postcss-normalize-positions "^5.0.1" - postcss-normalize-repeat-style "^5.0.1" - postcss-normalize-string "^5.0.1" - postcss-normalize-timing-functions "^5.0.1" - postcss-normalize-unicode "^5.0.1" - postcss-normalize-url "^5.0.3" - postcss-normalize-whitespace "^5.0.1" - postcss-ordered-values "^5.0.2" - postcss-reduce-initial "^5.0.1" - postcss-reduce-transforms "^5.0.1" - postcss-svgo "^5.0.3" - postcss-unique-selectors "^5.0.2" + css-declaration-sorter "^6.2.2" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.0" + postcss-convert-values "^5.1.0" + postcss-discard-comments "^5.1.1" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.4" + postcss-merge-rules "^5.1.1" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.2" + postcss-minify-selectors "^5.2.0" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.0" + postcss-normalize-repeat-style "^5.1.0" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.0" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.1" + postcss-reduce-initial "^5.1.0" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" -cssnano-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-2.0.1.tgz#8660aa2b37ed869d2e2f22918196a9a8b6498ce2" - integrity sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ== +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== cssnano@^5.0.1: - version "5.0.11" - resolved "https://registry.npmjs.org/cssnano/-/cssnano-5.0.11.tgz#743397a05e04cb87e9df44b7659850adfafc3646" - integrity sha512-5SHM31NAAe29jvy0MJqK40zZ/8dGlnlzcfHKw00bWMVFp8LWqtuyPSFwbaoIoxvt71KWJOfg8HMRGrBR3PExCg== + version "5.1.7" + resolved "https://registry.npmjs.org/cssnano/-/cssnano-5.1.7.tgz#99858bef6c76c9240f0cdc9239570bc7db8368be" + integrity sha512-pVsUV6LcTXif7lvKKW9ZrmX+rGRzxkEdJuVJcp5ftUjWITgwam5LMZOgaTvUrWPkcORBey6he7JKb4XAJvrpKg== dependencies: - cssnano-preset-default "^5.1.7" - is-resolvable "^1.1.0" + cssnano-preset-default "^5.2.7" lilconfig "^2.0.3" yaml "^1.10.2" @@ -10413,40 +10141,40 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^2.5.2, csstype@^2.6.7: - version "2.6.17" - resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz#4cf30eb87e1d1a005d8b6510f95292413f6a1c0e" - integrity sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A== +csstype@^2.5.2: + version "2.6.20" + resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda" + integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA== csstype@^3.0.2, csstype@^3.0.6: - version "3.0.7" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.7.tgz#2a5fb75e1015e84dd15692f71e89a1450290950b" - integrity sha512-KxnUB0ZMlnUWCsx2Z8MUsr6qV6ja1w9ArPErJaJaF8a5SOWoHLIszeCTKGRGRgtLgYrs1E8CHkNSP1VZTTPc9g== + version "3.0.11" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33" + integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw== -csv-generate@^3.2.4: - version "3.2.4" - resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.2.4.tgz#440dab9177339ee0676c9e5c16f50e2b3463c019" - integrity sha512-qNM9eqlxd53TWJeGtY1IQPj90b563Zx49eZs8e0uMyEvPgvNVmX1uZDtdzAcflB3PniuH9creAzcFOdyJ9YGvA== +csv-generate@^3.4.3: + version "3.4.3" + resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" + integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== -csv-parse@^4.8.8: - version "4.12.0" - resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.12.0.tgz#fd42d6291bbaadd51d3009f6cadbb3e53b4ce026" - integrity sha512-wPQl3H79vWLPI8cgKFcQXl0NBgYYEqVnT1i6/So7OjMpsI540oD7p93r3w6fDSyPvwkTepG05F69/7AViX2lXg== +csv-parse@^4.16.3: + version "4.16.3" + resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" + integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== -csv-stringify@^5.3.6: - version "5.5.1" - resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.5.1.tgz#f42cdd379b0f7f142933a11f674b1a91ebd0fcd0" - integrity sha512-HM0/86Ks8OwFbaYLd495tqTs1NhscZL52dC4ieKYumy8+nawQYC0xZ63w1NqLf0M148T2YLYqowoImc1giPn0g== +csv-stringify@^5.6.5: + version "5.6.5" + resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" + integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== csv@^5.3.1: - version "5.3.2" - resolved "https://registry.npmjs.org/csv/-/csv-5.3.2.tgz#50b344e25dfbb8c62684a1bcec18c22468b2161e" - integrity sha512-odDyucr9OgJTdGM2wrMbJXbOkJx3nnUX3Pt8SFOwlAMOpsUQlz1dywvLMXJWX/4Ib0rjfOsaawuuwfI5ucqBGQ== + version "5.5.3" + resolved "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" + integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== dependencies: - csv-generate "^3.2.4" - csv-parse "^4.8.8" - csv-stringify "^5.3.6" - stream-transform "^2.0.1" + csv-generate "^3.4.3" + csv-parse "^4.16.3" + csv-stringify "^5.6.5" + stream-transform "^2.1.3" cypress-plugin-snapshots@^1.4.4: version "1.4.4" @@ -10748,9 +10476,9 @@ dagre@^0.8.5: lodash "^4.17.15" damerau-levenshtein@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz#64368003512a1a6992593741a09a9d31a836f55d" - integrity sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw== + version "1.0.8" + resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" + integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== dargs@^7.0.0: version "7.0.0" @@ -10783,35 +10511,30 @@ date-fns@^1.27.2: resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== -date-fns@^2.16.1: +date-fns@^2.16.1, date-fns@^2.18.0: version "2.28.0" resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz#9570d656f5fc13143e50c975a3b6bbeb46cd08b2" integrity sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw== -date-fns@^2.18.0: - version "2.19.0" - resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.19.0.tgz#65193348635a28d5d916c43ec7ce6fbd145059e1" - integrity sha512-X3bf2iTPgCAQp9wvjOQytnf5vO5rESYRXlPIVcgSbtT5OTScPcsf9eZU+B/YIkKAtYr5WeCii58BgATrNitlWg== - dateformat@^3.0.0, dateformat@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== dateformat@^4.5.0: - version "4.5.1" - resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.5.1.tgz#c20e7a9ca77d147906b6dc2261a8be0a5bd2173c" - integrity sha512-OD0TZ+B7yP7ZgpJf5K2DIbj3FZvFvxgFUuaqA/V5zTjAtAAXZ1E8bktHxmAGs4x5b7PflqA9LeQ84Og7wYtF7Q== + version "4.6.3" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" + integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== dayjs@^1.10.4: - version "1.10.4" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz#8e544a9b8683f61783f570980a8a80eaf54ab1e2" - integrity sha512-RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw== + version "1.11.2" + resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.2.tgz#fa0f5223ef0d6724b3d8327134890cfe3d72fbe5" + integrity sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw== debounce@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" - integrity sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg== + version "1.2.1" + resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" + integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: version "2.6.9" @@ -10874,9 +10597,9 @@ decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decimal.js-light@^2.4.1: - version "2.5.0" - resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.0.tgz#ca7faf504c799326df94b0ab920424fdfc125348" - integrity sha512-b3VJCbd2hwUpeRGG3Toob+CRo8W22xplipNhP3tN7TSVB/cyMX71P1vM2Xjc9H74uV6dS2hDDmo/rHq8L87Upg== + version "2.5.1" + resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934" + integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg== decimal.js@^10.2.1: version "10.3.1" @@ -10927,9 +10650,9 @@ deep-extend@0.6.0, deep-extend@^0.6.0: integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@^0.1.3, deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + version "0.1.4" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2, deepmerge@~4.2.2: version "4.2.2" @@ -10956,21 +10679,22 @@ defer-to-connect@^1.0.1: integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== defer-to-connect@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.0.tgz#83d6b199db041593ac84d781b5222308ccf4c2c1" - integrity sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg== + version "2.0.1" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" + integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== +define-properties@^1.1.3, define-properties@^1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" + integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== dependencies: - object-keys "^1.0.12" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" define-properties@^1.1.4: version "1.1.4" @@ -11080,14 +10804,9 @@ detect-indent@^5.0.0: integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= detect-indent@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" - integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== - -detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= + version "6.1.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== detect-libc@^2.0.0: version "2.0.1" @@ -11099,12 +10818,7 @@ detect-newline@^3.0.0: resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -detect-node@^2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-node@^2.1.0: +detect-node@^2.0.4, detect-node@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== @@ -11122,7 +10836,7 @@ devtools-protocol@0.0.1001819: resolved "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1001819.tgz#0a98f44cefdb02cc684f3d5e6bd898a1690231d9" integrity sha512-G6OsIFnv/rDyxSqBa2lDLR6thp9oJioLsb2Gl+LbQlyoA9/OBAkrTU9jiCcQ8Pnh7z4d6slDiLaogR5hzgJLmQ== -dezalgo@1.0.3, dezalgo@^1.0.0: +dezalgo@1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= @@ -11130,6 +10844,14 @@ dezalgo@1.0.3, dezalgo@^1.0.0: asap "^2.0.0" wrappy "1" +dezalgo@^1.0.0: + version "1.0.4" + resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== + dependencies: + asap "^2.0.0" + wrappy "1" + diff-sequences@^26.6.2: version "26.6.2" resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" @@ -11245,9 +10967,9 @@ doctrine@^3.0.0: esutils "^2.0.2" dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9: - version "0.5.13" - resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.13.tgz#102ee5f25eacce09bdf1cfa5a298f86da473be4b" - integrity sha512-R305kwb5CcMDIpSHUnLyIAp7SrSPBx6F0VfQFB3M75xVMHhXJJIdePYgbPPh1o57vCHNu5QztokWUPsLjWzFqw== + version "0.5.14" + resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz#56082f71b1dc7aac69d83c4285eef39c15d93f56" + integrity sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg== dom-converter@^0.2.0: version "0.2.0" @@ -11264,26 +10986,26 @@ dom-helpers@^3.4.0: "@babel/runtime" "^7.1.2" dom-helpers@^5.0.1: - version "5.1.4" - resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.1.4.tgz#4609680ab5c79a45f2531441f1949b79d6587f4b" - integrity sha512-TjMyeVUvNEnOnhzs6uAn9Ya47GmMo3qq7m+Lr/3ON0Rs5kHvb8I+SQYjLUSYn7qhEm0QjW0yrBkvz9yOrwwz1A== + version "5.2.1" + resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== dependencies: "@babel/runtime" "^7.8.7" - csstype "^2.6.7" + csstype "^3.0.2" dom-serializer@^1.0.1: - version "1.2.0" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" - integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== + version "1.4.1" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== dependencies: domelementtype "^2.0.1" - domhandler "^4.0.0" + domhandler "^4.2.0" entities "^2.0.0" dom-walk@^0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" - integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= + version "0.1.2" + resolved "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" + integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== domain-browser@^1.1.1: version "1.2.0" @@ -11291,9 +11013,9 @@ domain-browser@^1.1.1: integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== domelementtype@^2.0.1, domelementtype@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" - integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== + version "2.3.0" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domexception@^2.0.1: version "2.0.1" @@ -11302,10 +11024,10 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" -domhandler@^4.0.0, domhandler@^4.2.0: - version "4.3.0" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626" - integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g== +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: + version "4.3.1" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== dependencies: domelementtype "^2.2.0" @@ -11319,7 +11041,7 @@ dompurify@^2.2.7, dompurify@^2.2.9, dompurify@^2.3.6: resolved "https://registry.npmjs.org/dompurify/-/dompurify-2.3.8.tgz#224fe9ae57d7ebd9a1ae1ac18c1c1ca3f532226f" integrity sha512-eVhaWoVibIzqdGYjwsBWodIQIaXFSB+cKDf4cfxLMsK0xiud6SE+/WCVx/Xw/UwQsa4cS3T2eITcdtmTg2UKcw== -domutils@^2.5.2, domutils@^2.6.0: +domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== @@ -11360,7 +11082,7 @@ drange@^1.0.2: resolved "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz#b2aecec2aab82fcef11dbbd7b9e32b83f8f6c0b8" integrity sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA== -dset@^3.1.0, dset@^3.1.1: +dset@^3.1.0: version "3.1.2" resolved "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz#89c436ca6450398396dc6538ea00abc0c54cd45a" integrity sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q== @@ -11377,20 +11099,15 @@ duplexer3@^0.1.4: resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -duplexer@^0.1.1, duplexer@~0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexer@^0.1.2: +duplexer@^0.1.1, duplexer@^0.1.2, duplexer@~0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== duplexify@^4.0.0, duplexify@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz#7027dc374f157b122a8ae08c2d3ea4d2d953aa61" - integrity sha512-DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA== + version "4.1.2" + resolved "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz#18b4f8d28289132fa0b9573c898d9f903f81c7b0" + integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw== dependencies: end-of-stream "^1.4.1" inherits "^2.0.3" @@ -11451,17 +11168,17 @@ elastic-builder@^2.16.0: lodash.isstring "^4.0.1" lodash.omit "^4.5.0" -electron-to-chromium@^1.4.17: - version "1.4.35" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.35.tgz#69aabb73d7030733e71c1e970ec16f5ceefbaea4" - integrity sha512-wzTOMh6HGFWeALMI3bif0mzgRrVGyP1BdFRx7IvWukFrSC5QVQELENuy+Fm2dCrAdQH9T3nuqr07n94nPDFBWA== +electron-to-chromium@^1.4.118: + version "1.4.137" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.137.tgz#186180a45617283f1c012284458510cd99d6787f" + integrity sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA== elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= -elliptic@^6.0.0: +elliptic@^6.5.3: version "6.5.4" resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== @@ -11479,11 +11196,6 @@ emittery@^0.8.1: resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -11509,7 +11221,7 @@ encodeurl@~1.0.2: resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -encoding@^0.1.12: +encoding@^0.1.12, encoding@^0.1.13: version "0.1.13" resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== @@ -11583,25 +11295,30 @@ ent@^2.2.0: resolved "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" integrity sha1-6WQhkyWiHQX0RGai9obtbOX13R0= -entities@^2.0.0, entities@~2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" - integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== entities@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== +entities@~2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" + integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== + env-paths@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" - integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== + version "2.2.1" + resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== envinfo@^7.7.4: - version "7.7.4" - resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz#c6311cdd38a0e86808c1c9343f667e4267c4a320" - integrity sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ== + version "7.8.1" + resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== eol@^0.9.1: version "0.9.1" @@ -11621,9 +11338,9 @@ error-ex@^1.2.0, error-ex@^1.3.1: is-arrayish "^0.2.1" error-stack-parser@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" - integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ== + version "2.0.7" + resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.7.tgz#b0c6e2ce27d0495cf78ad98715e0cad1219abb57" + integrity sha512-chLOW0ZGRf4s8raLrDxa5sdkvPec5YdvwbFnqJme4rk0rFajP8mPtrDL1+I+CwrQDCjswDA5sREX7jYQDQs9vA== dependencies: stackframe "^1.1.1" @@ -11632,36 +11349,10 @@ error@^10.4.0: resolved "https://registry.npmjs.org/error/-/error-10.4.0.tgz#6fcf0fd64bceb1e750f8ed9a3dd880f00e46a487" integrity sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw== -es-abstract@^1.17.0-next.1, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es-abstract@^1.19.1: - version "1.19.1" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" - integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== - dependencies: - call-bind "^1.0.2" - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - get-intrinsic "^1.1.1" - get-symbol-description "^1.0.0" - has "^1.0.3" - has-symbols "^1.0.2" - internal-slot "^1.0.3" - is-callable "^1.2.4" - is-negative-zero "^2.0.1" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.1" - is-string "^1.0.7" - is-weakref "^1.0.1" - object-inspect "^1.11.0" - object-keys "^1.1.1" - object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" - -es-abstract@^1.19.2, es-abstract@^1.19.5: - version "1.20.1" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" - integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== +es-abstract@^1.18.5, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5: + version "1.20.0" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.0.tgz#b2d526489cceca004588296334726329e0a6bfb6" + integrity sha512-URbD8tgRthKD3YcC39vbvSDrX23upXnPcnGAjQfgxXF5ID75YcENawc9ZX/9iTP9ptUyfCLIxTTuMYoRfiOVKA== dependencies: call-bind "^1.0.2" es-to-primitive "^1.2.1" @@ -11682,7 +11373,7 @@ es-abstract@^1.19.2, es-abstract@^1.19.5: object-inspect "^1.12.0" object-keys "^1.1.1" object.assign "^4.1.2" - regexp.prototype.flags "^1.4.3" + regexp.prototype.flags "^1.4.1" string.prototype.trimend "^1.0.5" string.prototype.trimstart "^1.0.5" unbox-primitive "^1.0.2" @@ -12061,9 +11752,9 @@ eslint-utils@^3.0.0: eslint-visitor-keys "^2.0.0" eslint-visitor-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" - integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + version "2.1.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0: version "3.3.0" @@ -12176,9 +11867,9 @@ estree-walker@^1.0.1: integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== estree-walker@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.1.tgz#f8e030fb21cefa183b44b7ad516b747434e7a3e0" - integrity sha512-tF0hv+Yi2Ot1cwj9eYHtxC0jB9bmjacjQs6ZBTj82H8JwUywFuc+7E83NWfNMwHXZc11mjfFcVXPe9gEP4B8dg== + version "2.0.2" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== esutils@^2.0.2: version "2.0.3" @@ -12361,34 +12052,6 @@ execa@5.1.1, execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" - integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.1" - human-signals "^3.0.1" - is-stream "^3.0.0" - merge-stream "^2.0.0" - npm-run-path "^5.1.0" - onetime "^6.0.0" - signal-exit "^3.0.7" - strip-final-newline "^3.0.0" - executable@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -12401,11 +12064,6 @@ exif-parser@^0.1.12: resolved "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz#58a9d2d72c02c1f6f02a0ef4a9166272b7760922" integrity sha1-WKnS1ywCwfbwKg70qRZicrd2CSI= -exit-on-epipe@~1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz#0bdd92e87d5285d267daa8171d0eb06159689692" - integrity sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw== - exit@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -12589,9 +12247,9 @@ extsprintf@1.3.0: integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + version "1.4.1" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== fast-decode-uri-component@^1.0.1: version "1.0.1" @@ -12625,9 +12283,9 @@ fast-json-parse@^1.0.3: integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== fast-json-patch@^3.0.0-1: - version "3.0.0-1" - resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.0.0-1.tgz#4c68f2e7acfbab6d29d1719c44be51899c93dabb" - integrity sha512-6pdFb07cknxvPzCeLsFHStEy+MysPJPgZQ9LbQ/2O67unQF93SNqfdSqnPPl71YMHX+AD8gbl7iuoGFzHEdDuw== + version "3.1.1" + resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz#85064ea1b1ebf97a3f7ad01e23f9337e72c66947" + integrity sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ== fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" @@ -12672,9 +12330,9 @@ fastest-stable-stringify@^2.0.2: integrity sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q== fastq@^1.6.0: - version "1.6.1" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.6.1.tgz#4570c74f2ded173e71cf0beb08ac70bb85826791" - integrity sha512-mpIH5sKYueh3YyeJwqtVo8sORi0CgtmkVbK6kZStpQlZBYQuTzG2CZ7idSiJuA7bY0SFCWUc5WIs+oYumGCQNw== + version "1.13.0" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" + integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== dependencies: reusify "^1.0.4" @@ -12686,9 +12344,9 @@ fault@^1.0.0: format "^0.2.0" faye-websocket@^0.11.3: - version "0.11.3" - resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" - integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== + version "0.11.4" + resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" + integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== dependencies: websocket-driver ">=0.5.1" @@ -12705,17 +12363,17 @@ fbjs-css-vars@^1.0.0: integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== fbjs@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.0.tgz#0907067fb3f57a78f45d95f1eacffcacd623c165" - integrity sha512-dJd4PiDOFuhe7vk4F80Mba83Vr2QuK86FoxtgPmzBqEJahncp+13YCmfoa53KHCo6OnlXLG7eeMWPfB5CrpVKg== + version "3.0.4" + resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz#e1871c6bd3083bac71ff2da868ad5067d37716c6" + integrity sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ== dependencies: - cross-fetch "^3.0.4" + cross-fetch "^3.1.5" fbjs-css-vars "^1.0.0" loose-envify "^1.0.0" object-assign "^4.1.0" promise "^7.1.1" setimmediate "^1.0.5" - ua-parser-js "^0.7.18" + ua-parser-js "^0.7.30" fd-slicer@~1.1.0: version "1.1.0" @@ -12725,9 +12383,9 @@ fd-slicer@~1.1.0: pend "~1.2.0" fecha@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/fecha/-/fecha-4.2.0.tgz#3ffb6395453e3f3efff850404f0a59b6747f5f41" - integrity sha512-aN3pcx/DSmtyoovUudctc8+6Hl4T+hI9GBBHLjA76jdZl7+b1sgh5g4k+u/GL3dTy1/pnYzKp69FpJ0OicE3Wg== + version "4.2.3" + resolved "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz#4d9ccdbc61e8629b259fdca67e65891448d569fd" + integrity sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw== figures@^1.7.0: version "1.7.0" @@ -12785,9 +12443,9 @@ filelist@^1.0.1: minimatch "^5.0.1" filesize@^8.0.6: - version "8.0.6" - resolved "https://registry.npmjs.org/filesize/-/filesize-8.0.6.tgz#5f0c27aa1b507fa7d9f72c912a774ca6a44111b1" - integrity sha512-sHvRqTiwdmcuzqet7iVwsbwF6UrV3wIgDf2SHNdY1Hgl8PC45HZg/0xtdw6U2izIV4lccnrY9ftl6wZFNdjYMg== + version "8.0.7" + resolved "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz#695e70d80f4e47012c132d57a059e80c6b580bd8" + integrity sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ== fill-range@^4.0.0: version "4.0.0" @@ -12924,14 +12582,14 @@ flatstr@^1.0.12: integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== flatted@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" - integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== + version "3.2.5" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" + integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== flow-parser@0.*: - version "0.152.0" - resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.152.0.tgz#a627aec1fdcfa243e2016469e44284a98169b996" - integrity sha512-qRXGE3ztuhyI2ovi4Ixwq7/GUYvKX9wmFdwBof2q5pWHteuveexFrlbwZxSonC0dWz2znA6sW+vce4RXgYLnnQ== + version "0.177.0" + resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.177.0.tgz#653092470c8e79ed737cb38e3be1d1de0d25feac" + integrity sha512-Ac1OwHjSoUALrcnHTTD6oaEPITaxYmP34iiEEcuCxeeD+tOKR7/Toaw4RpJKcDmYxLX79ZP9E7z+Q8ze9pESbQ== fn.name@1.x.x: version "1.1.0" @@ -12939,9 +12597,9 @@ fn.name@1.x.x: integrity sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw== follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.14.8" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz#016996fb9a11a100566398b1c6839337d7bfa8fc" - integrity sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA== + version "1.15.0" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz#06441868281c86d0dda4ad8bdaead2d02dca89d4" + integrity sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ== follow-redirects@^1.14.8: version "1.15.0" @@ -12964,9 +12622,9 @@ forever-agent@~0.6.1: integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= fork-ts-checker-webpack-plugin@^6.5.0: - version "6.5.0" - resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.0.tgz#0282b335fa495a97e167f69018f566ea7d2a2b5e" - integrity sha512-cS178Y+xxtIjEUorcHddKS7yCMlrDPV31mt47blKKRfMd70Kxu5xruAFE2o9sDY6wVC5deuob/u/alD04YYHnw== + version "6.5.2" + resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz#4f67183f2f9eb8ba7df7177ce3cf3e75cdafb340" + integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== dependencies: "@babel/code-frame" "^7.8.3" "@types/json-schema" "^7.0.5" @@ -13000,11 +12658,11 @@ fork-ts-checker-webpack-plugin@^7.0.0-alpha.8: tapable "^2.2.1" form-data-encoder@^1.4.3, form-data-encoder@^1.7.1: - version "1.7.1" - resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96" - integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg== + version "1.7.2" + resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz#1f1ae3dccf58ed4690b86d87e4f57c654fbab040" + integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A== -form-data@^2.3.2, form-data@^2.5.0: +form-data@^2.3.1, form-data@^2.3.2, form-data@^2.5.0: version "2.5.1" resolved "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== @@ -13014,9 +12672,9 @@ form-data@^2.3.2, form-data@^2.5.0: mime-types "^2.1.12" form-data@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" - integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg== + version "3.0.1" + resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -13045,15 +12703,7 @@ format@^0.2.0: resolved "https://registry.npmjs.org/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs= -formdata-node@^4.0.0: - version "4.3.0" - resolved "https://registry.npmjs.org/formdata-node/-/formdata-node-4.3.0.tgz#77be2add9092cbd1e1f4d35bc3293a89be117a04" - integrity sha512-TwqhWUZd2jB5l0kUhhcy1XYNsXq46NH6k60zmiu7xsxMztul+cCMuPSAQrSDV62zznhBKJdA9O+zeWj5i5Pbfg== - dependencies: - node-domexception "1.0.0" - web-streams-polyfill "4.0.0-beta.1" - -formdata-node@^4.3.1: +formdata-node@^4.0.0, formdata-node@^4.3.1: version "4.3.2" resolved "https://registry.npmjs.org/formdata-node/-/formdata-node-4.3.2.tgz#0262e94931e36db7239c2b08bdb6aaf18ec47d21" integrity sha512-k7lYJyzDOSL6h917favP8j1L0/wNyylzU+x+1w4p5haGVHNlP58dbpdJhiCUsDbWsa9HwEtLp89obQgXl2e0qg== @@ -13061,6 +12711,11 @@ formdata-node@^4.3.1: node-domexception "1.0.0" web-streams-polyfill "4.0.0-beta.1" +formidable@^1.2.0: + version "1.2.6" + resolved "https://registry.npmjs.org/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" + integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== + formidable@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/formidable/-/formidable-2.0.1.tgz#4310bc7965d185536f9565184dee74fbb75557ff" @@ -13236,20 +12891,19 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" -gauge@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.0.tgz#afba07aa0374a93c6219603b1fb83eaa2264d8f8" - integrity sha512-F8sU45yQpjQjxKkm1UOAhf0U/O0aFt//Fl7hsrNVto+patMHjs7dPI9mFOGUKbhrgKm0S3EjW3scMFuQmWSROw== +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== dependencies: - ansi-regex "^5.0.1" aproba "^1.0.3 || ^2.0.0" - color-support "^1.1.2" - console-control-strings "^1.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" has-unicode "^2.0.1" - signal-exit "^3.0.0" + signal-exit "^3.0.7" string-width "^4.2.3" strip-ansi "^6.0.1" - wide-align "^1.1.2" + wide-align "^1.1.5" gauge@~2.7.3: version "2.7.4" @@ -13266,20 +12920,20 @@ gauge@~2.7.3: wide-align "^1.1.0" gaxios@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/gaxios/-/gaxios-4.0.1.tgz#bc7b205a89d883452822cc75e138620c35e3291e" - integrity sha512-jOin8xRZ/UytQeBpSXFqIzqU7Fi5TqgPNLlUsSB8kjJ76+FiGBfImF8KJu++c6J4jOldfJUtt0YmkRj2ZpSHTQ== + version "4.3.3" + resolved "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz#d44bdefe52d34b6435cc41214fdb160b64abfc22" + integrity sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA== dependencies: abort-controller "^3.0.0" extend "^3.0.2" https-proxy-agent "^5.0.0" is-stream "^2.0.0" - node-fetch "^2.3.0" + node-fetch "^2.6.7" gcp-metadata@^4.2.0: - version "4.2.1" - resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.2.1.tgz#31849fbcf9025ef34c2297c32a89a1e7e9f2cd62" - integrity sha512-tSk+REe5iq/N+K+SK1XjZJUrFPuDqGZVzCy2vocIHIGmPlTGsa8owXMJwGkrXr73NO0AzhPW4MF2DEHz7P2AVw== + version "4.3.1" + resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz#fb205fe6a90fef2fd9c85e6ba06e5559ee1eefa9" + integrity sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A== dependencies: gaxios "^4.0.0" json-bigint "^1.0.0" @@ -13291,12 +12945,12 @@ generate-function@^2.3.1: dependencies: is-property "^1.0.2" -generic-names@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/generic-names/-/generic-names-2.0.1.tgz#f8a378ead2ccaa7a34f0317b05554832ae41b872" - integrity sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ== +generic-names@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/generic-names/-/generic-names-4.0.0.tgz#0bd8a2fd23fe8ea16cbd0a279acd69c06933d9a3" + integrity sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A== dependencies: - loader-utils "^1.1.0" + loader-utils "^3.2.0" gensync@^1.0.0-beta.2: version "1.0.0-beta.2" @@ -13355,7 +13009,7 @@ get-stdin@^8.0.0: resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== -get-stream@^4.0.0, get-stream@^4.1.0: +get-stream@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== @@ -13363,9 +13017,9 @@ get-stream@^4.0.0, get-stream@^4.1.0: pump "^3.0.0" get-stream@^5.0.0, get-stream@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== + version "5.2.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== dependencies: pump "^3.0.0" @@ -13407,9 +13061,9 @@ getpass@^0.1.1: assert-plus "^1.0.0" git-raw-commits@^2.0.8: - version "2.0.10" - resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" - integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== + version "2.0.11" + resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" + integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== dependencies: dargs "^7.0.0" lodash "^4.17.15" @@ -13434,12 +13088,12 @@ git-semver-tags@^4.1.1: semver "^6.0.0" git-up@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.1.tgz#cb2ef086653640e721d2042fe3104857d89007c0" - integrity sha512-LFTZZrBlrCrGCG07/dm1aCjjpL1z9L3+5aEeI9SBhAqSc+kiA9Or1bgZhQFNppJX6h/f5McrvJt1mQXTFm6Qrw== + version "4.0.5" + resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" + integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== dependencies: is-ssh "^1.3.0" - parse-url "^5.0.0" + parse-url "^6.0.0" git-url-parse@^11.4.4, git-url-parse@^11.6.0: version "11.6.0" @@ -13563,17 +13217,17 @@ globals@^11.1.0, globals@^11.12.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.15.0: - version "13.15.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz#38113218c907d2f7e98658af246cef8b77e90bac" - integrity sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog== +globals@^13.6.0, globals@^13.9.0: + version "13.14.0" + resolved "https://registry.npmjs.org/globals/-/globals-13.14.0.tgz#daf3ff9b4336527cf56e98330b6f64bea9aff9df" + integrity sha512-ERO68sOYwm5UuLvSJTY7w7NP2c8S4UcXs3X1GBX8cwOr+ShOcDBbCY5mH4zxz0jsYCdJ8ve8Mv9n2YGJMB1aeg== dependencies: type-fest "^0.20.2" globalthis@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz#2a235d34f4d8036219f7e34929b5de9e18166b8b" - integrity sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ== + version "1.0.3" + resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== dependencies: define-properties "^1.1.3" @@ -13617,9 +13271,9 @@ google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7 lru-cache "^6.0.0" google-gax@^2.24.1: - version "2.30.5" - resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.30.5.tgz#e836f984f3228900a8336f608c83d75f9cb73eff" - integrity sha512-Jey13YrAN2hfpozHzbtrwEfEHdStJh1GwaQ2+Akh1k0Tv/EuNVSuBtHZoKSBm5wBMvNsxTsEIZ/152NrYyZgxQ== + version "2.30.4" + resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.30.4.tgz#578b4461ed328446e2ebdaa1d7ae5e12aec839bd" + integrity sha512-/W4wWKjYcCXtd3Vz+ux7fN3MElbLVKGmHCCgA6kotigQgoDrLLueSvnXsck7qZaF39ooYnFhA58Rjr7RHe2heA== dependencies: "@grpc/grpc-js" "~1.6.0" "@grpc/proto-loader" "^0.6.12" @@ -13632,15 +13286,15 @@ google-gax@^2.24.1: node-fetch "^2.6.1" object-hash "^3.0.0" proto3-json-serializer "^0.1.8" - protobufjs "6.11.3" + protobufjs "6.11.2" retry-request "^4.0.0" -google-p12-pem@^3.0.3: - version "3.1.3" - resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.3.tgz#5497998798ee86c2fc1f4bb1f92b7729baf37537" - integrity sha512-MC0jISvzymxePDVembypNefkAQp+DRP7dBE+zNUPaIjEspIlYg0++OrsNr248V9tPbz6iqtZ7rX1hxWA5B8qBQ== +google-p12-pem@^3.1.3: + version "3.1.4" + resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz#123f7b40da204de4ed1fbf2fd5be12c047fc8b3b" + integrity sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg== dependencies: - node-forge "^1.0.0" + node-forge "^1.3.1" got@11.8.3, got@^11.8.0: version "11.8.3" @@ -13676,12 +13330,7 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: - version "4.2.9" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" - integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== - -graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -13710,20 +13359,20 @@ graphlib@^2.1.8: lodash "^4.17.15" graphql-config@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/graphql-config/-/graphql-config-4.1.0.tgz#a3b28d3fb537952ebeb69c75e4430605a10695e3" - integrity sha512-Myqay6pmdcmX3KqoH+bMbeKZ1cTODpHS2CxF1ZzNnfTE+YUpGTcp01bOw6LpzamRb0T/WTYtGFbZeXGo9Hab2Q== + version "4.3.0" + resolved "https://registry.npmjs.org/graphql-config/-/graphql-config-4.3.0.tgz#b9bb7bf9c892a90e66ea937e8d7ed170eb1fd5e2" + integrity sha512-Uiu3X7+s5c056WyrvdZVz2vG1fhAipMlYmtiCU/4Z2mX79OXDr1SqIon2MprC/pExIWJfAQZCcjYDY76fPBUQg== dependencies: "@endemolshinegroup/cosmiconfig-typescript-loader" "3.0.2" - "@graphql-tools/graphql-file-loader" "^7.3.2" - "@graphql-tools/json-file-loader" "^7.3.2" - "@graphql-tools/load" "^7.4.1" - "@graphql-tools/merge" "^8.2.1" - "@graphql-tools/url-loader" "^7.4.2" - "@graphql-tools/utils" "^8.5.1" + "@graphql-tools/graphql-file-loader" "^7.3.7" + "@graphql-tools/json-file-loader" "^7.3.7" + "@graphql-tools/load" "^7.5.5" + "@graphql-tools/merge" "^8.2.6" + "@graphql-tools/url-loader" "^7.9.7" + "@graphql-tools/utils" "^8.6.5" cosmiconfig "7.0.1" cosmiconfig-toml-loader "1.0.0" - minimatch "3.0.4" + minimatch "4.2.1" string-env-interpolation "1.0.1" graphql-executor@0.0.23: @@ -13771,9 +13420,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql-ws@^5.4.1: - version "5.8.2" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" - integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== + version "5.8.1" + resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.1.tgz#daf72534b8a169a272e730fa4f3ce0e6d04e2883" + integrity sha512-UVf/fxlHultC1+12tX9ShTIipqQFNZ96g7N51RFQlk7MFPsDUUMCR3QXVEzHEd5xlTp16rs5vCyfBljvcPN3fA== graphql@^15.5.1: version "15.8.0" @@ -13791,14 +13440,13 @@ grouped-queue@^2.0.0: integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== gtoken@^5.0.4: - version "5.1.0" - resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz#4ba8d2fc9a8459098f76e7e8fd7beaa39fda9fe4" - integrity sha512-4d8N6Lk8TEAHl9vVoRVMh9BNOKWVgl2DdNtr3428O75r3QFrF/a5MMu851VmK0AA8+iSvbwRv69k5XnMLURGhg== + version "5.3.2" + resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz#deb7dc876abe002178e0515e383382ea9446d58f" + integrity sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ== dependencies: gaxios "^4.0.0" - google-p12-pem "^3.0.3" + google-p12-pem "^3.1.3" jws "^4.0.0" - mime "^2.2.0" gzip-size@^6.0.0: version "6.0.0" @@ -13808,9 +13456,9 @@ gzip-size@^6.0.0: duplexer "^0.1.2" handle-thing@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" - integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ== + version "2.0.1" + resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" + integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== handlebars@^4.7.3, handlebars@^4.7.7: version "4.7.7" @@ -13830,11 +13478,11 @@ har-schema@^2.0.0: integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== + version "5.1.5" + resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== dependencies: - ajv "^6.5.5" + ajv "^6.12.3" har-schema "^2.0.0" hard-rejection@^2.1.0: @@ -13843,9 +13491,9 @@ hard-rejection@^2.1.0: integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== + version "1.6.2" + resolved "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz#31ecbd32e648a34d030d86adb67d4d47547fe710" + integrity sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g== has-ansi@^2.0.0: version "2.0.0" @@ -13854,10 +13502,10 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-bigints@^1.0.2: version "1.0.2" @@ -13893,10 +13541,10 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" -has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== +has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has-symbols@^1.0.3: version "1.0.3" @@ -13959,12 +13607,13 @@ has@^1.0.3: function-bind "^1.1.1" hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= + version "3.1.0" + resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" + integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" + inherits "^2.0.4" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" hash-it@^5.0.0: version "5.0.2" @@ -13985,9 +13634,9 @@ hash.js@^1.0.0, hash.js@^1.0.3: minimalistic-assert "^1.0.1" hast-util-parse-selector@^2.0.0: - version "2.2.4" - resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974" - integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA== + version "2.2.5" + resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" + integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== hast-util-whitespace@^2.0.0: version "2.0.0" @@ -14084,13 +13733,6 @@ hosted-git-info@^2.1.4: resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== -hosted-git-info@^3.0.6: - version "3.0.8" - resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d" - integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== - dependencies: - lru-cache "^6.0.0" - hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: version "4.1.0" resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" @@ -14121,14 +13763,14 @@ html-encoding-sniffer@^2.0.1: whatwg-encoding "^1.0.5" html-entities@^2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz#760b404685cb1d794e4f4b744332e3b00dcfe488" - integrity sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ== + version "2.3.3" + resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" + integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== html-escaper@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.1.tgz#beed86b5d2b921e92533aa11bce6d8e3b583dee7" - integrity sha512-hNX23TjWwD3q56HpWjUHOKj1+4KKlnjv9PcmBUYKVpga+2cnb9nDx/B1o0yO4n+RZXZdiNxzx6B24C9aNMTkkQ== + version "2.0.2" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== html-minifier-terser@^6.0.2: version "6.1.0" @@ -14174,17 +13816,6 @@ http-deceiver@^1.2.7: resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.1" - http-errors@2.0.0, http-errors@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" @@ -14207,9 +13838,9 @@ http-errors@~1.6.2: statuses ">= 1.4.0 < 2" http-parser-js@>=0.5.1: - version "0.5.3" - resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz#01d2709c79d41698bb01d4decc5e9da4e4a033d9" - integrity sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg== + version "0.5.6" + resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz#2e02406ab2df8af8a7abfba62e0da01c62b95afd" + integrity sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA== http-proxy-agent@^4.0.1: version "4.0.1" @@ -14268,9 +13899,9 @@ http-signature@~1.3.6: sshpk "^1.14.1" http2-wrapper@^1.0.0-beta.5.2: - version "1.0.0-beta.5.2" - resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" - integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ== + version "1.0.3" + resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d" + integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg== dependencies: quick-lru "^5.1.1" resolve-alpn "^1.0.0" @@ -14326,9 +13957,9 @@ husky@^8.0.0: integrity sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw== hyphenate-style-name@^1.0.2, hyphenate-style-name@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48" - integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ== + version "1.0.4" + resolved "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d" + integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" @@ -14377,9 +14008,9 @@ ignore-by-default@^1.0.1: integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= ignore-walk@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== + version "3.0.4" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" + integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== dependencies: minimatch "^3.0.4" @@ -14440,9 +14071,9 @@ import-cwd@^3.0.0: import-from "^3.0.0" import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: - version "3.2.1" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== + version "3.3.0" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -14470,9 +14101,9 @@ import-lazy@~4.0.0: integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== import-local@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" - integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + version "3.1.0" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -14482,13 +14113,6 @@ imurmurhash@^0.1.4: resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= -indefinite-observable@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/indefinite-observable/-/indefinite-observable-2.0.1.tgz#574af29bfbc17eb5947793797bddc94c9d859400" - integrity sha512-G8vgmork+6H9S8lUAg1gtXEj2JxIQTo0g2PbFiYOdjkziSI0F7UYBiVwhZRuixhBCNGczAls34+5HJPyZysvxQ== - dependencies: - symbol-observable "1.2.0" - indent-string@^3.0.0: version "3.2.0" resolved "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" @@ -14499,11 +14123,6 @@ indent-string@^4.0.0: resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - indexof@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" @@ -14548,16 +14167,15 @@ ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== init-package-json@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.2.tgz#d81a7e6775af9b618f20bba288e440b8d1ce05f3" - integrity sha512-PO64kVeArePvhX7Ff0jVWkpnE1DfGRvaWcStYrPugcJz9twQGYibagKJuIMHCX7ENcp0M6LJlcjLBuLD5KeJMg== + version "2.0.5" + resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" + integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== dependencies: - glob "^7.1.1" - npm-package-arg "^8.1.0" + npm-package-arg "^8.1.5" promzard "^0.3.0" read "~1.0.1" - read-package-json "^3.0.0" - semver "^7.3.2" + read-package-json "^4.1.1" + semver "^7.3.5" validate-npm-package-license "^3.0.4" validate-npm-package-name "^3.0.0" @@ -14567,9 +14185,9 @@ inline-style-parser@0.1.1: integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== inline-style-prefixer@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.0.tgz#f73d5dbf2855733d6b153a4d24b7b47a73e9770b" - integrity sha512-XTHvRUS4ZJNzC1GixJRmOlWSS45fSt+DJoyQC9ytj0WxQfcgofQtDtyKKYxHUqEsWCs+LIWftPF1ie7+i012Fg== + version "6.0.1" + resolved "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.1.tgz#c5c0e43ba8831707afc5f5bbfd97edf45c1fa7ae" + integrity sha512-AsqazZ8KcRzJ9YPN1wMH2aNM7lkWQ8tSPrW5uDk1ziYwiAPWSZnUsC7lfZq+BDqLqz0B4Pho5wscWcJzVvRzDQ== dependencies: css-in-js-utils "^2.0.0" @@ -14693,9 +14311,9 @@ ioredis@^5.0.4: standard-as-callback "^2.1.0" ip@^1.1.5: - version "1.1.5" - resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + version "1.1.6" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.6.tgz#5a651a37644586e18b6ba3b48ca122bf56495f67" + integrity sha512-/dAvCivFs/VexXAtiAoMIqyhkhStNC9CPD0h1noonimOgB1xrCkexF2c5CjlqQ72GgMPjN6tiV+oreoPv3Ft1g== ipaddr.js@1.9.1: version "1.9.1" @@ -14707,11 +14325,6 @@ ipaddr.js@^2.0.1: resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz#eca256a7a877e917aeb368b0a7497ddf42ef81c0" integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== -is-absolute-url@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" @@ -14739,11 +14352,6 @@ is-alphabetical@^1.0.0: resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== -is-alphabetical@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.0.tgz#ef6e2caea57c63450fffc7abb6cbdafc5eb96e96" - integrity sha512-5OV8Toyq3oh4eq6sbWTYzlGdnMT/DPI5I0zxUBxjiigQsZycpkKF3kskkao3JyYGuYDHvhgJF+DrjMQp9SX86w== - is-alphanumerical@^1.0.0: version "1.0.4" resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" @@ -14752,18 +14360,13 @@ is-alphanumerical@^1.0.0: is-alphabetical "^1.0.0" is-decimal "^1.0.0" -is-alphanumerical@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.0.tgz#0fbfeb6a72d21d91143b3d182bf6cf5909ee66f6" - integrity sha512-t+2GlJ+hO9yagJ+jU3+HSh80VKvz/3cG2cxbGGm4S0hjKuhWQXgPVUVOZz3tqZzMjhmphZ+1TIJTlRZRoe6GCQ== - dependencies: - is-alphabetical "^2.0.0" - is-decimal "^2.0.0" - is-arguments@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" - integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== + version "1.1.1" + resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" is-arrayish@^0.2.1: version "0.2.1" @@ -14776,9 +14379,11 @@ is-arrayish@^0.3.1: integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== is-bigint@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" - integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg== + version "1.0.4" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" is-binary-path@~2.1.0: version "2.1.0" @@ -14788,11 +14393,12 @@ is-binary-path@~2.1.0: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz#e2aaad3a3a8fca34c28f6eee135b156ed2587ff0" - integrity sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA== + version "1.1.2" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" + has-tostringtag "^1.0.0" is-buffer@^1.1.5: version "1.1.6" @@ -14800,9 +14406,9 @@ is-buffer@^1.1.5: integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-buffer@^2.0.0: - version "2.0.4" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== + version "2.0.5" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== is-builtin-module@^3.1.0: version "3.1.0" @@ -14830,14 +14436,7 @@ is-ci@^3.0.0, is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.1.0, is-core-module@^2.2.0, is-core-module@^2.8.0: - version "2.8.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== - dependencies: - has "^1.0.3" - -is-core-module@^2.8.1: +is-core-module@^2.1.0, is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.1: version "2.9.0" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== @@ -14859,20 +14458,17 @@ is-data-descriptor@^1.0.0: kind-of "^6.0.0" is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== + version "1.0.5" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" is-decimal@^1.0.0: version "1.0.4" resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== -is-decimal@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.0.tgz#db1140337809fd043a056ae40a9bd1cdc563034c" - integrity sha512-QfrfjQV0LjoWQ1K1XSoEZkTAzSa14RKVMa5zg3SdAfzEmQzRM4+tbSFWb78creCeA9rNBzaZal92opi1TwPWZw== - is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -14954,9 +14550,11 @@ is-generator-fn@^2.0.0: integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-generator-function@^1.0.7: - version "1.0.8" - resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz#dfb5c2b120e02b0a8d9d2c6806cd5621aa922f7b" - integrity sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ== + version "1.0.10" + resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== + dependencies: + has-tostringtag "^1.0.0" is-glob@4.0.3, is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" @@ -14970,11 +14568,6 @@ is-hexadecimal@^1.0.0: resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== -is-hexadecimal@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.0.tgz#8e1ec9f48fe3eabd90161109856a23e0907a65d5" - integrity sha512-vGOtYkiaxwIiR0+Ng/zNId+ZZehGfINwTzdrDqc6iubbnQWhnPuYymOzOKUDqa2cSl59yHnEh2h6MvRLQsyNug== - is-in-browser@^1.0.2, is-in-browser@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835" @@ -15010,10 +14603,10 @@ is-module@^1.0.0: resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= -is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== +is-negative-zero@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== is-negative-zero@^2.0.2: version "2.0.2" @@ -15031,9 +14624,11 @@ is-npm@^5.0.0: integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== is-number-object@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" - integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw== + version "1.0.7" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== + dependencies: + has-tostringtag "^1.0.0" is-number@^3.0.0: version "3.0.0" @@ -15053,9 +14648,9 @@ is-obj@^2.0.0: integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-object@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" - integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= + version "1.0.2" + resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" + integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== is-observable@^1.1.0: version "1.1.0" @@ -15101,13 +14696,6 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-plain-object@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz#47bfc5da1b5d50d64110806c199359482e75a928" - integrity sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg== - dependencies: - isobject "^4.0.0" - is-plain-object@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" @@ -15160,11 +14748,6 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" -is-resolvable@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - is-root@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" @@ -15177,10 +14760,12 @@ is-scoped@^2.1.0: dependencies: scoped-regex "^2.0.0" -is-shared-array-buffer@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" - integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== +is-shared-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== + dependencies: + call-bind "^1.0.2" is-shared-array-buffer@^1.0.2: version "1.0.2" @@ -15190,9 +14775,9 @@ is-shared-array-buffer@^1.0.2: call-bind "^1.0.2" is-ssh@^1.3.0: - version "1.3.1" - resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz#f349a8cadd24e65298037a522cf7520f2e81a0f3" - integrity sha512-0eRIASHZt1E68/ixClI8bp2YK2wmBPVWEismTs6M+M099jKgrzl/3E976zIbImSIob48N2/XGe9y7ZiYdImSlg== + version "1.3.3" + resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e" + integrity sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ== dependencies: protocols "^1.1.0" @@ -15224,18 +14809,18 @@ is-string@^1.0.5, is-string@^1.0.7: has-tostringtag "^1.0.0" is-subdir@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.1.1.tgz#423e66902f9c5f159b9cc4826c820df083059538" - integrity sha512-VYpq0S7gPBVkkmfwkvGnx1EL9UVIo87NQyNcgMiNUdQCws3CJm5wj2nB+XPL7zigvjxhuZgp3bl2yBcKkSIj1w== + version "1.2.0" + resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz#b791cd28fab5202e91a08280d51d9d7254fd20d4" + integrity sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw== dependencies: better-path-resolve "1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== + version "1.0.4" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: - has-symbols "^1.0.1" + has-symbols "^1.0.2" is-text-path@^1.0.1: version "1.0.1" @@ -15244,16 +14829,16 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.3: - version "1.1.5" - resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz#f32e6e096455e329eb7b423862456aa213f0eb4e" - integrity sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug== +is-typed-array@^1.1.3, is-typed-array@^1.1.7: + version "1.1.8" + resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz#cbaa6585dc7db43318bc5b89523ea384a6f65e79" + integrity sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA== dependencies: - available-typed-arrays "^1.0.2" + available-typed-arrays "^1.0.5" call-bind "^1.0.2" - es-abstract "^1.18.0-next.2" + es-abstract "^1.18.5" foreach "^2.0.5" - has-symbols "^1.0.1" + has-tostringtag "^1.0.0" is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" @@ -15284,12 +14869,12 @@ is-utf8@^0.2.0, is-utf8@^0.2.1: resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= -is-weakref@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" - integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ== +is-weakref@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" is-weakref@^1.0.2: version "1.0.2" @@ -15336,9 +14921,9 @@ isarray@2.0.1: integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= isbinaryfile@^4.0.8: - version "4.0.8" - resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf" - integrity sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w== + version "4.0.10" + resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" + integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== isbinaryfile@^5.0.0: version "5.0.0" @@ -15362,11 +14947,6 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= -isobject@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" - integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== - isomorphic-dompurify@^0.13.0: version "0.13.0" resolved "https://registry.npmjs.org/isomorphic-dompurify/-/isomorphic-dompurify-0.13.0.tgz#a4dde357e8531018a85ebb2dd56c4794b6739ba3" @@ -15418,20 +14998,15 @@ isstream@~0.1.2: resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== - -istanbul-lib-coverage@^3.2.0: +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" - integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== + version "5.2.0" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f" + integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" @@ -15449,9 +15024,9 @@ istanbul-lib-report@^3.0.0: supports-color "^7.1.0" istanbul-lib-source-maps@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" - integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== + version "4.0.1" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" istanbul-lib-coverage "^3.0.0" @@ -15954,16 +15529,23 @@ jmespath@^0.15.0: integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc= joi@^17.4.0: - version "17.4.2" - resolved "https://registry.npmjs.org/joi/-/joi-17.4.2.tgz#02f4eb5cf88e515e614830239379dcbbe28ce7f7" - integrity sha512-Lm56PP+n0+Z2A2rfRvsfWVDXGEWjXxatPopkQ8qQ5mxCEhwHG+Ettgg5o98FFaxilOxozoa14cFhrE/hOzh/Nw== + version "17.6.0" + resolved "https://registry.npmjs.org/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" + integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.0" + "@sideway/address" "^4.1.3" "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" +jose@^1.27.1: + version "1.28.1" + resolved "https://registry.npmjs.org/jose/-/jose-1.28.1.tgz#34a0f851a534be59ffab82a6e8845f6874e8c128" + integrity sha512-6JK28rFu5ENp/yxMwM+iN7YeaInnY9B9Bggjkz5fuwLiJhbVrl2O4SJr65bdNBPl9y27fdC3Mymh+FVCvozLIg== + dependencies: + "@panva/asn1.js" "^1.0.0" + jose@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/jose/-/jose-2.0.5.tgz#29746a18d9fff7dcf9d5d2a6f62cb0c7cd27abd3" @@ -15971,20 +15553,15 @@ jose@^2.0.5: dependencies: "@panva/asn1.js" "^1.0.0" -jose@^4.1.4: - version "4.5.0" - resolved "https://registry.npmjs.org/jose/-/jose-4.5.0.tgz#92829d8cf846351eb55aaaf94f252fb1d191f2d5" - integrity sha512-GFcVFQwYQKbQTUOo2JlpFGXTkgBw26uzDsRMD2q1WgSKNSnpKS9Ug7bdQ8dS+p4sZHNH6iRPu6WK2jLIjspaMA== - -jose@^4.6.0: +jose@^4.1.4, jose@^4.6.0: version "4.8.1" resolved "https://registry.npmjs.org/jose/-/jose-4.8.1.tgz#dc7c2660b115ba29b44880e588c5ac313c158247" integrity sha512-+/hpTbRcCw9YC0TOfN1W47pej4a9lRmltdOVdRLz5FP5UvUq3CenhXjQK7u/8NdMIIShMXYAh9VLPhc7TjhvFw== joycon@^3.0.1: - version "3.1.0" - resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.0.tgz#33bb2b6b5a6849a1e251bed623bdf610f477d49f" - integrity sha512-5Y/YJghKF/IzaUXTut0JtbQyHfBShTaIsH7hHhGXEzYO07zWdWZm5hr3Q6miqhrwsRqqm3mgOnUEZdn+1aRxKQ== + version "3.1.1" + resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" + integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== jpeg-js@^0.3.4: version "0.3.7" @@ -16363,73 +15940,72 @@ jsprim@^2.0.2: verror "1.10.0" jss-plugin-camel-case@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.6.0.tgz#93d2cd704bf0c4af70cc40fb52d74b8a2554b170" - integrity sha512-JdLpA3aI/npwj3nDMKk308pvnhoSzkW3PXlbgHAzfx0yHWnPPVUjPhXFtLJzgKZge8lsfkUxvYSQ3X2OYIFU6A== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.9.0.tgz#4921b568b38d893f39736ee8c4c5f1c64670aaf7" + integrity sha512-UH6uPpnDk413/r/2Olmw4+y54yEF2lRIV8XIZyuYpgPYTITLlPOsq6XB9qeqv+75SQSg3KLocq5jUBXW8qWWww== dependencies: "@babel/runtime" "^7.3.1" hyphenate-style-name "^1.0.3" - jss "10.6.0" + jss "10.9.0" jss-plugin-default-unit@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.6.0.tgz#af47972486819b375f0f3a9e0213403a84b5ef3b" - integrity sha512-7y4cAScMHAxvslBK2JRK37ES9UT0YfTIXWgzUWD5euvR+JR3q+o8sQKzBw7GmkQRfZijrRJKNTiSt1PBsLI9/w== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.9.0.tgz#bb23a48f075bc0ce852b4b4d3f7582bc002df991" + integrity sha512-7Ju4Q9wJ/MZPsxfu4T84mzdn7pLHWeqoGd/D8O3eDNNJ93Xc8PxnLmV8s8ZPNRYkLdxZqKtm1nPQ0BM4JRlq2w== dependencies: "@babel/runtime" "^7.3.1" - jss "10.6.0" + jss "10.9.0" jss-plugin-global@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.6.0.tgz#3e8011f760f399cbadcca7f10a485b729c50e3ed" - integrity sha512-I3w7ji/UXPi3VuWrTCbHG9rVCgB4yoBQLehGDTmsnDfXQb3r1l3WIdcO8JFp9m0YMmyy2CU7UOV6oPI7/Tmu+w== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.9.0.tgz#fc07a0086ac97aca174e37edb480b69277f3931f" + integrity sha512-4G8PHNJ0x6nwAFsEzcuVDiBlyMsj2y3VjmFAx/uHk/R/gzJV+yRHICjT4MKGGu1cJq2hfowFWCyrr/Gg37FbgQ== dependencies: "@babel/runtime" "^7.3.1" - jss "10.6.0" + jss "10.9.0" jss-plugin-nested@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.6.0.tgz#5f83c5c337d3b38004834e8426957715a0251641" - integrity sha512-fOFQWgd98H89E6aJSNkEh2fAXquC9aZcAVjSw4q4RoQ9gU++emg18encR4AT4OOIFl4lQwt5nEyBBRn9V1Rk8g== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.9.0.tgz#cc1c7d63ad542c3ccc6e2c66c8328c6b6b00f4b3" + integrity sha512-2UJnDrfCZpMYcpPYR16oZB7VAC6b/1QLsRiAutOt7wJaaqwCBvNsosLEu/fUyKNQNGdvg2PPJFDO5AX7dwxtoA== dependencies: "@babel/runtime" "^7.3.1" - jss "10.6.0" + jss "10.9.0" tiny-warning "^1.0.2" jss-plugin-props-sort@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.6.0.tgz#297879f35f9fe21196448579fee37bcde28ce6bc" - integrity sha512-oMCe7hgho2FllNc60d9VAfdtMrZPo9n1Iu6RNa+3p9n0Bkvnv/XX5San8fTPujrTBScPqv9mOE0nWVvIaohNuw== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.9.0.tgz#30e9567ef9479043feb6e5e59db09b4de687c47d" + integrity sha512-7A76HI8bzwqrsMOJTWKx/uD5v+U8piLnp5bvru7g/3ZEQOu1+PjHvv7bFdNO3DwNPC9oM0a//KwIJsIcDCjDzw== dependencies: "@babel/runtime" "^7.3.1" - jss "10.6.0" + jss "10.9.0" jss-plugin-rule-value-function@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.6.0.tgz#3c1a557236a139d0151e70a82c810ccce1c1c5ea" - integrity sha512-TKFqhRTDHN1QrPTMYRlIQUOC2FFQb271+AbnetURKlGvRl/eWLswcgHQajwuxI464uZk91sPiTtdGi7r7XaWfA== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.9.0.tgz#379fd2732c0746fe45168011fe25544c1a295d67" + integrity sha512-IHJv6YrEf8pRzkY207cPmdbBstBaE+z8pazhPShfz0tZSDtRdQua5jjg6NMz3IbTasVx9FdnmptxPqSWL5tyJg== dependencies: "@babel/runtime" "^7.3.1" - jss "10.6.0" + jss "10.9.0" tiny-warning "^1.0.2" jss-plugin-vendor-prefixer@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.6.0.tgz#e1fcd499352846890c38085b11dbd7aa1c4f2c78" - integrity sha512-doJ7MouBXT1lypLLctCwb4nJ6lDYqrTfVS3LtXgox42Xz0gXusXIIDboeh6UwnSmox90QpVnub7au8ybrb0krQ== + version "10.9.0" + resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.9.0.tgz#aa9df98abfb3f75f7ed59a3ec50a5452461a206a" + integrity sha512-MbvsaXP7iiVdYVSEoi+blrW+AYnTDvHTW6I6zqi7JcwXdc6I9Kbm234nEblayhF38EftoenbM+5218pidmC5gA== dependencies: "@babel/runtime" "^7.3.1" css-vendor "^2.0.8" - jss "10.6.0" + jss "10.9.0" -jss@10.6.0, jss@^10.5.1: - version "10.6.0" - resolved "https://registry.npmjs.org/jss/-/jss-10.6.0.tgz#d92ff9d0f214f65ca1718591b68e107be4774149" - integrity sha512-n7SHdCozmxnzYGXBHe0NsO0eUf9TvsHVq2MXvi4JmTn3x5raynodDVE/9VQmBdWFyyj9HpHZ2B4xNZ7MMy7lkw== +jss@10.9.0, jss@^10.5.1: + version "10.9.0" + resolved "https://registry.npmjs.org/jss/-/jss-10.9.0.tgz#7583ee2cdc904a83c872ba695d1baab4b59c141b" + integrity sha512-YpzpreB6kUunQBbrlArlsMpXYyndt9JATbt95tajx0t4MTJJcCJdd4hdNpHmOIDiUJrF/oX5wtVFrS3uofWfGw== dependencies: "@babel/runtime" "^7.3.1" csstype "^3.0.2" - indefinite-observable "^2.0.1" is-in-browser "^1.1.3" tiny-warning "^1.0.2" @@ -16443,31 +16019,23 @@ jss@~10.8.2: is-in-browser "^1.1.3" tiny-warning "^1.0.2" -"jsx-ast-utils@^2.4.1 || ^3.0.0": - version "3.2.0" - resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" - integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== +"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1: + version "3.3.0" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.0.tgz#e624f259143b9062c92b6413ff92a164c80d3ccb" + integrity sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q== dependencies: - array-includes "^3.1.2" + array-includes "^3.1.4" object.assign "^4.1.2" -jsx-ast-utils@^3.2.1: - version "3.2.1" - resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" - integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== - dependencies: - array-includes "^3.1.3" - object.assign "^4.1.2" - -just-diff-apply@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-4.0.1.tgz#da89c5a4ccb14aa8873c70e2c3b6695cef45dab5" - integrity sha512-AKOkzB5P6FkfP21UlZVX/OPXx/sC2GagpLX9cBxqHqDuRjwmZ/AJRKSNrB9jHPpRW1W1ONs6gly1gW46t055nQ== +just-diff-apply@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.2.0.tgz#15da3888ab3acecc14ce9a067f2d7589c653cb89" + integrity sha512-unjtin7rnng0KUpE4RPWwTl8iwWiZuyZqOQ+vm8orV6aIXX8mHN8zlKCPPbOycfDNuLh2PBazbFhNoDJv4S/FA== just-diff@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.0.1.tgz#db8fe1cfeea1156f2374bfb289826dca28e7e390" - integrity sha512-X00TokkRIDotUIf3EV4xUm6ELc/IkqhS/vPSHdWnsM5y0HoNMfEqrazizI7g78lpHvnRSRt/PFfKtRqJCOGIuQ== + version "5.0.2" + resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.0.2.tgz#68854c94280c37d28cb266d8f29bdd2cd29f003e" + integrity sha512-uGd6F+eIZ4T95EinP8ubINGkbEy3jrgBym+6LjW+ja1UG1WQIcEcQ6FLeyXtVJZglk+bj7fvEn+Cu2LBxkgiYQ== just-extend@^4.0.2: version "4.2.1" @@ -16519,9 +16087,9 @@ kafkajs@^1.16.0-beta.6: integrity sha512-+Rcfu2hyQ/jv5skqRY8xA7Ra+mmRkDAzCaLDYbkGtgsNKpzxPWiLbk8ub0dgr4EbWrN1Zb4BCXHUkD6+zYfdWg== keyv-memcache@^1.2.5: - version "1.2.9" - resolved "https://registry.npmjs.org/keyv-memcache/-/keyv-memcache-1.2.9.tgz#68776b098233e4305ec729fbeb5ad5905f6ac914" - integrity sha512-hcHeihL/LjAhP1qvLSWuwCxDQlSkkGwlvH7RfIIO+57s7J5dhFLQQko1WcAbcd1jlxV6iPHAEvkDwp8c7XQzgA== + version "1.3.3" + resolved "https://registry.npmjs.org/keyv-memcache/-/keyv-memcache-1.3.3.tgz#07343ae4e4cc1373ecca83657c246c616f9b0b7d" + integrity sha512-7k+0Ju2KPkS+a22MdgUW/MPAYyo736joxfrWFUsgiUY7ssu/tT6hxfWjxubQBNeG93dHRTBAF0oFUtSSVYTW0Q== dependencies: json-buffer "^3.0.1" memjs "^1.3.0" @@ -16542,7 +16110,6 @@ keyv@^4.0.0, keyv@^4.0.3: json-buffer "3.0.1" kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= dependencies: @@ -16630,9 +16197,9 @@ lazy-ass@1.6.0, lazy-ass@^1.6.0: integrity sha1-eZllXoZGwX8In90YfRUNMyTVRRM= lazystream@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" - integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= + version "1.0.1" + resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" + integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== dependencies: readable-stream "^2.0.5" @@ -16737,45 +16304,45 @@ li@^1.3.0: integrity sha1-IsWbyu+qmo7zWc91l4TkvxBq6hs= libnpmaccess@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.1.tgz#17e842e03bef759854adf6eb6c2ede32e782639f" - integrity sha512-ZiAgvfUbvmkHoMTzdwmNWCrQRsDkOC+aM5BDfO0C9aOSwF3R1LdFDBD+Rer1KWtsoQYO35nXgmMR7OUHpDRxyA== + version "4.0.3" + resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" + integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== dependencies: aproba "^2.0.0" minipass "^3.1.1" - npm-package-arg "^8.0.0" - npm-registry-fetch "^9.0.0" + npm-package-arg "^8.1.2" + npm-registry-fetch "^11.0.0" libnpmpublish@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.0.tgz#ad6413914e0dfd78df868ce14ba3d3a4cc8b385b" - integrity sha512-2RwYXRfZAB1x/9udKpZmqEzSqNd7ouBRU52jyG14/xG8EF+O9A62d7/XVR3iABEQHf1iYhkm0Oq9iXjrL3tsXA== + version "4.0.2" + resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" + integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== dependencies: - normalize-package-data "^3.0.0" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" + normalize-package-data "^3.0.2" + npm-package-arg "^8.1.2" + npm-registry-fetch "^11.0.0" semver "^7.1.3" - ssri "^8.0.0" + ssri "^8.0.1" -lilconfig@2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" - integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== - -lilconfig@^2.0.3: +lilconfig@2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== +lilconfig@^2.0.3, lilconfig@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" + integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== + lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + version "1.2.4" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== linkify-it@^3.0.1: - version "3.0.2" - resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.2.tgz#f55eeb8bc1d3ae754049e124ab3bb56d97797fb8" - integrity sha512-gDBO4aHNZS6coiZCKVhSNh43F9ioIL4JwRjLZPkoLIY4yZFwg264Y5lu2x6rb1Js42Gh6Yqm2f6L2AJcnkzinQ== + version "3.0.3" + resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" + integrity sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ== dependencies: uc.micro "^1.0.1" @@ -16931,9 +16498,9 @@ load-yaml-file@^0.2.0: strip-bom "^3.0.0" loader-runner@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" - integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== + version "4.3.0" + resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== loader-utils@^1.1.0: version "1.4.0" @@ -16945,9 +16512,9 @@ loader-utils@^1.1.0: json5 "^1.0.1" loader-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== + version "2.0.2" + resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" + integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== dependencies: big.js "^5.2.2" emojis-list "^3.0.0" @@ -17244,9 +16811,9 @@ long@^4.0.0: integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== longest-streak@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.0.0.tgz#f127e2bded83caa6a35ac5f7a2f2b2f94b36f3dc" - integrity sha512-XhUjWR5CFaQ03JOP+iSDS9koy8T5jfoImCZ4XprElw3BXsSk4MpVYOLw/6LTDKZhO13PlAXnB5gS4MHQTpkSOw== + version "3.0.1" + resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.0.1.tgz#c97315b7afa0e7d9525db9a5a2953651432bdc5d" + integrity sha512-cHlYSUpL2s7Fb3394mYxwTYj8niTaNHUCLr0qdiCXQfSjfuA7CKofpX2uSwEfFDQ0EB7JcnMnm+GjbqqoinYYg== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" @@ -17309,10 +16876,10 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lru-cache@^7.3.1: - version "7.3.1" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.3.1.tgz#7702e80694ec2bf19865567a469f2b081fcf53f5" - integrity sha512-nX1x4qUrKqwbIAhv4s9et4FIUVzNOpeY07bsjGUy8gwJrXH/wScImSQqXErmo/b2jZY2r0mohbLA9zVj7u1cNw== +lru-cache@^7.7.1: + version "7.9.0" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.9.0.tgz#29c2a989b6c10f32ceccc66ff44059e1490af3e1" + integrity sha512-lkcNMUKqdJk96TuIXUidxaPuEg5sJo/+ZyVE2BDFnuZGzwXem7d8582eG8vbu4todLfT14snP6iHriCHXXi5Rw== lunr@^2.3.9: version "2.3.9" @@ -17334,17 +16901,12 @@ lz-string@^1.4.4: resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" integrity sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= -macos-release@^2.2.0: - version "2.3.0" - resolved "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz#eb1930b036c0800adebccd5f17bc4c12de8bb71f" - integrity sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA== - magic-string@^0.25.7: - version "0.25.7" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" - integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== + version "0.25.9" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== dependencies: - sourcemap-codec "^1.4.4" + sourcemap-codec "^1.4.8" magic-string@^0.26.1: version "0.26.1" @@ -17374,26 +16936,26 @@ make-error@^1, make-error@^1.1.1, make-error@^1.3.6: integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== make-fetch-happen@^10.0.1: - version "10.0.2" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.0.2.tgz#0afb38d2f951b17ebc482b0b16c8d77f39dfe389" - integrity sha512-JSFLK53NJP22FL/eAGOyKsWbc2G3v+toPMD7Dq9PJKQCvK0i3t8hGkKxe+3YZzwYa+c0kxRHu7uxH3fvO+rsaA== + version "10.1.3" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.1.3.tgz#d7ecd4a22563b2c05b74735eda46569da26a46f6" + integrity sha512-s/UjmGjUHn9m52cctFhN2ITObbT+axoUhgeir8xGrOlPbKDyJsdhQzb8PGncPQQ28uduHybFJ6Iumy2OZnreXw== dependencies: - agentkeepalive "^4.2.0" - cacache "^15.3.0" + agentkeepalive "^4.2.1" + cacache "^16.0.2" http-cache-semantics "^4.1.0" http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" is-lambda "^1.0.1" - lru-cache "^7.3.1" + lru-cache "^7.7.1" minipass "^3.1.6" minipass-collect "^1.0.2" - minipass-fetch "^1.4.1" + minipass-fetch "^2.0.3" minipass-flush "^1.0.5" minipass-pipeline "^1.2.4" negotiator "^0.6.3" promise-retry "^2.0.1" socks-proxy-agent "^6.1.1" - ssri "^8.0.1" + ssri "^9.0.0" make-fetch-happen@^8.0.9: version "8.0.14" @@ -17416,7 +16978,7 @@ make-fetch-happen@^8.0.9: socks-proxy-agent "^5.0.0" ssri "^8.0.0" -make-fetch-happen@^9.1.0: +make-fetch-happen@^9.0.1, make-fetch-happen@^9.1.0: version "9.1.0" resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== @@ -17438,12 +17000,12 @@ make-fetch-happen@^9.1.0: socks-proxy-agent "^6.0.0" ssri "^8.0.0" -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: - tmpl "1.0.x" + tmpl "1.0.5" map-cache@^0.2.0, map-cache@^0.2.2: version "0.2.2" @@ -17484,9 +17046,9 @@ markdown-it@^12.2.0: uc.micro "^1.0.5" markdown-table@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.1.tgz#88c48957aaf2a8014ccb2ba026776a1d736fe3dc" - integrity sha512-CBbaYXKSGnE1uLRpKA1SWgIRb2PQrpkllNWpZtZe6VojOJ4ysqiq7/2glYcmKsOYN09QgH/HEBX5hIshAeiK6A== + version "3.0.2" + resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.2.tgz#9b59eb2c1b22fe71954a65ff512887065a7bb57c" + integrity sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA== marked@^4.0.14: version "4.0.16" @@ -17527,9 +17089,9 @@ material-ui-search-bar@^1.0.0: prop-types "^15.5.8" math-expression-evaluator@^1.2.14: - version "1.2.22" - resolved "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.22.tgz#c14dcb3d8b4d150e5dcea9c68c8dad80309b0d5e" - integrity sha512-L0j0tFVZBQQLeEjmWOvDLoRciIY8gQGWahvkztXUal8jH8R5Rlqo9GCvgqvXcy9LQhEWdQCVvzqAbxgYNt4blQ== + version "1.3.14" + resolved "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.3.14.tgz#0ebeaccf65fea0f6f5a626f88df41814e5fcd9bf" + integrity sha512-M6AMrvq9bO8uL42KvQHPA2/SbAobA0R7gviUmPrcTcGfdwpaLitz4q2Euzx2lP9Oy88vxK3HOrsISgSwKsYS4A== md5.js@^1.3.4: version "1.3.5" @@ -17559,12 +17121,13 @@ mdast-util-find-and-replace@^2.0.0: unist-util-visit-parents "^4.0.0" mdast-util-from-markdown@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.0.2.tgz#7c793bb96b053d12f032e37382ae989efb70ee66" - integrity sha512-gXaxv/5fGdrr9TqSMlQK7FmshK8yR9DvW3+NapMBDm44inORxIZVJa1D3yjrUT9ISu8tB/jjblEkUzyzclquNg== + version "1.2.0" + resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.2.0.tgz#84df2924ccc6c995dec1e2368b2b208ad0a76268" + integrity sha512-iZJyyvKD1+K7QX1b5jXdE7Sc5dtoTry1vzV28UZZe8Z1xVnB/czKntJ7ZAkG0tANqRnBF6p3p7GpU1y19DTf2Q== dependencies: "@types/mdast" "^3.0.0" "@types/unist" "^2.0.0" + decode-named-character-reference "^1.0.0" mdast-util-to-string "^3.1.0" micromark "^3.0.0" micromark-util-decode-numeric-character-reference "^1.0.0" @@ -17572,8 +17135,8 @@ mdast-util-from-markdown@^1.0.0: micromark-util-normalize-identifier "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - parse-entities "^3.0.0" unist-util-stringify-position "^3.0.0" + uvu "^0.5.0" mdast-util-gfm-autolink-literal@^1.0.0: version "1.0.2" @@ -17586,49 +17149,51 @@ mdast-util-gfm-autolink-literal@^1.0.0: micromark-util-character "^1.0.0" mdast-util-gfm-footnote@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.0.tgz#355c1e8dc9e17e871d1b3fa5da8824923fc756e0" - integrity sha512-qeg9YoS2YYP6OBmMyUFxKXb6BLwAsbGidIxgwDAXHIMYZQhIwe52L9BSJs+zP29Jp5nSERPkmG3tSwAN23/ZbQ== + version "1.0.1" + resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.1.tgz#11d2d40a1a673a399c459e467fa85e00223191fe" + integrity sha512-p+PrYlkw9DeCRkTVw1duWqPRHX6Ywh2BNKJQcZbCwAuP/59B0Lk9kakuAd7KbQprVO4GzdW8eS5++A9PUSqIyw== dependencies: "@types/mdast" "^3.0.0" - mdast-util-to-markdown "^1.0.0" + mdast-util-to-markdown "^1.3.0" micromark-util-normalize-identifier "^1.0.0" - unist-util-visit "^4.0.0" mdast-util-gfm-strikethrough@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.0.tgz#6cc72ef5d9539f4cee76af3f15dd0daa9e3af40f" - integrity sha512-gM9ipBUdRxYa6Yq1Hd8Otg6jEn/dRxFZ1F9ZX4QHosHOexLGqNZO2dh0A+YFbUEd10RcKjnjb4jOfJJzoXXUew== + version "1.0.1" + resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.1.tgz#a4a74c36864ec6a6e3bbd31e1977f29beb475789" + integrity sha512-zKJbEPe+JP6EUv0mZ0tQUyLQOC+FADt0bARldONot/nefuISkaZFlmVK4tU6JgfyZGrky02m/I6PmehgAgZgqg== dependencies: - "@types/mdast" "^3.0.3" - mdast-util-to-markdown "^1.0.0" + "@types/mdast" "^3.0.0" + mdast-util-to-markdown "^1.3.0" mdast-util-gfm-table@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.1.tgz#07c269a219d66ec2deb6de38aed0ba1d1f9442df" - integrity sha512-NByKuaSg5+M6r9DZBPXFUmhMHGFf9u+WE76EeStN01ghi8hpnydiWBXr+qj0XCRWI7SAMNtEjGvip6zci9axQA== + version "1.0.4" + resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.4.tgz#0dbb25f04fd9c0877dc63b76203ecbdf5d945755" + integrity sha512-aEuoPwZyP4iIMkf2cLWXxx3EQ6Bmh2yKy9MVCg4i6Sd3cX80dcLEfXO/V4ul3pGH9czBK4kp+FAl+ZHmSUt9/w== dependencies: markdown-table "^3.0.0" - mdast-util-to-markdown "^1.0.0" + mdast-util-from-markdown "^1.0.0" + mdast-util-to-markdown "^1.3.0" mdast-util-gfm-task-list-item@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.0.tgz#a0aa2a00c893f9f006d13ba096cbc64608559c7f" - integrity sha512-dwkzOTjQe8JCCHVE3Cb0pLHTYLudf7t9WCAnb20jI8/dW+VHjgWhjtIUVA3oigNkssgjEwX+i+3XesUdCnXGyA== + version "1.0.1" + resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.1.tgz#6f35f09c6e2bcbe88af62fdea02ac199cc802c5c" + integrity sha512-KZ4KLmPdABXOsfnM6JHUIjxEvcx2ulk656Z/4Balw071/5qgnhz+H1uGtf2zIGnrnvDC8xR4Fj9uKbjAFGNIeA== dependencies: - "@types/mdast" "^3.0.3" - mdast-util-to-markdown "^1.0.0" + "@types/mdast" "^3.0.0" + mdast-util-to-markdown "^1.3.0" mdast-util-gfm@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.0.tgz#2545856bc18a66d5cc63fbef0b097a020a8e9e3d" - integrity sha512-wMwejlTN3EQADPFuvxe8lmGsay3+f6gSJKdAHR6KBJzpcxvsjJSILB9K6u6G7eQLC7iOTyVIHYGui9uBc9r1Tg== + version "2.0.1" + resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.1.tgz#16fcf70110ae689a06d77e8f4e346223b64a0ea6" + integrity sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ== dependencies: + mdast-util-from-markdown "^1.0.0" mdast-util-gfm-autolink-literal "^1.0.0" mdast-util-gfm-footnote "^1.0.0" mdast-util-gfm-strikethrough "^1.0.0" mdast-util-gfm-table "^1.0.0" mdast-util-gfm-task-list-item "^1.0.0" + mdast-util-to-markdown "^1.0.0" mdast-util-to-hast@^12.1.0: version "12.1.1" @@ -17646,10 +17211,10 @@ mdast-util-to-hast@^12.1.0: unist-util-position "^4.0.0" unist-util-visit "^4.0.0" -mdast-util-to-markdown@^1.0.0: - version "1.2.3" - resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.2.3.tgz#2b3af92bf0e29080927eb59a8a10cd0a7398e093" - integrity sha512-040jJYtjOUdbvYAXCfPrpLJRdvMOmR33KRqlhT4r+fEbVM+jao1RMbA8RmGeRmw8RAj3vQ+HvhIaJPijvnOwCg== +mdast-util-to-markdown@^1.0.0, mdast-util-to-markdown@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.3.0.tgz#38b6cdc8dc417de642a469c4fc2abdf8c931bd1e" + integrity sha512-6tUSs4r+KK4JGTTiQ7FfHmVOaDrLQJPmpjD6wPMlHGUVXoG9Vjc3jIeP+uyBWRf8clwB2blM+W7+KrlMYQnftA== dependencies: "@types/mdast" "^3.0.0" "@types/unist" "^2.0.0" @@ -17680,9 +17245,9 @@ media-typer@0.3.0: integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= "mem-fs-editor@^8.1.2 || ^9.0.0": - version "9.3.0" - resolved "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-9.3.0.tgz#85ce80541b1961d1d9f433e275c7cee9d0a1c9a2" - integrity sha512-QKFbPwGCh1ypmc2H8BUYpbapwT/x2AOCYZQogzSui4rUNes7WVMagQXsirPIfp18EarX0SSY9Fpg426nSjew4Q== + version "9.4.0" + resolved "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-9.4.0.tgz#0cc1cf61350e33c25fc364c97fb0551eb32b8c9b" + integrity sha512-HSSOLSVRrsDdui9I6i96dDtG+oAez/4EB2g4cjSrNhgNQ3M+L57/+22NuPdORSoxvOHjIg/xeOE+C0wwF91D2g== dependencies: binaryextensions "^4.16.0" commondir "^1.0.1" @@ -17766,12 +17331,7 @@ merge-stream@^2.0.0: resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" - integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== - -merge2@^1.4.1: +merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -17782,11 +17342,11 @@ merge@^1.2.1: integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== meros@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/meros/-/meros-1.1.4.tgz#c17994d3133db8b23807f62bec7f0cb276cfd948" - integrity sha512-E9ZXfK9iQfG9s73ars9qvvvbSIkJZF5yOo9j4tcwM5tN8mUKfj/EKN5PzOr3ZH0y5wL7dLAHw3RVEfpQV9Q7VQ== + version "1.2.0" + resolved "https://registry.npmjs.org/meros/-/meros-1.2.0.tgz#096cdede2eb0b1610b219b1031b935260de1ad08" + integrity sha512-3QRZIS707pZQnijHdhbttXRWwrHhZJ/gzolneoxKVz9N/xmsvY/7Ls8lpnI9gxbgxjcHsAVEW3mgwiZCo6kkJQ== -methods@^1.0.0, methods@^1.1.2, methods@~1.1.2: +methods@^1.0.0, methods@^1.1.1, methods@^1.1.2, methods@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= @@ -17819,19 +17379,20 @@ micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: uvu "^0.5.0" micromark-extension-gfm-autolink-literal@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.0.tgz#1a49a62bfcb00f9dff87ab39f3b21a108612dc24" - integrity sha512-t+K0aPK32mXypVTEKV+WRfoT/Rb7MERDgHZVRr56NXpyQQhgMk72QnK4NljYUlrgbuesH+MxiPQwThzqRDIwvA== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz#dc589f9c37eaff31a175bab49f12290edcf96058" + integrity sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg== dependencies: micromark-util-character "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-extension-gfm-footnote@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.3.tgz#5280b29667e4ecb8687f369829aa3322caca7d11" - integrity sha512-bn62pC5y39rIo2g1RqZk1NhF7T7cJLuJlbevunQz41U0iPVCdVOFASe5/L1kke+DFKSgfCRhv24+o42cZ1+ADw== + version "1.0.4" + resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.4.tgz#cbfd8873b983e820c494498c6dac0105920818d5" + integrity sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg== dependencies: micromark-core-commonmark "^1.0.0" micromark-factory-space "^1.0.0" @@ -17839,45 +17400,49 @@ micromark-extension-gfm-footnote@^1.0.0: micromark-util-normalize-identifier "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" uvu "^0.5.0" micromark-extension-gfm-strikethrough@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.1.tgz#9f53ab4f5dc8c0525a889850bae615f074a98a27" - integrity sha512-fzGYXWz9HPWH1uHqYwdyR8XpEtuoYVHUjTdPQTnl3ETVZOQe1NXMwE3RA7AMqeON52hG+kO9g1/P1+pLONBSMQ== + version "1.0.4" + resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.4.tgz#162232c284ffbedd8c74e59c1525bda217295e18" + integrity sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ== dependencies: micromark-util-chunked "^1.0.0" micromark-util-classify-character "^1.0.0" micromark-util-resolve-all "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-extension-gfm-table@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.0.tgz#f0d35dbf008b6182311049f9137323d34a54c7a0" - integrity sha512-OATRuHDgEAT/aaJJRSdU12V+s01kNSnJ0jumdfLq5mPy0F5DkR3zbTSFLH4tjVYM0/kEG6umxIhHY62mFe4z5Q== + version "1.0.5" + resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz#7b708b728f8dc4d95d486b9e7a2262f9cddbcbb4" + integrity sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-extension-gfm-tagfilter@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.0.tgz#a38c7c462c2007b534fcb485e9310165879654a7" - integrity sha512-GGUZhzQrOdHR8RHU2ru6K+4LMlj+pBdNuXRtw5prOflDOk2hHqDB0xEgej1AHJ2VETeycX7tzQh2EmaTUOmSKg== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.1.tgz#fb2e303f7daf616db428bb6a26e18fda14a90a4d" + integrity sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA== dependencies: micromark-util-types "^1.0.0" micromark-extension-gfm-task-list-item@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.0.tgz#ab38b2b4ead4e746189d6323c32cacab2c63599d" - integrity sha512-3tkHCq1NNwijtwpjYba9+rl1yvQ4xYg8iQpUAfTJRyq8MtIEsBUF/vW6B9Gh8Qwy1hE2FmpyHhP4jnFAt61zLg== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.3.tgz#7683641df5d4a09795f353574d7f7f66e47b7fc4" + integrity sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-extension-gfm@^2.0.0: version "2.0.1" @@ -17903,13 +17468,14 @@ micromark-factory-destination@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-label@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.0.tgz#b316ec479b474232973ff13b49b576f84a6f2cbb" - integrity sha512-XWEucVZb+qBCe2jmlOnWr6sWSY6NHx+wtpgYFsm4G+dufOf6tTQRRo0bdO7XSlGPu5fyjpJenth6Ksnc5Mwfww== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz#6be2551fa8d13542fcbbac478258fb7a20047137" + integrity sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-factory-space@^1.0.0: version "1.0.0" @@ -17920,14 +17486,15 @@ micromark-factory-space@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-title@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.0.tgz#708f7a8044f34a898c0efdb4f55e4da66b537273" - integrity sha512-flvC7Gx0dWVWorXuBl09Cr3wB5FTuYec8pMGVySIp2ZlqTcIjN/lFohZcP0EG//krTptm34kozHk7aK/CleCfA== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz#7e09287c3748ff1693930f176e1c4a328382494f" + integrity sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-factory-whitespace@^1.0.0: version "1.0.0" @@ -17979,18 +17546,19 @@ micromark-util-decode-numeric-character-reference@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-decode-string@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.0.tgz#f97946825231d9c97df767875064401774578a6e" - integrity sha512-4g5UJ8P/J8wuRKUXCcB7udQuOBXpLyvBQSLSuznfBLCG+thKG6UTwFnXfHkrr/1wddprkUbPatCzxDjrJ+5zDg== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz#942252ab7a76dec2dbf089cc32505ee2bc3acf02" + integrity sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q== dependencies: + decode-named-character-reference "^1.0.0" micromark-util-character "^1.0.0" micromark-util-decode-numeric-character-reference "^1.0.0" - parse-entities "^3.0.0" + micromark-util-symbol "^1.0.0" micromark-util-encode@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.0.tgz#c409ecf751a28aa9564b599db35640fccec4c068" - integrity sha512-cJpFVM768h6zkd8qJ1LNRrITfY4gwFt+tziPcIf71Ui8yFzY9wG3snZQqiWVq93PG4Sw6YOtcNiKJfVIs9qfGg== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz#2c1c22d3800870ad770ece5686ebca5920353383" + integrity sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA== micromark-util-html-tag-name@^1.0.0: version "1.0.0" @@ -18021,31 +17589,33 @@ micromark-util-sanitize-uri@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-subtokenize@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.0.tgz#6f006fa719af92776c75a264daaede0fb3943c6a" - integrity sha512-EsnG2qscmcN5XhkqQBZni/4oQbLFjz9yk3ZM/P8a3YUjwV6+6On2wehr1ALx0MxK3+XXXLTzuBKHDFeDFYRdgQ== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz#ff6f1af6ac836f8bfdbf9b02f40431760ad89105" + integrity sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA== dependencies: micromark-util-chunked "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + uvu "^0.5.0" micromark-util-symbol@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.0.tgz#91cdbcc9b2a827c0129a177d36241bcd3ccaa34d" - integrity sha512-NZA01jHRNCt4KlOROn8/bGi6vvpEmlXld7EHcRH+aYWUfL3Wc8JLUNNlqUMKa0hhz6GrpUWsHtzPmKof57v0gQ== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz#b90344db62042ce454f351cf0bebcc0a6da4920e" + integrity sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ== micromark-util-types@^1.0.0, micromark-util-types@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.1.tgz#8bb8a092d93d326bd29fe29602799f2d0d922fd4" - integrity sha512-UT0ylWEEy80RFYzK9pEaugTqaxoD/j0Y9WhHpSyitxd99zjoQz7JJ+iKuhPAgOW2MiPSUAx+c09dcqokeyaROA== + version "1.0.2" + resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz#f4220fdb319205812f99c40f8c87a9be83eded20" + integrity sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w== micromark@^3.0.0: - version "3.0.5" - resolved "https://registry.npmjs.org/micromark/-/micromark-3.0.5.tgz#d24792c8a06f201d5608c106dbfadef34c299684" - integrity sha512-QfjERBnPw0G9mxhOCkkbRP0n8SX8lIBLrEKeEVceviUukqVMv3hWE4AgNTOK/W6GWqtPvvIHg2Apl3j1Dxm6aQ== + version "3.0.10" + resolved "https://registry.npmjs.org/micromark/-/micromark-3.0.10.tgz#1eac156f0399d42736458a14b0ca2d86190b457c" + integrity sha512-ryTDy6UUunOXy2HPjelppgJ2sNfcPz1pLlMdA6Rz9jPzhLikWXv/irpWV/I2jd68Uhmny7hHxAlAhk4+vWggpg== dependencies: "@types/debug" "^4.0.0" debug "^4.0.0" + decode-named-character-reference "^1.0.0" micromark-core-commonmark "^1.0.1" micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -18059,7 +17629,7 @@ micromark@^3.0.0: micromark-util-subtokenize "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.1" - parse-entities "^3.0.0" + uvu "^0.5.0" micromatch@^3.1.10: version "3.1.10" @@ -18125,12 +17695,12 @@ mime-types@^2.0.8, mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, m dependencies: mime-db "1.52.0" -mime@1.6.0, mime@^1.3.4: +mime@1.6.0, mime@^1.3.4, mime@^1.4.1: version "1.6.0" resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.2.0, mime@^2.5.0: +mime@^2.5.0: version "2.6.0" resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== @@ -18178,9 +17748,9 @@ min-document@^2.19.0: dom-walk "^0.1.0" min-indent@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256" - integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= + version "1.0.1" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== mini-css-extract-plugin@^2.4.2: version "2.6.0" @@ -18206,10 +17776,17 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1, minimatch@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" - integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== +minimatch@4.2.1, minimatch@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" + integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== + dependencies: + brace-expansion "^1.1.7" + +minimatch@5.0.1, minimatch@^5.0.0, minimatch@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" + integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== dependencies: brace-expansion "^2.0.1" @@ -18220,13 +17797,6 @@ minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^4.0.0: - version "4.2.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" - integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== - dependencies: - brace-expansion "^1.1.7" - minimist-options@4.1.0, minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -18266,6 +17836,17 @@ minipass-fetch@^1.3.0, minipass-fetch@^1.3.2, minipass-fetch@^1.4.1: optionalDependencies: encoding "^0.1.12" +minipass-fetch@^2.0.3: + version "2.1.0" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.0.tgz#ca1754a5f857a3be99a9271277246ac0b44c3ff8" + integrity sha512-H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg== + dependencies: + minipass "^3.1.6" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -18338,12 +17919,7 @@ mixme@^0.5.1: resolved "https://registry.npmjs.org/mixme/-/mixme-0.5.4.tgz#8cb3bd0cd32a513c161bf1ca99d143f0bcf2eff3" integrity sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw== -mkdirp-classic@^0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz#54c441ce4c96cd7790e10b41a87aa51068ecab2b" - integrity sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g== - -mkdirp-classic@^0.5.3: +mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: version "0.5.3" resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== @@ -18363,11 +17939,11 @@ mkdirp@0.3.0: integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4= "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@^0.5.5: - version "0.5.5" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + version "0.5.6" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: - minimist "^1.2.5" + minimist "^1.2.6" mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" @@ -18384,7 +17960,7 @@ modify-values@^1.0.0: resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -moment@^2.27.0, moment@^2.29.1: +moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: version "2.29.3" resolved "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3" integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw== @@ -18556,15 +18132,15 @@ named-placeholders@^1.1.2: dependencies: lru-cache "^4.1.3" -nan@^2.14.1, nan@^2.15.0: +nan@^2.15.0: version "2.15.0" resolved "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== nano-css@^5.3.1: - version "5.3.1" - resolved "https://registry.npmjs.org/nano-css/-/nano-css-5.3.1.tgz#b709383e07ad3be61f64edffacb9d98250b87a1f" - integrity sha512-ENPIyNzANQRyYVvb62ajDd7PAyIgS2LIUnT9ewih4yrXSZX4hKoUwssy8WjUH++kEOA5wUTMgNnV7ko5n34kUA== + version "5.3.4" + resolved "https://registry.npmjs.org/nano-css/-/nano-css-5.3.4.tgz#40af6a83a76f84204f346e8ccaa9169cdae9167b" + integrity sha512-wfcviJB6NOxDIDfr7RFn/GlaN7I/Bhe4d39ZRCJ3xvZX60LVe2qZ+rDqM49nm4YT81gAjzS+ZklhKP/Gnfnubg== dependencies: css-tree "^1.1.2" csstype "^3.0.6" @@ -18587,12 +18163,7 @@ nanoclone@^0.2.1: resolved "https://registry.npmjs.org/nanoclone/-/nanoclone-0.2.1.tgz#dd4090f8f1a110d26bb32c49ed2f5b9235209ed4" integrity sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA== -nanoid@^3.1.23: - version "3.3.1" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" - integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== - -nanoid@^3.3.4: +nanoid@^3.1.23, nanoid@^3.3.3: version "3.3.4" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== @@ -18645,11 +18216,6 @@ neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.2: resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - nise@^5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz#ac4237e0d785ecfcb83e20f389185975da5c31f3" @@ -18670,9 +18236,9 @@ no-case@^3.0.4: tslib "^2.0.3" node-abi@^3.3.0: - version "3.8.0" - resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.8.0.tgz#679957dc8e7aa47b0a02589dbfde4f77b29ccb32" - integrity sha512-tzua9qWWi7iW4I42vUPKM+SfaF0vQSLAm4yO5J83mSwB7GeoWrDKC/K+8YCnYNwqP5duwazbw2X9l4m8SC2cUw== + version "3.15.0" + resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.15.0.tgz#cd9ac8c58328129b49998cc6fa16aa5506152716" + integrity sha512-Ic6z/j6I9RLm4ov7npo1I48UQr2BEyFCqh6p7S1dhEx9jPO0GPGq/e2Rb7x7DroQrmiVMz/Bw1vJm9sPAl2nxA== dependencies: semver "^7.3.5" @@ -18700,22 +18266,22 @@ node-domexception@1.0.0: resolved "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== -node-fetch@2.6.7, node-fetch@^2.3.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.5, node-fetch@^2.6.7: +node-fetch@2.6.7, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.5, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-forge@^1, node-forge@^1.0.0: +node-forge@^1, node-forge@^1.3.1: version "1.3.1" resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== node-gyp@^5.0.2: - version "5.1.0" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.0.tgz#8e31260a7af4a2e2f994b0673d4e0b3866156332" - integrity sha512-OUTryc5bt/P8zVgNUmC6xdXiDJxLMAW8cF5tLQOT9E5sOQj+UeQxnnPy74K3CLCa/SOjjBlbuzDLR8ANwA+wmw== + version "5.1.1" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" + integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== dependencies: env-paths "^2.2.0" glob "^7.1.4" @@ -18800,15 +18366,10 @@ node-match-path@^0.6.3: resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== -node-modules-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" - integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= - -node-releases@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" - integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== +node-releases@^2.0.3: + version "2.0.4" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz#f38252370c43854dc48aa431c766c6c398f40476" + integrity sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ== nodemon@^2.0.2: version "2.0.16" @@ -18858,14 +18419,14 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz#1f8a7c423b3d2e85eb36985eaf81de381d01301a" - integrity sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw== +normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: + version "3.0.3" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== dependencies: - hosted-git-info "^3.0.6" - resolve "^1.17.0" - semver "^7.3.2" + hosted-git-info "^4.0.1" + is-core-module "^2.5.0" + semver "^7.3.4" validate-npm-package-license "^3.0.1" normalize-path@^2.1.1: @@ -18880,17 +18441,12 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-url@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - normalize-url@^4.1.0: version "4.5.1" resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -normalize-url@^6.0.1: +normalize-url@^6.0.1, normalize-url@^6.1.0: version "6.1.0" resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== @@ -18938,9 +18494,9 @@ npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-pack validate-npm-package-name "^3.0.0" npm-packlist@^2.1.4: - version "2.1.4" - resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.4.tgz#40e96b2b43787d0546a574542d01e066640d09da" - integrity sha512-Qzg2pvXC9U4I4fLnUrBmcIT4x0woLtUgxUi9eC+Zrcv1Xx5eamytGAfbDWQ67j7xOcQ2VW1I3su9smVTIdu7Hw== + version "2.2.2" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" + integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== dependencies: glob "^7.1.6" ignore-walk "^3.0.3" @@ -18977,6 +18533,18 @@ npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.0, npm-pick-manifest@^6.1.1: npm-package-arg "^8.1.2" semver "^7.3.4" +npm-registry-fetch@^11.0.0: + version "11.0.0" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" + integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== + dependencies: + make-fetch-happen "^9.0.1" + minipass "^3.1.3" + minipass-fetch "^1.3.0" + minipass-json-stream "^1.0.1" + minizlib "^2.0.0" + npm-package-arg "^8.0.0" + npm-registry-fetch@^12.0.0, npm-registry-fetch@^12.0.1: version "12.0.2" resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz#ae583bb3c902a60dae43675b5e33b5b1f6159f1e" @@ -19003,13 +18571,6 @@ npm-registry-fetch@^9.0.0: minizlib "^2.0.0" npm-package-arg "^8.0.0" -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -19045,16 +18606,16 @@ npmlog@^5.0.1: set-blocking "^2.0.0" npmlog@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.1.tgz#06f1344a174c06e8de9c6c70834cfba2964bba17" - integrity sha512-BTHDvY6nrRHuRfyjt1MAufLxYdVXZfd099H4+i1f0lPywNQyI4foeNXJRObB/uy+TYqUW0vAD9gbdSOXPst7Eg== + version "6.0.2" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== dependencies: are-we-there-yet "^3.0.0" console-control-strings "^1.1.0" - gauge "^4.0.0" + gauge "^4.0.3" set-blocking "^2.0.0" -nth-check@^2.0.0: +nth-check@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== @@ -19109,27 +18670,22 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-hash@3.0.0, object-hash@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" - integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== - object-hash@^2.0.1: version "2.2.0" resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== -object-inspect@^1.11.0, object-inspect@^1.9.0: +object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== + +object-inspect@^1.12.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== -object-inspect@^1.12.0, object-inspect@^1.12.2: - version "1.12.2" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" - integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== - -object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -19170,14 +18726,15 @@ object.fromentries@^2.0.5: es-abstract "^1.19.1" object.getownpropertydescriptors@^2.0.3: - version "2.1.0" - resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== + version "2.1.3" + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" + integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== dependencies: + call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" + es-abstract "^1.19.1" -object.hasown@^1.1.1: +object.hasown@^1.1.0: version "1.1.1" resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A== @@ -19242,14 +18799,14 @@ omggif@^1.0.9: resolved "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz#ddaaf90d4a42f532e9e7cb3a95ecdd47f17c7b19" integrity sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw== -on-finished@2.4.1: +on-finished@2.4.1, on-finished@^2.3.0: version "2.4.1" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" -on-finished@^2.3.0, on-finished@~2.3.0: +on-finished@~2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= @@ -19306,17 +18863,17 @@ open@^8.0.0, open@^8.0.9, open@^8.4.0: is-wsl "^2.2.0" openapi-sampler@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.2.1.tgz#2ca9eea527f8f2ddb32c3ae1dda31afd8bf0833f" - integrity sha512-mHrYmyvcLD0qrfqPkPRBAL2z16hGT2rW0d0B7nklfoTcc3pmkJLkSZlKSeFgerUM41E5c7jlxf0Y19xrM7mWQQ== + version "1.2.3" + resolved "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.2.3.tgz#753b69c4f45b54682469f2343399a10bc60ec993" + integrity sha512-dH2QYXqakorV5dxkP/f1BV3Ku4yNn21YmBsqJunnyrHLw7mnCNZZldftgrEpv/66b1m5oaUAmiJoJN+FqBEkJg== dependencies: "@types/json-schema" "^7.0.7" json-pointer "0.6.2" openid-client@^4.1.1: - version "4.9.0" - resolved "https://registry.npmjs.org/openid-client/-/openid-client-4.9.0.tgz#bdfc9194435316df419f759ce177635146b43074" - integrity sha512-ThBbvRUUZwxUKBVK2UpDNIZ3eJkvtqWI8s5Dm+naV+gJdL+yRhT+8ywqct1gy5uL+xVS5+A/nhFcpJIisH2x6Q== + version "4.9.1" + resolved "https://registry.npmjs.org/openid-client/-/openid-client-4.9.1.tgz#4f00a9d1566c0fa08f0dd5986cf0e6b1e5d14186" + integrity sha512-DYUF07AHjI3QDKqKbn2F7RqozT4hyi4JvmpodLrq0HHoNP7t/AjeG/uqiBK1/N2PZSAQEThVjDLHSmJN4iqu/w== dependencies: aggregate-error "^3.1.0" got "^11.8.0" @@ -19392,14 +18949,6 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-name@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" - integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== - dependencies: - macos-release "^2.2.0" - windows-release "^3.1.0" - os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -19423,7 +18972,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: +outvariant@^1.2.0, outvariant@^1.2.1: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -19434,9 +18983,9 @@ p-cancelable@^1.0.0: integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== p-cancelable@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" - integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== + version "2.1.1" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf" + integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== p-filter@^2.1.0: version "2.1.0" @@ -19470,9 +19019,9 @@ p-limit@^1.1.0: p-try "^1.0.0" p-limit@^2.0.0, p-limit@^2.2.0: - version "2.2.2" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" - integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== + version "2.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" @@ -19547,12 +19096,12 @@ p-reduce@^2.0.0, p-reduce@^2.1.0: integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== p-retry@^4.5.0: - version "4.5.0" - resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.5.0.tgz#6685336b3672f9ee8174d3769a660cb5e488521d" - integrity sha512-5Hwh4aVQSu6BEP+w2zKlVXtFAaYQe1qWuVADSgoeVlLjwe/Q/AMSoRR4MDeaAfu8llT+YNbEijWu/YF3m6avkg== + version "4.6.2" + resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" + integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== dependencies: - "@types/retry" "^0.12.0" - retry "^0.12.0" + "@types/retry" "0.12.0" + retry "^0.13.1" p-timeout@^3.2.0: version "3.2.0" @@ -19602,11 +19151,11 @@ packet-reader@1.0.0: integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== pacote@^11.2.6: - version "11.2.6" - resolved "https://registry.npmjs.org/pacote/-/pacote-11.2.6.tgz#c0426e5d5c8d33aeea3461a75e1390f1ba78f953" - integrity sha512-xCl++Hb3aBC7LaWMimbO4xUqZVsEbKDVc6KKDIIyAeBYrmMwY1yJC2nES/lsGd8sdQLUosgBxQyuVNncZ2Ru0w== + version "11.3.5" + resolved "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" + integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== dependencies: - "@npmcli/git" "^2.0.1" + "@npmcli/git" "^2.1.0" "@npmcli/installed-package-contents" "^1.0.6" "@npmcli/promise-spawn" "^1.2.0" "@npmcli/run-script" "^1.8.2" @@ -19619,7 +19168,7 @@ pacote@^11.2.6: npm-package-arg "^8.0.1" npm-packlist "^2.1.4" npm-pick-manifest "^6.0.0" - npm-registry-fetch "^9.0.0" + npm-registry-fetch "^11.0.0" promise-retry "^2.0.1" read-package-json-fast "^2.0.1" rimraf "^3.0.2" @@ -19676,14 +19225,13 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-asn1@^5.0.0: - version "5.1.5" - resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" - integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== +parse-asn1@^5.0.0, parse-asn1@^5.1.5: + version "5.1.6" + resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" + integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== dependencies: - asn1.js "^4.0.0" + asn1.js "^5.2.0" browserify-aes "^1.0.0" - create-hash "^1.1.0" evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" safe-buffer "^5.1.1" @@ -19707,13 +19255,13 @@ parse-bmfont-xml@^1.1.4: xml2js "^0.4.5" parse-conflict-json@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-2.0.1.tgz#76647dd072e6068bcaff20be6ccea68a18e1fb58" - integrity sha512-Y7nYw+QaSGBto1LB9lgwOR05Rtz5SbuTf+Oe7HJ6SYQ/DHsvRjQ8O03oWdJbvkt6GzDWospgyZbGmjDYL0sDgA== + version "2.0.2" + resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz#3d05bc8ffe07d39600dc6436c6aefe382033d323" + integrity sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA== dependencies: json-parse-even-better-errors "^2.3.1" just-diff "^5.0.1" - just-diff-apply "^4.0.1" + just-diff-apply "^5.2.0" parse-entities@^2.0.0: version "2.0.0" @@ -19727,18 +19275,6 @@ parse-entities@^2.0.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" -parse-entities@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-3.0.0.tgz#9ed6d6569b6cfc95ade058d683ddef239dad60dc" - integrity sha512-AJlcIFDNPEP33KyJLguv0xJc83BNvjxwpuUIcetyXUsLpVXAUCePJ5kIoYtEN2R1ac0cYaRu/vk9dVFkewHQhQ== - dependencies: - character-entities "^2.0.0" - character-entities-legacy "^2.0.0" - character-reference-invalid "^2.0.0" - is-alphanumerical "^2.0.0" - is-decimal "^2.0.0" - is-hexadecimal "^2.0.0" - parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -19749,9 +19285,9 @@ parse-filepath@^1.0.2: path-root "^0.1.1" parse-headers@^2.0.0: - version "2.0.4" - resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.4.tgz#9eaf2d02bed2d1eff494331ce3df36d7924760bf" - integrity sha512-psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw== + version "2.0.5" + resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9" + integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA== parse-json@^2.2.0: version "2.2.0" @@ -19768,17 +19304,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - lines-and-columns "^1.1.6" - -parse-json@^5.2.0: +parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -19794,20 +19320,22 @@ parse-package-name@^0.1.0: integrity sha1-P0Tdg4/rTCvkvzGLrkR313BrreQ= parse-path@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.1.tgz#0ec769704949778cb3b8eda5e994c32073a1adff" - integrity sha512-d7yhga0Oc+PwNXDvQ0Jv1BuWkLVPXcAoQ/WREgd6vNNoKYaW52KI+RdOFjI63wjkmps9yUE8VS4veP+AgpQ/hA== + version "4.0.3" + resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" + integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== dependencies: is-ssh "^1.3.0" protocols "^1.4.0" + qs "^6.9.4" + query-string "^6.13.8" -parse-url@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/parse-url/-/parse-url-5.0.1.tgz#99c4084fc11be14141efa41b3d117a96fcb9527f" - integrity sha512-flNUPP27r3vJpROi0/R3/2efgKkyXqnXwyP1KQ2U0SfFRgdizOdWfvrrvJg1LuOoxs7GQhmxJlq23IpQ/BkByg== +parse-url@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d" + integrity sha512-cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw== dependencies: is-ssh "^1.3.0" - normalize-url "^3.3.0" + normalize-url "^6.1.0" parse-path "^4.0.0" protocols "^1.4.0" @@ -19882,9 +19410,9 @@ passport-microsoft@^1.0.0: pkginfo "0.4.x" passport-oauth1@1.x.x: - version "1.1.0" - resolved "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.1.0.tgz#a7de988a211f9cf4687377130ea74df32730c918" - integrity sha1-p96YiiEfnPRoc3cTDqdN8ycwyRg= + version "1.2.0" + resolved "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.2.0.tgz#5229d431781bf5b265bec86ce9a9cce58a756cf9" + integrity sha512-Sv2YWodC6jN12M/OXwmR4BIXeeIHjjbwYTQw4kS6tHK4zYzSEpxBgSJJnknBjICA5cj0ju3FSnG1XmHgIhYnLg== dependencies: oauth "0.9.x" passport-strategy "1.x.x" @@ -20004,11 +19532,6 @@ path-is-inside@1.0.2, path-is-inside@^1.0.2: resolved "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -20059,9 +19582,9 @@ path-to-regexp@^1.7.0: isarray "0.0.1" path-to-regexp@^6.2.0: - version "6.2.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" - integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== + version "6.2.1" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5" + integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw== path-type@^1.0.0: version "1.1.0" @@ -20097,9 +19620,9 @@ pause@0.0.1: integrity sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10= pbkdf2@^3.0.3: - version "3.0.17" - resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" - integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== + version "3.1.2" + resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" + integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== dependencies: create-hash "^1.1.2" create-hmac "^1.1.4" @@ -20107,10 +19630,10 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" -peek-readable@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz#9a045f291db254111c3412c1ce4fec27ddd4d202" - integrity sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ== +peek-readable@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" + integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== pend@~1.2.0: version "1.2.0" @@ -20167,11 +19690,11 @@ pg@^8.3.0, pg@^8.4.0: pgpass "1.x" pgpass@1.x: - version "1.0.2" - resolved "https://registry.npmjs.org/pgpass/-/pgpass-1.0.2.tgz#2a7bb41b6065b67907e91da1b07c1847c877b306" - integrity sha1-Knu0G2BltnkH6R2hsHwYR8h3swY= + version "1.0.5" + resolved "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d" + integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug== dependencies: - split "^1.0.0" + split2 "^4.1.0" pgtools@^0.3.0: version "0.3.2" @@ -20267,14 +19790,7 @@ pino@^5.12.2: quick-format-unescaped "^3.0.3" sonic-boom "^0.7.5" -pirates@^4.0.0, pirates@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" - integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== - dependencies: - node-modules-regexp "^1.0.0" - -pirates@^4.0.4: +pirates@^4.0.0, pirates@^4.0.1, pirates@^4.0.4: version "4.0.5" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== @@ -20337,109 +19853,107 @@ posix-character-classes@^0.1.0: resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= -postcss-calc@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.0.0.tgz#a05b87aacd132740a5db09462a3612453e5df90a" - integrity sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g== +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== dependencies: - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" -postcss-colormin@^5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.2.1.tgz#6e444a806fd3c578827dbad022762df19334414d" - integrity sha512-VVwMrEYLcHYePUYV99Ymuoi7WhKrMGy/V9/kTS0DkCoJYmmjdOMneyhzYUxcNgteKDVbrewOkSM7Wje/MFwxzA== +postcss-colormin@^5.3.0: + version "5.3.0" + resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" + integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== dependencies: browserslist "^4.16.6" caniuse-api "^3.0.0" colord "^2.9.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-convert-values@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.0.2.tgz#879b849dc3677c7d6bc94b6a2c1a3f0808798059" - integrity sha512-KQ04E2yadmfa1LqXm7UIDwW1ftxU/QWZmz6NKnHnUvJ3LEYbbcX6i329f/ig+WnEByHegulocXrECaZGLpL8Zg== +postcss-convert-values@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.0.tgz#f8d3abe40b4ce4b1470702a0706343eac17e7c10" + integrity sha512-GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-discard-comments@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz#9eae4b747cf760d31f2447c27f0619d5718901fe" - integrity sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg== +postcss-discard-comments@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.1.tgz#e90019e1a0e5b99de05f63516ce640bd0df3d369" + integrity sha512-5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ== -postcss-discard-duplicates@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz#68f7cc6458fe6bab2e46c9f55ae52869f680e66d" - integrity sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA== +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== -postcss-discard-empty@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz#ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8" - integrity sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw== +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== -postcss-discard-overridden@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz#454b41f707300b98109a75005ca4ab0ff2743ac6" - integrity sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q== +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== postcss-load-config@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.0.1.tgz#d214bf9cfec1608ffaf0f4161b3ba20664ab64b9" - integrity sha512-/pDHe30UYZUD11IeG8GWx9lNtu1ToyTsZHnyy45B4Mrwr/Kb6NgYl7k753+05CJNKnjbwh4975amoPJ+TEjHNQ== + version "3.1.4" + resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" + integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== dependencies: - cosmiconfig "^7.0.0" - import-cwd "^3.0.0" + lilconfig "^2.0.5" + yaml "^1.10.2" -postcss-merge-longhand@^5.0.4: - version "5.0.4" - resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.0.4.tgz#41f4f3270282ea1a145ece078b7679f0cef21c32" - integrity sha512-2lZrOVD+d81aoYkZDpWu6+3dTAAGkCKbV5DoRhnIR7KOULVrI/R7bcMjhrH9KTRy6iiHKqmtG+n/MMj1WmqHFw== +postcss-merge-longhand@^5.1.4: + version "5.1.4" + resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.4.tgz#0f46f8753989a33260efc47de9a0cdc571f2ec5c" + integrity sha512-hbqRRqYfmXoGpzYKeW0/NCZhvNyQIlQeWVSao5iKWdyx7skLvCfQFGIUsP9NUs3dSbPac2IC4Go85/zG+7MlmA== dependencies: - postcss-value-parser "^4.1.0" - stylehacks "^5.0.1" + postcss-value-parser "^4.2.0" + stylehacks "^5.1.0" -postcss-merge-rules@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.0.3.tgz#b5cae31f53129812a77e3eb1eeee448f8cf1a1db" - integrity sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg== +postcss-merge-rules@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.1.tgz#d327b221cd07540bcc8d9ff84446d8b404d00162" + integrity sha512-8wv8q2cXjEuCcgpIB1Xx1pIy8/rhMPIQqYKNzEdyx37m6gpq83mQQdCxgIkFgliyEnKvdwJf/C61vN4tQDq4Ww== dependencies: browserslist "^4.16.6" caniuse-api "^3.0.0" - cssnano-utils "^2.0.1" + cssnano-utils "^3.1.0" postcss-selector-parser "^6.0.5" -postcss-minify-font-values@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz#a90cefbfdaa075bd3dbaa1b33588bb4dc268addf" - integrity sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA== +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-gradients@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.0.3.tgz#f970a11cc71e08e9095e78ec3a6b34b91c19550e" - integrity sha512-Z91Ol22nB6XJW+5oe31+YxRsYooxOdFKcbOqY/V8Fxse1Y3vqlNRpi1cxCqoACZTQEhl+xvt4hsbWiV5R+XI9Q== +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== dependencies: colord "^2.9.1" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-params@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.0.2.tgz#1b644da903473fbbb18fbe07b8e239883684b85c" - integrity sha512-qJAPuBzxO1yhLad7h2Dzk/F7n1vPyfHfCCh5grjGfjhi1ttCnq4ZXGIW77GSrEbh9Hus9Lc/e/+tB4vh3/GpDg== +postcss-minify-params@^5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.2.tgz#77e250780c64198289c954884ebe3ee4481c3b1c" + integrity sha512-aEP+p71S/urY48HWaRHasyx4WHQJyOYaKpQ6eXl8k0kxg66Wt/30VR6/woh8THgcpRbonJD5IeD+CzNhPi1L8g== dependencies: - alphanum-sort "^1.0.2" browserslist "^4.16.6" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-minify-selectors@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz#4385c845d3979ff160291774523ffa54eafd5a54" - integrity sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og== +postcss-minify-selectors@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.0.tgz#17c2be233e12b28ffa8a421a02fc8b839825536c" + integrity sha512-vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA== dependencies: - alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" postcss-modules-extract-imports@^3.0.0: @@ -20471,11 +19985,11 @@ postcss-modules-values@^4.0.0: icss-utils "^5.0.0" postcss-modules@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.0.0.tgz#2bc7f276ab88f3f1b0fadf6cbd7772d43b5f3b9b" - integrity sha512-ghS/ovDzDqARm4Zj6L2ntadjyQMoyJmi0JkLlYtH2QFLrvNlxH5OAVRPWPeKilB0pY7SbuhO173KOWkPAxRJcw== + version "4.3.1" + resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.3.1.tgz#517c06c09eab07d133ae0effca2c510abba18048" + integrity sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q== dependencies: - generic-names "^2.0.1" + generic-names "^4.0.0" icss-replace-symbols "^1.1.0" lodash.camelcase "^4.3.0" postcss-modules-extract-imports "^3.0.0" @@ -20484,129 +19998,113 @@ postcss-modules@^4.0.0: postcss-modules-values "^4.0.0" string-hash "^1.1.1" -postcss-normalize-charset@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz#121559d1bebc55ac8d24af37f67bd4da9efd91d0" - integrity sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg== +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== -postcss-normalize-display-values@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz#62650b965981a955dffee83363453db82f6ad1fd" - integrity sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ== +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-positions@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz#868f6af1795fdfa86fbbe960dceb47e5f9492fe5" - integrity sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg== +postcss-normalize-positions@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.0.tgz#902a7cb97cf0b9e8b1b654d4a43d451e48966458" + integrity sha512-8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-repeat-style@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz#cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5" - integrity sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w== +postcss-normalize-repeat-style@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.0.tgz#f6d6fd5a54f51a741cc84a37f7459e60ef7a6398" + integrity sha512-IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-string@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz#d9eafaa4df78c7a3b973ae346ef0e47c554985b0" - integrity sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA== +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-timing-functions@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz#8ee41103b9130429c6cbba736932b75c5e2cb08c" - integrity sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q== +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-unicode@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz#82d672d648a411814aa5bf3ae565379ccd9f5e37" - integrity sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA== +postcss-normalize-unicode@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz#3d23aede35e160089a285e27bf715de11dc9db75" + integrity sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ== dependencies: - browserslist "^4.16.0" - postcss-value-parser "^4.1.0" + browserslist "^4.16.6" + postcss-value-parser "^4.2.0" -postcss-normalize-url@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.0.3.tgz#42eca6ede57fe69075fab0f88ac8e48916ef931c" - integrity sha512-qWiUMbvkRx3kc1Dp5opzUwc7MBWZcSDK2yofCmdvFBCpx+zFPkxBC1FASQ59Pt+flYfj/nTZSkmF56+XG5elSg== +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== dependencies: - is-absolute-url "^3.0.3" normalize-url "^6.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-normalize-whitespace@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz#b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a" - integrity sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA== +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-ordered-values@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz#1f351426977be00e0f765b3164ad753dac8ed044" - integrity sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ== +postcss-ordered-values@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.1.tgz#0b41b610ba02906a3341e92cab01ff8ebc598adb" + integrity sha512-7lxgXF0NaoMIgyihL/2boNAEZKiW0+HkMhdKMTD93CjW8TdCy2hSdj8lsAo+uwm7EDG16Da2Jdmtqpedl0cMfw== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-reduce-initial@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.0.1.tgz#9d6369865b0f6f6f6b165a0ef5dc1a4856c7e946" - integrity sha512-zlCZPKLLTMAqA3ZWH57HlbCjkD55LX9dsRyxlls+wfuRfqCi5mSlZVan0heX5cHr154Dq9AfbH70LyhrSAezJw== +postcss-reduce-initial@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz#fc31659ea6e85c492fb2a7b545370c215822c5d6" + integrity sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw== dependencies: - browserslist "^4.16.0" + browserslist "^4.16.6" caniuse-api "^3.0.0" -postcss-reduce-transforms@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz#93c12f6a159474aa711d5269923e2383cedcf640" - integrity sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA== +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: - version "6.0.4" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" - integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== - dependencies: - cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - util-deprecate "^1.0.2" - -postcss-selector-parser@^6.0.5: - version "6.0.6" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea" - integrity sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg== +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: + version "6.0.10" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" + integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-svgo@^5.0.3: - version "5.0.3" - resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.0.3.tgz#d945185756e5dfaae07f9edb0d3cae7ff79f9b30" - integrity sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA== +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== dependencies: - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" svgo "^2.7.0" -postcss-unique-selectors@^5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.0.2.tgz#5d6893daf534ae52626708e0d62250890108c0c1" - integrity sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA== +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== dependencies: - alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" postcss-value-parser@^3.3.0: @@ -20614,7 +20112,7 @@ postcss-value-parser@^3.3.0: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: +postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== @@ -20639,9 +20137,9 @@ postgres-bytea@~1.0.0: integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU= postgres-date@~1.0.4: - version "1.0.5" - resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.5.tgz#710b27de5f27d550f6e80b5d34f7ba189213c2ee" - integrity sha512-pdau6GRPERdAYUQwkBnGKxEfPyhVZXG/JiS44iZWiNdSOWE09N2lUgN6yshuq6fVSon4Pm0VMXd1srUUkLe9iA== + version "1.0.7" + resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8" + integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q== postgres-interval@^1.1.0: version "1.2.0" @@ -20732,7 +20230,7 @@ pretty-format@^26.0.0, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^27.0.0, pretty-format@^27.5.1: +pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== @@ -20741,31 +20239,16 @@ pretty-format@^27.0.0, pretty-format@^27.5.1: ansi-styles "^5.0.0" react-is "^17.0.1" -pretty-format@^27.0.2: - version "27.3.1" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5" - integrity sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA== - dependencies: - "@jest/types" "^27.2.5" - ansi-regex "^5.0.1" - ansi-styles "^5.0.0" - react-is "^17.0.1" +prismjs@^1.27.0: + version "1.28.0" + resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz#0d8f561fa0f7cf6ebca901747828b149147044b6" + integrity sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw== -printj@~1.1.0: - version "1.1.2" - resolved "https://registry.npmjs.org/printj/-/printj-1.1.2.tgz#d90deb2975a8b9f600fb3a1c94e3f4c53c78a222" - integrity sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ== - -prismjs@^1.27.0, prismjs@~1.27.0: +prismjs@~1.27.0: version "1.27.0" resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== -private@^0.1.8: - version "0.1.8" - resolved "https://registry.npmjs.org/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - proc-log@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/proc-log/-/proc-log-1.0.0.tgz#0d927307401f69ed79341e83a0b2c9a13395eb77" @@ -20860,9 +20343,9 @@ properties-reader@^2.2.0: mkdirp "^1.0.4" property-expr@^2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/property-expr/-/property-expr-2.0.4.tgz#37b925478e58965031bb612ec5b3260f8241e910" - integrity sha512-sFPkHQjVKheDNnPvotjQmm3KD3uk1fWKUN7CrpdbwmUx3CrG3QiM8QpTSimvig5vTXmTvjz7+TDvXOI9+4rkcg== + version "2.0.5" + resolved "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz#278bdb15308ae16af3e3b9640024524f4dc02cb4" + integrity sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA== property-information@^5.0.0: version "5.6.0" @@ -20872,9 +20355,9 @@ property-information@^5.0.0: xtend "^4.0.0" property-information@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/property-information/-/property-information-6.0.1.tgz#7c668d9f2b9cb63bc3e105d8b8dfee7221a17800" - integrity sha512-F4WUUAF7fMeF4/JUFHNBWDaKDXi2jbvqBW/y6o5wsf3j19wTZ7S60TmtB5HoBhtgw7NKQRMWuz5vk2PR0CygUg== + version "6.1.1" + resolved "https://registry.npmjs.org/property-information/-/property-information-6.1.1.tgz#5ca85510a3019726cb9afed4197b7b8ac5926a22" + integrity sha512-hrzC564QIl0r0vy4l6MvRLhafmUowhO/O3KgVSoXIbbA2Sz4j8HGpJc6T2cubRVwMwpdiG/vKGfhT4IixmKN9w== proto-list@~1.2.1: version "1.2.4" @@ -20882,9 +20365,9 @@ proto-list@~1.2.1: integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= proto3-json-serializer@^0.1.8: - version "0.1.9" - resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.9.tgz#705ddb41b009dd3e6fcd8123edd72926abf65a34" - integrity sha512-A60IisqvnuI45qNRygJjrnNjX2TMdQGMY+57tR3nul3ZgO2zXkR9OGR8AXxJhkqx84g0FTnrfi3D5fWMSdANdQ== + version "0.1.8" + resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.8.tgz#f80f9afc1efe5ed9a9856bbbd17dc7cabd7ce9a3" + integrity sha512-ACilkB6s1U1gWnl5jtICpnDai4VCxmI9GFxuEaYdxtDG2oVI3sVFIUsvUZcQbJgtPM6p+zqKbjTKQZp6Y4FpQw== dependencies: protobufjs "^6.11.2" @@ -20908,9 +20391,9 @@ protobufjs@6.11.3, protobufjs@^6.10.0, protobufjs@^6.11.2, protobufjs@^6.8.6: long "^4.0.0" protocols@^1.1.0, protocols@^1.4.0: - version "1.4.7" - resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.7.tgz#95f788a4f0e979b291ffefcf5636ad113d037d32" - integrity sha512-Fx65lf9/YDn3hUX08XUc0J8rSux36rEsyiv21ZGUC1mOyeM3lTRpZLcrm8aAolzS4itwVfm7TAPyxC2E5zd6xg== + version "1.4.8" + resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" + integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== proxy-addr@~2.0.7: version "2.0.7" @@ -20964,11 +20447,6 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" safe-buffer "^5.1.2" -puka@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/puka/-/puka-1.0.1.tgz#a2df782b7eb4cf9564e4c93a5da422de0dfacc02" - integrity sha512-ssjRZxBd7BT3dte1RR3VoeT2cT/ODH8x+h0rUF1rMqB0srHYf48stSDWfiYakTp5UBZMxroZhB2+ExLDHm7W3g== - pump@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -21031,7 +20509,7 @@ q@^1.5.1: resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.10.3, qs@^6.10.1, qs@^6.10.2, qs@^6.10.3, qs@^6.9.1, qs@^6.9.4, qs@^6.9.6: +qs@6.10.3, qs@^6.10.1, qs@^6.10.2, qs@^6.10.3, qs@^6.5.1, qs@^6.9.1, qs@^6.9.4, qs@^6.9.6: version "6.10.3" resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== @@ -21043,20 +20521,25 @@ qs@6.9.3: resolved "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== -qs@6.9.7: - version "6.9.7" - resolved "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" - integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== - qs@~6.5.2: - version "6.5.2" - resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + version "6.5.3" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== + +query-string@^6.13.8: + version "6.14.1" + resolved "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" + integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== + dependencies: + decode-uri-component "^0.2.0" + filter-obj "^1.1.0" + split-on-first "^1.0.0" + strict-uri-encode "^2.0.0" query-string@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/query-string/-/query-string-7.0.0.tgz#aaad2c8d5c6a6d0c6afada877fecbd56af79e609" - integrity sha512-Iy7moLybliR5ZgrK/1R3vjrXq03S13Vz4Rbm5Jg3EFq1LUmQppto0qtXz4vqZ386MSRjZgnTSZ9QC+NZOSd/XA== + version "7.1.1" + resolved "https://registry.npmjs.org/query-string/-/query-string-7.1.1.tgz#754620669db978625a90f635f12617c271a088e1" + integrity sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w== dependencies: decode-uri-component "^0.2.0" filter-obj "^1.1.0" @@ -21078,6 +20561,11 @@ querystringify@^2.1.1: resolved "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + quick-format-unescaped@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz#fb3e468ac64c01d22305806c39f121ddac0d1fb9" @@ -21094,9 +20582,9 @@ quick-lru@^5.1.1: integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== raf-schd@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.2.tgz#bd44c708188f2e84c810bf55fcea9231bcaed8a0" - integrity sha512-VhlMZmGy6A6hrkJWHLNTGl5gtgMUm+xfGza6wbwnE914yeQ5Ybm18vgM734RZhMgfw4tacUrWseGZlpUrrakEQ== + version "4.0.3" + resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.3.tgz#5d6c34ef46f8b2a0e880a8fcdb743efc5bfdbc1a" + integrity sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ== raf@^3.4.0: version "3.4.1" @@ -21148,16 +20636,6 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.4.3: - version "2.4.3" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" - integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== - dependencies: - bytes "3.1.2" - http-errors "1.8.1" - iconv-lite "0.4.24" - unpipe "1.0.0" - raw-body@2.5.1, raw-body@^2.4.1: version "2.5.1" resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" @@ -21187,9 +20665,9 @@ rc-progress@3.3.3: rc-util "^5.16.1" rc-util@^5.16.1: - version "5.16.1" - resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.16.1.tgz#374db7cb735512f05165ddc3d6b2c61c21b8b4e3" - integrity sha512-kSCyytvdb3aRxQacS/71ta6c+kBWvM1v8/2h9d/HaNWauc3qB8pLnF20PJ8NajkNN8gb+rR1l0eWO+D4Pz+LLQ== + version "5.21.4" + resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz#61e24ad297f679ca0796b618a3ef30eca959d904" + integrity sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw== dependencies: "@babel/runtime" "^7.12.5" react-is "^16.12.0" @@ -21206,15 +20684,15 @@ rc@^1.2.7, rc@^1.2.8: strip-json-comments "~2.0.1" react-beautiful-dnd@^13.0.0: - version "13.0.0" - resolved "https://registry.npmjs.org/react-beautiful-dnd/-/react-beautiful-dnd-13.0.0.tgz#f70cc8ff82b84bc718f8af157c9f95757a6c3b40" - integrity sha512-87It8sN0ineoC3nBW0SbQuTFXM6bUqM62uJGY4BtTf0yzPl8/3+bHMWkgIe0Z6m8e+gJgjWxefGRVfpE3VcdEg== + version "13.1.0" + resolved "https://registry.npmjs.org/react-beautiful-dnd/-/react-beautiful-dnd-13.1.0.tgz#ec97c81093593526454b0de69852ae433783844d" + integrity sha512-aGvblPZTJowOWUNiwd6tNfEpgkX5OxmpqxHKNW/4VmvZTNTbeiq7bA3bn5T+QSF2uibXB0D1DmJsb1aC/+3cUA== dependencies: - "@babel/runtime" "^7.8.4" + "@babel/runtime" "^7.9.2" css-box-model "^1.2.0" memoize-one "^5.1.1" raf-schd "^4.0.2" - react-redux "^7.1.1" + react-redux "^7.2.0" redux "^4.0.4" use-memo-one "^1.1.1" @@ -21279,9 +20757,9 @@ react-double-scrollbar@0.0.15: integrity sha1-6RWrjLO5WYdwdfSUNt6/2wQoj+Q= react-error-boundary@^3.1.0: - version "3.1.3" - resolved "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.3.tgz#276bfa05de8ac17b863587c9e0647522c25e2a0b" - integrity sha512-A+F9HHy9fvt9t8SNDlonq01prnU8AmkjvGKV4kk8seB9kU3xMEO8J/PQlLVmoOIDODl5U2kufSBs4vrWIqhsAA== + version "3.1.4" + resolved "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0" + integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA== dependencies: "@babel/runtime" "^7.12.5" @@ -21311,15 +20789,15 @@ react-helmet@6.1.0: react-side-effect "^2.1.0" react-hook-form@^7.12.2, react-hook-form@^7.13.0: +<<<<<<< HEAD version "7.31.3" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== - -react-hot-loader@^4.13.0: +======= + version "7.31.0" version "4.13.0" resolved "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.13.0.tgz#c27e9408581c2a678f5316e69c061b226dc6a202" integrity sha512-JrLlvUPqh6wIkrK2hZDfOyq/Uh/WeVEr8nc7hkn2/3Ul0sx1Kr5y4kOGNacNRoj7RhwLNcQ3Udf1KJXrqc0ZtA== - dependencies: fast-levenshtein "^2.0.6" global "^4.3.0" hoist-non-react-statics "^3.3.0" @@ -21355,15 +20833,15 @@ react-is@^16.10.2, react-is@^16.12.0, react-is@^16.13.1, react-is@^16.7.0, react resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -"react-is@^16.8.0 || ^17.0.0", react-is@^17.0.1: +"react-is@^16.8.0 || ^17.0.0", react-is@^17.0.1, react-is@^17.0.2: version "17.0.2" resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== react-is@^18.0.0: - version "18.0.0" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.0.0.tgz#026f6c4a27dbe33bf4a35655b9e1327c4e55e3f5" - integrity sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw== + version "18.1.0" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.1.0.tgz#61aaed3096d30eacf2a2127118b5b41387d32a67" + integrity sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg== react-lifecycles-compat@^3.0.4: version "3.0.4" @@ -21400,17 +20878,17 @@ react-query@^3.34.16: broadcast-channel "^3.4.1" match-sorter "^6.0.2" -react-redux@^7.1.1, react-redux@^7.2.4: - version "7.2.5" - resolved "https://registry.npmjs.org/react-redux/-/react-redux-7.2.5.tgz#213c1b05aa1187d9c940ddfc0b29450957f6a3b8" - integrity sha512-Dt29bNyBsbQaysp6s/dN0gUodcq+dVKKER8Qv82UrpeygwYeX1raTtil7O/fftw/rFqzaf6gJhDZRkkZnn6bjg== +react-redux@^7.2.0, react-redux@^7.2.4: + version "7.2.8" + resolved "https://registry.npmjs.org/react-redux/-/react-redux-7.2.8.tgz#a894068315e65de5b1b68899f9c6ee0923dd28de" + integrity sha512-6+uDjhs3PSIclqoCk0kd6iX74gzrGc3W5zcAjbrFgEdIjRSQObdIwfx80unTkVUYvbQ95Y8Av3OvFHq1w5EOUw== dependencies: - "@babel/runtime" "^7.12.1" - "@types/react-redux" "^7.1.16" + "@babel/runtime" "^7.15.4" + "@types/react-redux" "^7.1.20" hoist-non-react-statics "^3.3.2" loose-envify "^1.4.0" prop-types "^15.7.2" - react-is "^16.13.1" + react-is "^17.0.2" react-resize-detector@^2.3.0: version "2.3.0" @@ -21447,21 +20925,21 @@ react-router@6.0.0-beta.0: prop-types "^15.7.2" react-router@^6.0.0-beta.0: - version "6.2.1" - resolved "https://registry.npmjs.org/react-router/-/react-router-6.2.1.tgz#be2a97a6006ce1d9123c28934e604faef51448a3" - integrity sha512-2fG0udBtxou9lXtK97eJeET2ki5//UWfQSl1rlJ7quwe6jrktK9FCCc8dQb5QY6jAv3jua8bBQRhhDOM/kVRsg== + version "6.3.0" + resolved "https://registry.npmjs.org/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557" + integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== dependencies: history "^5.2.0" react-side-effect@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.0.tgz#1ce4a8b4445168c487ed24dab886421f74d380d3" - integrity sha512-IgmcegOSi5SNX+2Snh1vqmF0Vg/CbkycU9XZbOHJlZ6kMzTmi3yc254oB1WCkgA7OQtIAoLmcSFuHTc/tlcqXg== + version "2.1.1" + resolved "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.1.tgz#66c5701c3e7560ab4822a4ee2742dee215d72eb3" + integrity sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ== react-smooth@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.5.tgz#94ae161d7951cdd893ccb7099d031d342cb762ad" - integrity sha512-eW057HT0lFgCKh8ilr0y2JaH2YbNcuEdFpxyg7Gf/qDKk9hqGMyXryZJ8iMGJEuKH0+wxS0ccSsBBB3W8yCn8w== + version "1.0.6" + resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.6.tgz#18b964f123f7bca099e078324338cd8739346d0a" + integrity sha512-B2vL4trGpNSMSOzFiAul9kFAsxTukL9Wyy9EXtkQy3GJr6sZqW9e1nShdVOJ3hRYamPZ94O17r3Q0bjSw3UYtg== dependencies: lodash "~4.17.4" prop-types "^15.6.0" @@ -21523,9 +21001,9 @@ react-transition-group@2.9.0, react-transition-group@^2.5.0: react-lifecycles-compat "^3.0.4" react-transition-group@^4.0.0, react-transition-group@^4.4.0: - version "4.4.1" - resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.1.tgz#63868f9325a38ea5ee9535d828327f85773345c9" - integrity sha512-Djqr7OQ2aPUiYurhPalTrVy9ddmFCCzwhqQmtN+J3+3DzLO209Fdr70QrN8Z3DsglWql6iY1lDWAfpFiBtuKGw== + version "4.4.2" + resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470" + integrity sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg== dependencies: "@babel/runtime" "^7.5.5" dom-helpers "^5.0.1" @@ -21583,7 +21061,12 @@ read-cmd-shim@^2.0.0: resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== -read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2: +read-cmd-shim@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz#62b8c638225c61e6cc607f8f4b779f3b8238f155" + integrity sha512-KQDVjGqhZk92PPNRj9ZEXEuqg8bUobSKRw+q0YQ3TKI5xkce7bUJobL4Z/OtiEbAAv70yEpYIXp4iQ9L8oPVog== + +read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== @@ -21592,21 +21075,29 @@ read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2: npm-normalize-package-bin "^1.0.1" read-package-json@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz#16aa66c59e7d4dad6288f179dd9295fd59bb98f1" - integrity sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A== + version "2.1.2" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" + integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== dependencies: glob "^7.1.1" - json-parse-better-errors "^1.0.1" + json-parse-even-better-errors "^2.3.0" normalize-package-data "^2.0.0" npm-normalize-package-bin "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.2" read-package-json@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.0.tgz#2219328e77c9be34f035a4ce58d1fb8e2979adf9" - integrity sha512-4TnJZ5fnDs+/3deg1AuMExL4R1SFNRLQeOhV9c8oDKm3eoG6u8xU0r0mNNRJHi3K6B+jXmT7JOhwhAklWw9SSQ== + version "3.0.1" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" + integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== + dependencies: + glob "^7.1.1" + json-parse-even-better-errors "^2.3.0" + normalize-package-data "^3.0.0" + npm-normalize-package-bin "^1.0.0" + +read-package-json@^4.1.1: + version "4.1.2" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-4.1.2.tgz#b444d047de7c75d4a160cb056d00c0693c1df703" + integrity sha512-Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ== dependencies: glob "^7.1.1" json-parse-even-better-errors "^2.3.0" @@ -21746,9 +21237,9 @@ readdirp@~3.6.0: picomatch "^2.2.1" recast@^0.20.3, recast@^0.20.4: - version "0.20.4" - resolved "https://registry.npmjs.org/recast/-/recast-0.20.4.tgz#db55983eac70c46b3fff96c8e467d65ffb4a7abc" - integrity sha512-6qLIBGGRcwjrTZGIiBpJVC/NeuXpogXNyRQpqU1zWPUigCphvApoCs9KIwDYh1eDuJ6dAFlQoi/QUyE5KQ6RBQ== + version "0.20.5" + resolved "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" + integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== dependencies: ast-types "0.14.2" esprima "~4.0.0" @@ -21870,9 +21361,9 @@ redux-immutable@^4.0.0: integrity sha1-Ohoy32Y2ZGK2NpHw4dw15HK7yfM= redux@^4.0.0, redux@^4.0.4, redux@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/redux/-/redux-4.1.2.tgz#140f35426d99bb4729af760afcf79eaaac407104" - integrity sha512-SH8PglcebESbd/shgf6mii6EIoRM0zrQyjcuQ+ojmfxjTtE0z9Y8pa62iA/OJ58qjP6j27uyW4kUF4jl/jd6sw== + version "4.2.0" + resolved "https://registry.npmjs.org/redux/-/redux-4.2.0.tgz#46f10d6e29b6666df758780437651eeb2b969f13" + integrity sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA== dependencies: "@babel/runtime" "^7.9.2" @@ -21890,17 +21381,17 @@ refractor@^3.6.0: parse-entities "^2.0.0" prismjs "~1.27.0" -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== +regenerate-unicode-properties@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326" + integrity sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA== dependencies: - regenerate "^1.4.0" + regenerate "^1.4.2" -regenerate@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" - integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== +regenerate@^1.4.2: + version "1.4.2" + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.10.5: version "0.10.5" @@ -21918,12 +21409,11 @@ regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== regenerator-transform@^0.14.2: - version "0.14.4" - resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" - integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== + version "0.14.5" + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" + integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== dependencies: "@babel/runtime" "^7.8.4" - private "^0.1.8" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" @@ -21933,7 +21423,11 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +<<<<<<< HEAD regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: +======= +regexp.prototype.flags@^1.4.1: +>>>>>>> First implementation of vault-plugin version "1.4.3" resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== @@ -21948,21 +21442,21 @@ regexpp@^3.2.0: integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== regexpu-core@^4.7.1: - version "4.7.1" - resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" - integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== + version "4.8.0" + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0" + integrity sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg== dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" + regenerate "^1.4.2" + regenerate-unicode-properties "^9.0.0" + regjsgen "^0.5.2" + regjsparser "^0.7.0" + unicode-match-property-ecmascript "^2.0.0" + unicode-match-property-value-ecmascript "^2.0.0" registry-auth-token@^4.0.0: - version "4.1.1" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz#40a33be1e82539460f94328b0f7f0f84c16d9479" - integrity sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA== + version "4.2.1" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" + integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== dependencies: rc "^1.2.8" @@ -21973,15 +21467,15 @@ registry-url@^5.0.0: dependencies: rc "^1.2.8" -regjsgen@^0.5.1: - version "0.5.1" - resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz#48f0bf1a5ea205196929c0d9798b42d1ed98443c" - integrity sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg== +regjsgen@^0.5.2: + version "0.5.2" + resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" + integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== -regjsparser@^0.6.4: - version "0.6.4" - resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" - integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== +regjsparser@^0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz#a6b667b54c885e18b52554cb4960ef71187e9968" + integrity sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ== dependencies: jsesc "~0.5.0" @@ -22038,9 +21532,9 @@ remark-gfm@^3.0.1: unified "^10.0.0" remark-parse@^10.0.0: - version "10.0.0" - resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.0.tgz#65e2b2b34d8581d36b97f12a2926bb2126961cb4" - integrity sha512-07ei47p2Xl7Bqbn9H2VYQYirnAFJPwdMuypdozWsSbnmrkgA2e2sZLZdnDNrrsxR4onmIzH/J6KXqKxCuqHtPQ== + version "10.0.1" + resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz#6f60ae53edbf0cf38ea223fe643db64d112e0775" + integrity sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw== dependencies: "@types/mdast" "^3.0.0" mdast-util-from-markdown "^1.0.0" @@ -22096,9 +21590,9 @@ renderkid@^3.0.0: strip-ansi "^6.0.1" repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== + version "1.1.4" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" @@ -22193,9 +21687,9 @@ resize-observer-polyfill@^1.5.0, resize-observer-polyfill@^1.5.1: integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== resolve-alpn@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c" - integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA== + version "1.2.1" + resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" + integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== resolve-cwd@^3.0.0: version "3.0.0" @@ -22224,16 +21718,7 @@ resolve.exports@^1.1.0: resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: - version "1.21.0" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz#b51adc97f3472e6a5cf4444d34bc9d6b9037591f" - integrity sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA== - dependencies: - is-core-module "^2.8.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^1.22.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -22313,7 +21798,7 @@ retry-request@^4.0.0, retry-request@^4.2.2: debug "^4.1.1" extend "^3.0.2" -retry@0.13.1: +retry@0.13.1, retry@^0.13.1: version "0.13.1" resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== @@ -22329,9 +21814,9 @@ reusify@^1.0.4: integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rfc4648@^1.3.0: - version "1.4.0" - resolved "https://registry.npmjs.org/rfc4648/-/rfc4648-1.4.0.tgz#c75b2856ad2e2d588b6ddb985d556f1f7f2a2abd" - integrity sha512-3qIzGhHlMHA6PoT6+cdPKZ+ZqtxkIvg8DZGKA5z6PQ33/uuhoJ+Ws/D/J9rXW6gXodgH8QYlz2UCl+sdUDmNIg== + version "1.5.1" + resolved "https://registry.npmjs.org/rfc4648/-/rfc4648-1.5.1.tgz#b0b16756e33d9de8c0c7833e94b28e627ec372a4" + integrity sha512-60e/YWs2/D3MV1ErdjhJHcmlgnyLUiG4X/14dgsfm9/zmCWLN16xI6YqJYSCd/OANM7bUNzJqPY5B8/02S9Ibw== rfdc@^1.3.0: version "1.3.0" @@ -22448,23 +21933,23 @@ rollup@^2.60.2: fsevents "~2.3.2" rtl-css-js@^1.14.0: - version "1.14.0" - resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.14.0.tgz#daa4f192a92509e292a0519f4b255e6e3c076b7d" - integrity sha512-Dl5xDTeN3e7scU1cWX8c9b6/Nqz3u/HgR4gePc1kWXYiQWVQbKCEyK6+Hxve9LbcJ5EieHy1J9nJCN3grTtGwg== + version "1.15.0" + resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.15.0.tgz#680ed816e570a9ebccba9e1cd0f202c6a8bb2dc0" + integrity sha512-99Cu4wNNIhrI10xxUaABHsdDqzalrSRTie4GeCmbGVuehm4oj+fIy8fTzB+16pmKe8Bv9rl+hxIBez6KxExTew== dependencies: "@babel/runtime" "^7.1.2" run-async@^2.4.0: - version "2.4.0" - resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz#e59054a5b86876cfae07f431d18cbaddc594f1e8" - integrity sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg== - dependencies: - is-promise "^2.1.0" + version "2.4.1" + resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: - version "1.1.9" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + version "1.2.0" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" run-script-webpack-plugin@^0.0.14: version "0.0.14" @@ -22497,7 +21982,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -22605,9 +22090,9 @@ scoped-regex@^2.0.0: integrity sha512-g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ== screenfull@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/screenfull/-/screenfull-5.1.0.tgz#85c13c70f4ead4c1b8a935c70010dfdcd2c0e5c8" - integrity sha512-dYaNuOdzr+kc6J6CFcBrzkLCfyGcMg+gWkJ8us93IQ7y1cevhQAugFsaCdMHb6lw8KV3xPzSxzH7zM1dQap9mA== + version "5.2.0" + resolved "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz#6533d524d30621fc1283b9692146f3f13a93d1ba" + integrity sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA== scuid@^1.1.0: version "1.1.0" @@ -22648,7 +22133,7 @@ semver-store@^0.3.0: resolved "https://registry.npmjs.org/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -23093,7 +22578,11 @@ socket.io@^2.2.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" +<<<<<<< HEAD sockjs@^0.3.24: +======= +sockjs@^0.3.21: +>>>>>>> First implementation of vault-plugin version "0.3.24" resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== @@ -23103,24 +22592,24 @@ sockjs@^0.3.24: websocket-driver "^0.7.4" socks-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz#7c0f364e7b1cf4a7a437e71253bed72e9004be60" - integrity sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA== + version "5.0.1" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" + integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== dependencies: - agent-base "6" + agent-base "^6.0.2" debug "4" socks "^2.3.3" socks-proxy-agent@^6.0.0, socks-proxy-agent@^6.1.1: - version "6.1.1" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz#e664e8f1aaf4e1fb3df945f09e3d94f911137f87" - integrity sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew== + version "6.2.0" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz#f6b5229cc0cbd6f2f202d9695f09d871e951c85e" + integrity sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ== dependencies: agent-base "^6.0.2" - debug "^4.3.1" - socks "^2.6.1" + debug "^4.3.3" + socks "^2.6.2" -socks@^2.3.3, socks@^2.6.1: +socks@^2.3.3, socks@^2.6.2: version "2.6.2" resolved "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== @@ -23188,9 +22677,9 @@ source-map-support@^0.5.10, source-map-support@^0.5.16, source-map-support@^0.5. source-map "^0.6.0" source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= + version "0.4.1" + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== source-map@0.5.6: version "0.5.6" @@ -23207,12 +22696,19 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3, source-map@~0.7.2: +source-map@^0.7.3: version "0.7.3" resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== -sourcemap-codec@^1.4.4, sourcemap-codec@^1.4.8: +source-map@~0.8.0-beta.0: + version "0.8.0-beta.0" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" + integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== + dependencies: + whatwg-url "^7.0.0" + +sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== @@ -23241,30 +22737,30 @@ spawndamnit@^2.0.0: signal-exit "^3.0.2" spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== + version "3.1.1" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== + version "2.3.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== + version "3.0.1" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + version "3.0.11" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" + integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== spdy-transport@^3.0.0: version "3.0.0" @@ -23313,6 +22809,11 @@ split2@^3.0.0: dependencies: readable-stream "^3.0.0" +split2@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" + integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== + split@0.3: version "0.3.3" resolved "https://registry.npmjs.org/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" @@ -23345,9 +22846,9 @@ sprintf-js@~1.0.2: integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sqlstring@^2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.2.tgz#cdae7169389a1375b18e885f2e60b3e460809514" - integrity sha512-vF4ZbYdKS8OnoJAWBmMxCQDkiEBkGQYU7UZPtL8flbDRSNkhaXvRJ279ZtI6M+zDaQovVU4tuRgzK5fVhvFAhg== + version "2.3.3" + resolved "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" + integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== ssh-remote-port-forward@^1.0.4: version "1.0.4" @@ -23358,20 +22859,20 @@ ssh-remote-port-forward@^1.0.4: ssh2 "^1.4.0" ssh2@^1.4.0: - version "1.5.0" - resolved "https://registry.npmjs.org/ssh2/-/ssh2-1.5.0.tgz#4dc559ba98a1cbb420e8d42998dfe35d0eda92bc" - integrity sha512-iUmRkhH9KGeszQwDW7YyyqjsMTf4z+0o48Cp4xOwlY5LjtbIAvyd3fwnsoUZW/hXmTCRA3yt7S/Jb9uVjErVlA== + version "1.10.0" + resolved "https://registry.npmjs.org/ssh2/-/ssh2-1.10.0.tgz#e05d870dfc8e83bc918a2ffb3dcbd4d523472dee" + integrity sha512-OnKAAmf4j8wCRrXXZv3Tp5lCZkLJZtgZbn45ELiShCg27djDQ3XFGvIzuGsIsf4hdHslP+VdhA9BhUQdTdfd9w== dependencies: asn1 "^0.2.4" bcrypt-pbkdf "^1.0.2" optionalDependencies: - cpu-features "0.0.2" + cpu-features "~0.0.4" nan "^2.15.0" sshpk@^1.14.1, sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + version "1.17.0" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" + integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -23390,6 +22891,13 @@ ssri@^8.0.0, ssri@^8.0.1: dependencies: minipass "^3.1.1" +ssri@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.0.tgz#70ad90e339eb910f1a7ff1dcf4afc268326c4547" + integrity sha512-Y1Z6J8UYnexKFN1R/hxUaYoY2LVdKEzziPmVAFKiKX8fiwvCJTVzn/xYE9TEWod5OVyNfIHHuVfIEuBClL/uJQ== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -23415,9 +22923,9 @@ stack-utils@^2.0.3: escape-string-regexp "^2.0.0" stackframe@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.1.1.tgz#ffef0a3318b1b60c3b58564989aca5660729ec71" - integrity sha512-0PlYhdKh6AfFxRyK/v+6/k+/mMfyiEBbTM5L94D0ZytQnJ166wuwoTYLHFWGbs2dpA8Rgq763KGWmN1EQEYHRQ== + version "1.2.1" + resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.2.1.tgz#1033a3473ee67f08e2f2fc8eba6aef4f845124e1" + integrity sha512-h88QkzREN/hy8eRdyNhhsO7RSJ5oyTqxxmmn0dzBIMUclZsjpfmrsg81vp8mjjAs2vAZ72nyWxRUwSwmh0e4xg== stacktrace-gps@^3.0.4: version "3.0.4" @@ -23467,7 +22975,7 @@ statuses@2.0.1, statuses@^2.0.0: resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2": +"statuses@>= 1.4.0 < 2": version "1.5.0" resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -23520,17 +23028,22 @@ stream-shift@^1.0.0: resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -stream-transform@^2.0.1: +stream-transform@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" integrity sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ== dependencies: mixme "^0.5.1" +streamsearch@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== + strict-event-emitter@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.0.tgz#78e2f75dc6ea502e5d8a877661065a1e2deedecd" - integrity sha512-zv7K2egoKwkQkZGEaH8m+i2D0XiKzx5jNsiSul6ja2IYFvil10A59Z9Y7PPAAe5OW53dQUf9CfsHKzjZzKkm1w== + version "0.2.4" + resolved "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.4.tgz#365714f0c95f059db31064ca745d5b33e5b30f6e" + integrity sha512-xIqTLS5azUH1djSUsLH9DbP6UnM/nI18vu8d43JigCQEoVsnY+mrlE+qv6kYqs6/1OkMnMIiL6ffedQSZStuoQ== dependencies: events "^3.3.0" @@ -23562,9 +23075,9 @@ string-hash@^1.1.1: integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs= string-length@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1" - integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw== + version "4.0.2" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" strip-ansi "^6.0.0" @@ -23595,15 +23108,6 @@ string-width@^2.1.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - string-width@^5.0.0: version "5.1.2" resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" @@ -23613,7 +23117,11 @@ string-width@^5.0.0: emoji-regex "^9.2.2" strip-ansi "^7.0.1" +<<<<<<< HEAD string.prototype.matchall@^4.0.7: +======= +string.prototype.matchall@^4.0.6: +>>>>>>> First implementation of vault-plugin version "4.0.7" resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg== @@ -23627,14 +23135,16 @@ string.prototype.matchall@^4.0.7: regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== +string.prototype.trimend@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" + integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" +<<<<<<< HEAD string.prototype.trimend@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" @@ -23648,9 +23158,16 @@ string.prototype.trimstart@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +======= +string.prototype.trimstart@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" + integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== +>>>>>>> First implementation of vault-plugin dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" string.prototype.trimstart@^1.0.5: version "1.0.5" @@ -23675,7 +23192,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@5.2.0, strip-ansi@^5.1.0: +strip-ansi@5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== @@ -23742,11 +23259,6 @@ strip-bom@^4.0.0: resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -23784,12 +23296,12 @@ strong-log-transformer@^2.1.0: through "^2.3.4" strtok3@^6.2.4: - version "6.2.4" - resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz#302aea64c0fa25d12a0385069ba66253fdc38a81" - integrity sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw== + version "6.3.0" + resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" + integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== dependencies: "@tokenizer/token" "^0.3.0" - peek-readable "^4.0.1" + peek-readable "^4.1.0" stubs@^3.0.0: version "3.0.0" @@ -23818,18 +23330,18 @@ style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" -stylehacks@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb" - integrity sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA== +stylehacks@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz#a40066490ca0caca04e96c6b02153ddc39913520" + integrity sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q== dependencies: - browserslist "^4.16.0" + browserslist "^4.16.6" postcss-selector-parser "^6.0.4" stylis@^4.0.6: - version "4.0.7" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.0.7.tgz#412a90c28079417f3d27c028035095e4232d2904" - integrity sha512-OFFeUXFgwnGOKvEXaSv0D0KQ5ADP0n6g3SVONx6I/85JzNZ3u50FRwB3lVIk1QO2HNdI75tbVzc4Z66Gdp9voA== + version "4.1.1" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.1.tgz#e46c6a9bbf7c58db1e65bb730be157311ae1fe12" + integrity sha512-lVrM/bNdhVX2OgBFNa2YJ9Lxj7kPzylieHd3TNjuGE0Re9JB7joL5VUKOVH1kdNNJTgGPpT8hmwIAPLaSyEVFQ== sucrase@^3.18.0, sucrase@^3.20.2: version "3.21.0" @@ -23843,6 +23355,22 @@ sucrase@^3.18.0, sucrase@^3.20.2: pirates "^4.0.1" ts-interface-checker "^0.1.9" +superagent@^3.8.3: + version "3.8.3" + resolved "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128" + integrity sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA== + dependencies: + component-emitter "^1.2.0" + cookiejar "^2.1.0" + debug "^3.1.0" + extend "^3.0.0" + form-data "^2.3.1" + formidable "^1.2.0" + methods "^1.1.1" + mime "^1.4.1" + qs "^6.5.1" + readable-stream "^2.3.5" + superagent@^7.1.3: version "7.1.3" resolved "https://registry.npmjs.org/superagent/-/superagent-7.1.3.tgz#783ff8330e7c2dad6ad8f0095edc772999273b6b" @@ -23860,6 +23388,14 @@ superagent@^7.1.3: readable-stream "^3.6.0" semver "^7.3.7" +supertest@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/supertest/-/supertest-4.0.2.tgz#c2234dbdd6dc79b6f15b99c8d6577b90e4ce3f36" + integrity sha512-1BAbvrOZsGA3YTCWqbmh14L0YEq0EGICX/nBnfkfVJn7SrxQV1I3pMYjSzG9y/7ZU2V9dWqyqk2POwxlb09duQ== + dependencies: + methods "^1.1.2" + superagent "^3.8.3" + supertest@^6.1.3, supertest@^6.1.6: version "6.2.3" resolved "https://registry.npmjs.org/supertest/-/supertest-6.2.3.tgz#291b220126e5faa654d12abe1ada3658757c8c67" @@ -23895,9 +23431,9 @@ supports-color@^8.0.0, supports-color@^8.1.0, supports-color@^8.1.1: has-flag "^4.0.0" supports-hyperlinks@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" - integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== + version "2.2.0" + resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" @@ -23995,7 +23531,7 @@ swr@^1.1.2: resolved "https://registry.npmjs.org/swr/-/swr-1.3.0.tgz#c6531866a35b4db37b38b72c45a63171faf9f4e8" integrity sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw== -symbol-observable@1.2.0, symbol-observable@^1.1.0: +symbol-observable@^1.1.0: version "1.2.0" resolved "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== @@ -24151,9 +23687,9 @@ temp@^0.8.4: rimraf "~2.6.2" term-size@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" - integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== + version "2.2.1" + resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" + integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== terminal-link@^2.0.0: version "2.1.1" @@ -24175,13 +23711,13 @@ terser-webpack-plugin@*, terser-webpack-plugin@^5.1.3: terser "^5.7.2" terser@^5.10.0, terser@^5.7.2: - version "5.12.0" - resolved "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz#728c6bff05f7d1dcb687d8eace0644802a9dae8a" - integrity sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A== + version "5.13.1" + resolved "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz#66332cdc5a01b04a224c9fad449fc1a18eaa1799" + integrity sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA== dependencies: acorn "^8.5.0" commander "^2.20.0" - source-map "~0.7.2" + source-map "~0.8.0-beta.0" source-map-support "~0.5.20" test-exclude@^6.0.0: @@ -24232,9 +23768,9 @@ text-table@0.2.0, text-table@^0.2.0: integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= textextensions@^5.12.0, textextensions@^5.13.0: - version "5.14.0" - resolved "https://registry.npmjs.org/textextensions/-/textextensions-5.14.0.tgz#a6ff6aee5faaa751e6157d422c722a2bfd59eedf" - integrity sha512-4cAYwNFNYlIAHBUo7p6zw8POUvWbZor+/R0Tanv+rIhsauEyV9QSrEXL40pI+GfTQxKX8k6Tyw6CmdSDSmASrg== + version "5.15.0" + resolved "https://registry.npmjs.org/textextensions/-/textextensions-5.15.0.tgz#4bb3296ad6fc111cf4b39c589dd028d8aaaf7060" + integrity sha512-MeqZRHLuaGamUXGuVn2ivtU3LA3mLCCIO5kUGoohTCoGmCBg/+8yPhWVX9WSl9telvVd8erftjFk9Fwb2dD6rw== thenify-all@^1.0.0: version "1.6.0" @@ -24296,9 +23832,9 @@ tildify@2.0.0: integrity sha512-Cc+OraorugtXNfs50hU9KS369rFXCfgGLpfCfvlc+Ud5u6VWmUQsOAa9HbTvheQdYnrdJqqv1e5oIqXppMYnSw== timers-browserify@^2.0.4: - version "2.0.11" - resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" - integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ== + version "2.0.12" + resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" + integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== dependencies: setimmediate "^1.0.4" @@ -24307,20 +23843,15 @@ timm@^1.6.1: resolved "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz#96bab60c7d45b5a10a8a4d0f0117c6b7e5aff76f" integrity sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw== -timsort@^0.3.0, timsort@~0.3.0: +timsort@~0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= tiny-invariant@^1.0.6: - version "1.1.0" - resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" - integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== - -tiny-lru@7.0.6: - version "7.0.6" - resolved "https://registry.npmjs.org/tiny-lru/-/tiny-lru-7.0.6.tgz#b0c3cdede1e5882aa2d1ae21cb2ceccf2a331f24" - integrity sha512-zNYO0Kvgn5rXzWpL0y3RS09sMK67eGaQj9805jlK9G6pSadfriTczzLHFXa/xcW4mIRfmlB9HyQ/+SgL0V1uow== + version "1.2.0" + resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.2.0.tgz#a1141f86b672a9148c72e978a19a73b9b94a15a9" + integrity sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg== tiny-merge-patch@^0.1.2: version "0.1.2" @@ -24345,9 +23876,9 @@ title-case@^3.0.3: tslib "^2.0.3" tmp-promise@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.2.tgz#6e933782abff8b00c3119d63589ca1fb9caaa62a" - integrity sha512-OyCLAKU1HzBjL6Ev3gxUeraJNlbNingmi8IrHHEsYH8LTmEuhvYfqvhn2F/je+mjf4N58UmZ96OMEy1JanSCpA== + version "3.0.3" + resolved "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz#60a1a1cc98c988674fcbfd23b6e3367bdeac4ce7" + integrity sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ== dependencies: tmp "^0.2.0" @@ -24365,7 +23896,7 @@ tmp@^0.2.0, tmp@~0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.x: +tmpl@1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -24433,9 +23964,9 @@ toidentifier@1.0.1: integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== token-types@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/token-types/-/token-types-4.1.1.tgz#ef9e8c8e2e0ded9f1b3f8dbaa46a3228b113ba1a" - integrity sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w== + version "4.2.0" + resolved "https://registry.npmjs.org/token-types/-/token-types-4.2.0.tgz#b66bc3d67420c6873222a424eee64a744f4c2f13" + integrity sha512-P0rrp4wUpefLncNamWIef62J0v0kQR/GfDVji9WKY7GDCWy5YbVSrKUTam07iWPZQGy0zWNOfstYTykMmPNR7w== dependencies: "@tokenizer/token" "^0.3.0" ieee754 "^1.2.1" @@ -24474,6 +24005,13 @@ tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" +tr46@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" + integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= + dependencies: + punycode "^2.1.0" + tr46@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" @@ -24511,20 +24049,15 @@ trim-newlines@^3.0.0: resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -trim-off-newlines@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz#8df24847fcb821b0ab27d58ab6efec9f2fe961a1" - integrity sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg== - triple-beam@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz#a595214c7298db8339eeeee083e4d10bd8cb8dd9" integrity sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw== trough@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/trough/-/trough-2.0.2.tgz#94a3aa9d5ce379fc561f6244905b3f36b7458d96" - integrity sha512-FnHq5sTMxC0sk957wHDzRnemFnNBvt/gSY99HzK8F7UP5WAbvP70yX5bd7CjEQkN+TjdxwI7g7lJ6podqrG2/w== + version "2.1.0" + resolved "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz#0f7b511a4fde65a46f18477ab38849b22c554876" + integrity sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g== truncate-utf8-bytes@^1.0.0: version "1.0.2" @@ -24544,14 +24077,14 @@ ts-easing@^0.2.0: integrity sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ== ts-interface-checker@^0.1.9: - version "0.1.10" - resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.10.tgz#b68a49e37e90a05797e590f08494dd528bf383cf" - integrity sha512-UJYuKET7ez7ry0CnvfY6fPIUIZDw+UI3qvTUQeS2MyI4TgEeWAUBqy185LeaHcdJ9zG2dgFpPJU/AecXU0Afug== + version "0.1.13" + resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" + integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== ts-log@^2.2.3: - version "2.2.3" - resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.3.tgz#4da5640fe25a9fb52642cd32391c886721318efb" - integrity sha512-XvB+OdKSJ708Dmf9ore4Uf/q62AYDTzFcAdxc8KNML1mmAWywRFVt/dn1KYJH8Agt5UJNujfM3znU5PxgAzA2w== + version "2.2.4" + resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.4.tgz#d672cf904b33735eaba67a7395c93d45fba475b3" + integrity sha512-DEQrfv6l7IvN2jlzc/VTdZJYsWUnQNCsueYjMkC/iXoEoi5fNan6MjeDqkvhfzbmHgdz9UxDUluX3V5HdjTydQ== ts-morph@^15.0.0: version "15.1.0" @@ -24607,6 +24140,7 @@ tslib@2.0.3: resolved "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== +<<<<<<< HEAD tslib@2.3.1, tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.3.0: version "2.3.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" @@ -24618,10 +24152,18 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2.1.0, tslib@~2.4.0: +======= +tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.4.0: +>>>>>>> First implementation of vault-plugin version "2.4.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== +tslib@~2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" + integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== + tsutils@^3.21.0: version "3.21.0" resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" @@ -24731,9 +24273,9 @@ type-is@~1.6.18: mime-types "~2.1.24" typed-rest-client@^1.8.4: - version "1.8.4" - resolved "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.4.tgz#ba3fb788e5b9322547406392533f12d660a5ced6" - integrity sha512-MyfKKYzk3I6/QQp6e1T50py4qg+c+9BzOEl2rBmQIpStwNUoqQ73An+Tkfy9YuV7O+o2mpVVJpe+fH//POZkbg== + version "1.8.6" + resolved "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.6.tgz#d8facd6abd98cbd8ad14cccf056ca5cc306919d7" + integrity sha512-xcQpTEAJw2DP7GqVNECh4dD+riS+C1qndXLfBCJ3xk0kqprtGN491P5KlmrDbKdtuW8NEcP/5ChxiJI3S9WYTA== dependencies: qs "^6.9.1" tunnel "0.0.6" @@ -24770,10 +24312,10 @@ typescript@~4.6.0, typescript@~4.6.3, typescript@~4.6.4: resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz#caa78bbc3a59e6a5c510d35703f6a09877ce45e9" integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== -ua-parser-js@^0.7.18: - version "0.7.28" - resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" - integrity sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g== +ua-parser-js@^0.7.30: + version "0.7.31" + resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz#649a656b191dffab4f21d5e053e27ca17cbff5c6" + integrity sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ== uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" @@ -24781,9 +24323,9 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== uglify-js@^3.1.4: - version "3.14.3" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf" - integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g== + version "3.15.4" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz#fa95c257e88f85614915b906204b9623d4fa340d" + integrity sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA== uid-number@0.0.6: version "0.0.6" @@ -24797,24 +24339,29 @@ uid-safe@~2.1.5: dependencies: random-bytes "~1.0.0" -uid2@0.0.3, uid2@0.0.x: +uid2@0.0.3: version "0.0.3" resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82" integrity sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I= +uid2@0.0.x: + version "0.0.4" + resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz#033f3b1d5d32505f5ce5f888b9f3b667123c0a44" + integrity sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA== + umask@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" unbox-primitive@^1.0.2: @@ -24846,37 +24393,37 @@ undefsafe@^2.0.5: integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== underscore@^1.12.1, underscore@^1.9.1: - version "1.13.1" - resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz#0c1c6bd2df54b6b69f2314066d65b6cde6fcf9d1" - integrity sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g== + version "1.13.3" + resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.3.tgz#54bc95f7648c5557897e5e968d0f76bc062c34ee" + integrity sha512-QvjkYpiD+dJJraRA8+dGAU4i7aBbb2s0S3jA45TFOvg2VgqvdCDd/3N6CqA8gluk1W91GLoXg5enMUx560QzuA== -undici@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/undici/-/undici-5.0.0.tgz#3c1e08c7f0df90c485d5d8dbb0517e11e34f2090" - integrity sha512-VhUpiZ3No1DOPPQVQnsDZyfcbTTcHdcgWej1PdFnSvOeJmOVDgiOHkunJmBLfmjt4CqgPQddPVjSWW0dsTs5Yg== +undici@^5.1.0: + version "5.1.1" + resolved "https://registry.npmjs.org/undici/-/undici-5.1.1.tgz#356427b0d1f032ca4cf85537b1e1694a52090438" + integrity sha512-CmK9JzLSMGx+2msOao8LhkKn3J7eKo2M50v0KZQ2XbiHcGqLS1HiIj01ceIm3jbUYlspw/FTSb6nMdSNyvVyaQ== -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== +unicode-canonical-property-names-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== +unicode-match-property-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" + unicode-canonical-property-names-ecmascript "^2.0.0" + unicode-property-aliases-ecmascript "^2.0.0" -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== +unicode-match-property-value-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" + integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== +unicode-property-aliases-ecmascript@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" + integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== unidiff@1.0.2: version "1.0.2" @@ -24886,9 +24433,9 @@ unidiff@1.0.2: diff "^2.2.2" unified@^10.0.0: - version "10.1.0" - resolved "https://registry.npmjs.org/unified/-/unified-10.1.0.tgz#4e65eb38fc2448b1c5ee573a472340f52b9346fe" - integrity sha512-4U3ru/BRXYYhKbwXV6lU6bufLikoAavTwev89H5UxY8enDFaAT2VXmIXYNm6hb5oHPng/EXr77PVyDFcptbk5g== + version "10.1.2" + resolved "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" + integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== dependencies: "@types/unist" "^2.0.0" bail "^2.0.0" @@ -24908,11 +24455,6 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -24952,14 +24494,16 @@ unist-util-is@^5.0.0: integrity sha512-F5CZ68eYzuSvJjGhCLPL3cYx45IxkqXSetCcRgUXtbcm50X2L9oOWQlfUfDdAf+6Pd27YDblBfdtmsThXmwpbQ== unist-util-position@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.1.tgz#f8484b2da19a897a0180556d160c28633070dbb9" - integrity sha512-mgy/zI9fQ2HlbOtTdr2w9lhVaiFUHWQnZrFF2EUoVOqtAUdzqMtNiD99qA5a1IcjWVR8O6aVYE9u7Z2z1v0SQA== + version "4.0.3" + resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.3.tgz#5290547b014f6222dff95c48d5c3c13a88fadd07" + integrity sha512-p/5EMGIa1qwbXjA+QgcBXaPWjSnZfQ2Sc3yBEEfgPwsEmJd8Qh+DSk3LGnmOM4S1bY2C0AjmMnB8RuEYxpPwXQ== + dependencies: + "@types/unist" "^2.0.0" unist-util-stringify-position@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.0.tgz#d517d2883d74d0daa0b565adc3d10a02b4a8cde9" - integrity sha512-SdfAl8fsDclywZpfMDTVDxA2V7LjtRDTOFd44wUJamgl6OlVngsqWjxvermMYf60elWHbxhuRCZml7AnuXCaSA== + version "3.0.2" + resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.2.tgz#5c6aa07c90b1deffd9153be170dce628a869a447" + integrity sha512-7A6eiDCs9UtjcwZOcCpM4aPII3bAAGv13E96IkawkOAW0OhH+yRxtY0lzo8KiHpzEMfH7Q+FizUmwp8Iqy5EWg== dependencies: "@types/unist" "^2.0.0" @@ -25005,13 +24549,6 @@ universal-github-app-jwt@^1.0.1: "@types/jsonwebtoken" "^8.3.3" jsonwebtoken "^8.5.1" -universal-user-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz#a3182aa758069bf0e79952570ca757de3579c1d9" - integrity sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q== - dependencies: - os-name "^3.1.0" - universal-user-agent@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" @@ -25116,9 +24653,9 @@ upper-case@^2.0.2: tslib "^2.0.3" uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + version "4.4.1" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" @@ -25143,9 +24680,9 @@ url-parse@^1.5.8: requires-port "^1.0.0" url-value-parser@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/url-value-parser/-/url-value-parser-2.0.3.tgz#cd4b8d6754e458d65e8125260c09718d926e6e21" - integrity sha512-FjIX+Q9lYmDM9uYIGdMYfQW0uLbWVwN2NrL2ayAI7BTOvEwzH+VoDdNquwB9h4dFAx+u6mb0ONLa3sHD5DvyvA== + version "2.1.0" + resolved "https://registry.npmjs.org/url-value-parser/-/url-value-parser-2.1.0.tgz#fe1ae776122b2eea4bbf284896bbdcd7fc75e1fa" + integrity sha512-gIYPWXujdUdwd/9TGCHTf5Vvgw6lOxjE5Q/k+7WNByYyS0vW5WX0k+xuVlhvPq6gRNhzXVv/ezC+OfeAet5Kcw== url@0.10.3: version "0.10.3" @@ -25169,9 +24706,9 @@ use-immer@^0.7.0: integrity sha512-Re4hjrP3a/2ABZjAc0b7AK9s626bnO+H33RO2VUhiDZ2StBz5B663K6WNNlr4QtHWaGUmvLpwt3whFvvWuolQw== use-memo-one@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.1.tgz#39e6f08fe27e422a7d7b234b5f9056af313bd22c" - integrity sha512-oFfsyun+bP7RX8X2AskHNTxu+R3QdE/RC5IefMbqptmACAA/gfol1KDD5KRzPsGMa62sWxGZw+Ui43u6x4ddoQ== + version "1.1.2" + resolved "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.2.tgz#0c8203a329f76e040047a35a1197defe342fab20" + integrity sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ== use-resize-observer@^8.0.0: version "8.0.0" @@ -25270,15 +24807,19 @@ uvu@^0.5.0: kleur "^4.0.3" sade "^1.7.3" +<<<<<<< HEAD v8-compile-cache-lib@^3.0.1: +======= +v8-compile-cache-lib@^3.0.0: +>>>>>>> First implementation of vault-plugin version "3.0.1" resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-compile-cache@^2.0.3: - version "2.1.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" - integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== + version "2.3.0" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== v8-to-istanbul@^8.1.0: version "8.1.1" @@ -25355,13 +24896,13 @@ vary@^1, vary@~1.1.2: integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= vasync@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/vasync/-/vasync-2.2.0.tgz#cfde751860a15822db3b132bc59b116a4adaf01b" - integrity sha1-z951GGChWCLbOxMrxZsRakra8Bs= + version "2.2.1" + resolved "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz#d881379ff3685e4affa8e775cf0fd369262a201b" + integrity sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ== dependencies: verror "1.10.0" -verror@1.10.0, verror@^1.8.1: +verror@1.10.0: version "1.10.0" resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= @@ -25370,18 +24911,27 @@ verror@1.10.0, verror@^1.8.1: core-util-is "1.0.2" extsprintf "^1.2.0" +verror@^1.8.1: + version "1.10.1" + resolved "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb" + integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg== + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + vfile-message@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.0.2.tgz#db7eaebe7fecb853010f2ef1664427f52baf8f74" - integrity sha512-UUjZYIOg9lDRwwiBAuezLIsu9KlXntdxwG+nXnjuQAHvBpcX3x0eN8h+I7TkY5nkCXj+cWVp4ZqebtGBvok8ww== + version "3.1.2" + resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.2.tgz#a2908f64d9e557315ec9d7ea3a910f658ac05f7d" + integrity sha512-QjSNP6Yxzyycd4SVOtmKKyTsSvClqBPJcd00Z0zuPj3hOIjg0rUPG6DbFGPvUKRgYyaIWLPKpuEclcuvb3H8qA== dependencies: "@types/unist" "^2.0.0" unist-util-stringify-position "^3.0.0" vfile@^5.0.0: - version "5.1.0" - resolved "https://registry.npmjs.org/vfile/-/vfile-5.1.0.tgz#18e78016f0f71e98d737d40f0fca921dc264a600" - integrity sha512-4o7/DJjEaFPYSh0ckv5kcYkJTHQgCKdL8ozMM1jLAxO9ox95IzveDPXCZp08HamdWq8JXTkClDvfAKaeLQeKtg== + version "5.3.2" + resolved "https://registry.npmjs.org/vfile/-/vfile-5.3.2.tgz#b499fbc50197ea50ad3749e9b60beb16ca5b7c54" + integrity sha512-w0PLIugRY3Crkgw89TeMvHCzqCs/zpreR31hl4D92y6SOE07+bfJe+dK5Q2akwS+i/c801kzjoOr9gMcTe6IAA== dependencies: "@types/unist" "^2.0.0" is-buffer "^2.0.0" @@ -25425,9 +24975,9 @@ vm2@^3.9.6: acorn-walk "^8.2.0" vscode-languageserver-types@^3.15.1: - version "3.15.1" - resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz#17be71d78d2f6236d414f0001ce1ef4d23e6b6de" - integrity sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ== + version "3.16.0" + resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz#ecf393fc121ec6974b2da3efb3155644c514e247" + integrity sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA== w3c-hr-time@^1.0.2: version "1.0.2" @@ -25470,11 +25020,11 @@ walk-up-path@^1.0.0: integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg== walker@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + version "1.0.8" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: - makeerror "1.0.x" + makeerror "1.0.12" watchpack@^2.3.1: version "2.3.1" @@ -25504,15 +25054,20 @@ web-streams-polyfill@4.0.0-beta.1: integrity sha512-3ux37gEX670UUphBF9AMCq8XM6iQ8Ac6A+DSRRjDoRBm1ufCkaCDdNVbaqq60PsEkdNlLKrGtv/YBP4EJXqNtQ== web-streams-polyfill@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.0.tgz#a6b74026b38e4885869fb5c589e90b95ccfc7965" - integrity sha512-EqPmREeOzttaLRm5HS7io98goBgZ7IVz79aDvqjD0kYXLtFZTc0T/U6wHTPKyIjb+MdN7DFIIX6hgdBEpWmfPA== + version "3.2.1" + resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" + integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= +webidl-conversions@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" + integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== + webidl-conversions@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" @@ -25660,6 +25215,15 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" +whatwg-url@^7.0.0: + version "7.1.0" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" + integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" + whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: version "8.7.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" @@ -25699,17 +25263,16 @@ which-pm@2.0.0: path-exists "^4.0.0" which-typed-array@^1.1.2: - version "1.1.4" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz#8fcb7d3ee5adf2d771066fba7cf37e32fe8711ff" - integrity sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA== + version "1.1.7" + resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz#2761799b9a22d4b8660b3c1b40abaa7739691793" + integrity sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw== dependencies: - available-typed-arrays "^1.0.2" - call-bind "^1.0.0" - es-abstract "^1.18.0-next.1" + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + es-abstract "^1.18.5" foreach "^2.0.5" - function-bind "^1.1.1" - has-symbols "^1.0.1" - is-typed-array "^1.1.3" + has-tostringtag "^1.0.0" + is-typed-array "^1.1.7" which@^1.2.9, which@^1.3.1: version "1.3.1" @@ -25725,7 +25288,7 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0, wide-align@^1.1.2: +wide-align@^1.1.0, wide-align@^1.1.2, wide-align@^1.1.5: version "1.1.5" resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== @@ -25744,13 +25307,6 @@ window-size@^0.2.0: resolved "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" integrity sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU= -windows-release@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz#8122dad5afc303d833422380680a79cdfa91785f" - integrity sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA== - dependencies: - execa "^1.0.0" - winston-transport@^4.5.0: version "4.5.0" resolved "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz#6e7b0dd04d393171ed5e4e4905db265f7ab384fa" @@ -25760,7 +25316,7 @@ winston-transport@^4.5.0: readable-stream "^3.6.0" triple-beam "^1.3.0" -winston@^3.2.1: +winston@^3.2.1, winston@^3.7.2: version "3.7.2" resolved "https://registry.npmjs.org/winston/-/winston-3.7.2.tgz#95b4eeddbec902b3db1424932ac634f887c400b1" integrity sha512-QziIqtojHBoyzUOdQvQiar1DH0Xp9nF1A1y7NVy2DGEsz82SBDtOalS0ulTRGVT14xPX3WRWkCsdcJKqNflKng== @@ -26011,9 +25567,9 @@ xpath@0.0.32: integrity sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw== xss@^1.0.8: - version "1.0.10" - resolved "https://registry.npmjs.org/xss/-/xss-1.0.10.tgz#5cd63a9b147a755a14cb0455c7db8866120eb4d2" - integrity sha512-qmoqrRksmzqSKvgqzN0055UFWY7OKx1/9JWeRswwEVX9fCG5jcYRxa/A2DHcmZX6VJvjzHRQ2STeeVcQkrmLSw== + version "1.0.11" + resolved "https://registry.npmjs.org/xss/-/xss-1.0.11.tgz#211cb82e95b5071d4c75d597283c021157ebe46a" + integrity sha512-EimjrjThZeK2MO7WKR9mN5ZC1CSqivSl55wvUK5EtU6acf0rzEE1pN+9ZDrFXJ82BRp3JL38pPE6S4o/rpp1zQ== dependencies: commander "^2.20.3" cssfilter "0.0.10" @@ -26063,12 +25619,16 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2, yaml@^1.9.2: resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +<<<<<<< HEAD yaml@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/yaml/-/yaml-2.1.1.tgz#1e06fb4ca46e60d9da07e4f786ea370ed3c3cfec" integrity sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw== yargs-parser@20.2.4, yargs-parser@^20.2.3: +======= +yargs-parser@20.2.4: +>>>>>>> First implementation of vault-plugin version "20.2.4" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== @@ -26081,7 +25641,7 @@ yargs-parser@^18.1.2, yargs-parser@^18.1.3: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^20.2.2: +yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== @@ -26256,6 +25816,11 @@ yn@^4.0.0: resolved "https://registry.npmjs.org/yn/-/yn-4.0.0.tgz#611480051ea43b510da1dfdbe177ed159f00a979" integrity sha512-huWiiCS4TxKc4SfgmTwW1K7JmXPPAmuXWYy4j9qjQo4+27Kni8mGhAAi1cloRWmBe2EqcLgt3IGqQoRL/MtPgg== +yn@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/yn/-/yn-5.0.0.tgz#63fc2e2e0056cf294397eed6ad4a3fbdf707f26f" + integrity sha512-+l37+9TyGEsyxGLaTg6QgYy5KnOp74ZZl4dPFLQpBWSkO99uBC5jnS0pOGwXFViPbiaEtWbParH2KrgWWF2duQ== + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" @@ -26280,15 +25845,15 @@ yup@^0.32.9: toposort "^2.0.2" z-schema@~5.0.2: - version "5.0.2" - resolved "https://registry.npmjs.org/z-schema/-/z-schema-5.0.2.tgz#f410394b2c9fcb9edaf6a7511491c0bb4e89a504" - integrity sha512-40TH47ukMHq5HrzkeVE40Ad7eIDKaRV2b+Qpi2prLc9X9eFJFzV7tMe5aH12e6avaSS/u5l653EQOv+J9PirPw== + version "5.0.3" + resolved "https://registry.npmjs.org/z-schema/-/z-schema-5.0.3.tgz#68fafb9b735fc7f3c89eabb3e5a6353b4d7b4935" + integrity sha512-sGvEcBOTNum68x9jCpCVGPFJ6mWnkD0YxOcddDlJHRx3tKdB2q8pCHExMVZo/AV/6geuVJXG7hljDaWG8+5GDw== dependencies: lodash.get "^4.4.2" lodash.isequal "^4.5.0" validator "^13.7.0" optionalDependencies: - commander "^2.7.1" + commander "^2.20.3" zen-observable@^0.8.15: version "0.8.15" From 7c310a5bc2a036d4ad992e29e0ccbe24aa8e2c34 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 10 May 2022 15:42:13 +0200 Subject: [PATCH 200/550] Add changeset files Signed-off-by: ivgo --- .changeset/shaggy-bulldogs-collect.md | 5 +++++ .changeset/silent-plants-guess.md | 5 +++++ 2 files changed, 10 insertions(+) create mode 100644 .changeset/shaggy-bulldogs-collect.md create mode 100644 .changeset/silent-plants-guess.md diff --git a/.changeset/shaggy-bulldogs-collect.md b/.changeset/shaggy-bulldogs-collect.md new file mode 100644 index 0000000000..04dea88cc7 --- /dev/null +++ b/.changeset/shaggy-bulldogs-collect.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-vault-backend': minor +--- + +First implementation for the backend vault plugin. For more information refer to its `README.md`. diff --git a/.changeset/silent-plants-guess.md b/.changeset/silent-plants-guess.md new file mode 100644 index 0000000000..1dc9a0559e --- /dev/null +++ b/.changeset/silent-plants-guess.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-vault': minor +--- + +First implementation of the frontend vault plugin. For more information refer to its `README.md`. From 477061a096c8c0bc9fd1d8ec2e21c43331ec893c Mon Sep 17 00:00:00 2001 From: ivgo Date: Wed, 11 May 2022 12:45:52 +0200 Subject: [PATCH 201/550] Added tests to plugin vault & vault-backend Signed-off-by: ivgo --- plugins/vault-backend/package.json | 1 + .../vault-backend/src/config/config.test.ts | 67 ++ plugins/vault-backend/src/config/config.ts | 60 ++ plugins/vault-backend/src/config/index.ts | 32 + .../src/service/VaultBuilder.tsx | 8 +- .../vault-backend/src/service/router.test.ts | 52 ++ .../src/service/vaultApi.test.ts | 105 +++ .../vault-backend/src/service/vaultApi.tsx | 38 +- plugins/vault/package.json | 1 + plugins/vault/src/api.test.ts | 77 +++ .../EntityVaultCard/EntityVaultCard.test.tsx | 52 ++ .../EntityVaultCard/EntityVaultCard.tsx | 1 + .../EntityVaultTable.test.tsx | 127 ++++ yarn.lock | 654 +++++++++++++----- 14 files changed, 1086 insertions(+), 189 deletions(-) create mode 100644 plugins/vault-backend/src/config/config.test.ts create mode 100644 plugins/vault-backend/src/config/config.ts create mode 100644 plugins/vault-backend/src/config/index.ts create mode 100644 plugins/vault-backend/src/service/router.test.ts create mode 100644 plugins/vault-backend/src/service/vaultApi.test.ts create mode 100644 plugins/vault/src/api.test.ts create mode 100644 plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx create mode 100644 plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 9fe00fedc9..d9469d81e3 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -35,6 +35,7 @@ }, "dependencies": { "@backstage/backend-common": "^0.13.2", + "@backstage/backend-test-utils": "^0.1.23", "@backstage/config": "^1.0.0", "@types/compression": "^1.7.2", "@types/express": "*", diff --git a/plugins/vault-backend/src/config/config.test.ts b/plugins/vault-backend/src/config/config.test.ts new file mode 100644 index 0000000000..96b8d16c96 --- /dev/null +++ b/plugins/vault-backend/src/config/config.test.ts @@ -0,0 +1,67 @@ +/* + * Copyright 2022 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/config'; +import { getVaultConfig } from './config'; + +describe('GetVaultConfig', () => { + it('fails by missing keys', () => { + expect(() => getVaultConfig(new ConfigReader({}))).toThrow(); + expect(() => + getVaultConfig( + new ConfigReader({ + vault: {}, + }), + ), + ).toThrow(); + }); + + it('loads default params', () => { + const config = new ConfigReader({ + vault: { + sourceUrl: 'http://www.example.com', + token: '123', + }, + }); + + const vaultConfig = getVaultConfig(config); + expect(vaultConfig).toStrictEqual({ + sourceUrl: 'http://www.example.com', + token: '123', + kvVersion: 2, + secretEngine: 'secrets', + }); + }); + + it('loads custom params', () => { + const config = new ConfigReader({ + vault: { + sourceUrl: 'http://www.example.com', + token: '123', + kvVersion: 1, + secretEngine: 'test', + }, + }); + + const vaultConfig = getVaultConfig(config); + expect(vaultConfig).toStrictEqual({ + sourceUrl: 'http://www.example.com', + token: '123', + kvVersion: 1, + secretEngine: 'test', + }); + }); +}); diff --git a/plugins/vault-backend/src/config/config.ts b/plugins/vault-backend/src/config/config.ts new file mode 100644 index 0000000000..f53f5f4c35 --- /dev/null +++ b/plugins/vault-backend/src/config/config.ts @@ -0,0 +1,60 @@ +/* + * Copyright 2022 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 { Config } from '@backstage/config'; + +/** + * The configuration needed for the vault-backend plugin + * + * @public + */ +export interface VaultConfig { + /** + * The sourceUrl for your Vault instance. + */ + sourceUrl: string; + + /** + * The token used by Backstage to access Vault. + */ + token: string; + + /** + * The secret engine name where in vault. Defaults to `secrets`. + */ + secretEngine: string; + + /** + * The version of the K/V API. Defaults to `2`. + */ + kvVersion: number; +} + +/** + * Extract the Vault config from a config object + * + * @public + * + * @param config - The config object to extract from + */ +export function getVaultConfig(config: Config): VaultConfig { + return { + sourceUrl: config.getString('vault.sourceUrl'), + token: config.getString('vault.token'), + kvVersion: config.getOptionalNumber('vault.kvVersion') ?? 2, + secretEngine: config.getOptionalString('vault.secretEngine') ?? 'secrets', + }; +} diff --git a/plugins/vault-backend/src/config/index.ts b/plugins/vault-backend/src/config/index.ts new file mode 100644 index 0000000000..a7eab2d9f0 --- /dev/null +++ b/plugins/vault-backend/src/config/index.ts @@ -0,0 +1,32 @@ +/* + * Copyright 2022 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. + */ + +/* + * Copyright 2022 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 './config'; diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index 675dabaffc..609d01ca98 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + import { Config } from '@backstage/config'; import { Logger } from 'winston'; import express, { Router } from 'express'; @@ -58,8 +59,6 @@ export class VaultBuilder { const router = this.buildRouter(this.vaultClient); - await this.renewToken(this.vaultClient); - return { router: router, }; @@ -97,6 +96,11 @@ export class VaultBuilder { const router = Router(); router.use(express.json()); + router.get('/health', (_, response) => { + this.env.logger.info('PONG!'); + response.send({ status: 'ok' }); + }); + router.get('/v1/secrets', async (req, res) => { const path = req.query.path; if (typeof path !== 'string') { diff --git a/plugins/vault-backend/src/service/router.test.ts b/plugins/vault-backend/src/service/router.test.ts new file mode 100644 index 0000000000..5b21a40b0f --- /dev/null +++ b/plugins/vault-backend/src/service/router.test.ts @@ -0,0 +1,52 @@ +/* + * Copyright 2020 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 { getVoidLogger } from '@backstage/backend-common'; +import { ConfigReader } from '@backstage/config'; +import express from 'express'; +import request from 'supertest'; + +import { createRouter } from './router'; + +describe('createRouter', () => { + let app: express.Express; + + beforeAll(async () => { + const router = await createRouter({ + logger: getVoidLogger(), + config: new ConfigReader({ + vault: { + sourceUrl: 'https://www.example.com', + token: '1234567890', + }, + }), + }); + app = express().use(router); + }); + + beforeEach(() => { + jest.resetAllMocks(); + }); + + describe('GET /health', () => { + it('returns ok', async () => { + const response = await request(app).get('/health'); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ status: 'ok' }); + }); + }); +}); diff --git a/plugins/vault-backend/src/service/vaultApi.test.ts b/plugins/vault-backend/src/service/vaultApi.test.ts new file mode 100644 index 0000000000..022a050a66 --- /dev/null +++ b/plugins/vault-backend/src/service/vaultApi.test.ts @@ -0,0 +1,105 @@ +/* + * Copyright 2020 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 { setupRequestMockHandlers } from '@backstage/backend-test-utils'; +import { rest } from 'msw'; +import { setupServer } from 'msw/node'; +import { Secret, VaultClient, VaultSecretList } from './vaultApi'; +import { ConfigReader } from '@backstage/config'; + +describe('VaultApi', () => { + const server = setupServer(); + setupRequestMockHandlers(server); + + const mockBaseUrl = 'https://api-vault.com'; + const config = new ConfigReader({ + vault: { + sourceUrl: mockBaseUrl, + token: '1234567890', + }, + }); + + const mockListResult: VaultSecretList = { + data: { + keys: ['secret::one', 'secret::two'], + }, + }; + const mockListResultEmpty: VaultSecretList = { + data: { + keys: [], + }, + }; + + const mockSecretsResult: Secret[] = [ + { + name: 'secret::one', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, + }, + { + name: 'secret::two', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, + }, + ]; + + const setupHandlers = () => { + server.use( + rest.get( + `${mockBaseUrl}/v1/secrets/metadata/test/success`, + (_, res, ctx) => { + return res(ctx.json(mockListResult)); + }, + ), + rest.get( + `${mockBaseUrl}/v1/secrets/metadata/test/error`, + (_, res, ctx) => { + return res(ctx.json(mockListResultEmpty)); + }, + ), + rest.post(`${mockBaseUrl}/v1/auth/token/renew-self`, (_, res, ctx) => { + return res(ctx.json({ auth: { client_token: '0987654321' } })); + }), + ); + }; + + it('should return secrets', async () => { + setupHandlers(); + const api = new VaultClient({ config }); + const secrets = await api.listSecrets('test/success'); + expect(secrets).toEqual(mockSecretsResult); + }); + + it('should return empty secret list', async () => { + setupHandlers(); + const api = new VaultClient({ config }); + const secrets = await api.listSecrets('test/error'); + expect(secrets).toEqual([]); + }); + + it('should return success token renew', async () => { + setupHandlers(); + const api = new VaultClient({ config }); + const apiRenew = await api.renewToken(); + expect(apiRenew).toBeTruthy(); + }); + + it('should render frontend url', () => { + const api = new VaultClient({ config }); + const url = api.getFrontendSecretsUrl(); + expect(url).toEqual(`${mockBaseUrl}/ui/vault/secrets/secrets`); + }); +}); diff --git a/plugins/vault-backend/src/service/vaultApi.tsx b/plugins/vault-backend/src/service/vaultApi.tsx index 75eb9163dc..255e792175 100644 --- a/plugins/vault-backend/src/service/vaultApi.tsx +++ b/plugins/vault-backend/src/service/vaultApi.tsx @@ -16,20 +16,21 @@ import { Config } from '@backstage/config'; import fetch from 'cross-fetch'; +import { getVaultConfig, VaultConfig } from '../config'; -type VaultSecretList = { +export type VaultSecretList = { data: { keys: string[]; }; }; -type Secret = { +export type Secret = { name: string; showUrl: string; editUrl: string; }; -type RenewTokenResponse = { +export type RenewTokenResponse = { auth: { client_token: string; }; @@ -42,17 +43,10 @@ export interface VaultApi { } export class VaultClient implements VaultApi { - private readonly vaultUrl: string; - private vaultToken: string; - private readonly kvVersion: number; - private readonly secretEngineName: string; + private vaultConfig: VaultConfig; constructor({ config }: { config: Config }) { - this.vaultUrl = config.getString('vault.sourceUrl'); - this.vaultToken = config.getString('vault.token'); - this.kvVersion = config.getOptionalNumber('vault.kvVersion') ?? 2; - this.secretEngineName = - config.getOptionalString('vault.secretEngine') ?? 'secrets'; + this.vaultConfig = getVaultConfig(config); } private async callApi( @@ -61,12 +55,14 @@ export class VaultClient implements VaultApi { method: string = 'GET', ): Promise { const response = await fetch( - `${this.vaultUrl}/${path}?${new URLSearchParams(query).toString()}`, + `${this.vaultConfig.sourceUrl}/${path}?${new URLSearchParams( + query, + ).toString()}`, { method, headers: { Accept: 'application/json', - 'X-Vault-Token': this.vaultToken, + 'X-Vault-Token': this.vaultConfig.token, }, }, ); @@ -82,14 +78,14 @@ export class VaultClient implements VaultApi { } getFrontendSecretsUrl(): string { - return `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}`; + return `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}`; } async listSecrets(secretPath: string): Promise { const listUrl = - this.kvVersion === 2 - ? `v1/${this.secretEngineName}/metadata/${secretPath}` - : `v1/${this.secretEngineName}/${secretPath}`; + this.vaultConfig.kvVersion === 2 + ? `v1/${this.vaultConfig.secretEngine}/metadata/${secretPath}` + : `v1/${this.vaultConfig.secretEngine}/${secretPath}`; const result = await this.callApi(listUrl, { list: true }); if (!result) { return []; @@ -105,8 +101,8 @@ export class VaultClient implements VaultApi { } else { secrets.push({ name: secret, - editUrl: `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}/edit/${secretPath}/${secret}`, - showUrl: `${this.vaultUrl}/ui/vault/secrets/${this.secretEngineName}/show/${secretPath}/${secret}`, + editUrl: `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/edit/${secretPath}/${secret}`, + showUrl: `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/show/${secretPath}/${secret}`, }); } }), @@ -125,7 +121,7 @@ export class VaultClient implements VaultApi { return false; } - this.vaultToken = result.auth.client_token; + this.vaultConfig.token = result.auth.client_token; return true; } } diff --git a/plugins/vault/package.json b/plugins/vault/package.json index 5f81dad36d..b4be19adec 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -34,6 +34,7 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { + "@backstage/backend-test-utils": "^0.1.23", "@backstage/catalog-model": "^1.0.1", "@backstage/core-components": "^0.9.3", "@backstage/core-plugin-api": "^1.0.1", diff --git a/plugins/vault/src/api.test.ts b/plugins/vault/src/api.test.ts new file mode 100644 index 0000000000..f1337241c2 --- /dev/null +++ b/plugins/vault/src/api.test.ts @@ -0,0 +1,77 @@ +/* + * Copyright 2020 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 { setupRequestMockHandlers } from '@backstage/backend-test-utils'; +import { rest } from 'msw'; +import { setupServer } from 'msw/node'; +import { Secret, VaultClient } from './api'; +import { UrlPatternDiscovery } from '@backstage/core-app-api'; + +describe('api', () => { + const server = setupServer(); + setupRequestMockHandlers(server); + + const mockBaseUrl = 'https://api-vault.com/api/vault'; + const discoveryApi = UrlPatternDiscovery.compile(mockBaseUrl); + + const mockSecretsResult: Secret[] = [ + { + name: 'secret::one', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, + }, + { + name: 'secret::two', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, + }, + ]; + + const setupHandlers = () => { + server.use( + rest.get(`${mockBaseUrl}/v1/secrets`, (req, res, ctx) => { + const path = req.url.searchParams.get('path'); + if (path === 'test/success') { + return res(ctx.json(mockSecretsResult)); + } else if (path === 'test/error') { + return res(ctx.json([])); + } + return res(ctx.status(400)); + }), + ); + }; + + it('should return secrets', async () => { + setupHandlers(); + const api = new VaultClient({ discoveryApi }); + const secrets = await api.listSecrets('test/success'); + expect(secrets).toEqual(mockSecretsResult); + }); + + it('should return empty secret list', async () => { + setupHandlers(); + const api = new VaultClient({ discoveryApi }); + expect(await api.listSecrets('test/error')).toEqual([]); + expect(await api.listSecrets('')).toEqual([]); + }); + + it('should return no secrets', async () => { + setupHandlers(); + const api = new VaultClient({ discoveryApi }); + const secrets = await api.listSecrets(''); + expect(secrets).toEqual([]); + }); +}); diff --git a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx new file mode 100644 index 0000000000..b6daec1a20 --- /dev/null +++ b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx @@ -0,0 +1,52 @@ +/* + * Copyright 2020 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 from 'react'; +import { setupServer } from 'msw/node'; +import { setupRequestMockHandlers } from '@backstage/test-utils'; +import { ComponentEntity } from '@backstage/catalog-model'; +import { render } from '@testing-library/react'; +import { EntityVaultCard } from './EntityVaultCard'; +import { EntityProvider } from '@backstage/plugin-catalog-react'; + +describe('EntityVautCard', () => { + const server = setupServer(); + setupRequestMockHandlers(server); + const entityAnnotationMissing: ComponentEntity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'test', + description: 'This is the description', + }, + spec: { + lifecycle: 'production', + owner: 'owner', + type: 'service', + }, + }; + + it('should render missing entity annotation', async () => { + const rendered = render( + + + , + ); + expect( + rendered.getByText(/Add the annotation to your component YAML/), + ).toBeInTheDocument(); + }); +}); diff --git a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx index f1c5ff4d9f..47d90dc752 100644 --- a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx +++ b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + import React from 'react'; import { useEntity } from '@backstage/plugin-catalog-react'; import { makeStyles, Typography } from '@material-ui/core'; diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx new file mode 100644 index 0000000000..17353974a1 --- /dev/null +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx @@ -0,0 +1,127 @@ +/* + * Copyright 2020 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 from 'react'; +import { setupServer } from 'msw/node'; +import { + setupRequestMockHandlers, + TestApiRegistry, +} from '@backstage/test-utils'; +import { ComponentEntity } from '@backstage/catalog-model'; +import { renderInTestApp } from '@backstage/test-utils'; +import { EntityVaultTable } from './EntityVaultTable'; +import { ApiProvider, UrlPatternDiscovery } from '@backstage/core-app-api'; +import { Secret, vaultApiRef, VaultClient } from '../../api'; +import { rest } from 'msw'; + +describe('EntityVautTable', () => { + const server = setupServer(); + setupRequestMockHandlers(server); + let apis: TestApiRegistry; + const mockBaseUrl = 'https://api-vault.com/api/vault'; + const discoveryApi = UrlPatternDiscovery.compile(mockBaseUrl); + + const entityOk: ComponentEntity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'test', + description: 'This is the description', + annotations: { + 'vault.io/secrets-path': 'test/success', + }, + }, + spec: { + lifecycle: 'production', + owner: 'owner', + type: 'service', + }, + }; + + const entityNotOk: ComponentEntity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'test', + description: 'This is the description', + annotations: { + 'vault.io/secrets-path': 'test/error', + }, + }, + spec: { + lifecycle: 'production', + owner: 'owner', + type: 'service', + }, + }; + + const mockSecretsResult: Secret[] = [ + { + name: 'secret::one', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, + }, + { + name: 'secret::two', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, + }, + ]; + + const setupHandlers = () => { + server.use( + rest.get(`${mockBaseUrl}/v1/secrets`, (req, res, ctx) => { + const path = req.url.searchParams.get('path'); + if (path === 'test/success') { + return res(ctx.json(mockSecretsResult)); + } else if (path === 'test/error') { + return res(ctx.json([])); + } + return res(ctx.status(400)); + }), + ); + }; + + beforeEach(() => { + apis = TestApiRegistry.from([ + vaultApiRef, + new VaultClient({ discoveryApi }), + ]); + }); + + it('should render secrets', async () => { + setupHandlers(); + const rendered = await renderInTestApp( + + + , + ); + + expect(await rendered.findAllByText(/secret::one/)).toBeDefined(); + expect(await rendered.findAllByText(/secret::two/)).toBeDefined(); + }); + + it('should render no secrets found', async () => { + setupHandlers(); + const rendered = await renderInTestApp( + + + , + ); + + expect(rendered.getByText(/No secrets found/)).toBeInTheDocument(); + }); +}); diff --git a/yarn.lock b/yarn.lock index 8b218802af..ebb0160750 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1467,21 +1467,103 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/catalog-client@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" - integrity sha512-3983OrSPZQyTHRi78Ot2708h8iKd3bcvG0PSPmtbmQDkgxUUAXJ1w276THNoGA/Vt84NsNBO0Srfm0b4PmegAQ== +"@backstage/app-defaults@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.1.tgz#adb7a1f974463fb9fde18dd4038d80ca4839ce4e" + integrity sha512-+RKNsADsd2s5XFiFxkfxHf/OxMwY3X7avYFhk+Y9Ho/mPMbMHvlXcW9NAr4h9jC8uy9TNLB5XGTqWwe4HPU0xA== dependencies: - "@backstage/catalog-model" "^1.0.2" + "@backstage/core-app-api" "^1.0.1" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/plugin-permission-react" "^0.4.0" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + react-router-dom "6.0.0-beta.0" + +"@backstage/backend-common@^0.13.2": + version "0.13.2" + resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.2.tgz#c3619dee671936f306f49eae9c8bbde436cbc40d" + integrity sha512-FblxaHCw29N4ME1uHb+513EXcbn30vA224+6cj8159Wje2Rcv8EdMFtuf2awCNcYgoIdDD/R1wwBPeRmZhtERw== + dependencies: + "@backstage/cli-common" "^0.1.8" + "@backstage/config" "^1.0.0" + "@backstage/config-loader" "^1.1.0" + "@backstage/errors" "^1.0.0" + "@backstage/integration" "^1.1.0" + "@backstage/types" "^1.0.0" + "@google-cloud/storage" "^5.8.0" + "@keyv/redis" "^2.2.3" + "@manypkg/get-packages" "^1.1.3" + "@octokit/rest" "^18.5.3" + "@types/cors" "^2.8.6" + "@types/dockerode" "^3.3.0" + "@types/express" "^4.17.6" + "@types/luxon" "^2.0.4" + "@types/webpack-env" "^1.15.2" + archiver "^5.0.2" + aws-sdk "^2.840.0" + compression "^1.7.4" + concat-stream "^2.0.0" + cors "^2.8.5" + dockerode "^3.3.1" + express "^4.17.1" + express-promise-router "^4.1.0" + fs-extra "10.0.1" + git-url-parse "^11.6.0" + helmet "^5.0.2" + isomorphic-git "^1.8.0" + jose "^1.27.1" + keyv "^4.0.3" + keyv-memcache "^1.2.5" + knex "^1.0.2" + lodash "^4.17.21" + logform "^2.3.2" + luxon "^2.0.2" + minimatch "^5.0.0" + minimist "^1.2.5" + morgan "^1.10.0" + node-abort-controller "^3.0.1" + node-fetch "^2.6.7" + raw-body "^2.4.1" + selfsigned "^2.0.0" + stoppable "^1.1.0" + tar "^6.1.2" + unzipper "^0.10.11" + winston "^3.2.1" + yn "^4.0.0" + +"@backstage/backend-test-utils@^0.1.23": + version "0.1.23" + resolved "https://registry.npmjs.org/@backstage/backend-test-utils/-/backend-test-utils-0.1.23.tgz#30f003efa1e5fbdd039a945637eaea089cf06f8f" + integrity sha512-tr5/GGumq0z97aQ1lOna9veqwgmVcFZgjFLuApfdeim+QkI0E8PvBLGaq5H3Vo6xw6Z21UKX0SeGE81QUi6pZw== + dependencies: + "@backstage/backend-common" "^0.13.2" + "@backstage/cli" "^0.17.0" + "@backstage/config" "^1.0.0" + better-sqlite3 "^7.5.0" + knex "^1.0.2" + msw "^0.35.0" + mysql2 "^2.2.5" + pg "^8.3.0" + testcontainers "^8.1.2" + uuid "^8.0.0" + +"@backstage/catalog-client@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.1.tgz#f19888635825b3104b0e293409d924fb5e21feb9" + integrity sha512-2JUEqtR3v361JM6JDjTt8k/tlZd27RB/ZQ2Vwp5seJf4QYXfR9s5AM4M35l/A5vosDKhGrxMAq3t2s4gcH9vVg== + dependencies: + "@backstage/catalog-model" "^1.0.1" "@backstage/errors" "^1.0.0" cross-fetch "^3.1.5" -"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.2.tgz#50328068632b452fabed67e53fb7f83ead08f9df" - integrity sha512-0GCTW0XqFoHRiZKRXiru5wVMm0hoPiFAEyBiudWlYAFXtVEoVnrzJ+pa9F96zqtFgcGHmgSybgzjmVqiGUMSlw== +"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.1.tgz#16acb8cf52083dd038da7d9fae38811fd88d55e5" + integrity sha512-VxKQ+WzcsxAWtwWyeGw04vTefkmwxi6XweXSNRhNddXAVqsAbDcCYBUc9jylu0bYVXXWYJkEl8kiwyawUloPPQ== dependencies: - "@backstage/config" "^1.0.1" + "@backstage/config" "^1.0.0" "@backstage/errors" "^1.0.0" "@backstage/types" "^1.0.0" ajv "^8.10.0" @@ -1489,13 +1571,159 @@ lodash "^4.17.21" uuid "^8.0.0" -"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": - version "0.9.4" - resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" - integrity sha512-zg297mSw1BIc/BENrSClmgMx4kp0so0cK+lQ4FVa22+Dg5PDc2/NXWId2qEN2zD2XV/nm9RFBQM02gd6M6q3jQ== +"@backstage/cli-common@^0.1.8": + version "0.1.8" + resolved "https://registry.npmjs.org/@backstage/cli-common/-/cli-common-0.1.8.tgz#a20777b0448cada100b3967592925dc15fa25be5" + integrity sha512-OSFUhEaPMbdGvB130GRlJ+tZvvIRYGZK10sIcOGuXg3cl/K+sVAWh1XuewBLa+YI6wspAsReNiMR/+YbH8q2/A== + +"@backstage/cli@^0.17.0": + version "0.17.0" + resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.0.tgz#d9fa2fd14ba8984950398f9e7b018d2970b5ce26" + integrity sha512-DWM5GRnvkehoNvPZWgmbl36DfzcDsUMYCT8Mh0ThiyllnS7VwU1EYBtvUR6IubxVZIVy6RIdwzCXnVczp4kAOQ== dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" + "@backstage/cli-common" "^0.1.8" + "@backstage/config" "^1.0.0" + "@backstage/config-loader" "^1.1.0" + "@backstage/errors" "^1.0.0" + "@backstage/release-manifests" "^0.0.2" + "@backstage/types" "^1.0.0" + "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" + "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" + "@manypkg/get-packages" "^1.1.3" + "@octokit/request" "^5.4.12" + "@rollup/plugin-commonjs" "^21.0.1" + "@rollup/plugin-json" "^4.1.0" + "@rollup/plugin-node-resolve" "^13.0.0" + "@rollup/plugin-yaml" "^3.1.0" + "@spotify/eslint-config-base" "^13.0.0" + "@spotify/eslint-config-react" "^13.0.0" + "@spotify/eslint-config-typescript" "^13.0.0" + "@sucrase/jest-plugin" "^2.1.1" + "@sucrase/webpack-loader" "^2.0.0" + "@svgr/plugin-jsx" "6.2.x" + "@svgr/plugin-svgo" "6.2.x" + "@svgr/rollup" "6.2.x" + "@svgr/webpack" "6.2.x" + "@types/webpack-env" "^1.15.2" + "@typescript-eslint/eslint-plugin" "^5.9.0" + "@typescript-eslint/parser" "^5.9.0" + "@yarnpkg/lockfile" "^1.1.0" + bfj "^7.0.2" + buffer "^6.0.3" + chalk "^4.0.0" + chokidar "^3.3.1" + commander "^6.1.0" + css-loader "^6.5.1" + diff "^5.0.0" + esbuild "^0.14.10" + esbuild-loader "^2.18.0" + eslint "^8.6.0" + eslint-config-prettier "^8.3.0" + eslint-formatter-friendly "^7.0.0" + eslint-plugin-deprecation "^1.3.2" + eslint-plugin-import "^2.25.4" + eslint-plugin-jest "^26.1.2" + eslint-plugin-jsx-a11y "^6.5.1" + eslint-plugin-monorepo "^0.3.2" + eslint-plugin-react "^7.28.0" + eslint-plugin-react-hooks "^4.3.0" + eslint-webpack-plugin "^3.1.1" + express "^4.17.1" + fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" + fs-extra "10.0.1" + glob "^7.1.7" + handlebars "^4.7.3" + html-webpack-plugin "^5.3.1" + inquirer "^8.2.0" + jest "^27.5.1" + jest-css-modules "^2.1.0" + jest-runtime "^27.5.1" + jest-transform-yaml "^1.0.0" + json-schema "^0.4.0" + lodash "^4.17.21" + mini-css-extract-plugin "^2.4.2" + minimatch "5.0.1" + node-libs-browser "^2.2.1" + npm-packlist "^5.0.0" + ora "^5.3.0" + postcss "^8.1.0" + process "^0.11.10" + react-dev-utils "^12.0.0-next.60" + react-hot-loader "^4.13.0" + recursive-readdir "^2.2.2" + replace-in-file "^6.0.0" + rollup "^2.60.2" + rollup-plugin-dts "^4.0.1" + rollup-plugin-esbuild "^4.7.2" + rollup-plugin-postcss "^4.0.0" + rollup-pluginutils "^2.8.2" + run-script-webpack-plugin "^0.0.11" + semver "^7.3.2" + style-loader "^3.3.1" + sucrase "^3.20.2" + tar "^6.1.2" + terser-webpack-plugin "^5.1.3" + util "^0.12.3" + webpack "^5.66.0" + webpack-dev-server "^4.7.3" + webpack-node-externals "^3.0.0" + yaml "^1.10.0" + yml-loader "^2.1.0" + yn "^4.0.0" + zod "^3.11.6" + +"@backstage/config-loader@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.0.tgz#477127d84705ed9a63451563c31ecb4592e58dbc" + integrity sha512-pZJz54pOSfZ5MC8vhDVrq1yM4p/T2O1iQNW5br5iv/e1JjHWpGt00yeZOxsHpsOeAfTl2JRpooUQQxpJQ47uUQ== + dependencies: + "@backstage/cli-common" "^0.1.8" + "@backstage/config" "^1.0.0" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/json-schema" "^7.0.6" + ajv "^8.10.0" + chokidar "^3.5.2" + fs-extra "10.0.1" + json-schema "^0.4.0" + json-schema-merge-allof "^0.8.1" + json-schema-traverse "^1.0.0" + node-fetch "^2.6.7" + typescript-json-schema "^0.53.0" + yaml "^1.9.2" + yup "^0.32.9" + +"@backstage/config@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@backstage/config/-/config-1.0.0.tgz#7af40758ae3f8e1d9ef3a07f063a1fd9cf5c364e" + integrity sha512-0M8UPHjCev3i/Puz/DGV7hor/vujx27bpWip5UTjachzBorI5xB0CBV1GfZ1UZMm5R5py7RJ+lKdmSJVFdw9IA== + dependencies: + "@backstage/types" "^1.0.0" + lodash "^4.17.21" + +"@backstage/core-app-api@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.1.tgz#56743fb135588f522e97e7e88a848c9a8f351406" + integrity sha512-DLsEOpmvUA+LRbhlHiYWGq360lm/WcD2uk27HXWmhEcOnvY/xUItR/aFkHF9QRuGLsU3DQkJb4/ts6/vPjuvvQ== + dependencies: + "@backstage/config" "^1.0.0" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + "@types/prop-types" "^15.7.3" + prop-types "^15.7.2" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + zod "^3.11.6" + +"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.3": + version "0.9.3" + resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.3.tgz#79d8bcea06281da492730fe8eb14aa18877b27c4" + integrity sha512-cZr6pT3Q7whzdKvB/M3P4NH2/J4+GHKLvQsnRNoel+DE6PmenyAPDslSRf62Lu17+n6qZNHPMfySK1rePnf0Kg== + dependencies: + "@backstage/config" "^1.0.0" + "@backstage/core-plugin-api" "^1.0.1" "@backstage/errors" "^1.0.0" "@backstage/theme" "^0.2.15" "@material-table/core" "^3.1.0" @@ -1517,7 +1745,7 @@ pluralize "^8.0.0" prop-types "^15.7.2" qs "^6.9.4" - rc-progress "3.3.2" + rc-progress "3.2.4" react-helmet "6.1.0" react-hook-form "^7.12.2" react-markdown "^8.0.0" @@ -1533,12 +1761,12 @@ zen-observable "^0.8.15" zod "^3.11.6" -"@backstage/core-plugin-api@^1.0.0", "@backstage/core-plugin-api@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/core-plugin-api/-/core-plugin-api-1.0.2.tgz#6ebf52c20df33ee3c128c98937d0d349a805d3eb" - integrity sha512-82bFp3lTW4o4Bske+zLXSzHueLP/mdUPWx6J/6YUfn88Aq93gb4VrdUJ04fXXDNWPqaBzfpynaIbme9QRZqfHQ== +"@backstage/core-plugin-api@^1.0.0", "@backstage/core-plugin-api@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/core-plugin-api/-/core-plugin-api-1.0.1.tgz#2ad19da6765c40db353c6ae5bf4255dab1f47be2" + integrity sha512-x7xlSDqi7SuVgbq9NSdzciDEThIfytVmtbZasY/TtHH3upLre/5AFb8SiPEFiQJX6QBmPWeKG/I+LW+91cEMig== dependencies: - "@backstage/config" "^1.0.1" + "@backstage/config" "^1.0.0" "@backstage/types" "^1.0.0" "@backstage/version-bridge" "^1.0.1" history "^5.0.0" @@ -1546,28 +1774,52 @@ react-router-dom "6.0.0-beta.0" zen-observable "^0.8.15" -"@backstage/integration-react@^1.0.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" - integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== +"@backstage/dev-utils@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.1.tgz#42c8c8cd2521c7908ad4f60769709a56ae173a2c" + integrity sha512-f3AYmGkqgKLUgWlAX9vKLjl7C86UGQlsJvYACCR4sU35TOfaL9L8uJ/Tr9jxkGT6warpaTWzpa/pyg6FGFgIOw== dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/integration" "^1.2.0" + "@backstage/app-defaults" "^1.0.1" + "@backstage/catalog-model" "^1.0.1" + "@backstage/core-app-api" "^1.0.1" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/integration-react" "^1.0.1" + "@backstage/plugin-catalog-react" "^1.0.1" + "@backstage/test-utils" "^1.0.1" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + react-hot-loader "^4.13.0" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + +"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.0.1.tgz#47f56df1fdc9c30ab43be4471667769989b2192e" + integrity sha512-+ED8g3cJFjSrbeldhgjAaPfjygRM+iDPYKwpQGLRGT1u7gyyDVtCwrg1WFRihbvG0PFbv6Nf0+la/V2Y42whpg== + dependencies: + "@backstage/config" "^1.0.0" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/integration" "^1.1.0" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.12.2" "@material-ui/icons" "^4.9.1" "@material-ui/lab" "4.0.0-alpha.57" react-use "^17.2.4" -"@backstage/integration@^1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.0.tgz#89a3fc95c079c541ca6a5cafc613ebefc0463687" - integrity sha512-ZUfaMUUEUlmS2JE4M0Z4fXe269Z+hRGooptgILC21hgXW20hjVrhb7Q6ynH78md0ItcEuHVs2mnCztc7LS8erg== +"@backstage/integration@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.1.0.tgz#4784fe96cca5af0e9bf6ca98ee357338c43f797d" + integrity sha512-2yf1ioFsbivHf/PtQy66WT7pa9Mzazc44OORDO4EFEsJT4noIZHff2NZfHvg/5dFFQPPPY/esyEf83jhsOE7Wg== dependencies: - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" + "@backstage/config" "^1.0.0" "@octokit/auth-app" "^3.4.0" "@octokit/rest" "^18.5.3" cross-fetch "^3.1.5" @@ -1575,28 +1827,28 @@ lodash "^4.17.21" luxon "^2.0.2" -"@backstage/plugin-catalog-common@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-common/-/plugin-catalog-common-1.0.2.tgz#04f45745c0f30a1193d25c2dcf3eef01a97ab6be" - integrity sha512-5YCSZ9b2pMKJxHTJMPMo5qC3KeO4aCJCSV9uez7dHMIxkpEV+YThx3JAjrdj6KMMF0EGK4817fd6tipGUdfwDA== +"@backstage/plugin-catalog-common@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/plugin-catalog-common/-/plugin-catalog-common-1.0.1.tgz#97d70bfb6083e576e2163af19fd096e9f97f7b88" + integrity sha512-zPf8OGSjH+ZftMnjBxTgwLtgapnO1L7fzulLQ2RRaWrUcXGk8N3szQBDcqwxfBFiWSIX1G4vvRi/BGXFMUMlnw== dependencies: - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/search-common" "^0.3.4" + "@backstage/plugin-permission-common" "^0.6.0" + "@backstage/search-common" "^0.3.3" -"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.1.0.tgz#aa2c479e12fa8cfa5409b563e0a7e7dc665204e5" - integrity sha512-jOVDIcwTwdTPA7wuAMZ/1UHipeo9EMOmSJ0mtGllFP8/ldjxe0tNNjaYb4UazCQgCdUUSuk4ccwZ/EU5GtUfYg== +"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.0.1.tgz#647cb19bff2885bb4e1e289bb1b751a7e9a36477" + integrity sha512-oDHYsU6C9/h0X1qJV8YNSQjGpL51ZdgXLuxKFYmsQv3Bw/dbxUNfoaEd1/+rQLbGW/EVZj1ma9HyF3u32wNSiA== dependencies: - "@backstage/catalog-client" "^1.0.2" - "@backstage/catalog-model" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" + "@backstage/catalog-client" "^1.0.1" + "@backstage/catalog-model" "^1.0.1" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.2.0" - "@backstage/plugin-catalog-common" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/integration" "^1.1.0" + "@backstage/plugin-catalog-common" "^1.0.1" + "@backstage/plugin-permission-common" "^0.6.0" + "@backstage/plugin-permission-react" "^0.4.0" "@backstage/theme" "^0.2.15" "@backstage/types" "^1.0.0" "@backstage/version-bridge" "^1.0.1" @@ -1612,17 +1864,17 @@ yaml "^1.10.0" zen-observable "^0.8.15" -"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.21": - version "0.4.21" - resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.21.tgz#798058d9aeead651ff830641cb0222b6bafb5542" - integrity sha512-mdaxdR+76ZNYJiK1NtAGjnfQQKPIsZ2tVfyskWaZov1C6DxTGsguQ5oL2kiDiFj4rF7FgmtwfIxKZqWfivbR5Q== +"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.20": + version "0.4.20" + resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.20.tgz#ba66cad0c7c275a3add56fc09d3c550b4aa23d5d" + integrity sha512-OhOd69fZwbOMifb8+DkqJx72q8q7GB6btLho2JdGNqKv+i4hWmnodwNp6ibs32guPY6alqj7tsjUleOuVFASPA== dependencies: - "@backstage/catalog-model" "^1.0.2" - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-catalog-react" "^1.1.0" - "@backstage/plugin-stack-overflow" "^0.1.1" + "@backstage/catalog-model" "^1.0.1" + "@backstage/config" "^1.0.0" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/plugin-catalog-react" "^1.0.1" + "@backstage/plugin-stack-overflow" "^0.1.0" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.12.2" "@material-ui/icons" "^4.9.1" @@ -1631,48 +1883,48 @@ react-router "6.0.0-beta.0" react-use "^17.2.4" -"@backstage/plugin-permission-common@^0.6.1": - version "0.6.1" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-common/-/plugin-permission-common-0.6.1.tgz#fd63ba10b90896e6f8627c569a5f28127821523f" - integrity sha512-abAZEuzhjSuybQ+EjAl6bonDCBRVcNlcAhp/uia+znDyUzLRaOE1rh9y9lyKQco5UCnxXCeR0FzRv592lBmYVw== +"@backstage/plugin-permission-common@^0.6.0": + version "0.6.0" + resolved "https://registry.npmjs.org/@backstage/plugin-permission-common/-/plugin-permission-common-0.6.0.tgz#85464aa10d1f271252775e5eb30ecfd88e2af152" + integrity sha512-wx5TUDFilRqmMJP8TxjR5GuulFFOPHNwoK6eNMuz5ESzLzPhiJDovqaXjqpxsdCVGNb2VJOUlND3SzbwjQ65aA== dependencies: - "@backstage/config" "^1.0.1" + "@backstage/config" "^1.0.0" "@backstage/errors" "^1.0.0" cross-fetch "^3.1.5" uuid "^8.0.0" zod "^3.11.6" -"@backstage/plugin-permission-react@^0.4.1": - version "0.4.1" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-react/-/plugin-permission-react-0.4.1.tgz#18740913a8df06629a32b9c8679caa451c3989ac" - integrity sha512-yCuKGXP1TNJrphdkvBBLf+Jf7KYtW4Z9uV4M7vtBsK9qR2U3YU9T24iRDJ3hhBIr7dj66h4JCMhyrsDqYjMCTQ== +"@backstage/plugin-permission-react@^0.4.0": + version "0.4.0" + resolved "https://registry.npmjs.org/@backstage/plugin-permission-react/-/plugin-permission-react-0.4.0.tgz#3135b8bbd0e303afafeeae7b9a0d4de7d9e1198c" + integrity sha512-bqyBWHKQKT7Lsk4Z3Y6m2FkczN/0I7cRHiBAqv8go8etYk+tEsud9Mk7lRMX/e4+RKg3i4bLcUHerWdEeNqagw== dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/config" "^1.0.0" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/plugin-permission-common" "^0.6.0" cross-fetch "^3.1.5" react-router "6.0.0-beta.0" react-use "^17.2.4" swr "^1.1.2" -"@backstage/plugin-search-common@0.3.4", "@backstage/plugin-search-common@^0.3.4": - version "0.3.4" - resolved "https://registry.npmjs.org/@backstage/plugin-search-common/-/plugin-search-common-0.3.4.tgz#04e59618b1bef4c52045b3103c87a570e260cdb3" - integrity sha512-ft3+H8zQevm1QduQBLmP7awO8XHzh4Jlq0V6BdFrZftgyw0MbMz/YVtRwtHL++6qp91xDtQnwntZ5/3B95Hbug== +"@backstage/plugin-search-common@0.3.3", "@backstage/plugin-search-common@^0.3.3": + version "0.3.3" + resolved "https://registry.npmjs.org/@backstage/plugin-search-common/-/plugin-search-common-0.3.3.tgz#e9251172163731aef61626b3e1ec40504a38cb11" + integrity sha512-CARcpoMFEQJdpe+Rm9m/mPhMOsWM0V+zncIHOLuKlzsMrQRTcwmcFoPqBdtlfdT9wEJTu1bci2ccsDsnZiSrhA== dependencies: - "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/plugin-permission-common" "^0.6.0" "@backstage/types" "^1.0.0" -"@backstage/plugin-stack-overflow@^0.1.1": - version "0.1.1" - resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.1.tgz#238ae82cb5f5732eb343b4f87aa6fc973bb613d2" - integrity sha512-CUSQfrymZw90gWB6SbtRKt/SwgpoAxlClSeEMuDkC1JI9QjyLBNkXwYfesTpuQyBF3J6tyn/02q6r9tKKiObgQ== +"@backstage/plugin-stack-overflow@^0.1.0": + version "0.1.0" + resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.0.tgz#5f5ee8b30d684b7c71f746fe923c16875a62d621" + integrity sha512-ti0eEwkiu+cmihIISiEA5tqQil6gISyy34flQyxL0wukLNrKAOYCq+lgrN+N/MqJijXoy/FugWhX24+PKsocLQ== dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-home" "^0.4.21" - "@backstage/plugin-search-common" "^0.3.4" + "@backstage/config" "^1.0.0" + "@backstage/core-components" "^0.9.3" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/plugin-home" "^0.4.20" + "@backstage/plugin-search-common" "^0.3.3" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.12.2" "@material-ui/icons" "^4.9.1" @@ -1682,12 +1934,41 @@ qs "^6.9.4" react-use "^17.2.4" -"@backstage/search-common@^0.3.4": - version "0.3.4" - resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" - integrity sha512-lANcEeA++EaZ6lAPuuN7I9DrP4Ij1d/Mb9wyrY01DKnw0wUVKj8wdGwB2KR/LWdxg7dY8BIHU49bUqSTMKl2+w== +"@backstage/release-manifests@^0.0.2": + version "0.0.2" + resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.2.tgz#42faca60dae0c89cf6bc6fbf1b34e1e8cb2a564b" + integrity sha512-gBzcxIlDM3k0SXhVfyKQDxRvwS2hdXPy1qQU+wcVijImGez0CIIw1iD1+ksCYpWKb8uGZFovLj4fEvm5fA942g== dependencies: - "@backstage/plugin-search-common" "0.3.4" + cross-fetch "^3.1.5" + +"@backstage/search-common@^0.3.3": + version "0.3.3" + resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.3.tgz#756af22187283b754aefdc436c651231054be269" + integrity sha512-DtWd1Nrpvm2fkJRkw6bW8WeB6cFOvxsJ//o/fcoMsD5NCnaFtE1kFlCEt6QuUl6chAg6d+cX0rU+DJjSIC1rgQ== + dependencies: + "@backstage/plugin-search-common" "0.3.3" + +"@backstage/test-utils@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.0.1.tgz#ce8c6e75bcd424b527d4f903ee6f276a8d1855b7" + integrity sha512-KXG0VXqR+Q/GIJz0Ycasr5ZBOtUxAjA1prbY2L4NovaZNyCC/emIaOw/zqhvhhX6XdHV4pP5sQBbAhg4Ceoc6g== + dependencies: + "@backstage/config" "^1.0.0" + "@backstage/core-app-api" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.1" + "@backstage/plugin-permission-common" "^0.6.0" + "@backstage/plugin-permission-react" "^0.4.0" + "@backstage/theme" "^0.2.15" + "@backstage/types" "^1.0.0" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.11.2" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + cross-fetch "^3.1.5" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + zen-observable "^0.8.15" "@balena/dockerignore@^1.0.2": version "1.0.2" @@ -6906,68 +7187,35 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.0.tgz#7965f5b553c634c5354a47dcce0b40b94611e995" - integrity sha512-QywPMFvgZ+MHSLRofLI7BDL+UczFFHyj0vF5ibeChDAJgdTV8k4xgEwF0geFhVlPc1p8r70eYewzpo6ps+9LJQ== +"@typescript-eslint/typescript-estree@5.23.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.23.0.tgz#dca5f10a0a85226db0796e8ad86addc9aee52065" + integrity sha512-xE9e0lrHhI647SlGMl+m+3E3CKPF1wzvvOEWnuE3CCjjT7UiRnDGJxmAcVKJIlFgK6DY9RB98eLr1OPigPEOGg== dependencies: - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/visitor-keys" "5.27.0" - debug "^4.3.4" - globby "^11.1.0" - is-glob "^4.0.3" - semver "^7.3.7" - tsutils "^3.21.0" - -"@typescript-eslint/typescript-estree@5.9.0": - version "5.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.9.0.tgz#0e5c6f03f982931abbfbc3c1b9df5fbf92a3490f" - integrity sha512-kxo3xL2mB7XmiVZcECbaDwYCt3qFXz99tBSuVJR4L/sR7CJ+UNAPrYILILktGj1ppfZ/jNt/cWYbziJUlHl1Pw== - dependencies: - "@typescript-eslint/types" "5.9.0" - "@typescript-eslint/visitor-keys" "5.9.0" + "@typescript-eslint/types" "5.23.0" + "@typescript-eslint/visitor-keys" "5.23.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.27.0.tgz#d0021cbf686467a6a9499bd0589e19665f9f7e71" - integrity sha512-nZvCrkIJppym7cIbP3pOwIkAefXOmfGPnCM0LQfzNaKxJHI6VjI8NC662uoiPlaf5f6ymkTy9C3NQXev2mdXmA== +"@typescript-eslint/utils@5.23.0", "@typescript-eslint/utils@^5.10.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.23.0.tgz#4691c3d1b414da2c53d8943310df36ab1c50648a" + integrity sha512-dbgaKN21drqpkbbedGMNPCtRPZo1IOUr5EI9Jrrh99r5UW5Q0dz46RKXeSBoPV+56R6dFKpbrdhgUNSJsDDRZA== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.27.0" - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/typescript-estree" "5.27.0" + "@typescript-eslint/scope-manager" "5.23.0" + "@typescript-eslint/types" "5.23.0" + "@typescript-eslint/typescript-estree" "5.23.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/utils@^5.10.0": - version "5.20.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.20.0.tgz#b8e959ed11eca1b2d5414e12417fd94cae3517a5" - integrity sha512-lHONGJL1LIO12Ujyx8L8xKbwWSkoUKFSO+0wDAqGXiudWB2EO7WEUT+YZLtVbmOmSllAjLb9tpoIPwpRe5Tn6w== - dependencies: - "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.20.0" - "@typescript-eslint/types" "5.20.0" - "@typescript-eslint/typescript-estree" "5.20.0" - eslint-scope "^5.1.1" - eslint-utils "^3.0.0" - -"@typescript-eslint/visitor-keys@5.20.0": - version "5.20.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.20.0.tgz#70236b5c6b67fbaf8b2f58bf3414b76c1e826c2a" - integrity sha512-1flRpNF+0CAQkMNlTJ6L/Z5jiODG/e5+7mk6XwtPOUS3UrTz3UOiAg9jG2VtKsWI6rZQfy4C6a232QNRZTRGlg== - dependencies: - "@typescript-eslint/types" "5.20.0" - eslint-visitor-keys "^3.0.0" - -"@typescript-eslint/visitor-keys@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.0.tgz#97aa9a5d2f3df8215e6d3b77f9d214a24db269bd" - integrity sha512-46cYrteA2MrIAjv9ai44OQDUoCZyHeGIc4lsjCUX2WT6r4C+kidz1bNiR4017wHOPUythYeH+Sc7/cFP97KEAA== +"@typescript-eslint/visitor-keys@5.23.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.23.0.tgz#057c60a7ca64667a39f991473059377a8067c87b" + integrity sha512-Vd4mFNchU62sJB8pX19ZSPog05B0Y0CE2UxAZPT5k4iqhRYjPnqyY3woMxCd0++t9OTqkgjST+1ydLBi7e2Fvg== dependencies: "@typescript-eslint/types" "5.27.0" eslint-visitor-keys "^3.3.0" @@ -7003,10 +7251,29 @@ version "1.11.1" resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== + +"@webassemblyjs/helper-api-error@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== + +"@webassemblyjs/helper-buffer@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== + +"@webassemblyjs/helper-numbers@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" "@xtuc/long" "4.2.2" "@webassemblyjs/helper-wasm-bytecode@1.11.1": version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== "@webassemblyjs/helper-wasm-section@1.11.1": @@ -7051,6 +7318,28 @@ "@webassemblyjs/wasm-opt" "1.11.1" "@webassemblyjs/wasm-parser" "1.11.1" "@webassemblyjs/wast-printer" "1.11.1" + +"@webassemblyjs/wasm-gen@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wasm-opt@1.11.1": + version "1.11.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wasm-parser@1.11.1": version "1.11.1" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" @@ -7830,9 +8119,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1148.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1148.0.tgz#028211e724aee5118223eb5fa65495eaae4b5083" - integrity sha512-FUYAyveKmS5eqIiGQgrGVsLZwwtI+K6S6Gz8oJf56pgypZCo9dV+cXO4aaS+vN0+LSmGh6dSKc6G8h8FYASIJg== + version "2.1132.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1132.0.tgz#0cb615e97db5a5133914ba0f2bdc8ea10eef4069" + integrity sha512-NPDesfTrNx8UMQ5VuosQNlFFFhswJ8cGVcVltZBXKVl1kW0BCp52XQBySSruIznaRX7vG6Ir2+nox0NdL05qBQ== dependencies: buffer "4.9.2" events "1.1.1" @@ -7956,9 +8245,33 @@ babel-plugin-polyfill-corejs2@^0.3.0: babel-plugin-polyfill-corejs3@^0.5.0: version "0.5.2" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz#aabe4b2fa04a6e038b688c5e55d44e78cd3a5f72" + integrity sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.1" + core-js-compat "^3.21.0" + +babel-plugin-polyfill-regenerator@^0.3.0: + version "0.3.1" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz#2c0678ea47c75c8cc2fbb1852278d8fb68233990" + integrity sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.1" + +babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: + version "7.0.0-beta.0" + resolved "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" + integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== + +babel-polyfill@^6.26.0: + version "6.26.0" + resolved "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153" + integrity sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM= + dependencies: babel-runtime "^6.26.0" core-js "^2.5.0" regenerator-runtime "^0.10.5" + babel-preset-current-node-syntax@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" @@ -11073,9 +11386,9 @@ dot-prop@^6.0.1: is-obj "^2.0.0" dotenv@^16.0.0: - version "16.0.0" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz#c619001253be89ebb638d027b609c75c26e47411" - integrity sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q== + version "16.0.1" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz#8f8f9d94876c35dac989876a5d3a82a267fdce1d" + integrity sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ== drange@^1.0.2: version "1.1.1" @@ -14311,9 +14624,9 @@ ioredis@^5.0.4: standard-as-callback "^2.1.0" ip@^1.1.5: - version "1.1.6" - resolved "https://registry.npmjs.org/ip/-/ip-1.1.6.tgz#5a651a37644586e18b6ba3b48ca122bf56495f67" - integrity sha512-/dAvCivFs/VexXAtiAoMIqyhkhStNC9CPD0h1noonimOgB1xrCkexF2c5CjlqQ72GgMPjN6tiV+oreoPv3Ft1g== + version "1.1.8" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" + integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== ipaddr.js@1.9.1: version "1.9.1" @@ -16102,14 +16415,15 @@ keyv@^3.0.0: json-buffer "3.0.0" keyv@^4.0.0, keyv@^4.0.3: - version "4.3.0" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.3.0.tgz#b4352e0e4fe7c94111947d6738a6d3fe7903027c" - integrity sha512-C30Un9+63J0CsR7Wka5quXKqYZsT6dcRQ2aOwGcSc3RiQ4HGWpTAHlCA+puNfw2jA/s11EsxA1nCXgZRuRKMQQ== + version "4.2.7" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.2.7.tgz#00b8994d46098e8eb8c933cb29aaaf18be5effea" + integrity sha512-HeOstD8SXvtWoQhMMBCelcUuZsiV7T7MwsADtOXT0KuwYP9nCxrSoMDeLXNDTLN3VFSuRp38JzoGbbTboq3QQw== dependencies: compress-brotli "^1.3.8" json-buffer "3.0.1" kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= dependencies: @@ -16909,9 +17223,9 @@ magic-string@^0.25.7: sourcemap-codec "^1.4.8" magic-string@^0.26.1: - version "0.26.1" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz#ba9b651354fa9512474199acecf9c6dbe93f97fd" - integrity sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg== + version "0.26.2" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz#5331700e4158cd6befda738bb6b0c7b93c0d4432" + integrity sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A== dependencies: sourcemap-codec "^1.4.8" @@ -20789,12 +21103,20 @@ react-helmet@6.1.0: react-side-effect "^2.1.0" react-hook-form@^7.12.2, react-hook-form@^7.13.0: +<<<<<<< HEAD <<<<<<< HEAD version "7.31.3" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== ======= version "7.31.0" +======= + version "7.31.1" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.1.tgz#16c357dd366bc226172e6acbb5a1672873bbfb28" + integrity sha512-QjtjZ8r8KtEBWWpcXLyQordCraTFxILtyQpaz5KLLxN2YzcC+FZ9LLtOnNGuOnzZo9gCoB+viK3ZHV9Mb2htmQ== + +react-hot-loader@^4.13.0: +>>>>>>> Added tests to plugin vault & vault-backend version "4.13.0" resolved "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.13.0.tgz#c27e9408581c2a678f5316e69c061b226dc6a202" integrity sha512-JrLlvUPqh6wIkrK2hZDfOyq/Uh/WeVEr8nc7hkn2/3Ul0sx1Kr5y4kOGNacNRoj7RhwLNcQ3Udf1KJXrqc0ZtA== @@ -24323,9 +24645,9 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== uglify-js@^3.1.4: - version "3.15.4" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.4.tgz#fa95c257e88f85614915b906204b9623d4fa340d" - integrity sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA== + version "3.15.5" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.5.tgz#2b10f9e0bfb3f5c15a8e8404393b6361eaeb33b3" + integrity sha512-hNM5q5GbBRB5xB+PMqVRcgYe4c8jbyZ1pzZhS6jbq54/4F2gFK869ZheiE5A8/t+W5jtTNpWef/5Q9zk639FNQ== uid-number@0.0.6: version "0.0.6" @@ -24975,9 +25297,9 @@ vm2@^3.9.6: acorn-walk "^8.2.0" vscode-languageserver-types@^3.15.1: - version "3.16.0" - resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz#ecf393fc121ec6974b2da3efb3155644c514e247" - integrity sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA== + version "3.17.0" + resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0.tgz#98f27a8855152897c9dde6127cb778ce70c7c239" + integrity sha512-ECJg27DKWEfkIUuNyjMydPsl5Lu7XX1xmwEpZ61I4oeK1qFNbfp3tSZUVmeMPPgnNjasd1rrb3on9jbSe5g3nQ== w3c-hr-time@^1.0.2: version "1.0.2" From 296bfcb1fd78306f650119069d43cc945ab9fb65 Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 12 May 2022 12:18:43 +0200 Subject: [PATCH 202/550] Fix some typos and other requested changes Signed-off-by: ivgo --- .../well-known-annotations.md | 6 +- plugins/vault-backend/README.md | 2 +- plugins/vault-backend/config.d.ts | 6 +- .../vault-backend/src/config/config.test.ts | 8 +- plugins/vault-backend/src/config/config.ts | 6 +- .../src/service/VaultBuilder.tsx | 1 - .../vault-backend/src/service/router.test.ts | 2 +- .../src/service/vaultApi.test.ts | 2 +- .../src/service/{vaultApi.tsx => vaultApi.ts} | 8 +- plugins/vault/README.md | 2 +- .../EntityVaultCard/EntityVaultCard.test.tsx | 2 +- .../EntityVaultCard/EntityVaultCard.tsx | 47 +- yarn.lock | 5057 +++++++++-------- 13 files changed, 2827 insertions(+), 2322 deletions(-) rename plugins/vault-backend/src/service/{vaultApi.tsx => vaultApi.ts} (87%) diff --git a/docs/features/software-catalog/well-known-annotations.md b/docs/features/software-catalog/well-known-annotations.md index 189bf22be2..24464dd700 100644 --- a/docs/features/software-catalog/well-known-annotations.md +++ b/docs/features/software-catalog/well-known-annotations.md @@ -362,9 +362,9 @@ metadata: vault.io/secrets-path: test/backstage ``` -The value of this annotation contains the vault that vault curator is using to fetch -all the relative secrets for a component. If not present when the Vault plugin is in use, -a message will be shown instead, letting the user know what is missing in the `catalog-info.yaml`. +The value of this annotation contains the path to the secrets of the entity in +Vault. If not present when the Vault plugin is in use, a message will be shown +instead, letting the user know what is missing in the `catalog-info.yaml`. ## Deprecated Annotations diff --git a/plugins/vault-backend/README.md b/plugins/vault-backend/README.md index 997a6a6a4d..4e425f9630 100644 --- a/plugins/vault-backend/README.md +++ b/plugins/vault-backend/README.md @@ -62,7 +62,7 @@ To get started, first you need a running instance of Vault. You can follow [this ```yaml vault: - sourceUrl: http://your-vault-url + baseUrl: http://your-vault-url token: secretEngine: 'customSecretEngine' # Optional. By default it uses 'secrets' kvVersion: # Optional. The K/V version that your instance is using. The available options are '1' or '2' diff --git a/plugins/vault-backend/config.d.ts b/plugins/vault-backend/config.d.ts index 69ca560e61..b1f917463e 100644 --- a/plugins/vault-backend/config.d.ts +++ b/plugins/vault-backend/config.d.ts @@ -14,13 +14,13 @@ * limitations under the License. */ -/** Configuration for the Jira plugin */ +/** Configuration for the Vault plugin */ export interface Config { vault?: { /** - * The sourceUrl for your Vault instance. + * The baseUrl for your Vault instance. */ - sourceUrl: string; + baseUrl: string; /** * The token used by Backstage to access Vault. diff --git a/plugins/vault-backend/src/config/config.test.ts b/plugins/vault-backend/src/config/config.test.ts index 96b8d16c96..7cfdd8f468 100644 --- a/plugins/vault-backend/src/config/config.test.ts +++ b/plugins/vault-backend/src/config/config.test.ts @@ -32,14 +32,14 @@ describe('GetVaultConfig', () => { it('loads default params', () => { const config = new ConfigReader({ vault: { - sourceUrl: 'http://www.example.com', + baseUrl: 'http://www.example.com', token: '123', }, }); const vaultConfig = getVaultConfig(config); expect(vaultConfig).toStrictEqual({ - sourceUrl: 'http://www.example.com', + baseUrl: 'http://www.example.com', token: '123', kvVersion: 2, secretEngine: 'secrets', @@ -49,7 +49,7 @@ describe('GetVaultConfig', () => { it('loads custom params', () => { const config = new ConfigReader({ vault: { - sourceUrl: 'http://www.example.com', + baseUrl: 'http://www.example.com', token: '123', kvVersion: 1, secretEngine: 'test', @@ -58,7 +58,7 @@ describe('GetVaultConfig', () => { const vaultConfig = getVaultConfig(config); expect(vaultConfig).toStrictEqual({ - sourceUrl: 'http://www.example.com', + baseUrl: 'http://www.example.com', token: '123', kvVersion: 1, secretEngine: 'test', diff --git a/plugins/vault-backend/src/config/config.ts b/plugins/vault-backend/src/config/config.ts index f53f5f4c35..4920c73fed 100644 --- a/plugins/vault-backend/src/config/config.ts +++ b/plugins/vault-backend/src/config/config.ts @@ -23,9 +23,9 @@ import { Config } from '@backstage/config'; */ export interface VaultConfig { /** - * The sourceUrl for your Vault instance. + * The baseUrl for your Vault instance. */ - sourceUrl: string; + baseUrl: string; /** * The token used by Backstage to access Vault. @@ -52,7 +52,7 @@ export interface VaultConfig { */ export function getVaultConfig(config: Config): VaultConfig { return { - sourceUrl: config.getString('vault.sourceUrl'), + baseUrl: config.getString('vault.baseUrl'), token: config.getString('vault.token'), kvVersion: config.getOptionalNumber('vault.kvVersion') ?? 2, secretEngine: config.getOptionalString('vault.secretEngine') ?? 'secrets', diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index 609d01ca98..03179bcd41 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -97,7 +97,6 @@ export class VaultBuilder { router.use(express.json()); router.get('/health', (_, response) => { - this.env.logger.info('PONG!'); response.send({ status: 'ok' }); }); diff --git a/plugins/vault-backend/src/service/router.test.ts b/plugins/vault-backend/src/service/router.test.ts index 5b21a40b0f..a4799fc2d8 100644 --- a/plugins/vault-backend/src/service/router.test.ts +++ b/plugins/vault-backend/src/service/router.test.ts @@ -29,7 +29,7 @@ describe('createRouter', () => { logger: getVoidLogger(), config: new ConfigReader({ vault: { - sourceUrl: 'https://www.example.com', + baseUrl: 'https://www.example.com', token: '1234567890', }, }), diff --git a/plugins/vault-backend/src/service/vaultApi.test.ts b/plugins/vault-backend/src/service/vaultApi.test.ts index 022a050a66..6e2ab24c3f 100644 --- a/plugins/vault-backend/src/service/vaultApi.test.ts +++ b/plugins/vault-backend/src/service/vaultApi.test.ts @@ -27,7 +27,7 @@ describe('VaultApi', () => { const mockBaseUrl = 'https://api-vault.com'; const config = new ConfigReader({ vault: { - sourceUrl: mockBaseUrl, + baseUrl: mockBaseUrl, token: '1234567890', }, }); diff --git a/plugins/vault-backend/src/service/vaultApi.tsx b/plugins/vault-backend/src/service/vaultApi.ts similarity index 87% rename from plugins/vault-backend/src/service/vaultApi.tsx rename to plugins/vault-backend/src/service/vaultApi.ts index 255e792175..89ff578727 100644 --- a/plugins/vault-backend/src/service/vaultApi.tsx +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -55,7 +55,7 @@ export class VaultClient implements VaultApi { method: string = 'GET', ): Promise { const response = await fetch( - `${this.vaultConfig.sourceUrl}/${path}?${new URLSearchParams( + `${this.vaultConfig.baseUrl}/${path}?${new URLSearchParams( query, ).toString()}`, { @@ -78,7 +78,7 @@ export class VaultClient implements VaultApi { } getFrontendSecretsUrl(): string { - return `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}`; + return `${this.vaultConfig.baseUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}`; } async listSecrets(secretPath: string): Promise { @@ -101,8 +101,8 @@ export class VaultClient implements VaultApi { } else { secrets.push({ name: secret, - editUrl: `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/edit/${secretPath}/${secret}`, - showUrl: `${this.vaultConfig.sourceUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/show/${secretPath}/${secret}`, + editUrl: `${this.vaultConfig.baseUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/edit/${secretPath}/${secret}`, + showUrl: `${this.vaultConfig.baseUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}/show/${secretPath}/${secret}`, }); } }), diff --git a/plugins/vault/README.md b/plugins/vault/README.md index 42e9fcd71f..824293632f 100644 --- a/plugins/vault/README.md +++ b/plugins/vault/README.md @@ -40,7 +40,7 @@ To get started, first you need a running instance of Vault. You can follow [this ```yaml vault: - sourceUrl: http://your-vault-url + baseUrl: http://your-vault-url token: secretEngine: 'customSecretEngine' # Optional. By default it uses 'secrets' kvVersion: # Optional. The K/V version that your instance is using. The available options are '1' or '2' diff --git a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx index b6daec1a20..f46aa1e4c2 100644 --- a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx +++ b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.test.tsx @@ -22,7 +22,7 @@ import { render } from '@testing-library/react'; import { EntityVaultCard } from './EntityVaultCard'; import { EntityProvider } from '@backstage/plugin-catalog-react'; -describe('EntityVautCard', () => { +describe('EntityVaultCard', () => { const server = setupServer(); setupRequestMockHandlers(server); const entityAnnotationMissing: ComponentEntity = { diff --git a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx index 47d90dc752..ae8e28cb01 100644 --- a/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx +++ b/plugins/vault/src/components/EntityVaultCard/EntityVaultCard.tsx @@ -16,61 +16,18 @@ import React from 'react'; import { useEntity } from '@backstage/plugin-catalog-react'; -import { makeStyles, Typography } from '@material-ui/core'; import { isVaultAvailable } from '../../conditions'; -import { CodeSnippet, InfoCard, Button } from '@backstage/core-components'; -import { BackstageTheme } from '@backstage/theme'; import { VAULT_SECRET_PATH_ANNOTATION } from '../../constants'; import { EntityVaultTable } from '../EntityVaultTable'; - -const COMPONENT_YAML = `metadata: - name: example - annotations: - ${VAULT_SECRET_PATH_ANNOTATION}: value`; - -const useStyles = makeStyles( - theme => ({ - code: { - borderRadius: 6, - margin: `${theme.spacing(2)}px 0px`, - background: theme.palette.type === 'dark' ? '#444' : '#fff', - }, - }), - { name: 'BackstageMissingVaultAnnotation' }, -); +import { MissingAnnotationEmptyState } from '@backstage/core-components'; export const EntityVaultCard = () => { const { entity } = useEntity(); - const classes = useStyles(); if (isVaultAvailable(entity)) { return ; } return ( - - <> - - Add the annotation to your component YAML as shown in the highlighted - example below: - -
- -
- - -
+ ); }; diff --git a/yarn.lock b/yarn.lock index ebb0160750..c287b11e76 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1403,7 +1403,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.17.7" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.7.tgz#a5f3328dc41ff39d803f311cfe17703418cf9825" integrity sha512-L6rvG9GDxaLgFjg41K+5Yv9OMrU98sWe+Ykmc6FDJW/+vYZMhdOMKkISgzptMaERHvS2Y2lw9MDRm2gHhlQQoA== @@ -2236,9 +2236,9 @@ "@codemirror/language" "^0.20.0" "@codemirror/lint@^0.20.0": - version "0.20.2" - resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-0.20.2.tgz#e47307167ff7e5bb14b717f4084a386dd7f8954e" - integrity sha512-xEH3wlzoFLEhPEeMVRNoQIhoTCMEtXhVxemGh3FYjLfl/CL3B2Wz+CU7ooP5SKhN1le7JqUNSfiTArFP+IzFuw== + version "0.20.1" + resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-0.20.1.tgz#791c83642f76103bbf6b8bfdc8020eff2b78b5e2" + integrity sha512-aWbeicDiNe5tb2aZuXs7sKk3hQ89Z1YcUuUX8ngQu23tT6EY4kcY2cayDjizvkLn8iHkObNf97uSudjNmUon2Q== dependencies: "@codemirror/state" "^0.20.0" "@codemirror/view" "^0.20.2" @@ -2322,9 +2322,9 @@ lodash.once "^4.1.1" "@dabh/diagnostics@^2.0.2": - version "2.0.3" - resolved "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz#7f7e97ee9a725dffc7808d93668cc984e1dc477a" - integrity sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA== + version "2.0.2" + resolved "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.2.tgz#290d08f7b381b8f94607dc8f471a12c675f9db31" + integrity sha512-+A1YivoVDNNVCdfozHSR8v/jyuuLTMXwjWuxPFlFlUapXoGc+Gj9mDlTDDfrwl7rXCl2tNZ0kE8sIBO6YOn96Q== dependencies: colorspace "1.1.x" enabled "2.0.x" @@ -2388,6 +2388,37 @@ ts-node "^9" tslib "^2" +"@envelop/core@^2.0.0": + version "2.3.1" + resolved "https://registry.npmjs.org/@envelop/core/-/core-2.3.1.tgz#77d502db2aa97846573d7c2e87a00bde840c7ebb" + integrity sha512-AnYUci7EGyA8flml881lDvVDl6n/u6GQpVIOTsZVO29d4/rPqSJ2KFguDD3mjDL406doTTLNuDI4ndxfJl6fmQ== + dependencies: + "@envelop/types" "2.2.0" + +"@envelop/disable-introspection@^3.0.0": + version "3.3.1" + resolved "https://registry.npmjs.org/@envelop/disable-introspection/-/disable-introspection-3.3.1.tgz#616747a42b28172ff223a7c667a21b70a4bac66f" + integrity sha512-THR8UnRQQB5nCLmITXvebwXwSHvFjS+ThA3RRVXpFX9EupMbTFN5a4NHty7+BYD798c3VrBZ/InbMlEWqw1c9g== + +"@envelop/parser-cache@^4.0.0": + version "4.3.1" + resolved "https://registry.npmjs.org/@envelop/parser-cache/-/parser-cache-4.3.1.tgz#3d9cfb869f5953bb866f3c82e28fc8606b576a60" + integrity sha512-IqerCVjvVTiGvSZ8qSpdEc55hhiuekufJd0+ldWtyMPznhMaYOzpLifFUhjhhD7004eJM17n9vjJQFa7fIGz8Q== + dependencies: + tiny-lru "7.0.6" + +"@envelop/types@2.2.0": + version "2.2.0" + resolved "https://registry.npmjs.org/@envelop/types/-/types-2.2.0.tgz#95776d9b63ba8974f52b476d4db5bb169febbe32" + integrity sha512-Lghvfs0kh53G5mUKpCMlB/FhHh3O8SSR4hewB7JyE9hOEu/9h/6u+GHH/OEgdaRHky1Sae5Jf4grO+h21ka4ig== + +"@envelop/validation-cache@^4.0.0": + version "4.3.1" + resolved "https://registry.npmjs.org/@envelop/validation-cache/-/validation-cache-4.3.1.tgz#a1f83e339d22d787cec3d6859e7abc9d4249aeb6" + integrity sha512-lmtu9idhdWqbYkcFoFsL1ED4y38DLvj6EDEwE9tULXWuZm4WWmlNQAmKHAwB1d3kGVQAMtxM59crkOOJGRBgHQ== + dependencies: + tiny-lru "7.0.6" + "@eslint/eslintrc@^1.2.3": version "1.2.3" resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz#fcaa2bcef39e13d6e9e7f6271f4cc7cae1174886" @@ -2410,10 +2441,10 @@ dependencies: yaml-ast-parser "0.0.43" -"@gar/promisify@^1.0.1", "@gar/promisify@^1.1.3": - version "1.1.3" - resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" - integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== +"@gar/promisify@^1.0.1": + version "1.1.2" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" + integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== "@gitbeaker/browser@^35.6.0": version "35.6.0" @@ -2483,14 +2514,14 @@ extend "^3.0.2" "@google-cloud/projectify@^2.0.0": - version "2.1.1" - resolved "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz#ae6af4fee02d78d044ae434699a630f8df0084ef" - integrity sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ== + version "2.0.1" + resolved "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.0.1.tgz#13350ee609346435c795bbfe133a08dfeab78d65" + integrity sha512-ZDG38U/Yy6Zr21LaR3BTiiLtpJl6RkPS/JwoRT453G+6Q1DhlV0waNf8Lfu+YVYGIIxgKnLayJRfYlFJfiI8iQ== "@google-cloud/promisify@^2.0.0": - version "2.0.4" - resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz#9d8705ecb2baa41b6b2673f3a8e9b7b7e1abc52a" - integrity sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA== + version "2.0.3" + resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.3.tgz#f934b5cdc939e3c7039ff62b9caaf59a9d89e3a8" + integrity sha512-d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw== "@google-cloud/storage@^5.6.0", "@google-cloud/storage@^5.8.0": version "5.20.5" @@ -2672,140 +2703,140 @@ tslib "~2.4.0" "@graphql-tools/apollo-engine-loader@^7.0.5": - version "7.2.16" - resolved "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.2.16.tgz#bf130e0a7910cd43200871b2376fe0d952713809" - integrity sha512-e21qGgkyhogdQREB6wOLvxUlGYpcxrEQm6u6OyVaGjZUJvLo8wFT2eIwgMCY/m1woWx2OdfdBq6/1TTScJhfcA== + version "7.2.11" + resolved "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-7.2.11.tgz#c247eef8986ce259de6dd2da39daeaba7960ac33" + integrity sha512-0NmAlTd/lQl35OaP18dhxlcdu4w4K+auPfbkiaDfArzdhn6Duhq+ATqMvj6Fx5C23zlcvQ0AJnT5a5Yb55K/5w== dependencies: - "@graphql-tools/utils" "8.6.10" - cross-undici-fetch "^0.4.0" + "@graphql-tools/utils" "8.6.9" + cross-undici-fetch "^0.3.0" sync-fetch "0.3.1" - tslib "~2.4.0" + tslib "~2.3.0" -"@graphql-tools/batch-execute@8.4.7": - version "8.4.7" - resolved "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.4.7.tgz#199d0ec7fbe6539056fdfd28e015c612926a7932" - integrity sha512-+ZXikTo8kJ1hJAQrT94sUrwmdL8EcvoDz4HULbb4B8hIFw0PPBaGkEaN8u5ylsCLOEoWIQNe1SwHx9yDhlvnJg== +"@graphql-tools/batch-execute@8.4.6": + version "8.4.6" + resolved "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.4.6.tgz#6033cbf0b7d30c901ae4a1a7de7501aedf5a6a10" + integrity sha512-8O42fReZMssrA4HCkpK68RlRQz/QAvLfOkz+/6dDX2X7VgZtRx3VvFiJd2hFaGdNbLzklBWXF9E6hJdJGkEO5g== dependencies: - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/utils" "8.6.9" dataloader "2.1.0" - tslib "~2.4.0" + tslib "~2.3.0" value-or-promise "1.0.11" "@graphql-tools/code-file-loader@^7.0.6": - version "7.2.15" - resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-7.2.15.tgz#2307741bec6987c88a1a53695cb17dc59c8ba7a0" - integrity sha512-tqViC0MEXadcGofqDU4mL7eA/+TyM4iCP+XRkL/mdAMYWp1JdzMYUJcCH47ZK1+EvNctYx8sJOpSGlvLR4ZFFg== + version "7.2.14" + resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-7.2.14.tgz#b43ce0c682040b3969f1f785b18fc33c79341084" + integrity sha512-ajNET8XO2e3SgIXXAskc/Dv/M/+Z35TgXopf3axt1e9TboG/KkQxIE0Mi84XqCYDMtF5UqmIWqQ2gVdwFPfjiw== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.7" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/graphql-tag-pluck" "7.2.6" + "@graphql-tools/utils" "8.6.9" globby "^11.0.3" - tslib "~2.4.0" + tslib "~2.3.0" unixify "^1.0.0" -"@graphql-tools/delegate@8.7.8": - version "8.7.8" - resolved "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.7.8.tgz#c7e94d66825286615f738367665aa3036d79eff0" - integrity sha512-QRpk0B0VD+23mC3ePBLM542TvCXbQhdr0V/AmcnpxQLsV27/NA6fDxxN/zjjjs15M5v9/M2DaBT4rwY9NMMlQA== +"@graphql-tools/delegate@8.7.7": + version "8.7.7" + resolved "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.7.7.tgz#8626e5734eff1643f99b10202bb324c8a4a8c210" + integrity sha512-Yb9UHG+Upm0M+5FgtWipXM0/Q8Vuuh1Ieod7hFDmAwHGHbmwG0YpcS/NMdxrQAZYWnli9EdnSPgDAFnWLFN+ZQ== dependencies: - "@graphql-tools/batch-execute" "8.4.7" - "@graphql-tools/schema" "8.3.11" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/batch-execute" "8.4.6" + "@graphql-tools/schema" "8.3.10" + "@graphql-tools/utils" "8.6.9" dataloader "2.1.0" graphql-executor "0.0.23" - tslib "~2.4.0" + tslib "~2.3.0" value-or-promise "1.0.11" "@graphql-tools/git-loader@^7.0.5": - version "7.1.14" - resolved "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-7.1.14.tgz#f8dfb8a5cade31ddbd625571e9db6ebe9155474c" - integrity sha512-i1uZ1zxbzrEK+h7wttGpJbGiw80EVop/lNwHtdEOdQd4kp/DKqAJaJJjjvUwi5IBWwtp/BM2ujBAwe1+3R2MSA== + version "7.1.13" + resolved "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-7.1.13.tgz#95f4715f4caf290dde975813bc87e0a96a81095d" + integrity sha512-VuX7TMsmWyt6ldykJ5+xfEVM0ctIq0rdWC5YC7icd/0xn5kx2V/SkompBXE0XjgZGznzveucKwGY7UGHVb2wuw== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.7" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/graphql-tag-pluck" "7.2.6" + "@graphql-tools/utils" "8.6.9" is-glob "4.0.3" micromatch "^4.0.4" - tslib "~2.4.0" + tslib "~2.3.0" unixify "^1.0.0" "@graphql-tools/github-loader@^7.0.5": - version "7.2.20" - resolved "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-7.2.20.tgz#bbf923264f5983888f425265305fe3929e79fe63" - integrity sha512-Ua2eJ61+NHSOYemoAkWY1kFv83J+BkEONz3cqcrhCa7wWMW4OUUzzvw1g+A2fuMLk7R6ATgKADjDPTMyfRYnyQ== + version "7.2.15" + resolved "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-7.2.15.tgz#c0c2ae06c7a6c0b5d572e0455abb6ceb8d28fc28" + integrity sha512-5Za+1y7XTCVNOqxYU1HV1eLs99Wy7EZ6j8hsgJKNLHfRG3IegtWyU3ShQQ1bCTwpt57cwiWaVGgvf0rEqrZkPw== dependencies: - "@graphql-tools/graphql-tag-pluck" "7.2.7" - "@graphql-tools/utils" "8.6.10" - cross-undici-fetch "^0.4.0" + "@graphql-tools/graphql-tag-pluck" "7.2.6" + "@graphql-tools/utils" "8.6.9" + cross-undici-fetch "^0.3.0" sync-fetch "0.3.1" - tslib "~2.4.0" + tslib "~2.3.0" -"@graphql-tools/graphql-file-loader@^7.0.5", "@graphql-tools/graphql-file-loader@^7.3.7": - version "7.3.12" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.12.tgz#1d0ef43bd2066d517788fa36668e2486c47724c2" - integrity sha512-V1K+g0QBflBnN58pU6jo7qrmXfIJjSgmIGo4zYxbMwfvcYCQcTmfYnKWUkvZmBj0cXIAGfhqSOQZsxZW9rgXIA== +"@graphql-tools/graphql-file-loader@^7.0.5", "@graphql-tools/graphql-file-loader@^7.3.2": + version "7.3.11" + resolved "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.11.tgz#3acc3fffdba5e1d47750ea693577c2388e6cf22b" + integrity sha512-3RMTfBN0VYSJH+5he9DxW8nGSn5p2+dNN2O2H88QSSwGorkONmKBdmf+9+JTzrEDvPObOzBjIuSD8wCnXlNaQA== dependencies: - "@graphql-tools/import" "6.6.14" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/import" "6.6.13" + "@graphql-tools/utils" "8.6.9" globby "^11.0.3" - tslib "~2.4.0" + tslib "~2.3.0" unixify "^1.0.0" -"@graphql-tools/graphql-tag-pluck@7.2.7": - version "7.2.7" - resolved "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.2.7.tgz#c137a3460898c7f82fcab20b958010637009a9b1" - integrity sha512-leh6rVHNoGXjmbOtTaKNXQtFw4Gu7PokTlEOweNKYMssbH6L1zrKA0G4cE55s60JBo9SF4hjg8X7Gkech5t+mQ== +"@graphql-tools/graphql-tag-pluck@7.2.6": + version "7.2.6" + resolved "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-7.2.6.tgz#0bddc23b354c2912e17b15209ad1e7117f9fa4da" + integrity sha512-TWF+0MTdWIfETYt2Pm1+jg608aIavgGkjJuN3f2Z4iWhPNvupHkHexAzV4GNkrQa0yXzIl6bQF8uNRjz4v31SA== dependencies: "@babel/parser" "^7.16.8" "@babel/traverse" "^7.16.8" "@babel/types" "^7.16.8" - "@graphql-tools/utils" "8.6.10" - tslib "~2.4.0" + "@graphql-tools/utils" "8.6.9" + tslib "~2.3.0" -"@graphql-tools/import@6.6.14": - version "6.6.14" - resolved "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.14.tgz#d5bcbc23abc1563346081155afec003f4eb8e47b" - integrity sha512-XN6swtMdUxd9czmdNIK6yJ0w5t4FOUWSoSkYP0+to8j44r8zdM3nsAppoA0OLmsUY+JnTBgkW3jGlOFvqC3HWg== +"@graphql-tools/import@6.6.13": + version "6.6.13" + resolved "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.13.tgz#5561204a16ce3d1308aa96fb5e54cd1e550c748c" + integrity sha512-yqdCem+ZZFVAaIC2IxWyAXSEHLNPIuMzm4avTQe/LbYNRFRTpzyIYo3clc22ixeuh2LqSL3tLXKq2IsggCAeQw== dependencies: - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/utils" "8.6.9" resolve-from "5.0.0" - tslib "~2.4.0" + tslib "~2.3.0" -"@graphql-tools/json-file-loader@^7.1.2", "@graphql-tools/json-file-loader@^7.3.7": - version "7.3.12" - resolved "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.12.tgz#e841e2539d5eeea0b0847fd002a3584c791e9d06" - integrity sha512-gmH6XFN7Alt/hGXeez6Jlp0/lHuY9O1rLVKq5w5FqslkQvWYg2dqzhn2U9jRqD42NbEmSQ5Sjhfkdmc4VT6OfA== +"@graphql-tools/json-file-loader@^7.1.2", "@graphql-tools/json-file-loader@^7.3.2": + version "7.3.11" + resolved "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.11.tgz#2d4fde06136d97c1b3d3939699976fb11260a22c" + integrity sha512-3in/1y+OVKP3eJ8aloxWD2HdZLcZChgHRk5j3ey3C+ANTwoedIgTWcwxro+iLH40IZ7a6z+I/Lb2dEc8xlgwug== dependencies: - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/utils" "8.6.9" globby "^11.0.3" - tslib "~2.4.0" + tslib "~2.3.0" unixify "^1.0.0" -"@graphql-tools/load@^7.3.0", "@graphql-tools/load@^7.5.5": - version "7.5.11" - resolved "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.11.tgz#0309054298b912321d6822e3f73c5f7ba0c84ea4" - integrity sha512-a8sD3iHfxcbIwP0nSxF+DUAVg+/MuLNOizVJHcZGGS8AdDoezUsnWRkNDT6FlVqRoxHNbkpq8+6B55JKtqHSxg== +"@graphql-tools/load@^7.3.0", "@graphql-tools/load@^7.4.1": + version "7.5.10" + resolved "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.10.tgz#6e53dd62ec081b3a2966ab9d93e8b991f06501b3" + integrity sha512-I9b9Md1DdB7Du//+x8CtBAKUW21jyuENCPssvlBjHZjvmx5cIGrTftqwGzuDBgR0Zm72tkmat/FTu6/SQPiyeQ== dependencies: - "@graphql-tools/schema" "8.3.11" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/schema" "8.3.10" + "@graphql-tools/utils" "8.6.9" p-limit "3.1.0" - tslib "~2.4.0" + tslib "~2.3.0" -"@graphql-tools/merge@8.2.11", "@graphql-tools/merge@^8.2.6": - version "8.2.11" - resolved "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.11.tgz#0cdc6c9feb32e3392bf0c633881a78ccc1d24368" - integrity sha512-fsjJVdsk9GV1jj1Ed2AKLlHYlsf0ZadTK8X5KxFRE1ZSnKqh56BLVX93JrtOIAnsiHkwOK2TC43HGhApF1swpQ== +"@graphql-tools/merge@8.2.10", "@graphql-tools/merge@^8.2.1": + version "8.2.10" + resolved "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.10.tgz#fe2fe5ad33dc2d1b0af8751c0c08d18bb6bb6d88" + integrity sha512-wpg22seOTNfkIO8jFAgo8w1BsT3IS2OTMpkCNf+dvcKSP09SVidYCOliyWHgjDCmpCrvvSjOX855NUKDx/Biew== dependencies: - "@graphql-tools/utils" "8.6.10" - tslib "~2.4.0" + "@graphql-tools/utils" "8.6.9" + tslib "~2.3.0" "@graphql-tools/mock@^8.1.2": - version "8.6.9" - resolved "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.6.9.tgz#78ba3498dbf0cf371afd8558dd714c013e932639" - integrity sha512-Pto23TeUkUn0BYI6UtclPbKjunXvOGtDO7DZC8KagDfgMTu0ZMNTovv0kq+sgJBsnqD4Q9eRkR4IetSujHQBsA== + version "8.6.8" + resolved "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.6.8.tgz#232a23c0c14dcfca88012886230b93e6fc2303e2" + integrity sha512-zBZApp8dDAovWKZ0rkZ4CwDT8Z+B35pIyRjeHkxvtKt5XyEAabEwkuSYMyFdsghDWwhMD/VAZ/6DXtA62Hnf+A== dependencies: - "@graphql-tools/schema" "8.3.11" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/schema" "8.3.10" + "@graphql-tools/utils" "8.6.9" fast-json-stable-stringify "^2.1.0" - tslib "~2.4.0" + tslib "~2.3.0" "@graphql-tools/optimize@^1.0.1": version "1.2.0" @@ -2815,12 +2846,12 @@ tslib "~2.3.0" "@graphql-tools/prisma-loader@^7.0.6": - version "7.1.20" - resolved "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-7.1.20.tgz#a64ac87a2511bbbd4fca163378c75ad8544cabd1" - integrity sha512-of7yQ/GDSqca54YjUC6FZlvmN3fXHT3VrpIbK0P0F9N2Z/cDK0E7OEF+YKS7jk8gUsFgM1+sfbFk5B11CTWP1Q== + version "7.1.13" + resolved "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-7.1.13.tgz#3b46e9d9414e71cfeb1a8284c945329eca77a190" + integrity sha512-rctgCI11ZjPJd4ncNTV7mmjV2WN2LRL3aTuTJWHjudO+iJPgoWyor0idl+aP0fOX2GnDK7zASmWwVShuGBJb9g== dependencies: - "@graphql-tools/url-loader" "7.9.21" - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/url-loader" "7.9.14" + "@graphql-tools/utils" "8.6.9" "@types/js-yaml" "^4.0.0" "@types/json-stable-stringify" "^1.0.32" "@types/jsonwebtoken" "^8.5.0" @@ -2837,39 +2868,40 @@ lodash "^4.17.20" replaceall "^0.1.6" scuid "^1.1.0" - tslib "~2.4.0" + tslib "~2.3.0" yaml-ast-parser "^0.0.43" "@graphql-tools/relay-operation-optimizer@^6.3.7": - version "6.4.10" - resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.10.tgz#30bafaf6f35708784dceace430c793181efcef8e" - integrity sha512-a5wDdXP7MmwZDy9R8+RZ0ajJBWX1Lk9sIG6uSIo5G/LnGpXncgBhKpJf5r6rOf0zsFLWnAkYm/dCDMpFaGE/Yw== + version "6.4.9" + resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.9.tgz#f3e1960ac8e6429a09156836701a03ebf523f0e1" + integrity sha512-fHMR1bNyx+ryBnmtXWnYmxvQLEx0O3yIG0MTVB1Mp6GlsyKTGI3O9njvjv0EI2JmCszs1uakT/6BW0LO37E6tQ== dependencies: - "@graphql-tools/utils" "8.6.10" + "@graphql-tools/utils" "8.6.9" relay-compiler "12.0.0" - tslib "~2.4.0" + tslib "~2.3.0" -"@graphql-tools/schema@8.3.11", "@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.1.1", "@graphql-tools/schema@^8.1.2", "@graphql-tools/schema@^8.3.1": - version "8.3.11" - resolved "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.11.tgz#c0606b301852820a46042ebb888fd09cc402518a" - integrity sha512-esMEnbyXbp8B5VEI4o395+x0G7Qmz3JSX5onFBF8HeLYcqWJasY5vBuWkO18VxrZpEnvnryodP6Y00bVag9O3Q== +"@graphql-tools/schema@8.3.10", "@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.1.1", "@graphql-tools/schema@^8.1.2", "@graphql-tools/schema@^8.3.1": + version "8.3.10" + resolved "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.10.tgz#c3e373e6ad854f533fc7e55859dd8f9e81de30dd" + integrity sha512-tfhjSTi3OzheDrVzG7rkPZg2BbQjmZRLM2vvQoM2b1TnUwgUIbpAgcnf+AWDLRsoCOWlezeLgij1BLeAR0Q0jg== dependencies: - "@graphql-tools/merge" "8.2.11" - "@graphql-tools/utils" "8.6.10" - tslib "~2.4.0" + "@graphql-tools/merge" "8.2.10" + "@graphql-tools/utils" "8.6.9" + tslib "~2.3.0" value-or-promise "1.0.11" -"@graphql-tools/url-loader@7.9.21", "@graphql-tools/url-loader@^7.0.11", "@graphql-tools/url-loader@^7.9.7": - version "7.9.21" - resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.21.tgz#4ceeca79ac71ac0ed2358360ef6f94594033ed52" - integrity sha512-OPE08LVvKmeGyauWWksRYTBtQ1lB0kHUv2hofb0lOlD4TKURg53TwFopncof+1IT+1hTl3sLsERn7S5M1Z5PhQ== +"@graphql-tools/url-loader@7.9.14", "@graphql-tools/url-loader@^7.0.11", "@graphql-tools/url-loader@^7.4.2": + version "7.9.14" + resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.14.tgz#9f76af9a6c55a0cf2e87ccf9b3be15eeb6af188c" + integrity sha512-7IXiqUYp0cHeM+qvgjM4jAq8uJhl3PDdQYkyIj5wzZ7XjrkdV3JjPt0cHj2IBIeEwQJOjEKNeFYXjOlg73guCQ== dependencies: - "@graphql-tools/delegate" "8.7.8" - "@graphql-tools/utils" "8.6.10" - "@graphql-tools/wrap" "8.4.17" + "@graphql-tools/delegate" "8.7.7" + "@graphql-tools/utils" "8.6.9" + "@graphql-tools/wrap" "8.4.16" + "@graphql-yoga/node" "2.3.0" "@n1ru4l/graphql-live-query" "^0.9.0" "@types/ws" "^8.0.0" - cross-undici-fetch "^0.4.0" + cross-undici-fetch "^0.3.0" dset "^3.1.0" extract-files "^11.0.0" graphql-ws "^5.4.1" @@ -2880,64 +2912,94 @@ value-or-promise "^1.0.11" ws "^8.3.0" -"@graphql-tools/utils@8.6.10", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.5": - version "8.6.10" - resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.10.tgz#38e42a97a74ffcf5a21e816401e2ca1647194f6a" - integrity sha512-bJH9qwuyM3BP0PTU6/lvBDkk6jdEIOn+dbyk4pHMVNnvbJ1gZQwo62To8SHxxaUTus8OMhhVPSh9ApWXREURcg== - dependencies: - tslib "~2.4.0" - -"@graphql-tools/utils@8.6.9": +"@graphql-tools/utils@8.6.9", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.1", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.0": version "8.6.9" resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.9.tgz#fe1b81df29c9418b41b7a1ffe731710b93d3a1fe" integrity sha512-Z1X4d4GCT81+8CSt6SgU4t1w1UAUsAIRb67mI90k/zAs+ArkB95iE3bWXuJCUmd1+r8DGGtmUNOArtd6wkt+OQ== dependencies: tslib "~2.3.0" -"@graphql-tools/wrap@8.4.17", "@graphql-tools/wrap@^8.3.1": - version "8.4.17" - resolved "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.17.tgz#7c8906a0a7d463aeff8d3c01e94095e93af42ee4" - integrity sha512-oXTNXuUsty2smv3wm9M0W3Pon+fofy9ItIgGT3xfHnJITCNC2GC1s29lhcr0pIZL4Tjp7oTlqMx+sPjLHETSzw== +"@graphql-tools/wrap@8.4.16", "@graphql-tools/wrap@^8.3.1": + version "8.4.16" + resolved "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.16.tgz#87dce9ec623a921e5a62f44e75abc9655892724b" + integrity sha512-b3yz7uN0en44sBEv/fAEQIqdiCEM/gQJSaLyA7Z2hWJwM0gQ5kiq0XMwKvyUAIY8NGig7IywC7bbup5Jc2F35Q== dependencies: - "@graphql-tools/delegate" "8.7.8" - "@graphql-tools/schema" "8.3.11" - "@graphql-tools/utils" "8.6.10" - tslib "~2.4.0" + "@graphql-tools/delegate" "8.7.7" + "@graphql-tools/schema" "8.3.10" + "@graphql-tools/utils" "8.6.9" + tslib "~2.3.0" value-or-promise "1.0.11" -"@graphql-typed-document-node/core@^3.1.0": +"@graphql-typed-document-node/core@^3.1.0", "@graphql-typed-document-node/core@^3.1.1": version "3.1.1" resolved "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.1.tgz#076d78ce99822258cf813ecc1e7fa460fa74d052" integrity sha512-NQ17ii0rK1b34VZonlmT2QMJFI70m0TRwbknO/ihlbatXyaktDhN/98vBiUU6kNBPljqGqyIrl2T4nY2RpFANg== -"@grpc/grpc-js@~1.6.0": - version "1.6.7" - resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz#4c4fa998ff719fe859ac19fe977fdef097bb99aa" - integrity sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw== +"@graphql-yoga/common@2.3.0": + version "2.3.0" + resolved "https://registry.npmjs.org/@graphql-yoga/common/-/common-2.3.0.tgz#29fa754d42bf01337facc1bca803ccf8a0186013" + integrity sha512-EPKK97953c8E1FiaLHMMGqLKtoAN5H9qHr0AiAzMlruJHn0JcbMf2qFTUXklCsuk6UEwNtxeHX42zim11O/E1g== + dependencies: + "@envelop/core" "^2.0.0" + "@envelop/disable-introspection" "^3.0.0" + "@envelop/parser-cache" "^4.0.0" + "@envelop/validation-cache" "^4.0.0" + "@graphql-tools/schema" "^8.3.1" + "@graphql-tools/utils" "^8.6.0" + "@graphql-typed-document-node/core" "^3.1.1" + "@graphql-yoga/subscription" "2.0.0" + cross-undici-fetch "^0.2.5" + dset "^3.1.1" + tslib "^2.3.1" + +"@graphql-yoga/node@2.3.0": + version "2.3.0" + resolved "https://registry.npmjs.org/@graphql-yoga/node/-/node-2.3.0.tgz#e22f29f179707a07a720507b7af3c44ad65499b5" + integrity sha512-uofEmKIDYthJuCcdhbgU0VW5i2cCqZVKIiEW/xbwvCOBJt439k46D+M6youiQYJ1miaA/m0btbuZ1sAo/TLjdQ== + dependencies: + "@envelop/core" "^2.0.0" + "@graphql-tools/utils" "^8.6.0" + "@graphql-yoga/common" "2.3.0" + "@graphql-yoga/subscription" "2.0.0" + cross-undici-fetch "^0.2.5" + tslib "^2.3.1" + +"@graphql-yoga/subscription@2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@graphql-yoga/subscription/-/subscription-2.0.0.tgz#8c6d3d78b2938a554efced7fd6c80cfaa80f7b8f" + integrity sha512-HlG+gIddjIP3/BDrMZymdzmzDjNdYuSGMxx6+1JA83gAEVRDR4yOoT4QeNKYqRhLK9xca/Hxp1PfBpquSa244Q== + dependencies: + "@repeaterjs/repeater" "^3.0.4" + tslib "^2.3.1" + +"@grpc/grpc-js@~1.4.0": + version "1.4.6" + resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.4.6.tgz#8108d7ab7c0c21b38c538c1a48583edbbf2c2412" + integrity sha512-Byau4xiXfIixb1PnW30V/P9mkrZ05lknyNqiK+cVY9J5hj3gecxd/anwaUbAM8j834zg1x78NvAbwGnMfWEu7A== dependencies: "@grpc/proto-loader" "^0.6.4" "@types/node" ">=12.12.47" -"@grpc/proto-loader@^0.6.12", "@grpc/proto-loader@^0.6.4": - version "0.6.12" - resolved "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz#459b619b8b9b67794bf0d1cb819653a38c63e164" - integrity sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg== +"@grpc/proto-loader@^0.6.1", "@grpc/proto-loader@^0.6.4": + version "0.6.7" + resolved "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.7.tgz#e62a202f4cf5897bdd0e244dec1dbc80d84bdfa1" + integrity sha512-QzTPIyJxU0u+r2qGe8VMl3j/W2ryhEvBv7hc42OjYfthSj370fUrb7na65rG6w3YLZS/fb8p89iTBobfWGDgdw== dependencies: "@types/long" "^4.0.1" lodash.camelcase "^4.3.0" long "^4.0.0" protobufjs "^6.10.0" - yargs "^16.2.0" + yargs "^16.1.1" "@hapi/hoek@^9.0.0": - version "9.3.0" - resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" - integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== + version "9.0.4" + resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.0.4.tgz#e80ad4e8e8d2adc6c77d985f698447e8628b6010" + integrity sha512-EwaJS7RjoXUZ2cXXKZZxZqieGtc7RbvQhUy8FwDoMQtxWVi14tFjeFCYPZAM1mBCpOpiBpyaZbb9NeHc7eGKgw== "@hapi/topo@^5.0.0": - version "5.1.0" - resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" - integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== + version "5.0.0" + resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.0.0.tgz#c19af8577fa393a06e9c77b60995af959be721e7" + integrity sha512-tFJlT47db0kMqVm3H4nQYgn6Pwg10GTZHb1pwmSiv1K4ks6drQOtfEF5ZnPjkvC+y4/bUPHK+bc87QvLcL+WMw== dependencies: "@hapi/hoek" "^9.0.0" @@ -2961,9 +3023,9 @@ scheduler "^0.20.2" "@humanwhocodes/config-array@^0.9.2": - version "0.9.5" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7" - integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw== + version "0.9.2" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.2.tgz#68be55c737023009dfc5fe245d51181bb6476914" + integrity sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA== dependencies: "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" @@ -2995,20 +3057,19 @@ integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== "@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + version "1.0.0" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b" + integrity sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg== dependencies: camelcase "^5.3.1" find-up "^4.1.0" - get-package-type "^0.1.0" js-yaml "^3.13.1" resolve-from "^5.0.0" "@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + version "0.1.2" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" + integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== "@jest/console@^27.5.1": version "27.5.1" @@ -3179,6 +3240,17 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" +"@jest/types@^27.2.5": + version "27.2.5" + resolved "https://registry.npmjs.org/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132" + integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" @@ -3516,19 +3588,19 @@ integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== "@jridgewell/resolve-uri@^3.0.3": - version "3.0.7" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" - integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== + version "3.0.5" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" + integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.13" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" - integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== + version "1.4.11" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" + integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== "@jridgewell/trace-mapping@^0.3.0": - version "0.3.10" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.10.tgz#db436f0917d655393851bc258918c00226c9b183" - integrity sha512-Q0YbBd6OTsXm8Y21+YUSDXupHnodNC2M4O18jtd3iwJ3+vMZNdKGols0a9G6JOK0dcJ3IdUUHoh908ZI6qhk8Q== + version "0.3.4" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" + integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" @@ -3587,9 +3659,9 @@ ws "^7.3.1" "@leichtgewicht/ip-codec@^2.0.1": - version "2.0.4" - resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" - integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== + version "2.0.3" + resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz#0300943770e04231041a51bd39f0439b5c7ab4f0" + integrity sha512-nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg== "@lerna/add@4.0.0": version "4.0.0" @@ -4275,9 +4347,9 @@ "@lezer/common" "^0.16.0" "@lezer/lr@^0.16.0": - version "0.16.2" - resolved "https://registry.npmjs.org/@lezer/lr/-/lr-0.16.2.tgz#a26e2572b6acf60815b12d898341ed02464f1c5e" - integrity sha512-bx7kkp4eLOzp+YclKMOx1P0OzWRH/6Y3EdEvsHC+rhsc7H72GvccwlKfuXlWkiKjnmzlxLTFxsNjA8v+Yj75mQ== + version "0.16.1" + resolved "https://registry.npmjs.org/@lezer/lr/-/lr-0.16.1.tgz#abe8c538d3f1a811ce5731847e3d0470c7709dcd" + integrity sha512-RuRD84dWY9If8BanfaaWNe0YhRdYWtni92GpB4C4/7JgHyAIfdkJz7miBjgILm3gOsBjJsJh56vb1ckxSQEWBg== dependencies: "@lezer/common" "^0.16.0" @@ -4304,24 +4376,24 @@ read-yaml-file "^1.1.0" "@mapbox/node-pre-gyp@^1.0.0": - version "1.0.9" - resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz#09a8781a3a036151cdebbe8719d6f8b25d4058bc" - integrity sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw== + version "1.0.5" + resolved "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz#2a0b32fcb416fb3f2250fd24cb2a81421a4f5950" + integrity sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA== dependencies: - detect-libc "^2.0.0" + detect-libc "^1.0.3" https-proxy-agent "^5.0.0" make-dir "^3.1.0" - node-fetch "^2.6.7" + node-fetch "^2.6.1" nopt "^5.0.0" - npmlog "^5.0.1" + npmlog "^4.1.2" rimraf "^3.0.2" - semver "^7.3.5" - tar "^6.1.11" + semver "^7.3.4" + tar "^6.1.0" "@material-table/core@^3.1.0": - version "3.2.5" - resolved "https://registry.npmjs.org/@material-table/core/-/core-3.2.5.tgz#37b3c665bed3ded6c147ad74adb330bf49efb213" - integrity sha512-TmVN/In15faabezW3COb4Ve5+YhqxFEQnf2Q2Cz3FVXXCFqJvtu3pkRLi+7N9UJ5bvistszz6wfHeiZZY1Rf9Q== + version "3.1.0" + resolved "https://registry.npmjs.org/@material-table/core/-/core-3.1.0.tgz#4fc3bd1553359e628413437a4102d8469852c253" + integrity sha512-46vpm1q9v2B5t/VgaEq2JmnftTBYle1yNAX3cfdQsTRZ1iWkpG34qBkNHx/hbOauQPsm5hmeUo1KJJZdwtGL1g== dependencies: "@babel/runtime" "^7.12.5" "@date-io/date-fns" "^1.3.13" @@ -4334,7 +4406,6 @@ prop-types "^15.7.2" react-beautiful-dnd "^13.0.0" react-double-scrollbar "0.0.15" - uuid "^3.4.0" "@material-ui/core@^4.11.0", "@material-ui/core@^4.11.3", "@material-ui/core@^4.12.1", "@material-ui/core@^4.12.2", "@material-ui/core@^4.9.10", "@material-ui/core@^4.9.13": version "4.12.4" @@ -4465,38 +4536,38 @@ "@types/gapi.client" "*" "@microsoft/api-documenter@^7.17.11": - version "7.17.13" - resolved "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.17.13.tgz#a3b397f3192b584185077282693c01adbae2587a" - integrity sha512-EGH1M70QS/NibdlmC33/wj5a9rSbzdWNQekvd/RdD0nDB/tNOamjmaBISEOg5y7DFLn18sZhwDKD/Q9jtYtN3g== + version "7.17.11" + resolved "https://registry.npmjs.org/@microsoft/api-documenter/-/api-documenter-7.17.11.tgz#7f1b50e610e45f581ff4344c73b184d822e6bc11" + integrity sha512-VdCu4eG5RISGEiG/hFO3jaN3gEgMZVXZRFpch/PQzrLO3Vh2QhZTz2LsZ2SYyb7UwBZCK9Z76ULv5cGoflylNA== dependencies: - "@microsoft/api-extractor-model" "7.17.3" + "@microsoft/api-extractor-model" "7.17.2" "@microsoft/tsdoc" "0.14.1" - "@rushstack/node-core-library" "3.45.5" - "@rushstack/ts-command-line" "4.11.0" + "@rushstack/node-core-library" "3.45.4" + "@rushstack/ts-command-line" "4.10.10" colors "~1.2.1" js-yaml "~3.13.1" resolve "~1.17.0" -"@microsoft/api-extractor-model@7.17.3", "@microsoft/api-extractor-model@^7.17.2": - version "7.17.3" - resolved "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.17.3.tgz#06899902ab1c10b85690232f21c1585cc158d983" - integrity sha512-ETslFxVEZTEK6mrOARxM34Ll2W/5H2aTk9Pe9dxsMCnthE8O/CaStV4WZAGsvvZKyjelSWgPVYGowxGVnwOMlQ== +"@microsoft/api-extractor-model@7.17.2", "@microsoft/api-extractor-model@^7.17.2": + version "7.17.2" + resolved "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.17.2.tgz#033b39a7bac4f3eee3e5ffd406d2af61cedc727e" + integrity sha512-fYfCeBeLm7jnZligC64qHiH4/vzswFLDfyPpX+uKO36OI2kIeMHrYG0zaezmuinKvE4vg1dAz38zZeDbPvBKGg== dependencies: "@microsoft/tsdoc" "0.14.1" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.45.5" + "@rushstack/node-core-library" "3.45.4" "@microsoft/api-extractor@^7.23.0": - version "7.23.2" - resolved "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.23.2.tgz#fb3c4a94751ba6759b8038d3405dda5da17c82b1" - integrity sha512-0LABOAmsHDomKihjoqLvY0mR1dh7R7fqB0O6qrjqAgQGBPxlRJCDH1tzFzlDS2OdeCxhMtFB3xd8EAr44huujg== + version "7.23.0" + resolved "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.23.0.tgz#8bd5a197e04b0ba92fb85e0f53b4d7cadd0a95b2" + integrity sha512-fbdX05RVE1EMA7nvyRHuS9nx1pryhjgURDx6pQlE/9yOXQ5PO7MpYdfWGaRsQwyYuU3+tPxgro819c0R3AK6KA== dependencies: - "@microsoft/api-extractor-model" "7.17.3" + "@microsoft/api-extractor-model" "7.17.2" "@microsoft/tsdoc" "0.14.1" "@microsoft/tsdoc-config" "~0.16.1" - "@rushstack/node-core-library" "3.45.5" + "@rushstack/node-core-library" "3.45.4" "@rushstack/rig-package" "0.3.11" - "@rushstack/ts-command-line" "4.11.0" + "@rushstack/ts-command-line" "4.10.10" colors "~1.2.1" lodash "~4.17.15" resolve "~1.17.0" @@ -4582,29 +4653,29 @@ integrity sha512-BTpWy1e+FxN82RnLz4x1+JcEewVdfmUhV1C6/XYD5AjS7PQp9QFF7K8bCD6gzPTr2l+prvqOyVueQhFJxB1vfg== "@n1ru4l/push-pull-async-iterable-iterator@^3.1.0": - version "3.2.0" - resolved "https://registry.npmjs.org/@n1ru4l/push-pull-async-iterable-iterator/-/push-pull-async-iterable-iterator-3.2.0.tgz#c15791112db68dd9315d329d652b7e797f737655" - integrity sha512-3fkKj25kEjsfObL6IlKPAlHYPq/oYwUkkQ03zsTTiDjD7vg/RxjdiLeCydqtxHZP0JgsXL3D/X5oAkMGzuUp/Q== + version "3.1.0" + resolved "https://registry.npmjs.org/@n1ru4l/push-pull-async-iterable-iterator/-/push-pull-async-iterable-iterator-3.1.0.tgz#be450c97d1c7cd6af1a992d53232704454345df9" + integrity sha512-K4scWxGhdQM0masHHy4gIQs2iGiLEXCrXttumknyPJqtdl4J179BjpibWSSQ1fxKdCcHgIlCTKXJU6cMM6D6Wg== -"@nodelib/fs.scandir@2.1.5": - version "2.1.5" - resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" - integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== +"@nodelib/fs.scandir@2.1.3": + version "2.1.3" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" + integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== dependencies: - "@nodelib/fs.stat" "2.0.5" + "@nodelib/fs.stat" "2.0.3" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": - version "2.0.5" - resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" - integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== +"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": + version "2.0.3" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" + integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== "@nodelib/fs.walk@^1.2.3": - version "1.2.8" - resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" - integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + version "1.2.4" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" + integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== dependencies: - "@nodelib/fs.scandir" "2.1.5" + "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" "@npmcli/arborist@^4.0.4": @@ -4646,27 +4717,19 @@ walk-up-path "^1.0.0" "@npmcli/ci-detect@^1.0.0": - version "1.4.0" - resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" - integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== + version "1.3.0" + resolved "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.3.0.tgz#6c1d2c625fb6ef1b9dea85ad0a5afcbef85ef22a" + integrity sha512-oN3y7FAROHhrAt7Rr7PnTSwrHrZVRTS2ZbyxeQwSSYD0ifwM3YNgQqbaRmjcWoPyq77MjchusjJDspbzMmip1Q== "@npmcli/fs@^1.0.0": - version "1.1.1" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" - integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== + version "1.0.0" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" + integrity sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ== dependencies: "@gar/promisify" "^1.0.1" semver "^7.3.5" -"@npmcli/fs@^2.1.0": - version "2.1.0" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz#f2a21c28386e299d1a9fae8051d35ad180e33109" - integrity sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ== - dependencies: - "@gar/promisify" "^1.1.3" - semver "^7.3.5" - -"@npmcli/git@^2.1.0": +"@npmcli/git@^2.0.1", "@npmcli/git@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== @@ -4689,14 +4752,14 @@ npm-normalize-package-bin "^1.0.1" "@npmcli/map-workspaces@^2.0.0": - version "2.0.3" - resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.3.tgz#2d3c75119ee53246e9aa75bc469a55281cd5f08f" - integrity sha512-X6suAun5QyupNM8iHkNPh0AHdRC2rb1W+MTdMvvA/2ixgmqZwlq5cGUBgmKHUHT2LgrkKJMAXbfAoTxOigpK8Q== + version "2.0.0" + resolved "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-2.0.0.tgz#e342efbbdd0dad1bba5d7723b674ca668bf8ac5a" + integrity sha512-QBJfpCY1NOAkkW3lFfru9VTdqvMB2TN0/vrevl5xBCv5Fi0XDVcA6rqqSau4Ysi4Iw3fBzyXV7hzyTBDfadf7g== dependencies: "@npmcli/name-from-folder" "^1.0.1" - glob "^8.0.1" - minimatch "^5.0.1" - read-package-json-fast "^2.0.3" + glob "^7.1.6" + minimatch "^3.0.4" + read-package-json-fast "^2.0.1" "@npmcli/metavuln-calculator@^2.0.0": version "2.0.0" @@ -4708,7 +4771,14 @@ pacote "^12.0.0" semver "^7.3.2" -"@npmcli/move-file@^1.0.1", "@npmcli/move-file@^1.1.0": +"@npmcli/move-file@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" + integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== + dependencies: + mkdirp "^1.0.4" + +"@npmcli/move-file@^1.1.0": version "1.1.2" resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== @@ -4716,14 +4786,6 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@npmcli/move-file@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.0.tgz#417f585016081a0184cef3e38902cd917a9bbd02" - integrity sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg== - dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" - "@npmcli/name-from-folder@^1.0.1": version "1.0.1" resolved "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" @@ -4749,13 +4811,15 @@ infer-owner "^1.0.4" "@npmcli/run-script@^1.8.2": - version "1.8.6" - resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" - integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== + version "1.8.3" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.3.tgz#07f440ed492400bb1114369bc37315eeaaae2bb3" + integrity sha512-ELPGWAVU/xyU+A+H3pEPj0QOvYwLTX71RArXcClFzeiyJ/b/McsZ+d0QxpznvfFtZzxGN/gz/1cvlqICR4/suQ== dependencies: "@npmcli/node-gyp" "^1.0.2" "@npmcli/promise-spawn" "^1.3.2" + infer-owner "^1.0.4" node-gyp "^7.1.0" + puka "^1.0.1" read-package-json-fast "^2.0.1" "@npmcli/run-script@^2.0.0": @@ -4807,29 +4871,41 @@ universal-user-agent "^6.0.0" "@octokit/auth-oauth-app@^4.0.0", "@octokit/auth-oauth-app@^4.3.0": - version "4.3.1" - resolved "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.1.tgz#c5c423f17519eb7e039a7d60936dfb869c7bdf36" - integrity sha512-FXkKcGtTXS2987rp11mSuhMOXDw8Iy/ED9aXs83T29VeMEWjv40q4ytC0voUDxkBC/of1QYOPQUAdI2tv/dwNg== + version "4.3.0" + resolved "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.0.tgz#de02f184360ffd7cfccef861053784fc4410e7ea" + integrity sha512-cETmhmOQRHCz6cLP7StThlJROff3A/ln67Q961GuIr9zvyFXZ4lIJy9RE6Uw5O7D8IXWPU3jhDnG47FTSGQr8Q== dependencies: "@octokit/auth-oauth-device" "^3.1.1" "@octokit/auth-oauth-user" "^1.2.1" - "@octokit/request" "^5.6.3" + "@octokit/request" "^5.3.0" "@octokit/types" "^6.0.3" "@types/btoa-lite" "^1.0.0" btoa-lite "^1.0.0" universal-user-agent "^6.0.0" "@octokit/auth-oauth-device@^3.1.1": - version "3.1.2" - resolved "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.2.tgz#d299f51f491669f37fe7af8738f5ac921e63973c" - integrity sha512-w7Po4Ck6N2aAn2VQyKLuojruiyKROTBv4qs6IwE5rbwF7HhBXXp4A/NKmkpoFIZkiXQtM+N8QtkSck4ApYWdGg== + version "3.1.1" + resolved "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.1.tgz#380499f9a850425e2c7bdeb62afc070181c536a9" + integrity sha512-ykDZROilszXZJ6pYdl6SZ15UZniCs0zDcKgwOZpMz3U0QDHPUhFGXjHToBCAIHwbncMu+jLt4/Nw4lq3FwAw/w== dependencies: "@octokit/oauth-methods" "^1.1.0" "@octokit/request" "^5.4.14" "@octokit/types" "^6.10.0" universal-user-agent "^6.0.0" -"@octokit/auth-oauth-user@^1.2.1", "@octokit/auth-oauth-user@^1.2.3", "@octokit/auth-oauth-user@^1.3.0": +"@octokit/auth-oauth-user@^1.2.1", "@octokit/auth-oauth-user@^1.2.3": + version "1.2.4" + resolved "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.2.4.tgz#3594eb7d40cb462240e7e90849781dfa0045aed5" + integrity sha512-efOajupCZBP1veqx5w59Qey0lIud1rDUgxTRjjkQDU3eOBmkAasY1pXemDsQwW0I85jb1P/gn2dMejedVxf9kw== + dependencies: + "@octokit/auth-oauth-device" "^3.1.1" + "@octokit/oauth-methods" "^1.1.0" + "@octokit/request" "^5.4.14" + "@octokit/types" "^6.12.2" + btoa-lite "^1.0.0" + universal-user-agent "^6.0.0" + +"@octokit/auth-oauth-user@^1.3.0": version "1.3.0" resolved "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.3.0.tgz#da4e4529145181a6aa717ae858afb76ebd6e3360" integrity sha512-3QC/TAdk7onnxfyZ24BnJRfZv8TRzQK7SEFUS9vLng4Vv6Hv6I64ujdk/CUkREec8lhrwU764SZ/d+yrjjqhaQ== @@ -4842,11 +4918,11 @@ universal-user-agent "^6.0.0" "@octokit/auth-token@^2.4.4": - version "2.5.0" - resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" - integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== + version "2.4.4" + resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.4.tgz#ee31c69b01d0378c12fd3ffe406030f3d94d3b56" + integrity sha512-LNfGu3Ro9uFAYh10MUZVaT7X2CnNm2C8IDQmabx+3DygYIQjs9FwzFAHN/0t6mu5HEPhxcb1XOuxdpY82vCg2Q== dependencies: - "@octokit/types" "^6.0.3" + "@octokit/types" "^6.0.0" "@octokit/auth-unauthenticated@^2.0.0", "@octokit/auth-unauthenticated@^2.0.4": version "2.1.0" @@ -4856,27 +4932,39 @@ "@octokit/request-error" "^2.1.0" "@octokit/types" "^6.0.3" -"@octokit/core@^3.3.2", "@octokit/core@^3.4.0", "@octokit/core@^3.5.1": - version "3.6.0" - resolved "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" - integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== +"@octokit/core@^3.2.3": + version "3.2.4" + resolved "https://registry.npmjs.org/@octokit/core/-/core-3.2.4.tgz#5791256057a962eca972e31818f02454897fd106" + integrity sha512-d9dTsqdePBqOn7aGkyRFe7pQpCXdibSJ5SFnrTr0axevObZrpz3qkWm7t/NjYv5a66z6vhfteriaq4FRz3e0Qg== dependencies: "@octokit/auth-token" "^2.4.4" "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.6.3" + "@octokit/request" "^5.4.12" + "@octokit/types" "^6.0.3" + before-after-hook "^2.1.0" + universal-user-agent "^6.0.0" + +"@octokit/core@^3.3.2", "@octokit/core@^3.4.0", "@octokit/core@^3.5.1": + version "3.5.1" + resolved "https://registry.npmjs.org/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" + integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw== + dependencies: + "@octokit/auth-token" "^2.4.4" + "@octokit/graphql" "^4.5.8" + "@octokit/request" "^5.6.0" "@octokit/request-error" "^2.0.5" "@octokit/types" "^6.0.3" before-after-hook "^2.2.0" universal-user-agent "^6.0.0" "@octokit/endpoint@^6.0.1": - version "6.0.12" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" - integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== + version "6.0.3" + resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487" + integrity sha512-Y900+r0gIz+cWp6ytnkibbD95ucEzDSKzlEnaWS52hbCDNcCJYO5mRmWW7HRAnDc7am+N/5Lnd8MppSaTYx1Yg== dependencies: - "@octokit/types" "^6.0.3" - is-plain-object "^5.0.0" - universal-user-agent "^6.0.0" + "@octokit/types" "^5.0.0" + is-plain-object "^3.0.0" + universal-user-agent "^5.0.0" "@octokit/graphql@^4.5.8": version "4.8.0" @@ -4902,12 +4990,28 @@ fromentries "^1.3.1" universal-user-agent "^6.0.0" -"@octokit/oauth-authorization-url@^4.2.1", "@octokit/oauth-authorization-url@^4.3.1": +"@octokit/oauth-authorization-url@^4.2.1": version "4.3.3" resolved "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.3.tgz#6a6ef38f243086fec882b62744f39b517528dfb9" integrity sha512-lhP/t0i8EwTmayHG4dqLXgU+uPVys4WD/qUNvC+HfB1S1dyqULm5Yx9uKc1x79aP66U1Cb4OZeW8QU/RA9A4XA== -"@octokit/oauth-methods@^1.1.0", "@octokit/oauth-methods@^1.2.2": +"@octokit/oauth-authorization-url@^4.3.1": + version "4.3.1" + resolved "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.1.tgz#008d09bf427a7f61c70b5283040d60a456011a51" + integrity sha512-sI/SOEAvzRhqdzj+kJl+2ifblRve2XU6ZB36Lq25Su8R31zE3GoKToSLh64nWFnKePNi2RrdcMm94UEIQZslOw== + +"@octokit/oauth-methods@^1.1.0": + version "1.2.2" + resolved "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.2.tgz#3d98c548aa2ace36ad8d0ce6593fd49dcbe103cc" + integrity sha512-CFMUMn9DdPLMcpffhKgkwIIClfv0ZToJM4qcg4O0egCoHMYkVlxl22bBoo9qCnuF1U/xn871KEXuozKIX+bA2w== + dependencies: + "@octokit/oauth-authorization-url" "^4.3.1" + "@octokit/request" "^5.4.14" + "@octokit/request-error" "^2.0.5" + "@octokit/types" "^6.12.2" + btoa-lite "^1.0.0" + +"@octokit/oauth-methods@^1.2.2": version "1.2.6" resolved "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.6.tgz#b9ac65e374b2cc55ee9dd8dcdd16558550438ea7" integrity sha512-nImHQoOtKnSNn05uk2o76om1tJWiAo4lOu2xMAHYsNr0fwopP+Dv+2MlGvaMMlFjoqVd3fF3X5ZDTKCsqgmUaQ== @@ -4923,6 +5027,11 @@ resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== +"@octokit/openapi-types@^7.3.2": + version "7.3.2" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.3.2.tgz#065ce49b338043ec7f741316ce06afd4d459d944" + integrity sha512-oJhK/yhl9Gt430OrZOzAl2wJqR0No9445vmZ9Ey8GjUZUpwuu/vmEFP0TDhDXdpGDoxD6/EIFHJEcY8nHXpDTA== + "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" resolved "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" @@ -4935,11 +5044,31 @@ dependencies: "@octokit/types" "^6.34.0" +"@octokit/plugin-paginate-rest@^2.6.2": + version "2.7.0" + resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.7.0.tgz#6bb7b043c246e0654119a6ec4e72a172c9e2c7f3" + integrity sha512-+zARyncLjt9b0FjqPAbJo4ss7HOlBi1nprq+cPlw5vu2+qjy7WvlXhtXFdRHQbSL1Pt+bfAKaLADEkkvg8sP8w== + dependencies: + "@octokit/types" "^6.0.1" + +"@octokit/plugin-request-log@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.2.tgz#394d59ec734cd2f122431fbaf05099861ece3c44" + integrity sha512-oTJSNAmBqyDR41uSMunLQKMX0jmEXbwD1fpz8FG27lScV3RhtGfBa1/BBLym+PxcC16IBlF7KH9vP1BUYxA+Eg== + "@octokit/plugin-request-log@^1.0.4": version "1.0.4" resolved "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== +"@octokit/plugin-rest-endpoint-methods@5.3.1": + version "5.3.1" + resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.3.1.tgz#deddce769b4ec3179170709ab42e4e9e6195aaa9" + integrity sha512-3B2iguGmkh6bQQaVOtCsS0gixrz8Lg0v4JuXPqBcFqLKuJtxAUf3K88RxMEf/naDOI73spD+goJ/o7Ie7Cvdjg== + dependencies: + "@octokit/types" "^6.16.2" + deprecation "^2.3.1" + "@octokit/plugin-rest-endpoint-methods@^5.12.0": version "5.13.0" resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" @@ -4957,9 +5086,9 @@ bottleneck "^2.15.3" "@octokit/plugin-throttling@^3.5.1": - version "3.6.2" - resolved "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.6.2.tgz#abfc045309b8e46f6d6b6c01047eb41c4031f2f8" - integrity sha512-0az5fxgVlhFfFtiKLKVXTpmCG2tK3BG0fYI8SO4pmGlN1kyJktJVQA+6KKaFxtxMIWsuHmSEAkR6zSgtk86g2A== + version "3.5.2" + resolved "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.5.2.tgz#8b1797a5f14edbca0b8af619394056ed0ed5c9b5" + integrity sha512-Eu7kfJxU8vmHqWGNszWpg+GVp2tnAfax3XQV5CkYPEE69C+KvInJXW9WajgSeW+cxYe0UVdouzCtcreGNuJo7A== dependencies: "@octokit/types" "^6.0.1" bottleneck "^2.15.3" @@ -4973,7 +5102,7 @@ deprecation "^2.0.0" once "^1.4.0" -"@octokit/request@^5.4.12", "@octokit/request@^5.4.14", "@octokit/request@^5.6.0", "@octokit/request@^5.6.3": +"@octokit/request@^5.3.0", "@octokit/request@^5.4.12", "@octokit/request@^5.4.14", "@octokit/request@^5.6.0": version "5.6.3" resolved "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== @@ -4985,7 +5114,17 @@ node-fetch "^2.6.7" universal-user-agent "^6.0.0" -"@octokit/rest@^18.1.0", "@octokit/rest@^18.12.0", "@octokit/rest@^18.5.3": +"@octokit/rest@^18.1.0", "@octokit/rest@^18.5.3": + version "18.5.6" + resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.6.tgz#8c9a7c9329c7bbf478af20df78ddeab0d21f6d89" + integrity sha512-8HdG6ZjQdZytU6tCt8BQ2XLC7EJ5m4RrbyU/EARSkAM1/HP3ceOzMG/9atEfe17EDMer3IVdHWLedz2wDi73YQ== + dependencies: + "@octokit/core" "^3.2.3" + "@octokit/plugin-paginate-rest" "^2.6.2" + "@octokit/plugin-request-log" "^1.0.2" + "@octokit/plugin-rest-endpoint-methods" "5.3.1" + +"@octokit/rest@^18.12.0": version "18.12.0" resolved "https://registry.npmjs.org/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== @@ -4995,14 +5134,21 @@ "@octokit/plugin-request-log" "^1.0.4" "@octokit/plugin-rest-endpoint-methods" "^5.12.0" -"@octokit/types@^5.0.1": +"@octokit/types@^5.0.0", "@octokit/types@^5.0.1": version "5.5.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-5.5.0.tgz#e5f06e8db21246ca102aa28444cdb13ae17a139b" integrity sha512-UZ1pErDue6bZNjYOotCNveTXArOMZQFG6hKJfOnGnulVCMcVVi7YIIuuR4WfBhjo7zgpmzn/BkPDnUXtNx+PcQ== dependencies: "@types/node" ">= 8" -"@octokit/types@^6.0.1", "@octokit/types@^6.0.3", "@octokit/types@^6.10.0", "@octokit/types@^6.12.2", "@octokit/types@^6.14.2", "@octokit/types@^6.16.1", "@octokit/types@^6.26.0", "@octokit/types@^6.27.1", "@octokit/types@^6.34.0", "@octokit/types@^6.8.2": +"@octokit/types@^6.0.0", "@octokit/types@^6.0.1", "@octokit/types@^6.0.3", "@octokit/types@^6.10.0", "@octokit/types@^6.12.2", "@octokit/types@^6.14.2", "@octokit/types@^6.16.1", "@octokit/types@^6.16.2", "@octokit/types@^6.8.2": + version "6.16.4" + resolved "https://registry.npmjs.org/@octokit/types/-/types-6.16.4.tgz#d24f5e1bacd2fe96d61854b5bda0e88cf8288dfe" + integrity sha512-UxhWCdSzloULfUyamfOg4dJxV9B+XjgrIZscI0VCbp4eNrjmorGEw+4qdwcpTsu6DIrm9tQsFQS2pK5QkqQ04A== + dependencies: + "@octokit/openapi-types" "^7.3.2" + +"@octokit/types@^6.26.0", "@octokit/types@^6.27.1", "@octokit/types@^6.34.0": version "6.34.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== @@ -5035,11 +5181,12 @@ integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== "@openapi-contrib/openapi-schema-to-json-schema@^3.0.0": - version "3.1.2" - resolved "https://registry.npmjs.org/@openapi-contrib/openapi-schema-to-json-schema/-/openapi-schema-to-json-schema-3.1.2.tgz#d4c1b0d4687292805482118c126b3c1e2a4e6bdd" - integrity sha512-dQVj/0CaXMw16eongqqxmKkdwNd5RxAC8JzsA/ICj0v6oz5cLetFQoMGwwfqsOXrfkdXUnRdqIRKIhC7TfFeyQ== + version "3.0.3" + resolved "https://registry.npmjs.org/@openapi-contrib/openapi-schema-to-json-schema/-/openapi-schema-to-json-schema-3.0.3.tgz#c626eab186938f2751ee54ec68b345133bc0065c" + integrity sha512-/WX/Jos8n7CxvtWPmhlKl9qCAAW0I+VR+V4yXfQxCmB8wmjiz6lPLTGjNk5zD15qi2MGv58++hQLLdow89KdkA== dependencies: fast-deep-equal "^3.1.3" + lodash.clonedeep "^4.5.0" "@openapitools/openapi-generator-cli@^2.4.26": version "2.5.1" @@ -5063,9 +5210,9 @@ tslib "2.0.3" "@opentelemetry/api@^1.0.1": - version "1.1.0" - resolved "https://registry.npmjs.org/@opentelemetry/api/-/api-1.1.0.tgz#563539048255bbe1a5f4f586a4a10a1bb737f44a" - integrity sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ== + version "1.0.4" + resolved "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz#a167e46c10d05a07ab299fc518793b0cff8f6924" + integrity sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog== "@panva/asn1.js@^1.0.0": version "1.0.0" @@ -5144,6 +5291,11 @@ dependencies: "@react-hookz/deep-equal" "^1.0.2" +"@repeaterjs/repeater@^3.0.4": + version "3.0.4" + resolved "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.4.tgz#a04d63f4d1bf5540a41b01a921c9a7fddc3bd1ca" + integrity sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA== + "@rjsf/core@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@rjsf/core/-/core-3.2.1.tgz#8a7b24c9a6f01f0ecb093fdfc777172c12b1b009" @@ -5303,17 +5455,17 @@ picomatch "^2.2.2" "@rollup/pluginutils@^4.1.1": - version "4.2.1" - resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz#e6c6c3aba0744edce3fb2074922d3776c0af2a6d" - integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ== + version "4.1.1" + resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz#1d4da86dd4eded15656a57d933fda2b9a08d47ec" + integrity sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ== dependencies: estree-walker "^2.0.1" picomatch "^2.2.2" -"@rushstack/node-core-library@3.45.5": - version "3.45.5" - resolved "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.5.tgz#00f92143cc21c3ad94fcd81ba168a40ac8cb77f2" - integrity sha512-KbN7Hp9vH3bD3YJfv6RnVtzzTAwGYIBl7y2HQLY4WEQqRbvE3LgI78W9l9X+cTAXCX//p0EeoiUYNTFdqJrMZg== +"@rushstack/node-core-library@3.45.4": + version "3.45.4" + resolved "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.45.4.tgz#a5e1246c462940d16a5acc667c1ffe460b514087" + integrity sha512-FMoEQWjK7nWAO2uFgV1eVpVhY9ZDGOdIIomi9zTej64cKJ+8/Nvu+ny0xKaUDEjw/ALftN2D2ml7L0RDpW/Z9g== dependencies: "@types/node" "12.20.24" colors "~1.2.1" @@ -5333,10 +5485,10 @@ resolve "~1.17.0" strip-json-comments "~3.1.1" -"@rushstack/ts-command-line@4.11.0": - version "4.11.0" - resolved "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.11.0.tgz#4cd3b9f59b41aed600042936260fdaa55ca0184d" - integrity sha512-ptG9L0mjvJ5QtK11GsAFY+jGfsnqHDS6CY6Yw1xT7a9bhjfNYnf6UPwjV+pF6UgiucfNcMDNW9lkDLxvZKKxMg== +"@rushstack/ts-command-line@4.10.10": + version "4.10.10" + resolved "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.10.10.tgz#69da17b03ce57795b67ea2aabf7c976c81816078" + integrity sha512-F+MH7InPDXqX40qvvcEsnvPpmg566SBpfFqj2fcCh8RjM6AyOoWlXc8zx7giBD3ZN85NVAEjZAgrcLU0z+R2yg== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" @@ -5344,16 +5496,16 @@ string-argv "~0.3.1" "@samverschueren/stream-to-observable@^0.3.0": - version "0.3.1" - resolved "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz#a21117b19ee9be70c379ec1877537ef2e1c63301" - integrity sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ== + version "0.3.0" + resolved "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" + integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== dependencies: any-observable "^0.3.0" -"@sideway/address@^4.1.3": - version "4.1.4" - resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" - integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== +"@sideway/address@^4.1.0": + version "4.1.1" + resolved "https://registry.npmjs.org/@sideway/address/-/address-4.1.1.tgz#9e321e74310963fdf8eebfbee09c7bd69972de4d" + integrity sha512-+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ== dependencies: "@hapi/hoek" "^9.0.0" @@ -5373,9 +5525,9 @@ integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== "@sindresorhus/is@^4.0.0": - version "4.6.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" - integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== + version "4.0.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.0.tgz#2ff674e9611b45b528896d820d3d7a812de2f0e4" + integrity sha512-FyD2meJpDPjyNQejSjvnhpgI/azsQkA4lGbuu5BQZfjvJ9cbRZXzeWL2HceCekW4lixO9JPesIIQkSoLjeJHNQ== "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.3": version "1.8.3" @@ -5413,9 +5565,9 @@ integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== "@spotify/eslint-config-base@^13.0.0": - version "13.0.1" - resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.1.tgz#91471028de6426a1f1a5cc06aa9aeb6d8c85565f" - integrity sha512-7dC5zMJpNud9UBCHVk/IWfZOXKyuRkcyopHzTJi3xsfmZcZvi0jTSVIf7sv8315lpjmqroVZoUdKbxZFkZcZpA== + version "13.0.0" + resolved "https://registry.npmjs.org/@spotify/eslint-config-base/-/eslint-config-base-13.0.0.tgz#bb748bb2b705ffb5085f873aa0daf94dfad59985" + integrity sha512-BrnexUcUQkp6XUw8HWSmE4LpWtJGgEC6A7vrSkgpgKJtZaYkpw8O+Xnk60DA266ecbFHYbQD6ngqKHlvjNB+pA== "@spotify/eslint-config-react@^13.0.0": version "13.0.1" @@ -5573,9 +5725,9 @@ defer-to-connect "^1.0.1" "@szmarczak/http-timer@^4.0.5": - version "4.0.6" - resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807" - integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w== + version "4.0.5" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz#bfbd50211e9dfa51ba07da58a14cdfd333205152" + integrity sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ== dependencies: defer-to-connect "^2.0.0" @@ -5588,9 +5740,9 @@ "@testing-library/dom" "^8.1.0" "@testing-library/dom@^8.0.0", "@testing-library/dom@^8.1.0": - version "8.13.0" - resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.13.0.tgz#bc00bdd64c7d8b40841e27a70211399ad3af46f5" - integrity sha512-9VHgfIatKNXQNaZTtLnalIy0jNZzY35a4S3oi08YAt9Hv1VsfZ/DfA45lM8D/UhtHBGJ4/lGwp0PZkVndRkoOQ== + version "8.11.3" + resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.11.3.tgz#38fd63cbfe14557021e88982d931e33fb7c1a808" + integrity sha512-9LId28I+lx70wUiZjLvi1DB/WT2zGOxUh46glrSNMaWVx849kKAluezVzZrXJfTKKoQTmEOutLes/bHg4Bj3aA== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" @@ -5725,14 +5877,14 @@ integrity sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA== "@types/aria-query@^4.2.0": - version "4.2.2" - resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.2.tgz#ed4e0ad92306a704f9fb132a0cfcf77486dbe2bc" - integrity sha512-HnYpAE1Y6kRyKM/XkEuiRQhTHvkzMBurTHnpFLYLBGPIylZNPs9jJcuOOYWxPLJCSEtmZT0Y8rHDokKN7rRTig== + version "4.2.0" + resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.0.tgz#14264692a9d6e2fa4db3df5e56e94b5e25647ac0" + integrity sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A== "@types/aws-lambda@^8.10.83": - version "8.10.97" - resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.97.tgz#9b2f2adfa63a215173a9da37604e4f65dd56cb98" - integrity sha512-BZk3qO4R2KN8Ts3eR6CW1n8LI46UOgv1KoDZjo8J9vOQvDeX/rsrv1H0BpEAMcSqZ1mLwTEyAMtlua5tlSn0kw== + version "8.10.92" + resolved "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.92.tgz#645f769ff88b8eba1acd35542695ac322c7757c4" + integrity sha512-dB14TltT1SNq73z3MaZfKyyBZ37NAgAFl8jze59bisR4fJ6pB6AYGxItHFkooZbN7UcVJX/cFudM4p8wp1W4rA== "@types/aws4@^1.5.1": version "1.11.2" @@ -5741,10 +5893,21 @@ dependencies: "@types/node" "*" -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.19" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" - integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== +"@types/babel__core@^7.0.0": + version "7.1.9" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" + integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__core@^7.1.14": + version "7.1.18" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" + integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -5753,24 +5916,24 @@ "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.4" - resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" - integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== + version "7.6.1" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" + integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": - version "7.4.1" - resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" - integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + version "7.0.2" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" + integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.17.1" - resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz#1a0e73e8c28c7e832656db372b779bfd2ef37314" - integrity sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA== + version "7.0.15" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03" + integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A== dependencies: "@babel/types" "^7.3.0" @@ -5802,9 +5965,9 @@ integrity sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg== "@types/cacheable-request@^6.0.1": - version "6.0.2" - resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9" - integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA== + version "6.0.1" + resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976" + integrity sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ== dependencies: "@types/http-cache-semantics" "*" "@types/keyv" "*" @@ -5884,9 +6047,9 @@ "@types/node" "*" "@types/connect@*": - version "3.4.35" - resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" - integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== + version "3.4.33" + resolved "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" + integrity sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A== dependencies: "@types/node" "*" @@ -5903,9 +6066,9 @@ integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== "@types/cookiejar@*": - version "2.1.2" - resolved "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.2.tgz#66ad9331f63fe8a3d3d9d8c6e3906dd10f6446e8" - integrity sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog== + version "2.1.1" + resolved "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.1.tgz#90b68446364baf9efd8e8349bb36bd3852b75b80" + integrity sha512-aRnpPa7ysx3aNW60hTiCtLHlQaIFsXFCgQlpakNgDNVFzbtusSY8PwjAQgRWfSk0ekNoBjO51eQRB6upA9uuyw== "@types/core-js@^2.5.4": version "2.5.5" @@ -5965,9 +6128,9 @@ integrity sha512-NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ== "@types/d3-path@^2": - version "2.0.2" - resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-2.0.2.tgz#6052f38f6186319769dfabab61b5514b0e02c75c" - integrity sha512-3YHpvDw9LzONaJzejXLOwZ3LqwwkoXb9LI2YN7Hbd6pkGo5nIlJ09ul4bQhBN4hQZJKmUpX8HkVqbzgUKY48cg== + version "2.0.1" + resolved "https://registry.npmjs.org/@types/d3-path/-/d3-path-2.0.1.tgz#ca03dfa8b94d8add97ad0cd97e96e2006b4763cb" + integrity sha512-6K8LaFlztlhZO7mwsZg7ClRsdLg3FJRzIIi6SZXDWmmSJc2x8dd2VkESbLXdk3p8cuvz71f36S0y8Zv2AxqvQw== "@types/d3-scale@^3.0.0": version "3.3.2" @@ -5982,9 +6145,9 @@ integrity sha512-d29EDd0iUBrRoKhPndhDY6U/PYxOWqgIZwKTooy2UkBfU7TNZNpRho0yLWPxlatQrFWk2mnTu71IZQ4+LRgKlQ== "@types/d3-shape@^1": - version "1.3.8" - resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.8.tgz#c3c15ec7436b4ce24e38de517586850f1fea8e89" - integrity sha512-gqfnMz6Fd5H6GOLYixOZP/xlrMtJms9BaS+6oWxTKHNqPGZ93BkWWupQSCYm6YHqx6h9wjRupuJb90bun6ZaYg== + version "1.3.5" + resolved "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-1.3.5.tgz#c0164c1be1429473016f855871d487f806c4e968" + integrity sha512-aPEax03owTAKynoK8ZkmkZEDZvvT4Y5pWgii4Jp4oQt0gH45j6siDl9gNDVC5kl64XHN2goN9jbYoHK88tFAcA== dependencies: "@types/d3-path" "^1" @@ -6063,15 +6226,7 @@ "@types/eslint" "*" "@types/estree" "*" -"@types/eslint@*": - version "8.4.2" - resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz#48f2ac58ab9c631cb68845c3d956b28f79fad575" - integrity sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA== - dependencies: - "@types/estree" "*" - "@types/json-schema" "*" - -"@types/eslint@^7.28.2": +"@types/eslint@*", "@types/eslint@^7.28.2": version "7.29.0" resolved "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== @@ -6151,9 +6306,9 @@ integrity sha512-Zf9mY4Mz7N3Nyi341nUkOtgVUQn4j6NS4ndqEha/lOgEbTkHzpD7wZuRagYKzrXNtvawWfsrojoC1nhsQexvNA== "@types/glob@*": - version "7.2.0" - resolved "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" - integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== + version "7.1.3" + resolved "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" + integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w== dependencies: "@types/minimatch" "*" "@types/node" "*" @@ -6198,9 +6353,9 @@ integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/http-cache-semantics@*": - version "4.0.1" - resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" - integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== + version "4.0.0" + resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a" + integrity sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A== "@types/http-errors@^1.6.3": version "1.8.2" @@ -6252,9 +6407,9 @@ ci-info "^3.1.0" "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== + version "2.0.1" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" + integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== "@types/istanbul-lib-report@*": version "3.0.0" @@ -6264,9 +6419,9 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + version "3.0.0" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" + integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== dependencies: "@types/istanbul-lib-report" "*" @@ -6285,9 +6440,9 @@ "@types/jest" "*" "@types/jest@*": - version "27.5.0" - resolved "https://registry.npmjs.org/@types/jest/-/jest-27.5.0.tgz#e04ed1824ca6b1dd0438997ba60f99a7405d4c7b" - integrity sha512-9RBFx7r4k+msyj/arpfaa0WOOEcaAZNmN+j80KFbFCoSqCJGHTz7YMAMGQW9Xmqm5w6l5c25vbSjMwlikJi5+g== + version "27.4.1" + resolved "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz#185cbe2926eaaf9662d340cc02e548ce9e11ab6d" + integrity sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw== dependencies: jest-matcher-utils "^27.0.0" pretty-format "^27.0.0" @@ -6308,11 +6463,16 @@ "@types/sizzle" "*" "@types/js-cookie@^2.2.6": - version "2.2.7" - resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.7.tgz#226a9e31680835a6188e887f3988e60c04d3f6a3" - integrity sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA== + version "2.2.6" + resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" + integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.0.tgz#9541eec4ad6e3ec5633270a3a2b55d981edc44a9" + integrity sha512-14t0v1ICYRtRVcHASzes0v/O+TIeASb8aD55cWF1PidtInhFWSXcmhzhHqGjUWf9SUq1w70cvd1cWKUULubAfQ== + +"@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -6348,9 +6508,9 @@ integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== "@types/json-stable-stringify@^1.0.32": - version "1.0.34" - resolved "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.0.34.tgz#c0fb25e4d957e0ee2e497c1f553d7f8bb668fd75" - integrity sha512-s2cfwagOQAS8o06TcwKfr9Wx11dNGbH2E9vJz1cqV+a/LOyhWNLUNd6JSRYNzvB4d29UuJX2M0Dj9vE1T8fRXw== + version "1.0.32" + resolved "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.0.32.tgz#121f6917c4389db3923640b2e68de5fa64dda88e" + integrity sha512-q9Q6+eUEGwQkv4Sbst3J4PNgDOvpuVuKj79Hl/qnmBMEIPzB5QoFRUtjcgcg2xNUZyYUGXBk5wYIBKHt0A+Mxw== "@types/json5@^0.0.29": version "0.0.29" @@ -6358,9 +6518,9 @@ integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= "@types/jsonwebtoken@^8.3.3", "@types/jsonwebtoken@^8.5.0": - version "8.5.8" - resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz#01b39711eb844777b7af1d1f2b4cf22fda1c0c44" - integrity sha512-zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A== + version "8.5.0" + resolved "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz#2531d5e300803aa63279b232c014acf780c981c5" + integrity sha512-9bVao7LvyorRGZCw0VmH/dr7Og+NdjYSsKAxB43OQoComFbBgsEpoR9JW6+qSq/ogwVBg8GI2MfAlk4SYI4OLg== dependencies: "@types/node" "*" @@ -6372,9 +6532,9 @@ jwt-decode "*" "@types/keyv@*": - version "3.1.4" - resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6" - integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg== + version "3.1.1" + resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.1.tgz#e45a45324fca9dab716ab1230ee249c9fb52cfa7" + integrity sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw== dependencies: "@types/node" "*" @@ -6391,9 +6551,9 @@ integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q== "@types/long@^4.0.0", "@types/long@^4.0.1": - version "4.0.2" - resolved "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" - integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== + version "4.0.1" + resolved "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" + integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== "@types/lru-cache@^5.1.0": version "5.1.1" @@ -6415,7 +6575,7 @@ resolved "https://registry.npmjs.org/@types/marked/-/marked-4.0.3.tgz#2098f4a77adaba9ce881c9e0b6baf29116e5acc4" integrity sha512-HnMWQkLJEf/PnxZIfbm0yGJRRZYYMhb++O9M36UCTA9z53uPvVoSlAwJr3XOpDEryb7Hwl1qAx/MV6YIW1RXxg== -"@types/mdast@^3.0.0": +"@types/mdast@^3.0.0", "@types/mdast@^3.0.3": version "3.0.10" resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== @@ -6448,9 +6608,9 @@ integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== "@types/minipass@*": - version "3.1.2" - resolved "https://registry.npmjs.org/@types/minipass/-/minipass-3.1.2.tgz#e2d7f9df0698aff421dcf145b4fc05b8183b9030" - integrity sha512-foLGjgrJkUjLG/o2t2ymlZGEoBNBa/TfoUZ7oCTkOjP1T43UGBJspovJou/l3ZuHvye2ewR5cZNtp2zyWgILMA== + version "2.2.0" + resolved "https://registry.npmjs.org/@types/minipass/-/minipass-2.2.0.tgz#51ad404e8eb1fa961f75ec61205796807b6f9651" + integrity sha512-wuzZksN4w4kyfoOv/dlpov4NOunwutLA/q7uc00xU02ZyUY+aoM5PWIXEKBMnm0NHd4a+N71BMjq+x7+2Af1fg== dependencies: "@types/node" "*" @@ -6490,9 +6650,9 @@ form-data "^3.0.0" "@types/node@*", "@types/node@>= 8", "@types/node@>=12.12.47", "@types/node@>=13.7.0": - version "17.0.31" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d" - integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q== + version "17.0.25" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.25.tgz#527051f3c2f77aa52e5dc74e45a3da5fb2301448" + integrity sha512-wANk6fBrUwdpY4isjWrKTufkrXdu1D2YHCot2fD/DfWxF5sMrVSA+KN7ydckvaTCh0HiqX9IVl0L5/ZoXg5M7w== "@types/node@12.20.24": version "12.20.24" @@ -6505,9 +6665,9 @@ integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== "@types/node@^12.7.1": - version "12.20.50" - resolved "https://registry.npmjs.org/@types/node/-/node-12.20.50.tgz#14ba5198f1754ffd0472a2f84ab433b45ee0b65e" - integrity sha512-+9axpWx2b2JCVovr7Ilgt96uc6C1zBKOQMpGtRbWT9IoR/8ue32GGMfGA4woP8QyP2gBs6GQWEVM3tCybGCxDA== + version "12.20.48" + resolved "https://registry.npmjs.org/@types/node/-/node-12.20.48.tgz#55f70bd432b6515828c0298689776861b90ca4fa" + integrity sha512-4kxzqkrpwYtn6okJUcb2lfUu9ilnb3yhUOH6qX3nug8D2DupZ2drIkff2yJzYcNJVl3begnlcaBJ7tqiTTzjnQ== "@types/node@^14.14.31": version "14.18.16" @@ -6582,9 +6742,9 @@ "@types/passport-oauth2" "*" "@types/passport-oauth2@*": - version "1.4.11" - resolved "https://registry.npmjs.org/@types/passport-oauth2/-/passport-oauth2-1.4.11.tgz#fbca527ecb44258774d17bcb251630c321515fa9" - integrity sha512-KUNwmGhe/3xPbjkzkPwwcPmyFwfyiSgtV1qOrPBLaU4i4q9GSCdAOyCbkFG0gUxAyEmYwqo9OAF/rjPjJ6ImdA== + version "1.4.9" + resolved "https://registry.npmjs.org/@types/passport-oauth2/-/passport-oauth2-1.4.9.tgz#134007c4b505a82548c9cb19094c5baeb2205c92" + integrity sha512-QP0q+NVQOaIu2r0e10QWkiUA0Ya5mOBHRJN0UrI+LolMLOP1/VN4EVIpJ3xVwFo+xqNFRoFvFwJhBvKnk7kpUA== dependencies: "@types/express" "*" "@types/oauth" "*" @@ -6619,9 +6779,9 @@ integrity sha512-BYOID+l2Aco2nBik+iYS4SZX0Lf20KPILP5RGmM1IgzdwNdTs0eebiFriOPcej1sX9mLnSoiNte5zcFxssgpGA== "@types/prettier@^2.1.5": - version "2.6.0" - resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.0.tgz#efcbd41937f9ae7434c714ab698604822d890759" - integrity sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw== + version "2.4.3" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.3.tgz#a3c65525b91fca7da00ab1a3ac2b5a2a4afbffbf" + integrity sha512-QzSuZMBuG5u8HqYz01qtMdg/Jfctlnvj1z/lYnIDXs/golxw0fxtRAHd9KrzjR7Yxz1qVeI00o0kiO3PmVdJ9w== "@types/prop-types@*", "@types/prop-types@^15.0.0", "@types/prop-types@^15.7.3": version "15.7.5" @@ -6636,14 +6796,14 @@ "@types/node" "*" "@types/qs@*": - version "6.9.7" - resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" - integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== + version "6.9.6" + resolved "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" + integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== "@types/range-parser@*": - version "1.2.4" - resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" - integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== + version "1.2.3" + resolved "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" + integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== "@types/react-dom@*", "@types/react-dom@<18.0.0", "@types/react-dom@^17": version "17.0.17" @@ -6659,10 +6819,10 @@ dependencies: "@types/react" "*" -"@types/react-redux@^7.1.20": - version "7.1.24" - resolved "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.24.tgz#6caaff1603aba17b27d20f8ad073e4c077e975c0" - integrity sha512-7FkurKcS1k0FHZEtdbbgN8Oc6b+stGSfZYjQGicofJ0j4U0qIn/jaSvnP2pLwZKiai3/17xqqxkkrxTgN8UNbQ== +"@types/react-redux@^7.1.16": + version "7.1.19" + resolved "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.19.tgz#477bd0a9b01bae6d6bf809418cdfa7d3c16d4c62" + integrity sha512-L37dSCT0aoJnCgpR8Iuginlbxoh7qhWOXiaDqEsxVMrER1CmVhFD+63NxgJeT4pkmEM28oX0NH4S4f+sXHTZjA== dependencies: "@types/hoist-non-react-statics" "^3.3.0" "@types/react" "*" @@ -6691,9 +6851,9 @@ "@types/react" "*" "@types/react-transition-group@^4.2.0": - version "4.4.4" - resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.4.tgz#acd4cceaa2be6b757db61ed7b432e103242d163e" - integrity sha512-7gAPz7anVK5xzbeQW9wFBDg7G++aPLAFY0QaSMOou9rJZpbuI58WAuJrgu+qR92l61grlnCUe7AFX8KGahAgug== + version "4.2.4" + resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.2.4.tgz#c7416225987ccdb719262766c1483da8f826838d" + integrity sha512-8DMUaDqh0S70TjkqU0DxOu80tFUiiaS9rxkWip/nb7gtvAsbqOXm02UCmR8zdcjWujgeYPiPNTVpVpKzUDotwA== dependencies: "@types/react" "*" @@ -6741,9 +6901,9 @@ integrity sha512-i7KOGl6xdkfpq5+p2ooC+/XFIRUMkYymZ29SD8p+Ko9lesKGUsh6860ey3YM7Y+ZG7kEDGcjzyLO3sOhozqEeA== "@types/request@^2.47.1": - version "2.48.8" - resolved "https://registry.npmjs.org/@types/request/-/request-2.48.8.tgz#0b90fde3b655ab50976cb8c5ac00faca22f5a82c" - integrity sha512-whjk1EDJPcAR2kYHRbFl/lKeeKYTi05A15K9bnLInCVroNDCtXce57xKdI0/rQaA3K+6q0eFyUBPmqfSndUZdQ== + version "2.48.5" + resolved "https://registry.npmjs.org/@types/request/-/request-2.48.5.tgz#019b8536b402069f6d11bee1b2c03e7f232937a0" + integrity sha512-/LO7xRVnL3DxJ1WkPGDQrp4VTV1reX9RkC85mJ+Qzykj2Bdw+mG15aAfDahc76HtknjzE16SX/Yddn6MxVbmGQ== dependencies: "@types/caseless" "*" "@types/node" "*" @@ -6769,7 +6929,7 @@ dependencies: "@types/node" "*" -"@types/retry@0.12.0": +"@types/retry@^0.12.0": version "0.12.0" resolved "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== @@ -6797,14 +6957,14 @@ htmlparser2 "^6.0.0" "@types/scheduler@*": - version "0.16.2" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" - integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== + version "0.16.1" + resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" + integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA== "@types/semver@^6.0.0": - version "6.2.3" - resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.3.tgz#5798ecf1bec94eaa64db39ee52808ec0693315aa" - integrity sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A== + version "6.2.1" + resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.1.tgz#a236185670a7860f1597cf73bea2e16d001461ba" + integrity sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA== "@types/semver@^7.3.8": version "7.3.9" @@ -6826,17 +6986,17 @@ "@types/express" "*" "@types/serve-static@*": - version "1.13.10" - resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" - integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== + version "1.13.9" + resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" + integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== dependencies: "@types/mime" "^1" "@types/node" "*" "@types/set-cookie-parser@^2.4.0": - version "2.4.2" - resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.2.tgz#b6a955219b54151bfebd4521170723df5e13caad" - integrity sha512-fBZgytwhYAUkj/jC/FAV4RQ5EerRup1YQsXQCh8rZfiHkc4UahC192oH0smGwsXol3cL3A5oETuAHeQHmhXM4w== + version "2.4.0" + resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.0.tgz#10cc0446bad372827671a5195fbd14ebce4a9baf" + integrity sha512-w7BFUq81sy7H/0jN0K5cax8MwRN6NOSURpY4YuO4+mOgoicxCZ33BUYz+gyF/sUf7uDl2We2yGJfppxzEXoAXQ== dependencies: "@types/node" "*" @@ -6846,9 +7006,9 @@ integrity sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g== "@types/sizzle@*", "@types/sizzle@^2.3.2": - version "2.3.3" - resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz#ff5e2f1902969d305225a047c8a0fd5c915cebef" - integrity sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ== + version "2.3.2" + resolved "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz#a811b8c18e2babab7d542b3365887ae2e4d9de47" + integrity sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg== "@types/sockjs@^0.3.33": version "0.3.33" @@ -6858,9 +7018,9 @@ "@types/node" "*" "@types/ssh2-streams@*": - version "0.1.9" - resolved "https://registry.npmjs.org/@types/ssh2-streams/-/ssh2-streams-0.1.9.tgz#8ca51b26f08750a780f82ee75ff18d7160c07a87" - integrity sha512-I2J9jKqfmvXLR5GomDiCoHrEJ58hAOmFrekfFqmCFd+A6gaEStvWnPykoWUwld1PNg4G5ag1LwdA+Lz1doRJqg== + version "0.1.8" + resolved "https://registry.npmjs.org/@types/ssh2-streams/-/ssh2-streams-0.1.8.tgz#142af404dae059931aea7fcd1511b5478964feb6" + integrity sha512-I7gixRPUvVIyJuCEvnmhr3KvA2dC0639kKswqD4H5b4/FOcnPtNU+qWLiXdKIqqX9twUvi5j0U1mwKE5CUsrfA== dependencies: "@types/node" "*" @@ -6873,9 +7033,9 @@ "@types/ssh2-streams" "*" "@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + version "2.0.0" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" + integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw== "@types/stoppable@^1.1.0": version "1.1.1" @@ -6885,23 +7045,23 @@ "@types/node" "*" "@types/stream-buffers@^3.0.3": - version "3.0.4" - resolved "https://registry.npmjs.org/@types/stream-buffers/-/stream-buffers-3.0.4.tgz#bf128182da7bc62722ca0ddf5458a9c65f76e648" - integrity sha512-qU/K1tb2yUdhXkLIATzsIPwbtX6BpZk0l3dPW6xqWyhfzzM1ECaQ/8faEnu3CNraLiQ9LHyQQPBGp7N9Fbs25w== + version "3.0.3" + resolved "https://registry.npmjs.org/@types/stream-buffers/-/stream-buffers-3.0.3.tgz#34e565bf64e3e4bdeee23fd4aa58d4636014a02b" + integrity sha512-NeFeX7YfFZDYsCfbuaOmFQ0OjSmHreKBpp7MQ4alWQBHeh2USLsj7qyMyn9t82kjqIX516CR/5SRHnARduRtbQ== dependencies: "@types/node" "*" "@types/styled-jsx@^2.2.8": - version "2.2.9" - resolved "https://registry.npmjs.org/@types/styled-jsx/-/styled-jsx-2.2.9.tgz#e50b3f868c055bcbf9bc353eca6c10fdad32a53f" - integrity sha512-W/iTlIkGEyTBGTEvZCey8EgQlQ5l0DwMqi3iOXlLs2kyBwYTXHKEiU6IZ5EwoRwngL8/dGYuzezSup89ttVHLw== + version "2.2.8" + resolved "https://registry.npmjs.org/@types/styled-jsx/-/styled-jsx-2.2.8.tgz#b50d13d8a3c34036282d65194554cf186bab7234" + integrity sha512-Yjye9VwMdYeXfS71ihueWRSxrruuXTwKCbzue4+5b2rjnQ//AtyM7myZ1BEhNhBQ/nL/RE7bdToUoLln2miKvg== dependencies: "@types/react" "*" "@types/superagent@*": - version "4.1.15" - resolved "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.15.tgz#63297de457eba5e2bc502a7609426c4cceab434a" - integrity sha512-mu/N4uvfDN2zVQQ5AYJI/g4qxn2bHB6521t1UuH09ShNWjebTqN0ZFuYK9uYjcgmI0dTQEs+Owi1EO6U0OkOZQ== + version "4.1.7" + resolved "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.7.tgz#a7d92d98c490ee0f802a127fdf149b9a114f77a5" + integrity sha512-JSwNPgRYjIC4pIeOqLwWwfGj6iP1n5NE6kNBEbGx2V8H78xCPwx7QpNp9plaI30+W3cFEzJO7BIIsXE+dbtaGg== dependencies: "@types/cookiejar" "*" "@types/node" "*" @@ -6944,9 +7104,9 @@ "@types/node" "*" "@types/tern@*": - version "0.23.4" - resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" - integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== + version "0.23.3" + resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.3.tgz#4b54538f04a88c9ff79de1f6f94f575a7f339460" + integrity sha512-imDtS4TAoTcXk0g7u4kkWqedB3E4qpjXzCpD2LU5M5NAXHzCDsypyvXSaG7mM8DKYkCRa7tFp4tS/lp/Wo7Q3w== dependencies: "@types/estree" "*" @@ -6972,9 +7132,9 @@ "@types/node" "*" "@types/tough-cookie@*": - version "4.0.2" - resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" - integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== + version "4.0.0" + resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.0.tgz#fef1904e4668b6e5ecee60c52cc6a078ffa6697d" + integrity sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A== "@types/trusted-types@*": version "2.0.2" @@ -6989,9 +7149,9 @@ "@types/node" "*" "@types/underscore@^1.8.9": - version "1.11.4" - resolved "https://registry.npmjs.org/@types/underscore/-/underscore-1.11.4.tgz#62e393f8bc4bd8a06154d110c7d042a93751def3" - integrity sha512-uO4CD2ELOjw8tasUrAhvnn2W4A0ZECOvMjCivJr4gA9pGgjv+qxKWY9GLTMVEK8ej85BxQOocUyE7hImmSQYcg== + version "1.10.23" + resolved "https://registry.npmjs.org/@types/underscore/-/underscore-1.10.23.tgz#cc672e8864000d288e1e39c609fd9cab84391ff3" + integrity sha512-vX1NPekXhrLquFWskH2thcvFAha187F/lM6xYOoEMZWwJ/6alSk0/ttmGP/YRqcqtCv0TMbZjYAdZyHAEcuU4g== "@types/unist@*", "@types/unist@^2.0.0": version "2.0.6" @@ -7054,14 +7214,14 @@ "@types/node" "*" "@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== + version "15.0.0" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" + integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== "@types/yargs@^15.0.0": - version "15.0.14" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" - integrity sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ== + version "15.0.4" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz#7e5d0f8ca25e9d5849f2ea443cf7c402decd8299" + integrity sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg== dependencies: "@types/yargs-parser" "*" @@ -7078,9 +7238,9 @@ integrity sha512-8NYnGOctzsI4W0ApsP/BIHD/LnxpJ6XaGf2AZmz4EyDYJMxtprN4279dLNI1CPZcwC9H18qYcaFv4bXi0wmokg== "@types/yauzl@^2.9.1": - version "2.10.0" - resolved "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" - integrity sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw== + version "2.9.2" + resolved "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz#c48e5d56aff1444409e39fa164b0b4d4552a7b7a" + integrity sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA== dependencies: "@types/node" "*" @@ -7110,11 +7270,16 @@ tsutils "^3.21.0" "@typescript-eslint/experimental-utils@^5.0.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.23.0.tgz#ea03860fa612dadf272789988f2ce41f0b7bb2f7" - integrity sha512-I+3YGQztH1DM9kgWzjslpZzJCBMRz0KhYG2WP62IwpooeZ1L6Qt0mNK8zs+uP+R2HOsr+TeDW35Pitc3PfVv8Q== + version "5.9.0" + resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.9.0.tgz#652762d37d6565ef07af285021b8347b6c79a827" + integrity sha512-ZnLVjBrf26dn7ElyaSKa6uDhqwvAi4jBBmHK1VxuFGPRAxhdi18ubQYSGA7SRiFiES3q9JiBOBHEBStOFkwD2g== dependencies: - "@typescript-eslint/utils" "5.23.0" + "@types/json-schema" "^7.0.9" + "@typescript-eslint/scope-manager" "5.9.0" + "@typescript-eslint/types" "5.9.0" + "@typescript-eslint/typescript-estree" "5.9.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" "@typescript-eslint/parser@^5.9.0": version "5.27.0" @@ -7126,6 +7291,14 @@ "@typescript-eslint/typescript-estree" "5.27.0" debug "^4.3.4" +"@typescript-eslint/scope-manager@5.20.0": + version "5.20.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.20.0.tgz#79c7fb8598d2942e45b3c881ced95319818c7980" + integrity sha512-h9KtuPZ4D/JuX7rpp1iKg3zOH0WNEa+ZIXwpW/KWmEFDxlA/HSfCMhiyF1HS/drTICjIbpA6OqkAhrP/zkCStg== + dependencies: + "@typescript-eslint/types" "5.20.0" + "@typescript-eslint/visitor-keys" "5.20.0" + "@typescript-eslint/scope-manager@5.23.0": version "5.23.0" resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.23.0.tgz#4305e61c2c8e3cfa3787d30f54e79430cc17ce1b" @@ -7134,10 +7307,18 @@ "@typescript-eslint/types" "5.23.0" "@typescript-eslint/visitor-keys" "5.23.0" -"@typescript-eslint/scope-manager@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.24.0.tgz#ac8c4d65064204b596909c204fe9b7e30c3f51b2" - integrity sha512-WpMWipcDzGmMzdT7NtTjRXFabx10WleLUGrJpuJLGaxSqpcyq5ACpKSD5VE40h2nz3melQ91aP4Du7lh9FliCA== +"@typescript-eslint/scope-manager@5.9.0": + version "5.9.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.9.0.tgz#02dfef920290c1dcd7b1999455a3eaae7a1a3117" + integrity sha512-DKtdIL49Qxk2a8icF6whRk7uThuVz4A6TCXfjdJSwOsf+9ree7vgQWcx0KOyCdk0i9ETX666p4aMhrRhxhUkyg== + dependencies: + "@typescript-eslint/types" "5.9.0" + "@typescript-eslint/visitor-keys" "5.9.0" + +"@typescript-eslint/type-utils@5.23.0": + version "5.23.0" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.23.0.tgz#f852252f2fc27620d5bb279d8fed2a13d2e3685e" + integrity sha512-iuI05JsJl/SUnOTXA9f4oI+/4qS/Zcgk+s2ir+lRmXI+80D8GaGwoUqs4p+X+4AxDolPpEpVUdlEH4ADxFy4gw== dependencies: "@typescript-eslint/types" "5.27.0" "@typescript-eslint/visitor-keys" "5.27.0" @@ -7159,23 +7340,23 @@ debug "^4.3.4" tsutils "^3.21.0" +"@typescript-eslint/types@5.20.0": + version "5.20.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.20.0.tgz#fa39c3c2aa786568302318f1cb51fcf64258c20c" + integrity sha512-+d8wprF9GyvPwtoB4CxBAR/s0rpP25XKgnOvMf/gMXYDvlUC3rPFHupdTQ/ow9vn7UDe5rX02ovGYQbv/IUCbg== + "@typescript-eslint/types@5.23.0": version "5.23.0" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.23.0.tgz#8733de0f58ae0ed318dbdd8f09868cdbf9f9ad09" integrity sha512-NfBsV/h4dir/8mJwdZz7JFibaKC3E/QdeMEDJhiAE3/eMkoniZ7MjbEMCGXw6MZnZDMN3G9S0mH/6WUIj91dmw== +<<<<<<< HEAD "@typescript-eslint/types@5.24.0": version "5.24.0" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.24.0.tgz#565ff94a4b89073265e27514dc65225d18aabe6c" integrity sha512-Tpg1c3shTDgTmZd3qdUyd+16r/pGmVaVEbLs+ufuWP0EruVbUiEOmpBBQxBb9a8iPRxi8Rb2oiwOxuZJzSq11A== -"@typescript-eslint/types@5.9.0": - version "5.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.9.0.tgz#e5619803e39d24a03b3369506df196355736e1a3" - integrity sha512-mWp6/b56Umo1rwyGCk8fPIzb9Migo8YOniBGPAQDNC6C52SeyNGN4gsVwQTAR+RS2L5xyajON4hOLwAGwPtUwg== - -"@typescript-eslint/typescript-estree@5.20.0": - version "5.20.0" +======= resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.20.0.tgz#ab73686ab18c8781bbf249c9459a55dc9417d6b0" integrity sha512-36xLjP/+bXusLMrT9fMMYy1KJAGgHhlER2TqpUVDYUQg4w0q/NW/sg4UGAgVwAqb8V4zYg43KMUpM8vV2lve6w== dependencies: @@ -7200,7 +7381,20 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.23.0", "@typescript-eslint/utils@^5.10.0": +"@typescript-eslint/typescript-estree@5.9.0": + version "5.9.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.9.0.tgz#0e5c6f03f982931abbfbc3c1b9df5fbf92a3490f" + integrity sha512-kxo3xL2mB7XmiVZcECbaDwYCt3qFXz99tBSuVJR4L/sR7CJ+UNAPrYILILktGj1ppfZ/jNt/cWYbziJUlHl1Pw== + dependencies: + "@typescript-eslint/types" "5.9.0" + "@typescript-eslint/visitor-keys" "5.9.0" + debug "^4.3.2" + globby "^11.0.4" + is-glob "^4.0.3" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/utils@5.23.0": version "5.23.0" resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.23.0.tgz#4691c3d1b414da2c53d8943310df36ab1c50648a" integrity sha512-dbgaKN21drqpkbbedGMNPCtRPZo1IOUr5EI9Jrrh99r5UW5Q0dz46RKXeSBoPV+56R6dFKpbrdhgUNSJsDDRZA== @@ -7212,14 +7406,49 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" +"@typescript-eslint/utils@^5.10.0": + version "5.20.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.20.0.tgz#b8e959ed11eca1b2d5414e12417fd94cae3517a5" + integrity sha512-lHONGJL1LIO12Ujyx8L8xKbwWSkoUKFSO+0wDAqGXiudWB2EO7WEUT+YZLtVbmOmSllAjLb9tpoIPwpRe5Tn6w== + dependencies: + "@types/json-schema" "^7.0.9" + "@typescript-eslint/scope-manager" "5.20.0" + "@typescript-eslint/types" "5.20.0" + "@typescript-eslint/typescript-estree" "5.20.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/visitor-keys@5.20.0": + version "5.20.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.20.0.tgz#70236b5c6b67fbaf8b2f58bf3414b76c1e826c2a" + integrity sha512-1flRpNF+0CAQkMNlTJ6L/Z5jiODG/e5+7mk6XwtPOUS3UrTz3UOiAg9jG2VtKsWI6rZQfy4C6a232QNRZTRGlg== + dependencies: + "@typescript-eslint/types" "5.20.0" + eslint-visitor-keys "^3.0.0" + "@typescript-eslint/visitor-keys@5.23.0": version "5.23.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.23.0.tgz#057c60a7ca64667a39f991473059377a8067c87b" integrity sha512-Vd4mFNchU62sJB8pX19ZSPog05B0Y0CE2UxAZPT5k4iqhRYjPnqyY3woMxCd0++t9OTqkgjST+1ydLBi7e2Fvg== dependencies: +<<<<<<< HEAD "@typescript-eslint/types" "5.27.0" +======= + "@typescript-eslint/types" "5.23.0" + eslint-visitor-keys "^3.0.0" + +<<<<<<< HEAD +"@typescript-eslint/visitor-keys@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.24.0.tgz#bb3e9a788ccd50c53e03557e4e203599880c3123" + integrity sha512-qzGwSXMyMnogcAo+/2fU+jhlPPVMXlIH2PeAonIKjJSoDKl1+lJVvG5Z5Oud36yU0TWK2cs1p/FaSN5J2OUFYA== + dependencies: + "@typescript-eslint/types" "5.24.0" +>>>>>>> Fix some typos and other requested changes eslint-visitor-keys "^3.3.0" +======= +>>>>>>> Fix some typos and other requested changes "@typescript-eslint/visitor-keys@5.9.0": version "5.9.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.9.0.tgz#7585677732365e9d27f1878150fab3922784a1a6" @@ -7407,9 +7636,9 @@ a-sync-waterfall@^1.0.0: integrity sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA== abab@^2.0.3, abab@^2.0.5: - version "2.0.6" - resolved "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + version "2.0.5" + resolved "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== abbrev@1: version "1.1.1" @@ -7424,9 +7653,9 @@ abort-controller@^3.0.0: event-target-shim "^5.0.0" abstract-logging@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839" - integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA== + version "2.0.0" + resolved "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.0.tgz#08a85814946c98ef06f4256ad470aba1886d4490" + integrity sha512-/oA9z7JszpIioo6J6dB79LVUgJ3eD3cxkAmdCkvWWS+Y9tPtALs1rLqOekLUXUbYqM2fB9TTK0ibAyZJJOP/CA== accepts@^1.3.5, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" @@ -7445,9 +7674,9 @@ acorn-globals@^6.0.0: acorn-walk "^7.1.1" acorn-import-assertions@^1.7.6: - version "1.8.0" - resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" - integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== + version "1.7.6" + resolved "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.7.6.tgz#580e3ffcae6770eebeec76c3b9723201e9d01f78" + integrity sha512-FlVvVFA1TX6l3lp8VjDnYYq7R1nyW6x3svAt4nDgrWQ9SBaSh9CnbwgSUTasgfNfOG5HlM1ehugCvM+hjo56LA== acorn-jsx@^5.3.2: version "5.3.2" @@ -7455,9 +7684,9 @@ acorn-jsx@^5.3.2: integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + version "7.1.1" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" + integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" @@ -7469,7 +7698,12 @@ acorn@^7.1.1: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0, acorn@^8.7.1: +acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0: + version "8.7.0" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" + integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== + +acorn@^8.7.1: version "8.7.1" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== @@ -7480,9 +7714,9 @@ add-stream@^1.0.0: integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= address@^1.0.1, address@^1.1.2: - version "1.2.0" - resolved "https://registry.npmjs.org/address/-/address-1.2.0.tgz#d352a62c92fee90f89a693eccd2a8b2139ab02d9" - integrity sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig== + version "1.1.2" + resolved "https://registry.npmjs.org/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" + integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== after@0.8.2: version "0.8.2" @@ -7496,10 +7730,10 @@ agent-base@6, agent-base@^6.0.2: dependencies: debug "4" -agentkeepalive@^4.1.3, agentkeepalive@^4.1.4, agentkeepalive@^4.2.1: - version "4.2.1" - resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" - integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== +agentkeepalive@^4.1.3, agentkeepalive@^4.1.4, agentkeepalive@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.0.tgz#616ce94ccb41d1a39a45d203d8076fe98713062d" + integrity sha512-0PhAp58jZNw13UJv7NVdTGb0ZcghHUb3DrZ046JiiJY/BOaTTpbwdHq2VObPCBV8M2GPh7sgrJ3AQ8Ey468LJw== dependencies: debug "^4.1.0" depd "^1.1.2" @@ -7532,7 +7766,7 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.10.0, ajv@^6.10.1, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.7.0, ajv@~6.12.6: +ajv@^6.10.0, ajv@^6.10.1, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5, ajv@^6.7.0, ajv@~6.12.6: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -7552,6 +7786,11 @@ ajv@^8.0.0, ajv@^8.10.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" +alphanum-sort@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= + already@^3.2.0: version "3.3.0" resolved "https://registry.npmjs.org/already/-/already-3.3.0.tgz#a5e5becd167cf537b45f8f1c23d331488ed77003" @@ -7565,11 +7804,11 @@ anafanafo@2.0.0: char-width-table-consumer "^1.0.0" ansi-align@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" - integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== + version "3.0.0" + resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" + integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== dependencies: - string-width "^4.1.0" + string-width "^3.0.0" ansi-colors@^4.1.1: version "4.1.1" @@ -7609,9 +7848,9 @@ ansi-regex@^3.0.0: integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== ansi-regex@^4.1.0: - version "4.1.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" - integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== + version "4.1.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" @@ -7837,9 +8076,9 @@ are-we-there-yet@^3.0.0: readable-stream "^3.6.0" are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== + version "1.1.5" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -7862,9 +8101,9 @@ argparse@^2.0.1: integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== args@^5.0.0: - version "5.0.3" - resolved "https://registry.npmjs.org/args/-/args-5.0.3.tgz#943256db85021a85684be2f0882f25d796278702" - integrity sha512-h6k/zfFgusnv3i5TU08KQkVKuCPBtL/PWQbWkHUxvJrZ2nAyeaUupneemcrgn1xmqxPQsPIzwkUhOpoqPDRZuA== + version "5.0.1" + resolved "https://registry.npmjs.org/args/-/args-5.0.1.tgz#4bf298df90a4799a09521362c579278cc2fdd761" + integrity sha512-1kqmFCFsPffavQFGt8OxJdIcETti99kySRUPMpOhaGjL6mRJn8HFU1OxKY5bMqfZKUwTQc1mZkAjmGYaVOHFtQ== dependencies: camelcase "5.0.0" chalk "2.4.2" @@ -7904,6 +8143,11 @@ array-differ@^3.0.0: resolved "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== +array-filter@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83" + integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM= + array-flatten@1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -7919,14 +8163,14 @@ array-ify@^1.0.0: resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= -array-includes@^3.1.4: - version "3.1.5" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" - integrity sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ== +array-includes@^3.1.2, array-includes@^3.1.3, array-includes@^3.1.4: + version "3.1.4" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" + integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== dependencies: call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.19.5" + define-properties "^1.1.3" + es-abstract "^1.19.1" get-intrinsic "^1.1.1" is-string "^1.0.7" @@ -7964,24 +8208,22 @@ array-unique@^0.3.2: integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= array.prototype.flat@^1.2.5: - version "1.3.0" - resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz#0b0c1567bf57b38b56b4c97b8aa72ab45e4adc7b" - integrity sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw== + version "1.2.5" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" + integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.2" - es-shim-unscopables "^1.0.0" + es-abstract "^1.19.0" array.prototype.flatmap@^1.2.5: - version "1.3.0" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f" - integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg== + version "1.2.5" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" + integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.0" define-properties "^1.1.3" - es-abstract "^1.19.2" - es-shim-unscopables "^1.0.0" + es-abstract "^1.19.0" arraybuffer.slice@~0.0.7: version "0.0.7" @@ -8003,20 +8245,19 @@ asap@^2.0.0, asap@^2.0.3, asap@~2.0.3: resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= -asn1.js@^5.2.0: - version "5.4.1" - resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" - integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== +asn1.js@^4.0.0: + version "4.10.1" + resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" + integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== dependencies: bn.js "^4.0.0" inherits "^2.0.1" minimalistic-assert "^1.0.0" - safer-buffer "^2.1.0" asn1@^0.2.4, asn1@~0.2.3: - version "0.2.6" - resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" - integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== + version "0.2.4" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== dependencies: safer-buffer "~2.1.0" @@ -8056,9 +8297,9 @@ astral-regex@^2.0.0: integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== async-lock@^1.1.0: - version "1.3.1" - resolved "https://registry.npmjs.org/async-lock/-/async-lock-1.3.1.tgz#f2301c200600cde97acc386453b7126fa8aced3c" - integrity sha512-zK7xap9UnttfbE23JmcrNIyueAn6jWshihJqA33U/hEnKprF/lVGBDsBv/bqLm2YMMl1DnpHhUY044eA0t1TUw== + version "1.2.4" + resolved "https://registry.npmjs.org/async-lock/-/async-lock-1.2.4.tgz#80d0d612383045dd0c30eb5aad08510c1397cb91" + integrity sha512-UBQJC2pbeyGutIfYmErGc9RaJYnpZ1FHaxuKwb0ahvGiiCkPUf3p67Io+YLPmmv3RHY+mF6JEtNW8FlHsraAaA== async-retry@^1.2.1, async-retry@^1.3.3: version "1.3.3" @@ -8098,16 +8339,18 @@ auto-bind@~4.0.0: integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== autolinker@^3.11.0: - version "3.15.0" - resolved "https://registry.npmjs.org/autolinker/-/autolinker-3.15.0.tgz#03956088648f236642a5783612f9ca16adbbed38" - integrity sha512-N/5Dk5AZnqL9k6kkHdFIGLm/0/rRuSnJwqYYhLCJjU7ZtiaJwCBzNTvjzy1zzJADngv/wvtHYcrPHytPnASeFA== + version "3.14.1" + resolved "https://registry.npmjs.org/autolinker/-/autolinker-3.14.1.tgz#6ae4b812b6eaf42d4d68138b9e67757cbf2bc1e4" + integrity sha512-yvsRHIaY51EYDml6MGlbqyJGfl4n7zezGYf+R7gvM8c5LNpRGc4SISkvgAswSS8SWxk/OrGCylKV9mJyVstz7w== dependencies: - tslib "^2.3.0" + tslib "^1.9.3" -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +available-typed-arrays@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz#6b098ca9d8039079ee3f77f7b783c4480ba513f5" + integrity sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ== + dependencies: + array-filter "^1.0.0" aws-sdk-mock@^5.2.1: version "5.7.0" @@ -8144,9 +8387,9 @@ aws4@^1.11.0, aws4@^1.8.0: integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== axe-core@^4.3.5: - version "4.4.1" - resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.4.1.tgz#7dbdc25989298f9ad006645cd396782443757413" - integrity sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw== + version "4.3.5" + resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.3.5.tgz#78d6911ba317a8262bfee292aeafcc1e04b49cc5" + integrity sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA== axios-cached-dns-resolve@0.5.2: version "0.5.2" @@ -8244,12 +8487,12 @@ babel-plugin-polyfill-corejs2@^0.3.0: semver "^6.1.1" babel-plugin-polyfill-corejs3@^0.5.0: - version "0.5.2" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz#aabe4b2fa04a6e038b688c5e55d44e78cd3a5f72" - integrity sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ== + version "0.5.1" + resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.1.tgz#d66183bf10976ea677f4149a7fcc4d8df43d4060" + integrity sha512-TihqEe4sQcb/QcPJvxe94/9RZuLQuF1+To4WqQcRvc+3J3gLCPIPgDKzGLG6zmQLfH3nn25heRuDNkS2KR4I8A== dependencies: "@babel/helper-define-polyfill-provider" "^0.3.1" - core-js-compat "^3.21.0" + core-js-compat "^3.20.0" babel-plugin-polyfill-regenerator@^0.3.0: version "0.3.1" @@ -8273,9 +8516,9 @@ babel-polyfill@^6.26.0: regenerator-runtime "^0.10.5" babel-preset-current-node-syntax@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" - integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + version "1.0.0" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.0.tgz#cf5feef29551253471cfa82fc8e0f5063df07a77" + integrity sha512-mGkvkpocWJes1CmMKtgGUwCeeq0pOhALyymozzDWYomHTbDLwueDYG6p4TK1YOeYHCzBzYPsWkgTto10JubI1Q== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-bigint" "^7.8.3" @@ -8360,9 +8603,9 @@ badge-maker@^3.3.0: css-color-converter "^2.0.0" bail@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" - integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== + version "2.0.1" + resolved "https://registry.npmjs.org/bail/-/bail-2.0.1.tgz#d676736373a374058a935aec81b94c12ba815771" + integrity sha512-d5FoTAr2S5DSUPKl85WNm2yUwsINN8eidIdIwsOge2t33DaOfOdSmmsI11jMN3GmALCXaw+Y6HMVHDzePshFAA== balanced-match@^0.4.2: version "0.4.2" @@ -8431,7 +8674,7 @@ bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2: dependencies: tweetnacl "^0.14.3" -before-after-hook@^2.2.0: +before-after-hook@^2.1.0, before-after-hook@^2.2.0: version "2.2.2" resolved "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== @@ -8472,26 +8715,26 @@ big.js@^5.2.2: integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== bignumber.js@^9.0.0: - version "9.0.2" - resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" - integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== + version "9.0.1" + resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" + integrity sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA== bin-links@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/bin-links/-/bin-links-3.0.1.tgz#cc70ffb481988b22c527d3e6e454787876987a49" - integrity sha512-9vx+ypzVhASvHTS6K+YSGf7nwQdANoz7v6MTC0aCtYnOEZ87YvMf81aY737EZnGZdpbRM3sfWjO9oWkKmuIvyQ== + version "3.0.0" + resolved "https://registry.npmjs.org/bin-links/-/bin-links-3.0.0.tgz#8273063638919f6ba4fbe890de9438c1b3adf0b7" + integrity sha512-fC7kPWcEkAWBgCKxmAMqZldlIeHsXwQy9JXzrppAVQiukGiDKxmYesJcBKWu6UMwx/5GOfo10wtK/4zy+Xt/mg== dependencies: - cmd-shim "^5.0.0" + cmd-shim "^4.0.1" mkdirp-infer-owner "^2.0.0" npm-normalize-package-bin "^1.0.0" - read-cmd-shim "^3.0.0" + read-cmd-shim "^2.0.0" rimraf "^3.0.0" write-file-atomic "^4.0.0" binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + version "2.0.0" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== binary-search@^1.3.5: version "1.3.6" @@ -8557,17 +8800,12 @@ bmp-js@^0.1.0: resolved "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz#e05a63f796a6c1ff25f4771ec7adadc148c07233" integrity sha1-4Fpj95amwf8l9Hcex62twUjAcjM= -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -bn.js@^5.0.0, bn.js@^5.1.1: - version "5.2.0" - resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== - -body-parser@1.20.0, body-parser@^1.19.0: +body-parser@1.20.0: version "1.20.0" resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== @@ -8585,10 +8823,26 @@ body-parser@1.20.0, body-parser@^1.19.0: type-is "~1.6.18" unpipe "1.0.0" +body-parser@^1.19.0: + version "1.19.2" + resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" + integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== + dependencies: + bytes "3.1.2" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "1.8.1" + iconv-lite "0.4.24" + on-finished "~2.3.0" + qs "6.9.7" + raw-body "2.4.3" + type-is "~1.6.18" + bonjour-service@^1.0.11: - version "1.0.12" - resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.12.tgz#28fbd4683f5f2e36feedb833e24ba661cac960c3" - integrity sha512-pMmguXYCu63Ug37DluMKEHdxc+aaIf/ay4YbF8Gxtba+9d3u+rmEWy61VK3Z3hp8Rskok3BunHYnG0dUHAsblw== + version "1.0.11" + resolved "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.11.tgz#5418e5c1ac91c89a406f853a942e7892829c0d89" + integrity sha512-drMprzr2rDTCtgEE3VgdA9uUFaUHF+jXduwYSThHJnKMYM+FhI9Z3ph+TX3xy0LtgYHae6CHYPJ/2UnK8nQHcA== dependencies: array-flatten "^2.1.2" dns-equal "^1.0.0" @@ -8724,28 +8978,26 @@ browserify-des@^1.0.0: inherits "^2.0.1" safe-buffer "^5.1.2" -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.1.0" - resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" - integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= dependencies: - bn.js "^5.0.0" + bn.js "^4.1.0" randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.2.1" - resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" - integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== + version "4.0.4" + resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.3" - inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" browserify-zlib@^0.2.0: version "0.2.0" @@ -8754,15 +9006,15 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.18.1, browserslist@^4.20.3: - version "4.20.3" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" - integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.0, browserslist@^4.16.6, browserslist@^4.17.5, browserslist@^4.18.1, browserslist@^4.19.1: + version "4.19.1" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz#4ac0435b35ab655896c31d53018b6dd5e9e4c9a3" + integrity sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A== dependencies: - caniuse-lite "^1.0.30001332" - electron-to-chromium "^1.4.118" + caniuse-lite "^1.0.30001286" + electron-to-chromium "^1.4.17" escalade "^3.1.1" - node-releases "^2.0.3" + node-releases "^2.0.1" picocolors "^1.0.0" bser@2.1.1: @@ -8777,6 +9029,11 @@ btoa-lite@^1.0.0: resolved "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= +btoa@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz#01a9909f8b2c93f6bf680ba26131eb30f7fa3d73" + integrity sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g== + buffer-crc32@^0.2.1, buffer-crc32@^0.2.13, buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" @@ -8793,9 +9050,9 @@ buffer-equal@0.0.1: integrity sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs= buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + version "1.1.1" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== buffer-indexof-polyfill@~1.0.0: version "1.0.2" @@ -8842,11 +9099,6 @@ buffers@~0.1.1: resolved "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb" integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= -buildcheck@0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/buildcheck/-/buildcheck-0.0.3.tgz#70451897a95d80f7807e68fc412eb2e7e35ff4d5" - integrity sha512-pziaA+p/wdVImfcbsZLNF32EiWyujlQLwolMqUQE8xpKNOH7KmZQaY8sXN7DGOEzPAElo9QTaeNRfGnf3iOJbA== - builtin-modules@^3.0.0: version "3.2.0" resolved "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" @@ -8862,22 +9114,15 @@ builtins@^1.0.3: resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= -busboy@^1.6.0: - version "1.6.0" - resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" - integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== - dependencies: - streamsearch "^1.1.0" - byline@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= byte-size@^7.0.0: - version "7.0.1" - resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" - integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== + version "7.0.0" + resolved "https://registry.npmjs.org/byte-size/-/byte-size-7.0.0.tgz#36528cd1ca87d39bd9abd51f5715dc93b6ceb032" + integrity sha512-NNiBxKgxybMBtWdmvx7ZITJi4ZG+CYUgwOSZTfqB1qogkRHrhbQE/R2r5Fh94X+InN5MCYz6SvB/ejHMj/HbsQ== bytes@3.0.0: version "3.0.0" @@ -8889,7 +9134,7 @@ bytes@3.1.2: resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0: +cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0, cacache@^15.3.0: version "15.3.0" resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== @@ -8913,30 +9158,6 @@ cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0: tar "^6.0.2" unique-filename "^1.1.1" -cacache@^16.0.2: - version "16.0.7" - resolved "https://registry.npmjs.org/cacache/-/cacache-16.0.7.tgz#74a5d9bc4c17b4c0b373c1f5d42dadf5dc06638d" - integrity sha512-a4zfQpp5vm4Ipdvbj+ZrPonikRhm6WBEd4zT1Yc1DXsmAxrPgDwWBLF/u/wTVXSFPIgOJ1U3ghSa2Xm4s3h28w== - dependencies: - "@npmcli/fs" "^2.1.0" - "@npmcli/move-file" "^2.0.0" - chownr "^2.0.0" - fs-minipass "^2.1.0" - glob "^8.0.1" - infer-owner "^1.0.4" - lru-cache "^7.7.1" - minipass "^3.1.6" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.4" - mkdirp "^1.0.4" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^9.0.0" - tar "^6.1.11" - unique-filename "^1.1.1" - cache-base@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -8953,9 +9174,9 @@ cache-base@^1.0.1: unset-value "^1.0.0" cacheable-lookup@^5.0.3: - version "5.0.4" - resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" - integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== + version "5.0.3" + resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3" + integrity sha512-W+JBqF9SWe18A72XFzN/V/CULFzPm7sBXzzR6ekkE+3tLG72wFZrBiBZhrZuDoYexop4PHJVdFAKb/Nj9+tm9w== cacheable-request@^6.0.0: version "6.1.0" @@ -9063,10 +9284,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001332: - version "1.0.30001339" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001339.tgz#f9aece4ea8156071613b27791547ba0b33f176cf" - integrity sha512-Es8PiVqCe+uXdms0Gu5xP5PF2bxLR7OBp3wUzUnuO7OHzhOfCyg3hdiGWVPVxhiuniOzng+hTc1u3fEQ0TlkSQ== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001286: + version "1.0.30001315" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001315.tgz#f1b1efd1171ee1170d52709a7252632dacbd7c77" + integrity sha512-5v7LFQU4Sb/qvkz7JcZkvtSH1Ko+1x2kgo3ocdBeMGZSOFpuE1kkm0kpTwLtWeFrw5qw08ulLxJjVIXIS8MkiQ== canvas@^2.6.1: version "2.9.1" @@ -9092,9 +9313,9 @@ caseless@~0.12.0: integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= ccount@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" - integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== + version "2.0.0" + resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.0.tgz#3d6fb55803832766a24c6f339abc507297eb5d25" + integrity sha512-VOR0NWFYX65n9gELQdcpqsie5L5ihBXuZGAgaPEp/U7IOSjnPMEH6geE+2f6lcekaNEfWzAHS45mPvSo5bqsUA== chainsaw@~0.1.0: version "0.1.0" @@ -9198,21 +9419,31 @@ character-entities-legacy@^1.0.0: resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== +character-entities-legacy@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-2.0.0.tgz#57f4d00974c696e8f74e9f493e7fcb75b44d7ee7" + integrity sha512-YwaEtEvWLpFa6Wh3uVLrvirA/ahr9fki/NUd/Bd4OR6EdJ8D22hovYQEOUCBfQfcqnC4IAMGMsHXY1eXgL4ZZA== + character-entities@^1.0.0: version "1.2.4" resolved "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== character-entities@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.1.tgz#98724833e1e27990dee0bd0f2b8a859c3476aac7" - integrity sha512-OzmutCf2Kmc+6DrFrrPS8/tDh2+DpnrfzdICHWhcVC9eOd0N1PXmQEE1a8iM4IziIAG+8tmTq3K+oo0ubH6RRQ== + version "2.0.0" + resolved "https://registry.npmjs.org/character-entities/-/character-entities-2.0.0.tgz#508355fcc8c73893e0909efc1a44d28da2b6fdf3" + integrity sha512-oHqMj3eAuJ77/P5PaIRcqk+C3hdfNwyCD2DAUcD5gyXkegAuF2USC40CEqPscDk4I8FRGMTojGJQkXDsN5QlJA== character-reference-invalid@^1.0.0: version "1.1.4" resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== +character-reference-invalid@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.0.tgz#a0bdeb89c051fe7ed5d3158b2f06af06984f2813" + integrity sha512-pE3Z15lLRxDzWJy7bBHBopRwfI20sbrMVLQTC7xsPglCHf4Wv1e167OgYAFP78co2XlhojDyAqA+IAJse27//g== + chardet@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -9254,9 +9485,11 @@ chownr@^2.0.0: integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== chrome-trace-event@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" - integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== + version "1.0.2" + resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" + integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== + dependencies: + tslib "^1.9.0" ci-info@^2.0.0: version "2.0.0" @@ -9304,9 +9537,9 @@ classnames@*, classnames@^2.2.5, classnames@^2.2.6, classnames@^2.3.1: integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== clean-css@^5.2.2: - version "5.3.0" - resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.3.0.tgz#ad3d8238d5f3549e83d5f87205189494bc7cbb59" - integrity sha512-YYuuxv4H/iNb1Z/5IbMRoxgrzjWGhOEFfd+groZ5dMCVkpENiMZmwspdrzBo9286JjM1gZJPAyL7ZIdzuvu2AQ== + version "5.2.2" + resolved "https://registry.npmjs.org/clean-css/-/clean-css-5.2.2.tgz#d3a7c6ee2511011e051719838bdcf8314dc4548d" + integrity sha512-/eR8ru5zyxKzpBLv9YZvMXgTSSQn7AdkMItMYynsFgGwTveCRVam9IUPFloE85B4vAIj05IuKmmEoV7/AQjT0w== dependencies: source-map "~0.6.0" @@ -9340,23 +9573,23 @@ cli-cursor@^3.1.0: restore-cursor "^3.1.0" cli-spinners@^2.5.0: - version "2.6.1" - resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" - integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== + version "2.5.0" + resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz#12763e47251bf951cb75c201dfa58ff1bcb2d047" + integrity sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ== cli-table3@~0.6.1: - version "0.6.2" - resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.2.tgz#aaf5df9d8b5bf12634dc8b3040806a0c07120d2a" - integrity sha512-QyavHCaIC80cMivimWu4aWHilIpiDpfm3hGmqAmXVL1UsnbLuBSMd21hTX6VY4ZSDSM73ESLeF8TOYId3rBTbw== + version "0.6.1" + resolved "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.1.tgz#36ce9b7af4847f288d3cdd081fbd09bf7bd237b8" + integrity sha512-w0q/enDHhPLq44ovMGdQeeDLvwxwavsJX7oQGYt/LrBlYsyaxyDnp6z3QzFut/6kLLKnlcUVJLrpB7KBfgG/RA== dependencies: string-width "^4.2.0" optionalDependencies: - "@colors/colors" "1.5.0" + colors "1.4.0" cli-table@^0.3.1: - version "0.3.11" - resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz#ac69cdecbe81dccdba4889b9a18b7da312a9d3ee" - integrity sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ== + version "0.3.6" + resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.6.tgz#e9d6aa859c7fe636981fd3787378c2a20bce92fc" + integrity sha512-ZkNZbnZjKERTY5NwC2SeMeLeifSPq/pubeRoTpdr3WchLlnZg6hEgvHkK5zL7KNFdd9PmHN8lxrENUwI3cE8vQ== dependencies: colors "1.0.3" @@ -9471,20 +9704,13 @@ cluster-key-slot@^1.1.0: resolved "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz#30474b2a981fb12172695833052bc0d01336d10d" integrity sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw== -cmd-shim@^4.1.0: +cmd-shim@^4.0.1, cmd-shim@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== dependencies: mkdirp-infer-owner "^2.0.0" -cmd-shim@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" - integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== - dependencies: - mkdirp-infer-owner "^2.0.0" - co@^4.6.0: version "4.6.0" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -9530,9 +9756,9 @@ codeowners-utils@^1.0.2: locate-path "^5.0.0" collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + version "1.0.0" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1" + integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ== collection-visit@^1.0.0: version "1.0.0" @@ -9547,7 +9773,7 @@ color-convert@^0.5.2: resolved "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" integrity sha1-vbbGnOZg+t/+CwAHzER+G59ygr0= -color-convert@^1.9.0, color-convert@^1.9.3: +color-convert@^1.9.0, color-convert@^1.9.1: version "1.9.3" resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -9571,26 +9797,26 @@ color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.6.0, color-string@^1.9.0: - version "1.9.1" - resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" - integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== +color-string@^1.5.2, color-string@^1.9.0: + version "1.9.0" + resolved "https://registry.npmjs.org/color-string/-/color-string-1.9.0.tgz#63b6ebd1bec11999d1df3a79a7569451ac2be8aa" + integrity sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ== dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" -color-support@^1.1.2, color-support@^1.1.3: +color-support@^1.1.2: version "1.1.3" resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -color@^3.1.3: - version "3.2.1" - resolved "https://registry.npmjs.org/color/-/color-3.2.1.tgz#3544dc198caf4490c3ecc9a790b54fe9ff45e164" - integrity sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA== +color@3.0.x: + version "3.0.0" + resolved "https://registry.npmjs.org/color/-/color-3.0.0.tgz#d920b4328d534a3ac8295d68f7bd4ba6c427be9a" + integrity sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w== dependencies: - color-convert "^1.9.3" - color-string "^1.6.0" + color-convert "^1.9.1" + color-string "^1.5.2" color@^4.0.1: version "4.2.3" @@ -9601,9 +9827,9 @@ color@^4.0.1: color-string "^1.9.0" colord@^2.9.1: - version "2.9.2" - resolved "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz#25e2bacbbaa65991422c07ea209e2089428effb1" - integrity sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ== + version "2.9.1" + resolved "https://registry.npmjs.org/colord/-/colord-2.9.1.tgz#c961ea0efeb57c9f0f4834458f26cb9cc4a3f90e" + integrity sha512-4LBMSt09vR0uLnPVkOUBnmxgoaeN4ewRbx801wY/bXcltXfpR/G46OdWn96XpYmCWuYvO46aBZP4NgX8HpNAcw== colorette@2.0.16, colorette@^2.0.10, colorette@^2.0.16: version "2.0.16" @@ -9615,25 +9841,30 @@ colors@1.0.3: resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= +colors@1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + colors@~1.2.1: version "1.2.5" resolved "https://registry.npmjs.org/colors/-/colors-1.2.5.tgz#89c7ad9a374bc030df8013241f68136ed8835afc" integrity sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg== colorspace@1.1.x: - version "1.1.4" - resolved "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz#8d442d1186152f60453bf8070cd66eb364e59243" - integrity sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w== + version "1.1.2" + resolved "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz#e0128950d082b86a2168580796a0aa5d6c68d8c5" + integrity sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ== dependencies: - color "^3.1.3" + color "3.0.x" text-hex "1.0.x" columnify@^1.5.4: - version "1.6.0" - resolved "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz#6989531713c9008bb29735e61e37acf5bd553cf3" - integrity sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q== + version "1.5.4" + resolved "https://registry.npmjs.org/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" + integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= dependencies: - strip-ansi "^6.0.1" + strip-ansi "^3.0.0" wcwidth "^1.0.0" combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: @@ -9658,17 +9889,17 @@ command-exists@^1.2.9: resolved "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== -commander@*, commander@^9.1.0: - version "9.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" - integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== +commander@*, commander@^8.3.0: + version "8.3.0" + resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== commander@7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz#f2eaecf131f10e36e07d894698226e36ae0eb5ff" integrity sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg== -commander@^2.20.0, commander@^2.20.3: +commander@^2.20.0, commander@^2.20.3, commander@^2.7.1: version "2.20.3" resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== @@ -9693,10 +9924,10 @@ commander@^7.2.0: resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commander@^8.3.0: - version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== +commander@^9.1.0: + version "9.2.0" + resolved "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== common-ancestor-path@^1.0.1: version "1.0.1" @@ -9755,12 +9986,12 @@ compress-brotli@^1.3.8: json-buffer "~3.0.1" compress-commons@^4.1.0: - version "4.1.1" - resolved "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d" - integrity sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ== + version "4.1.0" + resolved "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.0.tgz#25ec7a4528852ccd1d441a7d4353cd0ece11371b" + integrity sha512-ofaaLqfraD1YRTkrRKPCrGJ1pFeDG/MVCkVVV2FNGeWquSlqw5wOrwOfPQ1xF2u+blpeWASie5EubHz+vsNIgA== dependencies: buffer-crc32 "^0.2.13" - crc32-stream "^4.0.2" + crc32-stream "^4.0.1" normalize-path "^3.0.0" readable-stream "^3.6.0" @@ -9855,9 +10086,9 @@ concurrently@^7.0.0: yargs "^17.3.1" config-chain@^1.1.12: - version "1.1.13" - resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" - integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== + version "1.1.12" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== dependencies: ini "^1.3.4" proto-list "~1.2.1" @@ -9933,9 +10164,9 @@ content-type@~1.0.4: integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== conventional-changelog-angular@^5.0.12: - version "5.0.13" - resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" - integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== + version "5.0.12" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz#c979b8b921cbfe26402eb3da5bbfda02d865a2b9" + integrity sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== dependencies: compare-func "^2.0.0" q "^1.5.1" @@ -9989,9 +10220,9 @@ conventional-commits-filter@^2.0.7: modify-values "^1.0.0" conventional-commits-parser@^3.2.0: - version "3.2.4" - resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz#a7d3b77758a202a9b2293d2112a8d8052c740972" - integrity sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q== + version "3.2.1" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.1.tgz#ba44f0b3b6588da2ee9fd8da508ebff50d116ce2" + integrity sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA== dependencies: JSONStream "^1.0.4" is-text-path "^1.0.1" @@ -9999,6 +10230,7 @@ conventional-commits-parser@^3.2.0: meow "^8.0.0" split2 "^3.0.0" through2 "^4.0.0" + trim-off-newlines "^1.0.0" conventional-recommended-bump@^6.1.0: version "6.1.0" @@ -10015,9 +10247,9 @@ conventional-recommended-bump@^6.1.0: q "^1.5.1" convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.8.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== + version "1.7.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== dependencies: safe-buffer "~5.1.1" @@ -10044,12 +10276,20 @@ cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== +<<<<<<< HEAD cookie@0.5.0, cookie@~0.5.0: +======= +cookie@0.5.0: +>>>>>>> Fix some typos and other requested changes version "0.5.0" resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +<<<<<<< HEAD cookiejar@^2.1.3: +======= +cookiejar@^2.1.0, cookiejar@^2.1.3: +>>>>>>> Fix some typos and other requested changes version "2.1.3" resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== @@ -10066,18 +10306,18 @@ copy-to-clipboard@^3, copy-to-clipboard@^3.2.0, copy-to-clipboard@^3.3.1: dependencies: toggle-selection "^1.0.6" -core-js-compat@^3.20.2, core-js-compat@^3.21.0: - version "3.22.5" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.5.tgz#7fffa1d20cb18405bd22756ca1353c6f1a0e8614" - integrity sha512-rEF75n3QtInrYICvJjrAgV03HwKiYvtKHdPtaba1KucG+cNZ4NJnH9isqt979e67KZlhpbCOTwnsvnIr+CVeOg== +core-js-compat@^3.20.0, core-js-compat@^3.20.2: + version "3.20.3" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.20.3.tgz#d71f85f94eb5e4bea3407412e549daa083d23bd6" + integrity sha512-c8M5h0IkNZ+I92QhIpuSijOxGAcj3lgpsWdkCqmUTZNwidujF4r3pi6x1DCN+Vcs5qTS2XWWMfWSuCqyupX8gw== dependencies: - browserslist "^4.20.3" + browserslist "^4.19.1" semver "7.0.0" core-js-pure@^3.20.2, core-js-pure@^3.6.5: - version "3.22.5" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.5.tgz#bdee0ed2f9b78f2862cda4338a07b13a49b6c9a9" - integrity sha512-8xo9R00iYD7TcV7OrC98GwxiUEAabVWO3dix+uyWjnYrx9fyASLlIX+f/3p5dW5qByaP2bcZ8X/T47s55et/tA== + version "3.21.1" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" + integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.10: version "2.6.12" @@ -10089,16 +10329,11 @@ core-js@^3.4.1, core-js@^3.6.5: resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== -core-util-is@1.0.2: +core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= -core-util-is@~1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" - integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== - cors@^2.8.5: version "2.8.5" resolved "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" @@ -10136,36 +10371,38 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" -cpu-features@~0.0.4: - version "0.0.4" - resolved "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.4.tgz#0023475bb4f4c525869c162e4108099e35bf19d8" - integrity sha512-fKiZ/zp1mUwQbnzb9IghXtHtDoTMtNeb8oYGx6kX2SYfhnG0HNdBEBIzB9b5KlXu5DQPhfy3mInbBxFcgwAr3A== +cpu-features@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/cpu-features/-/cpu-features-0.0.2.tgz#9f636156f1155fd04bdbaa028bb3c2fbef3cea7a" + integrity sha512-/2yieBqvMcRj8McNzkycjW2v3OIUOibBfd2dLEJ0nWts8NobAxwiyw9phVNS6oDL8x8tz9F7uNVFEVpJncQpeA== dependencies: - buildcheck "0.0.3" - nan "^2.15.0" + nan "^2.14.1" crc-32@^1.2.0: - version "1.2.2" - resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" - integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== + version "1.2.0" + resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.0.tgz#cb2db6e29b88508e32d9dd0ec1693e7b41a18208" + integrity sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA== + dependencies: + exit-on-epipe "~1.0.1" + printj "~1.1.0" -crc32-stream@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz#c922ad22b38395abe9d3870f02fa8134ed709007" - integrity sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w== +crc32-stream@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.1.tgz#0f047d74041737f8a55e86837a1b826bd8ab0067" + integrity sha512-FN5V+weeO/8JaXsamelVYO1PHyeCsuL3HcG4cqsj0ceARcocxalaShCsohZMSAF+db7UYFwBy1rARK/0oFItUw== dependencies: crc-32 "^1.2.0" readable-stream "^3.4.0" create-ecdh@^4.0.0: - version "4.0.4" - resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" - integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== + version "4.0.3" + resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" + integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== dependencies: bn.js "^4.1.0" - elliptic "^6.5.3" + elliptic "^6.0.0" -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: +create-hash@^1.1.0, create-hash@^1.1.2: version "1.2.0" resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== @@ -10176,7 +10413,7 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: ripemd160 "^2.0.1" sha.js "^2.4.0" -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: version "1.1.7" resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== @@ -10199,11 +10436,11 @@ crelt@^1.0.5: integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== cron@^1.8.2: - version "1.8.3" - resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" - integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== + version "1.8.2" + resolved "https://registry.npmjs.org/cron/-/cron-1.8.2.tgz#4ac5e3c55ba8c163d84f3407bde94632da8370ce" + integrity sha512-Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg== dependencies: - luxon "^1.23.x" + moment-timezone "^0.5.x" cronstrue@^2.2.0: version "2.9.0" @@ -10217,7 +10454,7 @@ cross-env@^7.0.0: dependencies: cross-spawn "^7.0.1" -cross-fetch@3.1.5, cross-fetch@^3.0.6, cross-fetch@^3.1.3, cross-fetch@^3.1.5: +cross-fetch@3.1.5, cross-fetch@^3.0.4, cross-fetch@^3.0.6, cross-fetch@^3.1.3, cross-fetch@^3.1.5: version "3.1.5" resolved "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== @@ -10233,6 +10470,17 @@ cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -10242,17 +10490,28 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -cross-undici-fetch@^0.4.0: - version "0.4.3" - resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.4.3.tgz#465d13d4d7d7a1dae75f8ad85aa0ecfa2752e99f" - integrity sha512-mv1jusEQsFnBHEBkpFaYROKAzAWyuW8ZyN48NcyqkjLGRrscMKuFRmUigUrkE/pdprQZjNTQQ/aWJKe6F4tzTA== +cross-undici-fetch@^0.2.5: + version "0.2.5" + resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.2.5.tgz#0dd5bb3809a2fc4524fc777f1e6eb052203a6b68" + integrity sha512-6IR+JN6o2UMNj2f3fu0ZVkZeP0h22DRKzq78SiMenkqyBYyGIT1AkZjHkItvh0A80LdsAlWENHUpvapapePucw== dependencies: abort-controller "^3.0.0" - busboy "^1.6.0" form-data-encoder "^1.7.1" formdata-node "^4.3.1" node-fetch "^2.6.7" - undici "^5.1.0" + undici "^5.0.0" + web-streams-polyfill "^3.2.0" + +cross-undici-fetch@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.3.0.tgz#d03764f0a1bcb745855bba8464c231d46ee14cfa" + integrity sha512-as3gHg3EJrc4QMS11/GdHtyY+m3LnIf8GrziHQRe/dGxSHqEP4RcONJ/3UVaPeA1j687aYvwzWMPWKgqsdXbtA== + dependencies: + abort-controller "^3.0.0" + form-data-encoder "^1.7.1" + formdata-node "^4.3.1" + node-fetch "^2.6.7" + undici "^5.0.0" web-streams-polyfill "^3.2.0" crypto-browserify@^3.11.0: @@ -10293,10 +10552,12 @@ css-color-converter@^2.0.0: color-name "^1.1.4" css-unit-converter "^1.1.2" -css-declaration-sorter@^6.2.2: - version "6.2.2" - resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.2.2.tgz#bfd2f6f50002d6a3ae779a87d3a0c5d5b10e0f02" - integrity sha512-Ufadglr88ZLsrvS11gjeu/40Lw74D9Am/Jpr3LlYm5Q4ZP5KdlUhG+6u2EjyXeZcxmZ2h1ebCKngDjolpeLHpg== +css-declaration-sorter@^6.0.3: + version "6.1.3" + resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.1.3.tgz#e9852e4cf940ba79f509d9425b137d1f94438dc2" + integrity sha512-SvjQjNRZgh4ULK1LDJ2AduPKUKxIqmtU7ZAyi47BTV+M90Qvxr9AB6lKlLbDUfXqI9IQeYA8LbAsCZPpJEV3aA== + dependencies: + timsort "^0.3.0" css-in-js-utils@^2.0.0: version "2.0.1" @@ -10321,15 +10582,15 @@ css-loader@^6.5.1: semver "^7.3.5" css-select@^4.1.3: - version "4.3.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" - integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== + version "4.1.3" + resolved "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz#a70440f70317f2669118ad74ff105e65849c7067" + integrity sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA== dependencies: boolbase "^1.0.0" - css-what "^6.0.1" - domhandler "^4.3.1" - domutils "^2.8.0" - nth-check "^2.0.1" + css-what "^5.0.0" + domhandler "^4.2.0" + domutils "^2.6.0" + nth-check "^2.0.0" css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" @@ -10352,10 +10613,10 @@ css-vendor@^2.0.8: "@babel/runtime" "^7.8.3" is-in-browser "^1.0.2" -css-what@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" - integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== +css-what@^5.0.0: + version "5.1.0" + resolved "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" + integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== css.escape@1.5.1, css.escape@^1.5.1: version "1.5.1" @@ -10381,52 +10642,53 @@ cssfilter@0.0.10: resolved "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" integrity sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4= -cssnano-preset-default@^5.2.7: - version "5.2.7" - resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.7.tgz#791e3603fb8f1b46717ac53b47e3c418e950f5f3" - integrity sha512-JiKP38ymZQK+zVKevphPzNSGHSlTI+AOwlasoSRtSVMUU285O7/6uZyd5NbW92ZHp41m0sSHe6JoZosakj63uA== +cssnano-preset-default@^5.1.7: + version "5.1.7" + resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.1.7.tgz#68c3ad1ec6a810482ec7d06b2d70fc34b6b0d70c" + integrity sha512-bWDjtTY+BOqrqBtsSQIbN0RLGD2Yr2CnecpP0ydHNafh9ZUEre8c8VYTaH9FEbyOt0eIfEUAYYk5zj92ioO8LA== dependencies: - css-declaration-sorter "^6.2.2" - cssnano-utils "^3.1.0" - postcss-calc "^8.2.3" - postcss-colormin "^5.3.0" - postcss-convert-values "^5.1.0" - postcss-discard-comments "^5.1.1" - postcss-discard-duplicates "^5.1.0" - postcss-discard-empty "^5.1.1" - postcss-discard-overridden "^5.1.0" - postcss-merge-longhand "^5.1.4" - postcss-merge-rules "^5.1.1" - postcss-minify-font-values "^5.1.0" - postcss-minify-gradients "^5.1.1" - postcss-minify-params "^5.1.2" - postcss-minify-selectors "^5.2.0" - postcss-normalize-charset "^5.1.0" - postcss-normalize-display-values "^5.1.0" - postcss-normalize-positions "^5.1.0" - postcss-normalize-repeat-style "^5.1.0" - postcss-normalize-string "^5.1.0" - postcss-normalize-timing-functions "^5.1.0" - postcss-normalize-unicode "^5.1.0" - postcss-normalize-url "^5.1.0" - postcss-normalize-whitespace "^5.1.1" - postcss-ordered-values "^5.1.1" - postcss-reduce-initial "^5.1.0" - postcss-reduce-transforms "^5.1.0" - postcss-svgo "^5.1.0" - postcss-unique-selectors "^5.1.1" + css-declaration-sorter "^6.0.3" + cssnano-utils "^2.0.1" + postcss-calc "^8.0.0" + postcss-colormin "^5.2.1" + postcss-convert-values "^5.0.2" + postcss-discard-comments "^5.0.1" + postcss-discard-duplicates "^5.0.1" + postcss-discard-empty "^5.0.1" + postcss-discard-overridden "^5.0.1" + postcss-merge-longhand "^5.0.4" + postcss-merge-rules "^5.0.3" + postcss-minify-font-values "^5.0.1" + postcss-minify-gradients "^5.0.3" + postcss-minify-params "^5.0.2" + postcss-minify-selectors "^5.1.0" + postcss-normalize-charset "^5.0.1" + postcss-normalize-display-values "^5.0.1" + postcss-normalize-positions "^5.0.1" + postcss-normalize-repeat-style "^5.0.1" + postcss-normalize-string "^5.0.1" + postcss-normalize-timing-functions "^5.0.1" + postcss-normalize-unicode "^5.0.1" + postcss-normalize-url "^5.0.3" + postcss-normalize-whitespace "^5.0.1" + postcss-ordered-values "^5.0.2" + postcss-reduce-initial "^5.0.1" + postcss-reduce-transforms "^5.0.1" + postcss-svgo "^5.0.3" + postcss-unique-selectors "^5.0.2" -cssnano-utils@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" - integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== +cssnano-utils@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-2.0.1.tgz#8660aa2b37ed869d2e2f22918196a9a8b6498ce2" + integrity sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ== cssnano@^5.0.1: - version "5.1.7" - resolved "https://registry.npmjs.org/cssnano/-/cssnano-5.1.7.tgz#99858bef6c76c9240f0cdc9239570bc7db8368be" - integrity sha512-pVsUV6LcTXif7lvKKW9ZrmX+rGRzxkEdJuVJcp5ftUjWITgwam5LMZOgaTvUrWPkcORBey6he7JKb4XAJvrpKg== + version "5.0.11" + resolved "https://registry.npmjs.org/cssnano/-/cssnano-5.0.11.tgz#743397a05e04cb87e9df44b7659850adfafc3646" + integrity sha512-5SHM31NAAe29jvy0MJqK40zZ/8dGlnlzcfHKw00bWMVFp8LWqtuyPSFwbaoIoxvt71KWJOfg8HMRGrBR3PExCg== dependencies: - cssnano-preset-default "^5.2.7" + cssnano-preset-default "^5.1.7" + is-resolvable "^1.1.0" lilconfig "^2.0.3" yaml "^1.10.2" @@ -10454,40 +10716,40 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^2.5.2: - version "2.6.20" - resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda" - integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA== +csstype@^2.5.2, csstype@^2.6.7: + version "2.6.17" + resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz#4cf30eb87e1d1a005d8b6510f95292413f6a1c0e" + integrity sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A== csstype@^3.0.2, csstype@^3.0.6: - version "3.0.11" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33" - integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw== + version "3.0.7" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.7.tgz#2a5fb75e1015e84dd15692f71e89a1450290950b" + integrity sha512-KxnUB0ZMlnUWCsx2Z8MUsr6qV6ja1w9ArPErJaJaF8a5SOWoHLIszeCTKGRGRgtLgYrs1E8CHkNSP1VZTTPc9g== -csv-generate@^3.4.3: - version "3.4.3" - resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" - integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== +csv-generate@^3.2.4: + version "3.2.4" + resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.2.4.tgz#440dab9177339ee0676c9e5c16f50e2b3463c019" + integrity sha512-qNM9eqlxd53TWJeGtY1IQPj90b563Zx49eZs8e0uMyEvPgvNVmX1uZDtdzAcflB3PniuH9creAzcFOdyJ9YGvA== -csv-parse@^4.16.3: - version "4.16.3" - resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" - integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== +csv-parse@^4.8.8: + version "4.12.0" + resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.12.0.tgz#fd42d6291bbaadd51d3009f6cadbb3e53b4ce026" + integrity sha512-wPQl3H79vWLPI8cgKFcQXl0NBgYYEqVnT1i6/So7OjMpsI540oD7p93r3w6fDSyPvwkTepG05F69/7AViX2lXg== -csv-stringify@^5.6.5: - version "5.6.5" - resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" - integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== +csv-stringify@^5.3.6: + version "5.5.1" + resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.5.1.tgz#f42cdd379b0f7f142933a11f674b1a91ebd0fcd0" + integrity sha512-HM0/86Ks8OwFbaYLd495tqTs1NhscZL52dC4ieKYumy8+nawQYC0xZ63w1NqLf0M148T2YLYqowoImc1giPn0g== csv@^5.3.1: - version "5.5.3" - resolved "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" - integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== + version "5.3.2" + resolved "https://registry.npmjs.org/csv/-/csv-5.3.2.tgz#50b344e25dfbb8c62684a1bcec18c22468b2161e" + integrity sha512-odDyucr9OgJTdGM2wrMbJXbOkJx3nnUX3Pt8SFOwlAMOpsUQlz1dywvLMXJWX/4Ib0rjfOsaawuuwfI5ucqBGQ== dependencies: - csv-generate "^3.4.3" - csv-parse "^4.16.3" - csv-stringify "^5.6.5" - stream-transform "^2.1.3" + csv-generate "^3.2.4" + csv-parse "^4.8.8" + csv-stringify "^5.3.6" + stream-transform "^2.0.1" cypress-plugin-snapshots@^1.4.4: version "1.4.4" @@ -10789,9 +11051,9 @@ dagre@^0.8.5: lodash "^4.17.15" damerau-levenshtein@^1.0.7: - version "1.0.8" - resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" - integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== + version "1.0.7" + resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.7.tgz#64368003512a1a6992593741a09a9d31a836f55d" + integrity sha512-VvdQIPGdWP0SqFXghj79Wf/5LArmreyMsGLa6FG6iC4t3j7j5s71TrwWmT/4akbDQIqjfACkLZmjXhA7g2oUZw== dargs@^7.0.0: version "7.0.0" @@ -10819,35 +11081,48 @@ dataloader@2.1.0, dataloader@^2.0.0: resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.1.0.tgz#c69c538235e85e7ac6c6c444bae8ecabf5de9df7" integrity sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ== +<<<<<<< HEAD +======= +date-and-time@^2.0.0: + version "2.3.0" + resolved "https://registry.npmjs.org/date-and-time/-/date-and-time-2.3.0.tgz#1b509be4c938dbbf5fc9c14d66e1daf9fe3cef13" + integrity sha512-DY53oj742mykXjZzDxT7NxH5cxwBRb7FsVG5+8pcV96qU9JQd0UhA21pQB18fwwsXOXeSM0RJV4OzgVxu8eatg== + +>>>>>>> Fix some typos and other requested changes date-fns@^1.27.2: version "1.30.1" resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== -date-fns@^2.16.1, date-fns@^2.18.0: +date-fns@^2.16.1: version "2.28.0" resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz#9570d656f5fc13143e50c975a3b6bbeb46cd08b2" integrity sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw== +date-fns@^2.18.0: + version "2.19.0" + resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.19.0.tgz#65193348635a28d5d916c43ec7ce6fbd145059e1" + integrity sha512-X3bf2iTPgCAQp9wvjOQytnf5vO5rESYRXlPIVcgSbtT5OTScPcsf9eZU+B/YIkKAtYr5WeCii58BgATrNitlWg== + dateformat@^3.0.0, dateformat@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== dateformat@^4.5.0: - version "4.6.3" - resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" - integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== + version "4.5.1" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-4.5.1.tgz#c20e7a9ca77d147906b6dc2261a8be0a5bd2173c" + integrity sha512-OD0TZ+B7yP7ZgpJf5K2DIbj3FZvFvxgFUuaqA/V5zTjAtAAXZ1E8bktHxmAGs4x5b7PflqA9LeQ84Og7wYtF7Q== dayjs@^1.10.4: - version "1.11.2" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.2.tgz#fa0f5223ef0d6724b3d8327134890cfe3d72fbe5" - integrity sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw== + version "1.10.4" + resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz#8e544a9b8683f61783f570980a8a80eaf54ab1e2" + integrity sha512-RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw== debounce@^1.2.0: - version "1.2.1" - resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" - integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== + version "1.2.0" + resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" + integrity sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg== debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: version "2.6.9" @@ -10910,9 +11185,9 @@ decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decimal.js-light@^2.4.1: - version "2.5.1" - resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934" - integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg== + version "2.5.0" + resolved "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.0.tgz#ca7faf504c799326df94b0ab920424fdfc125348" + integrity sha512-b3VJCbd2hwUpeRGG3Toob+CRo8W22xplipNhP3tN7TSVB/cyMX71P1vM2Xjc9H74uV6dS2hDDmo/rHq8L87Upg== decimal.js@^10.2.1: version "10.3.1" @@ -10963,9 +11238,9 @@ deep-extend@0.6.0, deep-extend@^0.6.0: integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== deep-is@^0.1.3, deep-is@~0.1.3: - version "0.1.4" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + version "0.1.3" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= deepmerge@^4.2.2, deepmerge@~4.2.2: version "4.2.2" @@ -10992,22 +11267,21 @@ defer-to-connect@^1.0.1: integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== defer-to-connect@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" - integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== + version "2.0.0" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.0.tgz#83d6b199db041593ac84d781b5222308ccf4c2c1" + integrity sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg== define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3, define-properties@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" - integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== dependencies: - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" + object-keys "^1.0.12" define-properties@^1.1.4: version "1.1.4" @@ -11117,9 +11391,14 @@ detect-indent@^5.0.0: integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= detect-indent@^6.0.0: - version "6.1.0" - resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" - integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== + version "6.0.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" + integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== + +detect-libc@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= detect-libc@^2.0.0: version "2.0.1" @@ -11131,7 +11410,12 @@ detect-newline@^3.0.0: resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -detect-node@^2.0.4, detect-node@^2.1.0: +detect-node@^2.0.4: + version "2.0.4" + resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" + integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== + +detect-node@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== @@ -11149,7 +11433,7 @@ devtools-protocol@0.0.1001819: resolved "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1001819.tgz#0a98f44cefdb02cc684f3d5e6bd898a1690231d9" integrity sha512-G6OsIFnv/rDyxSqBa2lDLR6thp9oJioLsb2Gl+LbQlyoA9/OBAkrTU9jiCcQ8Pnh7z4d6slDiLaogR5hzgJLmQ== -dezalgo@1.0.3: +dezalgo@1.0.3, dezalgo@^1.0.0: version "1.0.3" resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= @@ -11157,14 +11441,6 @@ dezalgo@1.0.3: asap "^2.0.0" wrappy "1" -dezalgo@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" - integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== - dependencies: - asap "^2.0.0" - wrappy "1" - diff-sequences@^26.6.2: version "26.6.2" resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" @@ -11280,9 +11556,9 @@ doctrine@^3.0.0: esutils "^2.0.2" dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9: - version "0.5.14" - resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz#56082f71b1dc7aac69d83c4285eef39c15d93f56" - integrity sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg== + version "0.5.13" + resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.13.tgz#102ee5f25eacce09bdf1cfa5a298f86da473be4b" + integrity sha512-R305kwb5CcMDIpSHUnLyIAp7SrSPBx6F0VfQFB3M75xVMHhXJJIdePYgbPPh1o57vCHNu5QztokWUPsLjWzFqw== dom-converter@^0.2.0: version "0.2.0" @@ -11299,26 +11575,26 @@ dom-helpers@^3.4.0: "@babel/runtime" "^7.1.2" dom-helpers@^5.0.1: - version "5.2.1" - resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" - integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== + version "5.1.4" + resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.1.4.tgz#4609680ab5c79a45f2531441f1949b79d6587f4b" + integrity sha512-TjMyeVUvNEnOnhzs6uAn9Ya47GmMo3qq7m+Lr/3ON0Rs5kHvb8I+SQYjLUSYn7qhEm0QjW0yrBkvz9yOrwwz1A== dependencies: "@babel/runtime" "^7.8.7" - csstype "^3.0.2" + csstype "^2.6.7" dom-serializer@^1.0.1: - version "1.4.1" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" - integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== + version "1.2.0" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz#3433d9136aeb3c627981daa385fc7f32d27c48f1" + integrity sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA== dependencies: domelementtype "^2.0.1" - domhandler "^4.2.0" + domhandler "^4.0.0" entities "^2.0.0" dom-walk@^0.1.0: - version "0.1.2" - resolved "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" - integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== + version "0.1.1" + resolved "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" + integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= domain-browser@^1.1.1: version "1.2.0" @@ -11326,9 +11602,9 @@ domain-browser@^1.1.1: integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== domelementtype@^2.0.1, domelementtype@^2.2.0: - version "2.3.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" - integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== + version "2.2.0" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" + integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== domexception@^2.0.1: version "2.0.1" @@ -11337,10 +11613,10 @@ domexception@^2.0.1: dependencies: webidl-conversions "^5.0.0" -domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: - version "4.3.1" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" - integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== +domhandler@^4.0.0, domhandler@^4.2.0: + version "4.3.0" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626" + integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g== dependencies: domelementtype "^2.2.0" @@ -11354,7 +11630,7 @@ dompurify@^2.2.7, dompurify@^2.2.9, dompurify@^2.3.6: resolved "https://registry.npmjs.org/dompurify/-/dompurify-2.3.8.tgz#224fe9ae57d7ebd9a1ae1ac18c1c1ca3f532226f" integrity sha512-eVhaWoVibIzqdGYjwsBWodIQIaXFSB+cKDf4cfxLMsK0xiud6SE+/WCVx/Xw/UwQsa4cS3T2eITcdtmTg2UKcw== -domutils@^2.5.2, domutils@^2.8.0: +domutils@^2.5.2, domutils@^2.6.0: version "2.8.0" resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== @@ -11386,9 +11662,9 @@ dot-prop@^6.0.1: is-obj "^2.0.0" dotenv@^16.0.0: - version "16.0.1" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz#8f8f9d94876c35dac989876a5d3a82a267fdce1d" - integrity sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ== + version "16.0.0" + resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz#c619001253be89ebb638d027b609c75c26e47411" + integrity sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q== drange@^1.0.2: version "1.1.1" @@ -11396,9 +11672,14 @@ drange@^1.0.2: integrity sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA== dset@^3.1.0: - version "3.1.2" - resolved "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz#89c436ca6450398396dc6538ea00abc0c54cd45a" - integrity sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q== + version "3.1.0" + resolved "https://registry.npmjs.org/dset/-/dset-3.1.0.tgz#23feb6df93816ea452566308b1374d6e869b0d7b" + integrity sha512-7xTQ5DzyE59Nn+7ZgXDXjKAGSGmXZHqttMVVz1r4QNfmGpyj+cm2YtI3II0c/+4zS4a9yq2mBhgdeq2QnpcYlw== + +dset@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/dset/-/dset-3.1.1.tgz#07de5af7a8d03eab337ad1a8ba77fe17bba61a8c" + integrity sha512-hYf+jZNNqJBD2GiMYb+5mqOIX4R4RRHXU3qWMWYN+rqcR2/YpRL2bUHr8C8fU+5DNvqYjJ8YvMGSLuVPWU1cNg== duplexer2@~0.1.4: version "0.1.4" @@ -11412,15 +11693,20 @@ duplexer3@^0.1.4: resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -duplexer@^0.1.1, duplexer@^0.1.2, duplexer@~0.1.1: +duplexer@^0.1.1, duplexer@~0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" + integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= + +duplexer@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== duplexify@^4.0.0, duplexify@^4.1.1: - version "4.1.2" - resolved "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz#18b4f8d28289132fa0b9573c898d9f903f81c7b0" - integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw== + version "4.1.1" + resolved "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz#7027dc374f157b122a8ae08c2d3ea4d2d953aa61" + integrity sha512-DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA== dependencies: end-of-stream "^1.4.1" inherits "^2.0.3" @@ -11481,17 +11767,17 @@ elastic-builder@^2.16.0: lodash.isstring "^4.0.1" lodash.omit "^4.5.0" -electron-to-chromium@^1.4.118: - version "1.4.137" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.137.tgz#186180a45617283f1c012284458510cd99d6787f" - integrity sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA== +electron-to-chromium@^1.4.17: + version "1.4.35" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.35.tgz#69aabb73d7030733e71c1e970ec16f5ceefbaea4" + integrity sha512-wzTOMh6HGFWeALMI3bif0mzgRrVGyP1BdFRx7IvWukFrSC5QVQELENuy+Fm2dCrAdQH9T3nuqr07n94nPDFBWA== elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= -elliptic@^6.5.3: +elliptic@^6.0.0: version "6.5.4" resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== @@ -11509,6 +11795,11 @@ emittery@^0.8.1: resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -11534,7 +11825,7 @@ encodeurl@~1.0.2: resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -encoding@^0.1.12, encoding@^0.1.13: +encoding@^0.1.12: version "0.1.13" resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== @@ -11608,30 +11899,25 @@ ent@^2.2.0: resolved "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" integrity sha1-6WQhkyWiHQX0RGai9obtbOX13R0= -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== +entities@^2.0.0, entities@~2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" + integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== entities@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== -entities@~2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" - integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== - env-paths@^2.2.0: - version "2.2.1" - resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" - integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + version "2.2.0" + resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" + integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== envinfo@^7.7.4: - version "7.8.1" - resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" - integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== + version "7.7.4" + resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz#c6311cdd38a0e86808c1c9343f667e4267c4a320" + integrity sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ== eol@^0.9.1: version "0.9.1" @@ -11651,9 +11937,9 @@ error-ex@^1.2.0, error-ex@^1.3.1: is-arrayish "^0.2.1" error-stack-parser@^2.0.6: - version "2.0.7" - resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.7.tgz#b0c6e2ce27d0495cf78ad98715e0cad1219abb57" - integrity sha512-chLOW0ZGRf4s8raLrDxa5sdkvPec5YdvwbFnqJme4rk0rFajP8mPtrDL1+I+CwrQDCjswDA5sREX7jYQDQs9vA== + version "2.0.6" + resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" + integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ== dependencies: stackframe "^1.1.1" @@ -11662,47 +11948,37 @@ error@^10.4.0: resolved "https://registry.npmjs.org/error/-/error-10.4.0.tgz#6fcf0fd64bceb1e750f8ed9a3dd880f00e46a487" integrity sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw== -es-abstract@^1.18.5, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5: - version "1.20.0" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.0.tgz#b2d526489cceca004588296334726329e0a6bfb6" - integrity sha512-URbD8tgRthKD3YcC39vbvSDrX23upXnPcnGAjQfgxXF5ID75YcENawc9ZX/9iTP9ptUyfCLIxTTuMYoRfiOVKA== +es-abstract@^1.17.0-next.1, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es-abstract@^1.19.1: + version "1.19.1" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" + integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== dependencies: call-bind "^1.0.2" es-to-primitive "^1.2.1" function-bind "^1.1.1" - function.prototype.name "^1.1.5" get-intrinsic "^1.1.1" get-symbol-description "^1.0.0" has "^1.0.3" - has-property-descriptors "^1.0.0" - has-symbols "^1.0.3" + has-symbols "^1.0.2" internal-slot "^1.0.3" is-callable "^1.2.4" - is-negative-zero "^2.0.2" + is-negative-zero "^2.0.1" is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" + is-shared-array-buffer "^1.0.1" is-string "^1.0.7" - is-weakref "^1.0.2" - object-inspect "^1.12.0" + is-weakref "^1.0.1" + object-inspect "^1.11.0" object-keys "^1.1.1" object.assign "^4.1.2" - regexp.prototype.flags "^1.4.1" - string.prototype.trimend "^1.0.5" - string.prototype.trimstart "^1.0.5" - unbox-primitive "^1.0.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" es-module-lexer@^0.9.0, es-module-lexer@^0.9.3: version "0.9.3" resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== -es-shim-unscopables@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" - integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== - dependencies: - has "^1.0.3" - es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -11829,10 +12105,20 @@ esbuild-windows-arm64@0.14.42: resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.42.tgz#79da8744626f24bc016dc40d016950b5a4a2bac5" integrity sha512-+lRAARnF+hf8J0mN27ujO+VbhPbDqJ8rCcJKye4y7YZLV6C4n3pTRThAb388k/zqF5uM0lS5O201u0OqoWSicw== +<<<<<<< HEAD esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: +<<<<<<< HEAD version "0.14.42" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" integrity sha512-V0uPZotCEHokJdNqyozH6qsaQXqmZEOiZWrXnds/zaH/0SyrIayRXWRB98CENO73MIZ9T3HBIOsmds5twWtmgw== +======= +======= +esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.6: +>>>>>>> Fix some typos and other requested changes + version "0.14.39" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.39.tgz#c926b2259fe6f6d3a94f528fb42e103c5a6d909a" + integrity sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ== +>>>>>>> Fix some typos and other requested changes optionalDependencies: esbuild-android-64 "0.14.42" esbuild-android-arm64 "0.14.42" @@ -12065,9 +12351,9 @@ eslint-utils@^3.0.0: eslint-visitor-keys "^2.0.0" eslint-visitor-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + version "2.0.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0: version "3.3.0" @@ -12180,9 +12466,9 @@ estree-walker@^1.0.1: integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== estree-walker@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" - integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + version "2.0.1" + resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.1.tgz#f8e030fb21cefa183b44b7ad516b747434e7a3e0" + integrity sha512-tF0hv+Yi2Ot1cwj9eYHtxC0jB9bmjacjQs6ZBTj82H8JwUywFuc+7E83NWfNMwHXZc11mjfFcVXPe9gEP4B8dg== esutils@^2.0.2: version "2.0.3" @@ -12365,6 +12651,19 @@ execa@5.1.1, execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + executable@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -12377,6 +12676,11 @@ exif-parser@^0.1.12: resolved "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz#58a9d2d72c02c1f6f02a0ef4a9166272b7760922" integrity sha1-WKnS1ywCwfbwKg70qRZicrd2CSI= +exit-on-epipe@~1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz#0bdd92e87d5285d267daa8171d0eb06159689692" + integrity sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw== + exit@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -12560,9 +12864,9 @@ extsprintf@1.3.0: integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= extsprintf@^1.2.0: - version "1.4.1" - resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" - integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== + version "1.4.0" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fast-decode-uri-component@^1.0.1: version "1.0.1" @@ -12596,9 +12900,9 @@ fast-json-parse@^1.0.3: integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== fast-json-patch@^3.0.0-1: - version "3.1.1" - resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz#85064ea1b1ebf97a3f7ad01e23f9337e72c66947" - integrity sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ== + version "3.0.0-1" + resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.0.0-1.tgz#4c68f2e7acfbab6d29d1719c44be51899c93dabb" + integrity sha512-6pdFb07cknxvPzCeLsFHStEy+MysPJPgZQ9LbQ/2O67unQF93SNqfdSqnPPl71YMHX+AD8gbl7iuoGFzHEdDuw== fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" @@ -12643,9 +12947,9 @@ fastest-stable-stringify@^2.0.2: integrity sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q== fastq@^1.6.0: - version "1.13.0" - resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" - integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== + version "1.6.1" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.6.1.tgz#4570c74f2ded173e71cf0beb08ac70bb85826791" + integrity sha512-mpIH5sKYueh3YyeJwqtVo8sORi0CgtmkVbK6kZStpQlZBYQuTzG2CZ7idSiJuA7bY0SFCWUc5WIs+oYumGCQNw== dependencies: reusify "^1.0.4" @@ -12657,9 +12961,9 @@ fault@^1.0.0: format "^0.2.0" faye-websocket@^0.11.3: - version "0.11.4" - resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" - integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== + version "0.11.3" + resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" + integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== dependencies: websocket-driver ">=0.5.1" @@ -12676,17 +12980,17 @@ fbjs-css-vars@^1.0.0: integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== fbjs@^3.0.0: - version "3.0.4" - resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.4.tgz#e1871c6bd3083bac71ff2da868ad5067d37716c6" - integrity sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ== + version "3.0.0" + resolved "https://registry.npmjs.org/fbjs/-/fbjs-3.0.0.tgz#0907067fb3f57a78f45d95f1eacffcacd623c165" + integrity sha512-dJd4PiDOFuhe7vk4F80Mba83Vr2QuK86FoxtgPmzBqEJahncp+13YCmfoa53KHCo6OnlXLG7eeMWPfB5CrpVKg== dependencies: - cross-fetch "^3.1.5" + cross-fetch "^3.0.4" fbjs-css-vars "^1.0.0" loose-envify "^1.0.0" object-assign "^4.1.0" promise "^7.1.1" setimmediate "^1.0.5" - ua-parser-js "^0.7.30" + ua-parser-js "^0.7.18" fd-slicer@~1.1.0: version "1.1.0" @@ -12696,9 +13000,9 @@ fd-slicer@~1.1.0: pend "~1.2.0" fecha@^4.2.0: - version "4.2.3" - resolved "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz#4d9ccdbc61e8629b259fdca67e65891448d569fd" - integrity sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw== + version "4.2.0" + resolved "https://registry.npmjs.org/fecha/-/fecha-4.2.0.tgz#3ffb6395453e3f3efff850404f0a59b6747f5f41" + integrity sha512-aN3pcx/DSmtyoovUudctc8+6Hl4T+hI9GBBHLjA76jdZl7+b1sgh5g4k+u/GL3dTy1/pnYzKp69FpJ0OicE3Wg== figures@^1.7.0: version "1.7.0" @@ -12756,9 +13060,9 @@ filelist@^1.0.1: minimatch "^5.0.1" filesize@^8.0.6: - version "8.0.7" - resolved "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz#695e70d80f4e47012c132d57a059e80c6b580bd8" - integrity sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ== + version "8.0.6" + resolved "https://registry.npmjs.org/filesize/-/filesize-8.0.6.tgz#5f0c27aa1b507fa7d9f72c912a774ca6a44111b1" + integrity sha512-sHvRqTiwdmcuzqet7iVwsbwF6UrV3wIgDf2SHNdY1Hgl8PC45HZg/0xtdw6U2izIV4lccnrY9ftl6wZFNdjYMg== fill-range@^4.0.0: version "4.0.0" @@ -12895,14 +13199,14 @@ flatstr@^1.0.12: integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== flatted@^3.1.0: - version "3.2.5" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" - integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== + version "3.1.1" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" + integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== flow-parser@0.*: - version "0.177.0" - resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.177.0.tgz#653092470c8e79ed737cb38e3be1d1de0d25feac" - integrity sha512-Ac1OwHjSoUALrcnHTTD6oaEPITaxYmP34iiEEcuCxeeD+tOKR7/Toaw4RpJKcDmYxLX79ZP9E7z+Q8ze9pESbQ== + version "0.152.0" + resolved "https://registry.npmjs.org/flow-parser/-/flow-parser-0.152.0.tgz#a627aec1fdcfa243e2016469e44284a98169b996" + integrity sha512-qRXGE3ztuhyI2ovi4Ixwq7/GUYvKX9wmFdwBof2q5pWHteuveexFrlbwZxSonC0dWz2znA6sW+vce4RXgYLnnQ== fn.name@1.x.x: version "1.1.0" @@ -12910,9 +13214,9 @@ fn.name@1.x.x: integrity sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw== follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.15.0" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz#06441868281c86d0dda4ad8bdaead2d02dca89d4" - integrity sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ== + version "1.14.8" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz#016996fb9a11a100566398b1c6839337d7bfa8fc" + integrity sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA== follow-redirects@^1.14.8: version "1.15.0" @@ -12935,9 +13239,9 @@ forever-agent@~0.6.1: integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= fork-ts-checker-webpack-plugin@^6.5.0: - version "6.5.2" - resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz#4f67183f2f9eb8ba7df7177ce3cf3e75cdafb340" - integrity sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA== + version "6.5.0" + resolved "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.0.tgz#0282b335fa495a97e167f69018f566ea7d2a2b5e" + integrity sha512-cS178Y+xxtIjEUorcHddKS7yCMlrDPV31mt47blKKRfMd70Kxu5xruAFE2o9sDY6wVC5deuob/u/alD04YYHnw== dependencies: "@babel/code-frame" "^7.8.3" "@types/json-schema" "^7.0.5" @@ -12971,9 +13275,9 @@ fork-ts-checker-webpack-plugin@^7.0.0-alpha.8: tapable "^2.2.1" form-data-encoder@^1.4.3, form-data-encoder@^1.7.1: - version "1.7.2" - resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz#1f1ae3dccf58ed4690b86d87e4f57c654fbab040" - integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A== + version "1.7.1" + resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96" + integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg== form-data@^2.3.1, form-data@^2.3.2, form-data@^2.5.0: version "2.5.1" @@ -12985,9 +13289,9 @@ form-data@^2.3.1, form-data@^2.3.2, form-data@^2.5.0: mime-types "^2.1.12" form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + version "3.0.0" + resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" + integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -13016,7 +13320,15 @@ format@^0.2.0: resolved "https://registry.npmjs.org/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs= -formdata-node@^4.0.0, formdata-node@^4.3.1: +formdata-node@^4.0.0: + version "4.3.0" + resolved "https://registry.npmjs.org/formdata-node/-/formdata-node-4.3.0.tgz#77be2add9092cbd1e1f4d35bc3293a89be117a04" + integrity sha512-TwqhWUZd2jB5l0kUhhcy1XYNsXq46NH6k60zmiu7xsxMztul+cCMuPSAQrSDV62zznhBKJdA9O+zeWj5i5Pbfg== + dependencies: + node-domexception "1.0.0" + web-streams-polyfill "4.0.0-beta.1" + +formdata-node@^4.3.1: version "4.3.2" resolved "https://registry.npmjs.org/formdata-node/-/formdata-node-4.3.2.tgz#0262e94931e36db7239c2b08bdb6aaf18ec47d21" integrity sha512-k7lYJyzDOSL6h917favP8j1L0/wNyylzU+x+1w4p5haGVHNlP58dbpdJhiCUsDbWsa9HwEtLp89obQgXl2e0qg== @@ -13169,26 +13481,11 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.5: - version "1.1.5" - resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" - integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.0" - functions-have-names "^1.2.2" - functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= -functions-have-names@^1.2.2: - version "1.2.3" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" - integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== - gauge@^3.0.0: version "3.0.2" resolved "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" @@ -13204,19 +13501,20 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" -gauge@^4.0.3: - version "4.0.4" - resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" - integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== +gauge@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.0.tgz#afba07aa0374a93c6219603b1fb83eaa2264d8f8" + integrity sha512-F8sU45yQpjQjxKkm1UOAhf0U/O0aFt//Fl7hsrNVto+patMHjs7dPI9mFOGUKbhrgKm0S3EjW3scMFuQmWSROw== dependencies: + ansi-regex "^5.0.1" aproba "^1.0.3 || ^2.0.0" - color-support "^1.1.3" - console-control-strings "^1.1.0" + color-support "^1.1.2" + console-control-strings "^1.0.0" has-unicode "^2.0.1" - signal-exit "^3.0.7" + signal-exit "^3.0.0" string-width "^4.2.3" strip-ansi "^6.0.1" - wide-align "^1.1.5" + wide-align "^1.1.2" gauge@~2.7.3: version "2.7.4" @@ -13233,20 +13531,20 @@ gauge@~2.7.3: wide-align "^1.1.0" gaxios@^4.0.0: - version "4.3.3" - resolved "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz#d44bdefe52d34b6435cc41214fdb160b64abfc22" - integrity sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA== + version "4.0.1" + resolved "https://registry.npmjs.org/gaxios/-/gaxios-4.0.1.tgz#bc7b205a89d883452822cc75e138620c35e3291e" + integrity sha512-jOin8xRZ/UytQeBpSXFqIzqU7Fi5TqgPNLlUsSB8kjJ76+FiGBfImF8KJu++c6J4jOldfJUtt0YmkRj2ZpSHTQ== dependencies: abort-controller "^3.0.0" extend "^3.0.2" https-proxy-agent "^5.0.0" is-stream "^2.0.0" - node-fetch "^2.6.7" + node-fetch "^2.3.0" gcp-metadata@^4.2.0: - version "4.3.1" - resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz#fb205fe6a90fef2fd9c85e6ba06e5559ee1eefa9" - integrity sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A== + version "4.2.1" + resolved "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.2.1.tgz#31849fbcf9025ef34c2297c32a89a1e7e9f2cd62" + integrity sha512-tSk+REe5iq/N+K+SK1XjZJUrFPuDqGZVzCy2vocIHIGmPlTGsa8owXMJwGkrXr73NO0AzhPW4MF2DEHz7P2AVw== dependencies: gaxios "^4.0.0" json-bigint "^1.0.0" @@ -13258,12 +13556,12 @@ generate-function@^2.3.1: dependencies: is-property "^1.0.2" -generic-names@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/generic-names/-/generic-names-4.0.0.tgz#0bd8a2fd23fe8ea16cbd0a279acd69c06933d9a3" - integrity sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A== +generic-names@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/generic-names/-/generic-names-2.0.1.tgz#f8a378ead2ccaa7a34f0317b05554832ae41b872" + integrity sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ== dependencies: - loader-utils "^3.2.0" + loader-utils "^1.1.0" gensync@^1.0.0-beta.2: version "1.0.0-beta.2" @@ -13322,7 +13620,7 @@ get-stdin@^8.0.0: resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== -get-stream@^4.1.0: +get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== @@ -13330,9 +13628,9 @@ get-stream@^4.1.0: pump "^3.0.0" get-stream@^5.0.0, get-stream@^5.1.0: - version "5.2.0" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + version "5.1.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" + integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== dependencies: pump "^3.0.0" @@ -13374,9 +13672,9 @@ getpass@^0.1.1: assert-plus "^1.0.0" git-raw-commits@^2.0.8: - version "2.0.11" - resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz#bc3576638071d18655e1cc60d7f524920008d723" - integrity sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A== + version "2.0.10" + resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" + integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== dependencies: dargs "^7.0.0" lodash "^4.17.15" @@ -13401,12 +13699,12 @@ git-semver-tags@^4.1.1: semver "^6.0.0" git-up@^4.0.0: - version "4.0.5" - resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" - integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== + version "4.0.1" + resolved "https://registry.npmjs.org/git-up/-/git-up-4.0.1.tgz#cb2ef086653640e721d2042fe3104857d89007c0" + integrity sha512-LFTZZrBlrCrGCG07/dm1aCjjpL1z9L3+5aEeI9SBhAqSc+kiA9Or1bgZhQFNppJX6h/f5McrvJt1mQXTFm6Qrw== dependencies: is-ssh "^1.3.0" - parse-url "^6.0.0" + parse-url "^5.0.0" git-url-parse@^11.4.4, git-url-parse@^11.6.0: version "11.6.0" @@ -13531,16 +13829,16 @@ globals@^11.1.0, globals@^11.12.0: integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^13.6.0, globals@^13.9.0: - version "13.14.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.14.0.tgz#daf3ff9b4336527cf56e98330b6f64bea9aff9df" - integrity sha512-ERO68sOYwm5UuLvSJTY7w7NP2c8S4UcXs3X1GBX8cwOr+ShOcDBbCY5mH4zxz0jsYCdJ8ve8Mv9n2YGJMB1aeg== + version "13.9.0" + resolved "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb" + integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== dependencies: type-fest "^0.20.2" globalthis@^1.0.1: - version "1.0.3" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" - integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + version "1.0.2" + resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz#2a235d34f4d8036219f7e34929b5de9e18166b8b" + integrity sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ== dependencies: define-properties "^1.1.3" @@ -13568,7 +13866,7 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7.6.1: +google-auth-library@^7.14.1, google-auth-library@^7.6.1: version "7.14.1" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz#e3483034162f24cc71b95c8a55a210008826213c" integrity sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA== @@ -13584,30 +13882,30 @@ google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7 lru-cache "^6.0.0" google-gax@^2.24.1: - version "2.30.4" - resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.30.4.tgz#578b4461ed328446e2ebdaa1d7ae5e12aec839bd" - integrity sha512-/W4wWKjYcCXtd3Vz+ux7fN3MElbLVKGmHCCgA6kotigQgoDrLLueSvnXsck7qZaF39ooYnFhA58Rjr7RHe2heA== + version "2.28.1" + resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.28.1.tgz#99bc234b5769d901d70959d40bd1651729eb4a34" + integrity sha512-2Xjd3FrjlVd6Cmw2B2Aicpc/q92SwTpIOvxPUlnRg9w+Do8nu7UR+eQrgoKlo2FIUcUuDTvppvcx8toND0pK9g== dependencies: - "@grpc/grpc-js" "~1.6.0" - "@grpc/proto-loader" "^0.6.12" + "@grpc/grpc-js" "~1.4.0" + "@grpc/proto-loader" "^0.6.1" "@types/long" "^4.0.0" abort-controller "^3.0.0" duplexify "^4.0.0" fast-text-encoding "^1.0.3" - google-auth-library "^7.14.0" + google-auth-library "^7.6.1" is-stream-ended "^0.1.4" node-fetch "^2.6.1" - object-hash "^3.0.0" - proto3-json-serializer "^0.1.8" + object-hash "^2.1.1" + proto3-json-serializer "^0.1.5" protobufjs "6.11.2" retry-request "^4.0.0" -google-p12-pem@^3.1.3: - version "3.1.4" - resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz#123f7b40da204de4ed1fbf2fd5be12c047fc8b3b" - integrity sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg== +google-p12-pem@^3.0.3: + version "3.1.3" + resolved "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.3.tgz#5497998798ee86c2fc1f4bb1f92b7729baf37537" + integrity sha512-MC0jISvzymxePDVembypNefkAQp+DRP7dBE+zNUPaIjEspIlYg0++OrsNr248V9tPbz6iqtZ7rX1hxWA5B8qBQ== dependencies: - node-forge "^1.3.1" + node-forge "^1.0.0" got@11.8.3, got@^11.8.0: version "11.8.3" @@ -13643,7 +13941,12 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: + version "4.2.9" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" + integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -13672,20 +13975,20 @@ graphlib@^2.1.8: lodash "^4.17.15" graphql-config@^4.1.0: - version "4.3.0" - resolved "https://registry.npmjs.org/graphql-config/-/graphql-config-4.3.0.tgz#b9bb7bf9c892a90e66ea937e8d7ed170eb1fd5e2" - integrity sha512-Uiu3X7+s5c056WyrvdZVz2vG1fhAipMlYmtiCU/4Z2mX79OXDr1SqIon2MprC/pExIWJfAQZCcjYDY76fPBUQg== + version "4.1.0" + resolved "https://registry.npmjs.org/graphql-config/-/graphql-config-4.1.0.tgz#a3b28d3fb537952ebeb69c75e4430605a10695e3" + integrity sha512-Myqay6pmdcmX3KqoH+bMbeKZ1cTODpHS2CxF1ZzNnfTE+YUpGTcp01bOw6LpzamRb0T/WTYtGFbZeXGo9Hab2Q== dependencies: "@endemolshinegroup/cosmiconfig-typescript-loader" "3.0.2" - "@graphql-tools/graphql-file-loader" "^7.3.7" - "@graphql-tools/json-file-loader" "^7.3.7" - "@graphql-tools/load" "^7.5.5" - "@graphql-tools/merge" "^8.2.6" - "@graphql-tools/url-loader" "^7.9.7" - "@graphql-tools/utils" "^8.6.5" + "@graphql-tools/graphql-file-loader" "^7.3.2" + "@graphql-tools/json-file-loader" "^7.3.2" + "@graphql-tools/load" "^7.4.1" + "@graphql-tools/merge" "^8.2.1" + "@graphql-tools/url-loader" "^7.4.2" + "@graphql-tools/utils" "^8.5.1" cosmiconfig "7.0.1" cosmiconfig-toml-loader "1.0.0" - minimatch "4.2.1" + minimatch "3.0.4" string-env-interpolation "1.0.1" graphql-executor@0.0.23: @@ -13733,9 +14036,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql-ws@^5.4.1: - version "5.8.1" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.1.tgz#daf72534b8a169a272e730fa4f3ce0e6d04e2883" - integrity sha512-UVf/fxlHultC1+12tX9ShTIipqQFNZ96g7N51RFQlk7MFPsDUUMCR3QXVEzHEd5xlTp16rs5vCyfBljvcPN3fA== + version "5.5.5" + resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.5.5.tgz#f375486d3f196e2a2527b503644693ae3a8670a9" + integrity sha512-hvyIS71vs4Tu/yUYHPvGXsTgo0t3arU820+lT5VjZS2go0ewp2LqyCgxEN56CzOG7Iys52eRhHBiD1gGRdiQtw== graphql@^15.5.1: version "15.8.0" @@ -13753,13 +14056,14 @@ grouped-queue@^2.0.0: integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== gtoken@^5.0.4: - version "5.3.2" - resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz#deb7dc876abe002178e0515e383382ea9446d58f" - integrity sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ== + version "5.1.0" + resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz#4ba8d2fc9a8459098f76e7e8fd7beaa39fda9fe4" + integrity sha512-4d8N6Lk8TEAHl9vVoRVMh9BNOKWVgl2DdNtr3428O75r3QFrF/a5MMu851VmK0AA8+iSvbwRv69k5XnMLURGhg== dependencies: gaxios "^4.0.0" - google-p12-pem "^3.1.3" + google-p12-pem "^3.0.3" jws "^4.0.0" + mime "^2.2.0" gzip-size@^6.0.0: version "6.0.0" @@ -13769,9 +14073,9 @@ gzip-size@^6.0.0: duplexer "^0.1.2" handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== + version "2.0.0" + resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754" + integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ== handlebars@^4.7.3, handlebars@^4.7.7: version "4.7.7" @@ -13791,11 +14095,11 @@ har-schema@^2.0.0: integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + version "5.1.3" + resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" + integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== dependencies: - ajv "^6.12.3" + ajv "^6.5.5" har-schema "^2.0.0" hard-rejection@^2.1.0: @@ -13804,9 +14108,9 @@ hard-rejection@^2.1.0: integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== harmony-reflect@^1.4.6: - version "1.6.2" - resolved "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz#31ecbd32e648a34d030d86adb67d4d47547fe710" - integrity sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g== + version "1.6.1" + resolved "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" + integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== has-ansi@^2.0.0: version "2.0.0" @@ -13815,10 +14119,10 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-bigints@^1.0.1, has-bigints@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" - integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== has-bigints@^1.0.2: version "1.0.2" @@ -13847,17 +14151,10 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== +has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== has-symbols@^1.0.3: version "1.0.3" @@ -13920,13 +14217,12 @@ has@^1.0.3: function-bind "^1.1.1" hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== + version "3.0.4" + resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" + inherits "^2.0.1" + safe-buffer "^5.0.1" hash-it@^5.0.0: version "5.0.2" @@ -13947,9 +14243,9 @@ hash.js@^1.0.0, hash.js@^1.0.3: minimalistic-assert "^1.0.1" hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== + version "2.2.4" + resolved "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974" + integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA== hast-util-whitespace@^2.0.0: version "2.0.0" @@ -14046,6 +14342,13 @@ hosted-git-info@^2.1.4: resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== +hosted-git-info@^3.0.6: + version "3.0.8" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d" + integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== + dependencies: + lru-cache "^6.0.0" + hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: version "4.1.0" resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" @@ -14076,14 +14379,14 @@ html-encoding-sniffer@^2.0.1: whatwg-encoding "^1.0.5" html-entities@^2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" - integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== + version "2.3.2" + resolved "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz#760b404685cb1d794e4f4b744332e3b00dcfe488" + integrity sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ== html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + version "2.0.1" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.1.tgz#beed86b5d2b921e92533aa11bce6d8e3b583dee7" + integrity sha512-hNX23TjWwD3q56HpWjUHOKj1+4KKlnjv9PcmBUYKVpga+2cnb9nDx/B1o0yO4n+RZXZdiNxzx6B24C9aNMTkkQ== html-minifier-terser@^6.0.2: version "6.1.0" @@ -14129,6 +14432,17 @@ http-deceiver@^1.2.7: resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= +http-errors@1.8.1: + version "1.8.1" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" + integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.1" + http-errors@2.0.0, http-errors@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" @@ -14151,9 +14465,9 @@ http-errors@~1.6.2: statuses ">= 1.4.0 < 2" http-parser-js@>=0.5.1: - version "0.5.6" - resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz#2e02406ab2df8af8a7abfba62e0da01c62b95afd" - integrity sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA== + version "0.5.3" + resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz#01d2709c79d41698bb01d4decc5e9da4e4a033d9" + integrity sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg== http-proxy-agent@^4.0.1: version "4.0.1" @@ -14212,9 +14526,9 @@ http-signature@~1.3.6: sshpk "^1.14.1" http2-wrapper@^1.0.0-beta.5.2: - version "1.0.3" - resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d" - integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg== + version "1.0.0-beta.5.2" + resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" + integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ== dependencies: quick-lru "^5.1.1" resolve-alpn "^1.0.0" @@ -14270,9 +14584,9 @@ husky@^8.0.0: integrity sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw== hyphenate-style-name@^1.0.2, hyphenate-style-name@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d" - integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== + version "1.0.3" + resolved "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48" + integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ== iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" @@ -14321,9 +14635,9 @@ ignore-by-default@^1.0.1: integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= ignore-walk@^3.0.3: - version "3.0.4" - resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" - integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== + version "3.0.3" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" + integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== dependencies: minimatch "^3.0.4" @@ -14384,9 +14698,9 @@ import-cwd@^3.0.0: import-from "^3.0.0" import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + version "3.2.1" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" + integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -14414,9 +14728,9 @@ import-lazy@~4.0.0: integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== import-local@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" - integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + version "3.0.2" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" + integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -14426,6 +14740,13 @@ imurmurhash@^0.1.4: resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indefinite-observable@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/indefinite-observable/-/indefinite-observable-2.0.1.tgz#574af29bfbc17eb5947793797bddc94c9d859400" + integrity sha512-G8vgmork+6H9S8lUAg1gtXEj2JxIQTo0g2PbFiYOdjkziSI0F7UYBiVwhZRuixhBCNGczAls34+5HJPyZysvxQ== + dependencies: + symbol-observable "1.2.0" + indent-string@^3.0.0: version "3.2.0" resolved "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" @@ -14436,6 +14757,11 @@ indent-string@^4.0.0: resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + indexof@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" @@ -14480,15 +14806,16 @@ ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== init-package-json@^2.0.2: - version "2.0.5" - resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" - integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== + version "2.0.2" + resolved "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.2.tgz#d81a7e6775af9b618f20bba288e440b8d1ce05f3" + integrity sha512-PO64kVeArePvhX7Ff0jVWkpnE1DfGRvaWcStYrPugcJz9twQGYibagKJuIMHCX7ENcp0M6LJlcjLBuLD5KeJMg== dependencies: - npm-package-arg "^8.1.5" + glob "^7.1.1" + npm-package-arg "^8.1.0" promzard "^0.3.0" read "~1.0.1" - read-package-json "^4.1.1" - semver "^7.3.5" + read-package-json "^3.0.0" + semver "^7.3.2" validate-npm-package-license "^3.0.4" validate-npm-package-name "^3.0.0" @@ -14498,9 +14825,9 @@ inline-style-parser@0.1.1: integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== inline-style-prefixer@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.1.tgz#c5c0e43ba8831707afc5f5bbfd97edf45c1fa7ae" - integrity sha512-AsqazZ8KcRzJ9YPN1wMH2aNM7lkWQ8tSPrW5uDk1ziYwiAPWSZnUsC7lfZq+BDqLqz0B4Pho5wscWcJzVvRzDQ== + version "6.0.0" + resolved "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-6.0.0.tgz#f73d5dbf2855733d6b153a4d24b7b47a73e9770b" + integrity sha512-XTHvRUS4ZJNzC1GixJRmOlWSS45fSt+DJoyQC9ytj0WxQfcgofQtDtyKKYxHUqEsWCs+LIWftPF1ie7+i012Fg== dependencies: css-in-js-utils "^2.0.0" @@ -14624,9 +14951,9 @@ ioredis@^5.0.4: standard-as-callback "^2.1.0" ip@^1.1.5: - version "1.1.8" - resolved "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" - integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== + version "1.1.5" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= ipaddr.js@1.9.1: version "1.9.1" @@ -14638,6 +14965,11 @@ ipaddr.js@^2.0.1: resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz#eca256a7a877e917aeb368b0a7497ddf42ef81c0" integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== +is-absolute-url@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== + is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" @@ -14665,6 +14997,11 @@ is-alphabetical@^1.0.0: resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== +is-alphabetical@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.0.tgz#ef6e2caea57c63450fffc7abb6cbdafc5eb96e96" + integrity sha512-5OV8Toyq3oh4eq6sbWTYzlGdnMT/DPI5I0zxUBxjiigQsZycpkKF3kskkao3JyYGuYDHvhgJF+DrjMQp9SX86w== + is-alphanumerical@^1.0.0: version "1.0.4" resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" @@ -14673,13 +15010,18 @@ is-alphanumerical@^1.0.0: is-alphabetical "^1.0.0" is-decimal "^1.0.0" -is-arguments@^1.0.4: - version "1.1.1" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" - integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== +is-alphanumerical@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.0.tgz#0fbfeb6a72d21d91143b3d182bf6cf5909ee66f6" + integrity sha512-t+2GlJ+hO9yagJ+jU3+HSh80VKvz/3cG2cxbGGm4S0hjKuhWQXgPVUVOZz3tqZzMjhmphZ+1TIJTlRZRoe6GCQ== dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" + is-alphabetical "^2.0.0" + is-decimal "^2.0.0" + +is-arguments@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" + integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== is-arrayish@^0.2.1: version "0.2.1" @@ -14692,11 +15034,9 @@ is-arrayish@^0.3.1: integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== is-bigint@^1.0.1: - version "1.0.4" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" - integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== - dependencies: - has-bigints "^1.0.1" + version "1.0.1" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" + integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg== is-binary-path@~2.1.0: version "2.1.0" @@ -14706,12 +15046,11 @@ is-binary-path@~2.1.0: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: - version "1.1.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" - integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + version "1.1.0" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz#e2aaad3a3a8fca34c28f6eee135b156ed2587ff0" + integrity sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA== dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" + call-bind "^1.0.0" is-buffer@^1.1.5: version "1.1.6" @@ -14719,9 +15058,9 @@ is-buffer@^1.1.5: integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-buffer@^2.0.0: - version "2.0.5" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + version "2.0.4" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" + integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== is-builtin-module@^3.1.0: version "3.1.0" @@ -14749,7 +15088,14 @@ is-ci@^3.0.0, is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.1.0, is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.1: +is-core-module@^2.1.0, is-core-module@^2.2.0, is-core-module@^2.8.0: + version "2.8.1" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + dependencies: + has "^1.0.3" + +is-core-module@^2.8.1: version "2.9.0" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== @@ -14771,17 +15117,20 @@ is-data-descriptor@^1.0.0: kind-of "^6.0.0" is-date-object@^1.0.1: - version "1.0.5" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" - integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== - dependencies: - has-tostringtag "^1.0.0" + version "1.0.2" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" + integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== is-decimal@^1.0.0: version "1.0.4" resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== +is-decimal@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.0.tgz#db1140337809fd043a056ae40a9bd1cdc563034c" + integrity sha512-QfrfjQV0LjoWQ1K1XSoEZkTAzSa14RKVMa5zg3SdAfzEmQzRM4+tbSFWb78creCeA9rNBzaZal92opi1TwPWZw== + is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -14863,11 +15212,9 @@ is-generator-fn@^2.0.0: integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-generator-function@^1.0.7: - version "1.0.10" - resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" - integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== - dependencies: - has-tostringtag "^1.0.0" + version "1.0.8" + resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz#dfb5c2b120e02b0a8d9d2c6806cd5621aa922f7b" + integrity sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ== is-glob@4.0.3, is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" @@ -14881,6 +15228,11 @@ is-hexadecimal@^1.0.0: resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== +is-hexadecimal@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.0.tgz#8e1ec9f48fe3eabd90161109856a23e0907a65d5" + integrity sha512-vGOtYkiaxwIiR0+Ng/zNId+ZZehGfINwTzdrDqc6iubbnQWhnPuYymOzOKUDqa2cSl59yHnEh2h6MvRLQsyNug== + is-in-browser@^1.0.2, is-in-browser@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835" @@ -14916,10 +15268,10 @@ is-module@^1.0.0: resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== is-negative-zero@^2.0.2: version "2.0.2" @@ -14937,11 +15289,9 @@ is-npm@^5.0.0: integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== is-number-object@^1.0.4: - version "1.0.7" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" - integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== - dependencies: - has-tostringtag "^1.0.0" + version "1.0.4" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" + integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw== is-number@^3.0.0: version "3.0.0" @@ -14961,9 +15311,9 @@ is-obj@^2.0.0: integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== is-object@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" - integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== + version "1.0.1" + resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" + integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= is-observable@^1.1.0: version "1.1.0" @@ -15009,6 +15359,13 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-plain-object@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz#47bfc5da1b5d50d64110806c199359482e75a928" + integrity sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg== + dependencies: + isobject "^4.0.0" + is-plain-object@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" @@ -15061,6 +15418,11 @@ is-relative@^1.0.0: dependencies: is-unc-path "^1.0.0" +is-resolvable@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" + integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== + is-root@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" @@ -15073,12 +15435,10 @@ is-scoped@^2.1.0: dependencies: scoped-regex "^2.0.0" -is-shared-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" - integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== - dependencies: - call-bind "^1.0.2" +is-shared-array-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" + integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== is-shared-array-buffer@^1.0.2: version "1.0.2" @@ -15088,9 +15448,9 @@ is-shared-array-buffer@^1.0.2: call-bind "^1.0.2" is-ssh@^1.3.0: - version "1.3.3" - resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e" - integrity sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ== + version "1.3.1" + resolved "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.1.tgz#f349a8cadd24e65298037a522cf7520f2e81a0f3" + integrity sha512-0eRIASHZt1E68/ixClI8bp2YK2wmBPVWEismTs6M+M099jKgrzl/3E976zIbImSIob48N2/XGe9y7ZiYdImSlg== dependencies: protocols "^1.1.0" @@ -15122,18 +15482,18 @@ is-string@^1.0.5, is-string@^1.0.7: has-tostringtag "^1.0.0" is-subdir@^1.1.1: - version "1.2.0" - resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz#b791cd28fab5202e91a08280d51d9d7254fd20d4" - integrity sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw== + version "1.1.1" + resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.1.1.tgz#423e66902f9c5f159b9cc4826c820df083059538" + integrity sha512-VYpq0S7gPBVkkmfwkvGnx1EL9UVIo87NQyNcgMiNUdQCws3CJm5wj2nB+XPL7zigvjxhuZgp3bl2yBcKkSIj1w== dependencies: better-path-resolve "1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" - integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + version "1.0.3" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" + integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== dependencies: - has-symbols "^1.0.2" + has-symbols "^1.0.1" is-text-path@^1.0.1: version "1.0.1" @@ -15142,16 +15502,16 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.3, is-typed-array@^1.1.7: - version "1.1.8" - resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz#cbaa6585dc7db43318bc5b89523ea384a6f65e79" - integrity sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA== +is-typed-array@^1.1.3: + version "1.1.5" + resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz#f32e6e096455e329eb7b423862456aa213f0eb4e" + integrity sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug== dependencies: - available-typed-arrays "^1.0.5" + available-typed-arrays "^1.0.2" call-bind "^1.0.2" - es-abstract "^1.18.5" + es-abstract "^1.18.0-next.2" foreach "^2.0.5" - has-tostringtag "^1.0.0" + has-symbols "^1.0.1" is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" @@ -15182,12 +15542,12 @@ is-utf8@^0.2.0, is-utf8@^0.2.1: resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= -is-weakref@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" - integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== +is-weakref@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" + integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.0" is-weakref@^1.0.2: version "1.0.2" @@ -15234,9 +15594,9 @@ isarray@2.0.1: integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= isbinaryfile@^4.0.8: - version "4.0.10" - resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" - integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== + version "4.0.8" + resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf" + integrity sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w== isbinaryfile@^5.0.0: version "5.0.0" @@ -15260,6 +15620,11 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= +isobject@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" + integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== + isomorphic-dompurify@^0.13.0: version "0.13.0" resolved "https://registry.npmjs.org/isomorphic-dompurify/-/isomorphic-dompurify-0.13.0.tgz#a4dde357e8531018a85ebb2dd56c4794b6739ba3" @@ -15311,15 +15676,20 @@ isstream@~0.1.2: resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + +istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.2.0" - resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f" - integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A== + version "5.1.0" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" + integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" @@ -15337,9 +15707,9 @@ istanbul-lib-report@^3.0.0: supports-color "^7.1.0" istanbul-lib-source-maps@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + version "4.0.0" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" + integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== dependencies: debug "^4.1.1" istanbul-lib-coverage "^3.0.0" @@ -15842,13 +16212,13 @@ jmespath@^0.15.0: integrity sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc= joi@^17.4.0: - version "17.6.0" - resolved "https://registry.npmjs.org/joi/-/joi-17.6.0.tgz#0bb54f2f006c09a96e75ce687957bd04290054b2" - integrity sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw== + version "17.4.2" + resolved "https://registry.npmjs.org/joi/-/joi-17.4.2.tgz#02f4eb5cf88e515e614830239379dcbbe28ce7f7" + integrity sha512-Lm56PP+n0+Z2A2rfRvsfWVDXGEWjXxatPopkQ8qQ5mxCEhwHG+Ettgg5o98FFaxilOxozoa14cFhrE/hOzh/Nw== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.3" + "@sideway/address" "^4.1.0" "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" @@ -15866,15 +16236,20 @@ jose@^2.0.5: dependencies: "@panva/asn1.js" "^1.0.0" -jose@^4.1.4, jose@^4.6.0: +jose@^4.1.4: + version "4.5.0" + resolved "https://registry.npmjs.org/jose/-/jose-4.5.0.tgz#92829d8cf846351eb55aaaf94f252fb1d191f2d5" + integrity sha512-GFcVFQwYQKbQTUOo2JlpFGXTkgBw26uzDsRMD2q1WgSKNSnpKS9Ug7bdQ8dS+p4sZHNH6iRPu6WK2jLIjspaMA== + +jose@^4.6.0: version "4.8.1" resolved "https://registry.npmjs.org/jose/-/jose-4.8.1.tgz#dc7c2660b115ba29b44880e588c5ac313c158247" integrity sha512-+/hpTbRcCw9YC0TOfN1W47pej4a9lRmltdOVdRLz5FP5UvUq3CenhXjQK7u/8NdMIIShMXYAh9VLPhc7TjhvFw== joycon@^3.0.1: - version "3.1.1" - resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" - integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== + version "3.1.0" + resolved "https://registry.npmjs.org/joycon/-/joycon-3.1.0.tgz#33bb2b6b5a6849a1e251bed623bdf610f477d49f" + integrity sha512-5Y/YJghKF/IzaUXTut0JtbQyHfBShTaIsH7hHhGXEzYO07zWdWZm5hr3Q6miqhrwsRqqm3mgOnUEZdn+1aRxKQ== jpeg-js@^0.3.4: version "0.3.7" @@ -16253,72 +16628,73 @@ jsprim@^2.0.2: verror "1.10.0" jss-plugin-camel-case@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.9.0.tgz#4921b568b38d893f39736ee8c4c5f1c64670aaf7" - integrity sha512-UH6uPpnDk413/r/2Olmw4+y54yEF2lRIV8XIZyuYpgPYTITLlPOsq6XB9qeqv+75SQSg3KLocq5jUBXW8qWWww== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.6.0.tgz#93d2cd704bf0c4af70cc40fb52d74b8a2554b170" + integrity sha512-JdLpA3aI/npwj3nDMKk308pvnhoSzkW3PXlbgHAzfx0yHWnPPVUjPhXFtLJzgKZge8lsfkUxvYSQ3X2OYIFU6A== dependencies: "@babel/runtime" "^7.3.1" hyphenate-style-name "^1.0.3" - jss "10.9.0" + jss "10.6.0" jss-plugin-default-unit@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.9.0.tgz#bb23a48f075bc0ce852b4b4d3f7582bc002df991" - integrity sha512-7Ju4Q9wJ/MZPsxfu4T84mzdn7pLHWeqoGd/D8O3eDNNJ93Xc8PxnLmV8s8ZPNRYkLdxZqKtm1nPQ0BM4JRlq2w== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.6.0.tgz#af47972486819b375f0f3a9e0213403a84b5ef3b" + integrity sha512-7y4cAScMHAxvslBK2JRK37ES9UT0YfTIXWgzUWD5euvR+JR3q+o8sQKzBw7GmkQRfZijrRJKNTiSt1PBsLI9/w== dependencies: "@babel/runtime" "^7.3.1" - jss "10.9.0" + jss "10.6.0" jss-plugin-global@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.9.0.tgz#fc07a0086ac97aca174e37edb480b69277f3931f" - integrity sha512-4G8PHNJ0x6nwAFsEzcuVDiBlyMsj2y3VjmFAx/uHk/R/gzJV+yRHICjT4MKGGu1cJq2hfowFWCyrr/Gg37FbgQ== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.6.0.tgz#3e8011f760f399cbadcca7f10a485b729c50e3ed" + integrity sha512-I3w7ji/UXPi3VuWrTCbHG9rVCgB4yoBQLehGDTmsnDfXQb3r1l3WIdcO8JFp9m0YMmyy2CU7UOV6oPI7/Tmu+w== dependencies: "@babel/runtime" "^7.3.1" - jss "10.9.0" + jss "10.6.0" jss-plugin-nested@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.9.0.tgz#cc1c7d63ad542c3ccc6e2c66c8328c6b6b00f4b3" - integrity sha512-2UJnDrfCZpMYcpPYR16oZB7VAC6b/1QLsRiAutOt7wJaaqwCBvNsosLEu/fUyKNQNGdvg2PPJFDO5AX7dwxtoA== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.6.0.tgz#5f83c5c337d3b38004834e8426957715a0251641" + integrity sha512-fOFQWgd98H89E6aJSNkEh2fAXquC9aZcAVjSw4q4RoQ9gU++emg18encR4AT4OOIFl4lQwt5nEyBBRn9V1Rk8g== dependencies: "@babel/runtime" "^7.3.1" - jss "10.9.0" + jss "10.6.0" tiny-warning "^1.0.2" jss-plugin-props-sort@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.9.0.tgz#30e9567ef9479043feb6e5e59db09b4de687c47d" - integrity sha512-7A76HI8bzwqrsMOJTWKx/uD5v+U8piLnp5bvru7g/3ZEQOu1+PjHvv7bFdNO3DwNPC9oM0a//KwIJsIcDCjDzw== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.6.0.tgz#297879f35f9fe21196448579fee37bcde28ce6bc" + integrity sha512-oMCe7hgho2FllNc60d9VAfdtMrZPo9n1Iu6RNa+3p9n0Bkvnv/XX5San8fTPujrTBScPqv9mOE0nWVvIaohNuw== dependencies: "@babel/runtime" "^7.3.1" - jss "10.9.0" + jss "10.6.0" jss-plugin-rule-value-function@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.9.0.tgz#379fd2732c0746fe45168011fe25544c1a295d67" - integrity sha512-IHJv6YrEf8pRzkY207cPmdbBstBaE+z8pazhPShfz0tZSDtRdQua5jjg6NMz3IbTasVx9FdnmptxPqSWL5tyJg== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.6.0.tgz#3c1a557236a139d0151e70a82c810ccce1c1c5ea" + integrity sha512-TKFqhRTDHN1QrPTMYRlIQUOC2FFQb271+AbnetURKlGvRl/eWLswcgHQajwuxI464uZk91sPiTtdGi7r7XaWfA== dependencies: "@babel/runtime" "^7.3.1" - jss "10.9.0" + jss "10.6.0" tiny-warning "^1.0.2" jss-plugin-vendor-prefixer@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.9.0.tgz#aa9df98abfb3f75f7ed59a3ec50a5452461a206a" - integrity sha512-MbvsaXP7iiVdYVSEoi+blrW+AYnTDvHTW6I6zqi7JcwXdc6I9Kbm234nEblayhF38EftoenbM+5218pidmC5gA== + version "10.6.0" + resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.6.0.tgz#e1fcd499352846890c38085b11dbd7aa1c4f2c78" + integrity sha512-doJ7MouBXT1lypLLctCwb4nJ6lDYqrTfVS3LtXgox42Xz0gXusXIIDboeh6UwnSmox90QpVnub7au8ybrb0krQ== dependencies: "@babel/runtime" "^7.3.1" css-vendor "^2.0.8" - jss "10.9.0" + jss "10.6.0" -jss@10.9.0, jss@^10.5.1: - version "10.9.0" - resolved "https://registry.npmjs.org/jss/-/jss-10.9.0.tgz#7583ee2cdc904a83c872ba695d1baab4b59c141b" - integrity sha512-YpzpreB6kUunQBbrlArlsMpXYyndt9JATbt95tajx0t4MTJJcCJdd4hdNpHmOIDiUJrF/oX5wtVFrS3uofWfGw== +jss@10.6.0, jss@^10.5.1: + version "10.6.0" + resolved "https://registry.npmjs.org/jss/-/jss-10.6.0.tgz#d92ff9d0f214f65ca1718591b68e107be4774149" + integrity sha512-n7SHdCozmxnzYGXBHe0NsO0eUf9TvsHVq2MXvi4JmTn3x5raynodDVE/9VQmBdWFyyj9HpHZ2B4xNZ7MMy7lkw== dependencies: "@babel/runtime" "^7.3.1" csstype "^3.0.2" + indefinite-observable "^2.0.1" is-in-browser "^1.1.3" tiny-warning "^1.0.2" @@ -16332,23 +16708,31 @@ jss@~10.8.2: is-in-browser "^1.1.3" tiny-warning "^1.0.2" -"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.0.tgz#e624f259143b9062c92b6413ff92a164c80d3ccb" - integrity sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q== +"jsx-ast-utils@^2.4.1 || ^3.0.0": + version "3.2.0" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz#41108d2cec408c3453c1bbe8a4aae9e1e2bd8f82" + integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== dependencies: - array-includes "^3.1.4" + array-includes "^3.1.2" object.assign "^4.1.2" -just-diff-apply@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.2.0.tgz#15da3888ab3acecc14ce9a067f2d7589c653cb89" - integrity sha512-unjtin7rnng0KUpE4RPWwTl8iwWiZuyZqOQ+vm8orV6aIXX8mHN8zlKCPPbOycfDNuLh2PBazbFhNoDJv4S/FA== +jsx-ast-utils@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" + integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== + dependencies: + array-includes "^3.1.3" + object.assign "^4.1.2" + +just-diff-apply@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-4.0.1.tgz#da89c5a4ccb14aa8873c70e2c3b6695cef45dab5" + integrity sha512-AKOkzB5P6FkfP21UlZVX/OPXx/sC2GagpLX9cBxqHqDuRjwmZ/AJRKSNrB9jHPpRW1W1ONs6gly1gW46t055nQ== just-diff@^5.0.1: - version "5.0.2" - resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.0.2.tgz#68854c94280c37d28cb266d8f29bdd2cd29f003e" - integrity sha512-uGd6F+eIZ4T95EinP8ubINGkbEy3jrgBym+6LjW+ja1UG1WQIcEcQ6FLeyXtVJZglk+bj7fvEn+Cu2LBxkgiYQ== + version "5.0.1" + resolved "https://registry.npmjs.org/just-diff/-/just-diff-5.0.1.tgz#db8fe1cfeea1156f2374bfb289826dca28e7e390" + integrity sha512-X00TokkRIDotUIf3EV4xUm6ELc/IkqhS/vPSHdWnsM5y0HoNMfEqrazizI7g78lpHvnRSRt/PFfKtRqJCOGIuQ== just-extend@^4.0.2: version "4.2.1" @@ -16400,9 +16784,9 @@ kafkajs@^1.16.0-beta.6: integrity sha512-+Rcfu2hyQ/jv5skqRY8xA7Ra+mmRkDAzCaLDYbkGtgsNKpzxPWiLbk8ub0dgr4EbWrN1Zb4BCXHUkD6+zYfdWg== keyv-memcache@^1.2.5: - version "1.3.3" - resolved "https://registry.npmjs.org/keyv-memcache/-/keyv-memcache-1.3.3.tgz#07343ae4e4cc1373ecca83657c246c616f9b0b7d" - integrity sha512-7k+0Ju2KPkS+a22MdgUW/MPAYyo736joxfrWFUsgiUY7ssu/tT6hxfWjxubQBNeG93dHRTBAF0oFUtSSVYTW0Q== + version "1.2.9" + resolved "https://registry.npmjs.org/keyv-memcache/-/keyv-memcache-1.2.9.tgz#68776b098233e4305ec729fbeb5ad5905f6ac914" + integrity sha512-hcHeihL/LjAhP1qvLSWuwCxDQlSkkGwlvH7RfIIO+57s7J5dhFLQQko1WcAbcd1jlxV6iPHAEvkDwp8c7XQzgA== dependencies: json-buffer "^3.0.1" memjs "^1.3.0" @@ -16511,9 +16895,9 @@ lazy-ass@1.6.0, lazy-ass@^1.6.0: integrity sha1-eZllXoZGwX8In90YfRUNMyTVRRM= lazystream@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" - integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== + version "1.0.0" + resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" + integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= dependencies: readable-stream "^2.0.5" @@ -16618,45 +17002,40 @@ li@^1.3.0: integrity sha1-IsWbyu+qmo7zWc91l4TkvxBq6hs= libnpmaccess@^4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" - integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== + version "4.0.1" + resolved "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-4.0.1.tgz#17e842e03bef759854adf6eb6c2ede32e782639f" + integrity sha512-ZiAgvfUbvmkHoMTzdwmNWCrQRsDkOC+aM5BDfO0C9aOSwF3R1LdFDBD+Rer1KWtsoQYO35nXgmMR7OUHpDRxyA== dependencies: aproba "^2.0.0" minipass "^3.1.1" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" + npm-package-arg "^8.0.0" + npm-registry-fetch "^9.0.0" libnpmpublish@^4.0.0: - version "4.0.2" - resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" - integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== + version "4.0.0" + resolved "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-4.0.0.tgz#ad6413914e0dfd78df868ce14ba3d3a4cc8b385b" + integrity sha512-2RwYXRfZAB1x/9udKpZmqEzSqNd7ouBRU52jyG14/xG8EF+O9A62d7/XVR3iABEQHf1iYhkm0Oq9iXjrL3tsXA== dependencies: - normalize-package-data "^3.0.2" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" + normalize-package-data "^3.0.0" + npm-package-arg "^8.1.0" + npm-registry-fetch "^9.0.0" semver "^7.1.3" - ssri "^8.0.1" + ssri "^8.0.0" -lilconfig@2.0.4: +lilconfig@2.0.4, lilconfig@^2.0.3: version "2.0.4" resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== -lilconfig@^2.0.3, lilconfig@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" - integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== - lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + version "1.1.6" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= linkify-it@^3.0.1: - version "3.0.3" - resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" - integrity sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ== + version "3.0.2" + resolved "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.2.tgz#f55eeb8bc1d3ae754049e124ab3bb56d97797fb8" + integrity sha512-gDBO4aHNZS6coiZCKVhSNh43F9ioIL4JwRjLZPkoLIY4yZFwg264Y5lu2x6rb1Js42Gh6Yqm2f6L2AJcnkzinQ== dependencies: uc.micro "^1.0.1" @@ -16812,9 +17191,9 @@ load-yaml-file@^0.2.0: strip-bom "^3.0.0" loader-runner@^4.2.0: - version "4.3.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" - integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + version "4.2.0" + resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" + integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== loader-utils@^1.1.0: version "1.4.0" @@ -16826,9 +17205,9 @@ loader-utils@^1.1.0: json5 "^1.0.1" loader-utils@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" - integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== + version "2.0.0" + resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" + integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== dependencies: big.js "^5.2.2" emojis-list "^3.0.0" @@ -17125,9 +17504,9 @@ long@^4.0.0: integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== longest-streak@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.0.1.tgz#c97315b7afa0e7d9525db9a5a2953651432bdc5d" - integrity sha512-cHlYSUpL2s7Fb3394mYxwTYj8niTaNHUCLr0qdiCXQfSjfuA7CKofpX2uSwEfFDQ0EB7JcnMnm+GjbqqoinYYg== + version "3.0.0" + resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-3.0.0.tgz#f127e2bded83caa6a35ac5f7a2f2b2f94b36f3dc" + integrity sha512-XhUjWR5CFaQ03JOP+iSDS9koy8T5jfoImCZ4XprElw3BXsSk4MpVYOLw/6LTDKZhO13PlAXnB5gS4MHQTpkSOw== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" @@ -17190,22 +17569,29 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lru-cache@^7.7.1: - version "7.9.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.9.0.tgz#29c2a989b6c10f32ceccc66ff44059e1490af3e1" - integrity sha512-lkcNMUKqdJk96TuIXUidxaPuEg5sJo/+ZyVE2BDFnuZGzwXem7d8582eG8vbu4todLfT14snP6iHriCHXXi5Rw== +lru-cache@^7.3.1: + version "7.3.1" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.3.1.tgz#7702e80694ec2bf19865567a469f2b081fcf53f5" + integrity sha512-nX1x4qUrKqwbIAhv4s9et4FIUVzNOpeY07bsjGUy8gwJrXH/wScImSQqXErmo/b2jZY2r0mohbLA9zVj7u1cNw== lunr@^2.3.9: version "2.3.9" resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== +<<<<<<< HEAD luxon@^1.23.x: version "1.28.0" resolved "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz#e7f96daad3938c06a62de0fb027115d251251fbf" integrity sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ== +======= +<<<<<<< HEAD +>>>>>>> Fix some typos and other requested changes luxon@^2.0.2, luxon@^2.3.0, luxon@^2.3.1: +======= +luxon@^2.0.2, luxon@^2.3.0, luxon@^2.4.0: +>>>>>>> Fix some typos and other requested changes version "2.4.0" resolved "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz#9435806545bb32d4234dab766ab8a3d54847a765" integrity sha512-w+NAwWOUL5hO0SgwOHsMBAmZ15SoknmQXhSO0hIbJCAmPKSsGeK8MlmhYh2w6Iib38IxN2M+/ooXWLbeis7GuA== @@ -17215,17 +17601,22 @@ lz-string@^1.4.4: resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" integrity sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= +macos-release@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz#eb1930b036c0800adebccd5f17bc4c12de8bb71f" + integrity sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA== + magic-string@^0.25.7: - version "0.25.9" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" - integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== + version "0.25.7" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" + integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== dependencies: - sourcemap-codec "^1.4.8" + sourcemap-codec "^1.4.4" magic-string@^0.26.1: - version "0.26.2" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz#5331700e4158cd6befda738bb6b0c7b93c0d4432" - integrity sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A== + version "0.26.1" + resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz#ba9b651354fa9512474199acecf9c6dbe93f97fd" + integrity sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg== dependencies: sourcemap-codec "^1.4.8" @@ -17250,26 +17641,26 @@ make-error@^1, make-error@^1.1.1, make-error@^1.3.6: integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== make-fetch-happen@^10.0.1: - version "10.1.3" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.1.3.tgz#d7ecd4a22563b2c05b74735eda46569da26a46f6" - integrity sha512-s/UjmGjUHn9m52cctFhN2ITObbT+axoUhgeir8xGrOlPbKDyJsdhQzb8PGncPQQ28uduHybFJ6Iumy2OZnreXw== + version "10.0.2" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.0.2.tgz#0afb38d2f951b17ebc482b0b16c8d77f39dfe389" + integrity sha512-JSFLK53NJP22FL/eAGOyKsWbc2G3v+toPMD7Dq9PJKQCvK0i3t8hGkKxe+3YZzwYa+c0kxRHu7uxH3fvO+rsaA== dependencies: - agentkeepalive "^4.2.1" - cacache "^16.0.2" + agentkeepalive "^4.2.0" + cacache "^15.3.0" http-cache-semantics "^4.1.0" http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" is-lambda "^1.0.1" - lru-cache "^7.7.1" + lru-cache "^7.3.1" minipass "^3.1.6" minipass-collect "^1.0.2" - minipass-fetch "^2.0.3" + minipass-fetch "^1.4.1" minipass-flush "^1.0.5" minipass-pipeline "^1.2.4" negotiator "^0.6.3" promise-retry "^2.0.1" socks-proxy-agent "^6.1.1" - ssri "^9.0.0" + ssri "^8.0.1" make-fetch-happen@^8.0.9: version "8.0.14" @@ -17292,7 +17683,7 @@ make-fetch-happen@^8.0.9: socks-proxy-agent "^5.0.0" ssri "^8.0.0" -make-fetch-happen@^9.0.1, make-fetch-happen@^9.1.0: +make-fetch-happen@^9.1.0: version "9.1.0" resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== @@ -17314,12 +17705,12 @@ make-fetch-happen@^9.0.1, make-fetch-happen@^9.1.0: socks-proxy-agent "^6.0.0" ssri "^8.0.0" -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== +makeerror@1.0.x: + version "1.0.11" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" + integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= dependencies: - tmpl "1.0.5" + tmpl "1.0.x" map-cache@^0.2.0, map-cache@^0.2.2: version "0.2.2" @@ -17360,9 +17751,9 @@ markdown-it@^12.2.0: uc.micro "^1.0.5" markdown-table@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.2.tgz#9b59eb2c1b22fe71954a65ff512887065a7bb57c" - integrity sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA== + version "3.0.1" + resolved "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.1.tgz#88c48957aaf2a8014ccb2ba026776a1d736fe3dc" + integrity sha512-CBbaYXKSGnE1uLRpKA1SWgIRb2PQrpkllNWpZtZe6VojOJ4ysqiq7/2glYcmKsOYN09QgH/HEBX5hIshAeiK6A== marked@^4.0.14: version "4.0.16" @@ -17403,9 +17794,9 @@ material-ui-search-bar@^1.0.0: prop-types "^15.5.8" math-expression-evaluator@^1.2.14: - version "1.3.14" - resolved "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.3.14.tgz#0ebeaccf65fea0f6f5a626f88df41814e5fcd9bf" - integrity sha512-M6AMrvq9bO8uL42KvQHPA2/SbAobA0R7gviUmPrcTcGfdwpaLitz4q2Euzx2lP9Oy88vxK3HOrsISgSwKsYS4A== + version "1.2.22" + resolved "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.22.tgz#c14dcb3d8b4d150e5dcea9c68c8dad80309b0d5e" + integrity sha512-L0j0tFVZBQQLeEjmWOvDLoRciIY8gQGWahvkztXUal8jH8R5Rlqo9GCvgqvXcy9LQhEWdQCVvzqAbxgYNt4blQ== md5.js@^1.3.4: version "1.3.5" @@ -17435,13 +17826,12 @@ mdast-util-find-and-replace@^2.0.0: unist-util-visit-parents "^4.0.0" mdast-util-from-markdown@^1.0.0: - version "1.2.0" - resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.2.0.tgz#84df2924ccc6c995dec1e2368b2b208ad0a76268" - integrity sha512-iZJyyvKD1+K7QX1b5jXdE7Sc5dtoTry1vzV28UZZe8Z1xVnB/czKntJ7ZAkG0tANqRnBF6p3p7GpU1y19DTf2Q== + version "1.0.2" + resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.0.2.tgz#7c793bb96b053d12f032e37382ae989efb70ee66" + integrity sha512-gXaxv/5fGdrr9TqSMlQK7FmshK8yR9DvW3+NapMBDm44inORxIZVJa1D3yjrUT9ISu8tB/jjblEkUzyzclquNg== dependencies: "@types/mdast" "^3.0.0" "@types/unist" "^2.0.0" - decode-named-character-reference "^1.0.0" mdast-util-to-string "^3.1.0" micromark "^3.0.0" micromark-util-decode-numeric-character-reference "^1.0.0" @@ -17449,8 +17839,8 @@ mdast-util-from-markdown@^1.0.0: micromark-util-normalize-identifier "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" + parse-entities "^3.0.0" unist-util-stringify-position "^3.0.0" - uvu "^0.5.0" mdast-util-gfm-autolink-literal@^1.0.0: version "1.0.2" @@ -17463,51 +17853,49 @@ mdast-util-gfm-autolink-literal@^1.0.0: micromark-util-character "^1.0.0" mdast-util-gfm-footnote@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.1.tgz#11d2d40a1a673a399c459e467fa85e00223191fe" - integrity sha512-p+PrYlkw9DeCRkTVw1duWqPRHX6Ywh2BNKJQcZbCwAuP/59B0Lk9kakuAd7KbQprVO4GzdW8eS5++A9PUSqIyw== + version "1.0.0" + resolved "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.0.tgz#355c1e8dc9e17e871d1b3fa5da8824923fc756e0" + integrity sha512-qeg9YoS2YYP6OBmMyUFxKXb6BLwAsbGidIxgwDAXHIMYZQhIwe52L9BSJs+zP29Jp5nSERPkmG3tSwAN23/ZbQ== dependencies: "@types/mdast" "^3.0.0" - mdast-util-to-markdown "^1.3.0" + mdast-util-to-markdown "^1.0.0" micromark-util-normalize-identifier "^1.0.0" + unist-util-visit "^4.0.0" mdast-util-gfm-strikethrough@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.1.tgz#a4a74c36864ec6a6e3bbd31e1977f29beb475789" - integrity sha512-zKJbEPe+JP6EUv0mZ0tQUyLQOC+FADt0bARldONot/nefuISkaZFlmVK4tU6JgfyZGrky02m/I6PmehgAgZgqg== + version "1.0.0" + resolved "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.0.tgz#6cc72ef5d9539f4cee76af3f15dd0daa9e3af40f" + integrity sha512-gM9ipBUdRxYa6Yq1Hd8Otg6jEn/dRxFZ1F9ZX4QHosHOexLGqNZO2dh0A+YFbUEd10RcKjnjb4jOfJJzoXXUew== dependencies: - "@types/mdast" "^3.0.0" - mdast-util-to-markdown "^1.3.0" + "@types/mdast" "^3.0.3" + mdast-util-to-markdown "^1.0.0" mdast-util-gfm-table@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.4.tgz#0dbb25f04fd9c0877dc63b76203ecbdf5d945755" - integrity sha512-aEuoPwZyP4iIMkf2cLWXxx3EQ6Bmh2yKy9MVCg4i6Sd3cX80dcLEfXO/V4ul3pGH9czBK4kp+FAl+ZHmSUt9/w== + version "1.0.1" + resolved "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.1.tgz#07c269a219d66ec2deb6de38aed0ba1d1f9442df" + integrity sha512-NByKuaSg5+M6r9DZBPXFUmhMHGFf9u+WE76EeStN01ghi8hpnydiWBXr+qj0XCRWI7SAMNtEjGvip6zci9axQA== dependencies: markdown-table "^3.0.0" - mdast-util-from-markdown "^1.0.0" - mdast-util-to-markdown "^1.3.0" + mdast-util-to-markdown "^1.0.0" mdast-util-gfm-task-list-item@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.1.tgz#6f35f09c6e2bcbe88af62fdea02ac199cc802c5c" - integrity sha512-KZ4KLmPdABXOsfnM6JHUIjxEvcx2ulk656Z/4Balw071/5qgnhz+H1uGtf2zIGnrnvDC8xR4Fj9uKbjAFGNIeA== + version "1.0.0" + resolved "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.0.tgz#a0aa2a00c893f9f006d13ba096cbc64608559c7f" + integrity sha512-dwkzOTjQe8JCCHVE3Cb0pLHTYLudf7t9WCAnb20jI8/dW+VHjgWhjtIUVA3oigNkssgjEwX+i+3XesUdCnXGyA== dependencies: - "@types/mdast" "^3.0.0" - mdast-util-to-markdown "^1.3.0" + "@types/mdast" "^3.0.3" + mdast-util-to-markdown "^1.0.0" mdast-util-gfm@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.1.tgz#16fcf70110ae689a06d77e8f4e346223b64a0ea6" - integrity sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ== + version "2.0.0" + resolved "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.0.tgz#2545856bc18a66d5cc63fbef0b097a020a8e9e3d" + integrity sha512-wMwejlTN3EQADPFuvxe8lmGsay3+f6gSJKdAHR6KBJzpcxvsjJSILB9K6u6G7eQLC7iOTyVIHYGui9uBc9r1Tg== dependencies: - mdast-util-from-markdown "^1.0.0" mdast-util-gfm-autolink-literal "^1.0.0" mdast-util-gfm-footnote "^1.0.0" mdast-util-gfm-strikethrough "^1.0.0" mdast-util-gfm-table "^1.0.0" mdast-util-gfm-task-list-item "^1.0.0" - mdast-util-to-markdown "^1.0.0" mdast-util-to-hast@^12.1.0: version "12.1.1" @@ -17525,10 +17913,10 @@ mdast-util-to-hast@^12.1.0: unist-util-position "^4.0.0" unist-util-visit "^4.0.0" -mdast-util-to-markdown@^1.0.0, mdast-util-to-markdown@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.3.0.tgz#38b6cdc8dc417de642a469c4fc2abdf8c931bd1e" - integrity sha512-6tUSs4r+KK4JGTTiQ7FfHmVOaDrLQJPmpjD6wPMlHGUVXoG9Vjc3jIeP+uyBWRf8clwB2blM+W7+KrlMYQnftA== +mdast-util-to-markdown@^1.0.0: + version "1.2.3" + resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.2.3.tgz#2b3af92bf0e29080927eb59a8a10cd0a7398e093" + integrity sha512-040jJYtjOUdbvYAXCfPrpLJRdvMOmR33KRqlhT4r+fEbVM+jao1RMbA8RmGeRmw8RAj3vQ+HvhIaJPijvnOwCg== dependencies: "@types/mdast" "^3.0.0" "@types/unist" "^2.0.0" @@ -17559,9 +17947,9 @@ media-typer@0.3.0: integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= "mem-fs-editor@^8.1.2 || ^9.0.0": - version "9.4.0" - resolved "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-9.4.0.tgz#0cc1cf61350e33c25fc364c97fb0551eb32b8c9b" - integrity sha512-HSSOLSVRrsDdui9I6i96dDtG+oAez/4EB2g4cjSrNhgNQ3M+L57/+22NuPdORSoxvOHjIg/xeOE+C0wwF91D2g== + version "9.3.0" + resolved "https://registry.npmjs.org/mem-fs-editor/-/mem-fs-editor-9.3.0.tgz#85ce80541b1961d1d9f433e275c7cee9d0a1c9a2" + integrity sha512-QKFbPwGCh1ypmc2H8BUYpbapwT/x2AOCYZQogzSui4rUNes7WVMagQXsirPIfp18EarX0SSY9Fpg426nSjew4Q== dependencies: binaryextensions "^4.16.0" commondir "^1.0.1" @@ -17645,7 +18033,12 @@ merge-stream@^2.0.0: resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0, merge2@^1.4.1: +merge2@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" + integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== + +merge2@^1.4.1: version "1.4.1" resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -17656,9 +18049,9 @@ merge@^1.2.1: integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== meros@^1.1.4: - version "1.2.0" - resolved "https://registry.npmjs.org/meros/-/meros-1.2.0.tgz#096cdede2eb0b1610b219b1031b935260de1ad08" - integrity sha512-3QRZIS707pZQnijHdhbttXRWwrHhZJ/gzolneoxKVz9N/xmsvY/7Ls8lpnI9gxbgxjcHsAVEW3mgwiZCo6kkJQ== + version "1.1.4" + resolved "https://registry.npmjs.org/meros/-/meros-1.1.4.tgz#c17994d3133db8b23807f62bec7f0cb276cfd948" + integrity sha512-E9ZXfK9iQfG9s73ars9qvvvbSIkJZF5yOo9j4tcwM5tN8mUKfj/EKN5PzOr3ZH0y5wL7dLAHw3RVEfpQV9Q7VQ== methods@^1.0.0, methods@^1.1.1, methods@^1.1.2, methods@~1.1.2: version "1.1.2" @@ -17693,20 +18086,19 @@ micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1: uvu "^0.5.0" micromark-extension-gfm-autolink-literal@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz#dc589f9c37eaff31a175bab49f12290edcf96058" - integrity sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.0.tgz#1a49a62bfcb00f9dff87ab39f3b21a108612dc24" + integrity sha512-t+K0aPK32mXypVTEKV+WRfoT/Rb7MERDgHZVRr56NXpyQQhgMk72QnK4NljYUlrgbuesH+MxiPQwThzqRDIwvA== dependencies: micromark-util-character "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-extension-gfm-footnote@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.4.tgz#cbfd8873b983e820c494498c6dac0105920818d5" - integrity sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg== + version "1.0.3" + resolved "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.3.tgz#5280b29667e4ecb8687f369829aa3322caca7d11" + integrity sha512-bn62pC5y39rIo2g1RqZk1NhF7T7cJLuJlbevunQz41U0iPVCdVOFASe5/L1kke+DFKSgfCRhv24+o42cZ1+ADw== dependencies: micromark-core-commonmark "^1.0.0" micromark-factory-space "^1.0.0" @@ -17714,49 +18106,45 @@ micromark-extension-gfm-footnote@^1.0.0: micromark-util-normalize-identifier "^1.0.0" micromark-util-sanitize-uri "^1.0.0" micromark-util-symbol "^1.0.0" - micromark-util-types "^1.0.0" uvu "^0.5.0" micromark-extension-gfm-strikethrough@^1.0.0: - version "1.0.4" - resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.4.tgz#162232c284ffbedd8c74e59c1525bda217295e18" - integrity sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.1.tgz#9f53ab4f5dc8c0525a889850bae615f074a98a27" + integrity sha512-fzGYXWz9HPWH1uHqYwdyR8XpEtuoYVHUjTdPQTnl3ETVZOQe1NXMwE3RA7AMqeON52hG+kO9g1/P1+pLONBSMQ== dependencies: micromark-util-chunked "^1.0.0" micromark-util-classify-character "^1.0.0" micromark-util-resolve-all "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-extension-gfm-table@^1.0.0: - version "1.0.5" - resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz#7b708b728f8dc4d95d486b9e7a2262f9cddbcbb4" - integrity sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.0.tgz#f0d35dbf008b6182311049f9137323d34a54c7a0" + integrity sha512-OATRuHDgEAT/aaJJRSdU12V+s01kNSnJ0jumdfLq5mPy0F5DkR3zbTSFLH4tjVYM0/kEG6umxIhHY62mFe4z5Q== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-extension-gfm-tagfilter@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.1.tgz#fb2e303f7daf616db428bb6a26e18fda14a90a4d" - integrity sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.0.tgz#a38c7c462c2007b534fcb485e9310165879654a7" + integrity sha512-GGUZhzQrOdHR8RHU2ru6K+4LMlj+pBdNuXRtw5prOflDOk2hHqDB0xEgej1AHJ2VETeycX7tzQh2EmaTUOmSKg== dependencies: micromark-util-types "^1.0.0" micromark-extension-gfm-task-list-item@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.3.tgz#7683641df5d4a09795f353574d7f7f66e47b7fc4" - integrity sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.0.tgz#ab38b2b4ead4e746189d6323c32cacab2c63599d" + integrity sha512-3tkHCq1NNwijtwpjYba9+rl1yvQ4xYg8iQpUAfTJRyq8MtIEsBUF/vW6B9Gh8Qwy1hE2FmpyHhP4jnFAt61zLg== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-extension-gfm@^2.0.0: version "2.0.1" @@ -17782,14 +18170,13 @@ micromark-factory-destination@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-label@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz#6be2551fa8d13542fcbbac478258fb7a20047137" - integrity sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.0.tgz#b316ec479b474232973ff13b49b576f84a6f2cbb" + integrity sha512-XWEucVZb+qBCe2jmlOnWr6sWSY6NHx+wtpgYFsm4G+dufOf6tTQRRo0bdO7XSlGPu5fyjpJenth6Ksnc5Mwfww== dependencies: micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-factory-space@^1.0.0: version "1.0.0" @@ -17800,15 +18187,14 @@ micromark-factory-space@^1.0.0: micromark-util-types "^1.0.0" micromark-factory-title@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz#7e09287c3748ff1693930f176e1c4a328382494f" - integrity sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.0.tgz#708f7a8044f34a898c0efdb4f55e4da66b537273" + integrity sha512-flvC7Gx0dWVWorXuBl09Cr3wB5FTuYec8pMGVySIp2ZlqTcIjN/lFohZcP0EG//krTptm34kozHk7aK/CleCfA== dependencies: micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-factory-whitespace@^1.0.0: version "1.0.0" @@ -17860,19 +18246,18 @@ micromark-util-decode-numeric-character-reference@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-decode-string@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz#942252ab7a76dec2dbf089cc32505ee2bc3acf02" - integrity sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.0.tgz#f97946825231d9c97df767875064401774578a6e" + integrity sha512-4g5UJ8P/J8wuRKUXCcB7udQuOBXpLyvBQSLSuznfBLCG+thKG6UTwFnXfHkrr/1wddprkUbPatCzxDjrJ+5zDg== dependencies: - decode-named-character-reference "^1.0.0" micromark-util-character "^1.0.0" micromark-util-decode-numeric-character-reference "^1.0.0" - micromark-util-symbol "^1.0.0" + parse-entities "^3.0.0" micromark-util-encode@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz#2c1c22d3800870ad770ece5686ebca5920353383" - integrity sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.0.tgz#c409ecf751a28aa9564b599db35640fccec4c068" + integrity sha512-cJpFVM768h6zkd8qJ1LNRrITfY4gwFt+tziPcIf71Ui8yFzY9wG3snZQqiWVq93PG4Sw6YOtcNiKJfVIs9qfGg== micromark-util-html-tag-name@^1.0.0: version "1.0.0" @@ -17903,33 +18288,31 @@ micromark-util-sanitize-uri@^1.0.0: micromark-util-symbol "^1.0.0" micromark-util-subtokenize@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz#ff6f1af6ac836f8bfdbf9b02f40431760ad89105" - integrity sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.0.tgz#6f006fa719af92776c75a264daaede0fb3943c6a" + integrity sha512-EsnG2qscmcN5XhkqQBZni/4oQbLFjz9yk3ZM/P8a3YUjwV6+6On2wehr1ALx0MxK3+XXXLTzuBKHDFeDFYRdgQ== dependencies: micromark-util-chunked "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.0" - uvu "^0.5.0" micromark-util-symbol@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz#b90344db62042ce454f351cf0bebcc0a6da4920e" - integrity sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ== + version "1.0.0" + resolved "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.0.tgz#91cdbcc9b2a827c0129a177d36241bcd3ccaa34d" + integrity sha512-NZA01jHRNCt4KlOROn8/bGi6vvpEmlXld7EHcRH+aYWUfL3Wc8JLUNNlqUMKa0hhz6GrpUWsHtzPmKof57v0gQ== micromark-util-types@^1.0.0, micromark-util-types@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz#f4220fdb319205812f99c40f8c87a9be83eded20" - integrity sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w== + version "1.0.1" + resolved "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.1.tgz#8bb8a092d93d326bd29fe29602799f2d0d922fd4" + integrity sha512-UT0ylWEEy80RFYzK9pEaugTqaxoD/j0Y9WhHpSyitxd99zjoQz7JJ+iKuhPAgOW2MiPSUAx+c09dcqokeyaROA== micromark@^3.0.0: - version "3.0.10" - resolved "https://registry.npmjs.org/micromark/-/micromark-3.0.10.tgz#1eac156f0399d42736458a14b0ca2d86190b457c" - integrity sha512-ryTDy6UUunOXy2HPjelppgJ2sNfcPz1pLlMdA6Rz9jPzhLikWXv/irpWV/I2jd68Uhmny7hHxAlAhk4+vWggpg== + version "3.0.5" + resolved "https://registry.npmjs.org/micromark/-/micromark-3.0.5.tgz#d24792c8a06f201d5608c106dbfadef34c299684" + integrity sha512-QfjERBnPw0G9mxhOCkkbRP0n8SX8lIBLrEKeEVceviUukqVMv3hWE4AgNTOK/W6GWqtPvvIHg2Apl3j1Dxm6aQ== dependencies: "@types/debug" "^4.0.0" debug "^4.0.0" - decode-named-character-reference "^1.0.0" micromark-core-commonmark "^1.0.1" micromark-factory-space "^1.0.0" micromark-util-character "^1.0.0" @@ -17943,7 +18326,7 @@ micromark@^3.0.0: micromark-util-subtokenize "^1.0.0" micromark-util-symbol "^1.0.0" micromark-util-types "^1.0.1" - uvu "^0.5.0" + parse-entities "^3.0.0" micromatch@^3.1.10: version "3.1.10" @@ -18014,7 +18397,7 @@ mime@1.6.0, mime@^1.3.4, mime@^1.4.1: resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.5.0: +mime@^2.2.0, mime@^2.5.0: version "2.6.0" resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== @@ -18062,9 +18445,9 @@ min-document@^2.19.0: dom-walk "^0.1.0" min-indent@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + version "1.0.0" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256" + integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= mini-css-extract-plugin@^2.4.2: version "2.6.0" @@ -18090,13 +18473,6 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@4.2.1, minimatch@^4.0.0: - version "4.2.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" - integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== - dependencies: - brace-expansion "^1.1.7" - minimatch@5.0.1, minimatch@^5.0.0, minimatch@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" @@ -18111,6 +18487,13 @@ minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" +minimatch@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" + integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== + dependencies: + brace-expansion "^1.1.7" + minimist-options@4.1.0, minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -18150,17 +18533,6 @@ minipass-fetch@^1.3.0, minipass-fetch@^1.3.2, minipass-fetch@^1.4.1: optionalDependencies: encoding "^0.1.12" -minipass-fetch@^2.0.3: - version "2.1.0" - resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.0.tgz#ca1754a5f857a3be99a9271277246ac0b44c3ff8" - integrity sha512-H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg== - dependencies: - minipass "^3.1.6" - minipass-sized "^1.0.3" - minizlib "^2.1.2" - optionalDependencies: - encoding "^0.1.13" - minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -18233,7 +18605,12 @@ mixme@^0.5.1: resolved "https://registry.npmjs.org/mixme/-/mixme-0.5.4.tgz#8cb3bd0cd32a513c161bf1ca99d143f0bcf2eff3" integrity sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw== -mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: +mkdirp-classic@^0.5.2: + version "0.5.2" + resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz#54c441ce4c96cd7790e10b41a87aa51068ecab2b" + integrity sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g== + +mkdirp-classic@^0.5.3: version "0.5.3" resolved "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== @@ -18253,11 +18630,11 @@ mkdirp@0.3.0: integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4= "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@^0.5.5: - version "0.5.6" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + version "0.5.5" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: - minimist "^1.2.6" + minimist "^1.2.5" mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" @@ -18274,10 +18651,17 @@ modify-values@^1.0.0: resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: - version "2.29.3" - resolved "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3" - integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw== +moment-timezone@^0.5.x: + version "0.5.34" + resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c" + integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg== + dependencies: + moment ">= 2.9.0" + +"moment@>= 2.9.0", moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: + version "2.29.2" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.2.tgz#00910c60b20843bcba52d37d58c628b47b1f20e4" + integrity sha512-UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg== morgan@^1.10.0: version "1.10.0" @@ -18446,15 +18830,15 @@ named-placeholders@^1.1.2: dependencies: lru-cache "^4.1.3" -nan@^2.15.0: +nan@^2.14.1, nan@^2.15.0: version "2.15.0" resolved "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== nano-css@^5.3.1: - version "5.3.4" - resolved "https://registry.npmjs.org/nano-css/-/nano-css-5.3.4.tgz#40af6a83a76f84204f346e8ccaa9169cdae9167b" - integrity sha512-wfcviJB6NOxDIDfr7RFn/GlaN7I/Bhe4d39ZRCJ3xvZX60LVe2qZ+rDqM49nm4YT81gAjzS+ZklhKP/Gnfnubg== + version "5.3.1" + resolved "https://registry.npmjs.org/nano-css/-/nano-css-5.3.1.tgz#b709383e07ad3be61f64edffacb9d98250b87a1f" + integrity sha512-ENPIyNzANQRyYVvb62ajDd7PAyIgS2LIUnT9ewih4yrXSZX4hKoUwssy8WjUH++kEOA5wUTMgNnV7ko5n34kUA== dependencies: css-tree "^1.1.2" csstype "^3.0.6" @@ -18477,7 +18861,12 @@ nanoclone@^0.2.1: resolved "https://registry.npmjs.org/nanoclone/-/nanoclone-0.2.1.tgz#dd4090f8f1a110d26bb32c49ed2f5b9235209ed4" integrity sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA== -nanoid@^3.1.23, nanoid@^3.3.3: +nanoid@^3.1.23: + version "3.3.1" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" + integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== + +nanoid@^3.3.3: version "3.3.4" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== @@ -18530,6 +18919,11 @@ neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.2: resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + nise@^5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/nise/-/nise-5.1.1.tgz#ac4237e0d785ecfcb83e20f389185975da5c31f3" @@ -18550,9 +18944,9 @@ no-case@^3.0.4: tslib "^2.0.3" node-abi@^3.3.0: - version "3.15.0" - resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.15.0.tgz#cd9ac8c58328129b49998cc6fa16aa5506152716" - integrity sha512-Ic6z/j6I9RLm4ov7npo1I48UQr2BEyFCqh6p7S1dhEx9jPO0GPGq/e2Rb7x7DroQrmiVMz/Bw1vJm9sPAl2nxA== + version "3.8.0" + resolved "https://registry.npmjs.org/node-abi/-/node-abi-3.8.0.tgz#679957dc8e7aa47b0a02589dbfde4f77b29ccb32" + integrity sha512-tzua9qWWi7iW4I42vUPKM+SfaF0vQSLAm4yO5J83mSwB7GeoWrDKC/K+8YCnYNwqP5duwazbw2X9l4m8SC2cUw== dependencies: semver "^7.3.5" @@ -18580,22 +18974,22 @@ node-domexception@1.0.0: resolved "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== -node-fetch@2.6.7, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.5, node-fetch@^2.6.7: +node-fetch@2.6.7, node-fetch@^2.3.0, node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.5, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-forge@^1, node-forge@^1.3.1: +node-forge@^1, node-forge@^1.0.0: version "1.3.1" resolved "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== node-gyp@^5.0.2: - version "5.1.1" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" - integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== + version "5.1.0" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-5.1.0.tgz#8e31260a7af4a2e2f994b0673d4e0b3866156332" + integrity sha512-OUTryc5bt/P8zVgNUmC6xdXiDJxLMAW8cF5tLQOT9E5sOQj+UeQxnnPy74K3CLCa/SOjjBlbuzDLR8ANwA+wmw== dependencies: env-paths "^2.2.0" glob "^7.1.4" @@ -18680,10 +19074,15 @@ node-match-path@^0.6.3: resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== -node-releases@^2.0.3: - version "2.0.4" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz#f38252370c43854dc48aa431c766c6c398f40476" - integrity sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ== +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-releases@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" + integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== nodemon@^2.0.2: version "2.0.16" @@ -18733,14 +19132,14 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" - integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== +normalize-package-data@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz#1f8a7c423b3d2e85eb36985eaf81de381d01301a" + integrity sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw== dependencies: - hosted-git-info "^4.0.1" - is-core-module "^2.5.0" - semver "^7.3.4" + hosted-git-info "^3.0.6" + resolve "^1.17.0" + semver "^7.3.2" validate-npm-package-license "^3.0.1" normalize-path@^2.1.1: @@ -18755,12 +19154,17 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +normalize-url@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" + integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== + normalize-url@^4.1.0: version "4.5.1" resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -normalize-url@^6.0.1, normalize-url@^6.1.0: +normalize-url@^6.0.1: version "6.1.0" resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== @@ -18808,9 +19212,9 @@ npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-pack validate-npm-package-name "^3.0.0" npm-packlist@^2.1.4: - version "2.2.2" - resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" - integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== + version "2.1.4" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.4.tgz#40e96b2b43787d0546a574542d01e066640d09da" + integrity sha512-Qzg2pvXC9U4I4fLnUrBmcIT4x0woLtUgxUi9eC+Zrcv1Xx5eamytGAfbDWQ67j7xOcQ2VW1I3su9smVTIdu7Hw== dependencies: glob "^7.1.6" ignore-walk "^3.0.3" @@ -18847,18 +19251,6 @@ npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.0, npm-pick-manifest@^6.1.1: npm-package-arg "^8.1.2" semver "^7.3.4" -npm-registry-fetch@^11.0.0: - version "11.0.0" - resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" - integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== - dependencies: - make-fetch-happen "^9.0.1" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" - npm-registry-fetch@^12.0.0, npm-registry-fetch@^12.0.1: version "12.0.2" resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz#ae583bb3c902a60dae43675b5e33b5b1f6159f1e" @@ -18885,6 +19277,13 @@ npm-registry-fetch@^9.0.0: minizlib "^2.0.0" npm-package-arg "^8.0.0" +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -18920,16 +19319,16 @@ npmlog@^5.0.1: set-blocking "^2.0.0" npmlog@^6.0.0: - version "6.0.2" - resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" - integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + version "6.0.1" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.1.tgz#06f1344a174c06e8de9c6c70834cfba2964bba17" + integrity sha512-BTHDvY6nrRHuRfyjt1MAufLxYdVXZfd099H4+i1f0lPywNQyI4foeNXJRObB/uy+TYqUW0vAD9gbdSOXPst7Eg== dependencies: are-we-there-yet "^3.0.0" console-control-strings "^1.1.0" - gauge "^4.0.3" + gauge "^4.0.0" set-blocking "^2.0.0" -nth-check@^2.0.1: +nth-check@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== @@ -18984,7 +19383,7 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-hash@^2.0.1: +object-hash@^2.0.1, object-hash@^2.1.1: version "2.2.0" resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== @@ -18994,12 +19393,12 @@ object-hash@^3.0.0: resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== -object-inspect@^1.12.0, object-inspect@^1.9.0: +object-inspect@^1.11.0, object-inspect@^1.12.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== -object-keys@^1.1.1: +object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -19040,21 +19439,20 @@ object.fromentries@^2.0.5: es-abstract "^1.19.1" object.getownpropertydescriptors@^2.0.3: - version "2.1.3" - resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" - integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== + version "2.1.0" + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" + integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== dependencies: - call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.1" + es-abstract "^1.17.0-next.1" object.hasown@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" - integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A== + version "1.1.0" + resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" + integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== dependencies: - define-properties "^1.1.4" - es-abstract "^1.19.5" + define-properties "^1.1.3" + es-abstract "^1.19.1" object.pick@^1.3.0: version "1.3.0" @@ -19113,14 +19511,14 @@ omggif@^1.0.9: resolved "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz#ddaaf90d4a42f532e9e7cb3a95ecdd47f17c7b19" integrity sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw== -on-finished@2.4.1, on-finished@^2.3.0: +on-finished@2.4.1: version "2.4.1" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" -on-finished@~2.3.0: +on-finished@^2.3.0, on-finished@~2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= @@ -19177,17 +19575,17 @@ open@^8.0.0, open@^8.0.9, open@^8.4.0: is-wsl "^2.2.0" openapi-sampler@^1.2.1: - version "1.2.3" - resolved "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.2.3.tgz#753b69c4f45b54682469f2343399a10bc60ec993" - integrity sha512-dH2QYXqakorV5dxkP/f1BV3Ku4yNn21YmBsqJunnyrHLw7mnCNZZldftgrEpv/66b1m5oaUAmiJoJN+FqBEkJg== + version "1.2.1" + resolved "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.2.1.tgz#2ca9eea527f8f2ddb32c3ae1dda31afd8bf0833f" + integrity sha512-mHrYmyvcLD0qrfqPkPRBAL2z16hGT2rW0d0B7nklfoTcc3pmkJLkSZlKSeFgerUM41E5c7jlxf0Y19xrM7mWQQ== dependencies: "@types/json-schema" "^7.0.7" json-pointer "0.6.2" openid-client@^4.1.1: - version "4.9.1" - resolved "https://registry.npmjs.org/openid-client/-/openid-client-4.9.1.tgz#4f00a9d1566c0fa08f0dd5986cf0e6b1e5d14186" - integrity sha512-DYUF07AHjI3QDKqKbn2F7RqozT4hyi4JvmpodLrq0HHoNP7t/AjeG/uqiBK1/N2PZSAQEThVjDLHSmJN4iqu/w== + version "4.9.0" + resolved "https://registry.npmjs.org/openid-client/-/openid-client-4.9.0.tgz#bdfc9194435316df419f759ce177635146b43074" + integrity sha512-ThBbvRUUZwxUKBVK2UpDNIZ3eJkvtqWI8s5Dm+naV+gJdL+yRhT+8ywqct1gy5uL+xVS5+A/nhFcpJIisH2x6Q== dependencies: aggregate-error "^3.1.0" got "^11.8.0" @@ -19263,6 +19661,14 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" +os-name@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" + integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== + dependencies: + macos-release "^2.2.0" + windows-release "^3.1.0" + os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -19286,7 +19692,12 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.0, outvariant@^1.2.1: +outvariant@^1.2.0: + version "1.2.1" + resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.2.1.tgz#e630f6cdc1dbf398ed857e36f219de4a005ccd35" + integrity sha512-bcILvFkvpMXh66+Ubax/inxbKRyWTUiiFIW2DWkiS79wakrLGn3Ydy+GvukadiyfZjaL6C7YhIem4EZSM282wA== + +outvariant@^1.2.1: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -19297,9 +19708,9 @@ p-cancelable@^1.0.0: integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== p-cancelable@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf" - integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== + version "2.0.0" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e" + integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg== p-filter@^2.1.0: version "2.1.0" @@ -19333,9 +19744,9 @@ p-limit@^1.1.0: p-try "^1.0.0" p-limit@^2.0.0, p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + version "2.2.2" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" + integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== dependencies: p-try "^2.0.0" @@ -19410,12 +19821,12 @@ p-reduce@^2.0.0, p-reduce@^2.1.0: integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== p-retry@^4.5.0: - version "4.6.2" - resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" - integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== + version "4.5.0" + resolved "https://registry.npmjs.org/p-retry/-/p-retry-4.5.0.tgz#6685336b3672f9ee8174d3769a660cb5e488521d" + integrity sha512-5Hwh4aVQSu6BEP+w2zKlVXtFAaYQe1qWuVADSgoeVlLjwe/Q/AMSoRR4MDeaAfu8llT+YNbEijWu/YF3m6avkg== dependencies: - "@types/retry" "0.12.0" - retry "^0.13.1" + "@types/retry" "^0.12.0" + retry "^0.12.0" p-timeout@^3.2.0: version "3.2.0" @@ -19465,11 +19876,11 @@ packet-reader@1.0.0: integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== pacote@^11.2.6: - version "11.3.5" - resolved "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" - integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== + version "11.2.6" + resolved "https://registry.npmjs.org/pacote/-/pacote-11.2.6.tgz#c0426e5d5c8d33aeea3461a75e1390f1ba78f953" + integrity sha512-xCl++Hb3aBC7LaWMimbO4xUqZVsEbKDVc6KKDIIyAeBYrmMwY1yJC2nES/lsGd8sdQLUosgBxQyuVNncZ2Ru0w== dependencies: - "@npmcli/git" "^2.1.0" + "@npmcli/git" "^2.0.1" "@npmcli/installed-package-contents" "^1.0.6" "@npmcli/promise-spawn" "^1.2.0" "@npmcli/run-script" "^1.8.2" @@ -19482,7 +19893,7 @@ pacote@^11.2.6: npm-package-arg "^8.0.1" npm-packlist "^2.1.4" npm-pick-manifest "^6.0.0" - npm-registry-fetch "^11.0.0" + npm-registry-fetch "^9.0.0" promise-retry "^2.0.1" read-package-json-fast "^2.0.1" rimraf "^3.0.2" @@ -19539,13 +19950,14 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.6" - resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" - integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== +parse-asn1@^5.0.0: + version "5.1.5" + resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" + integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== dependencies: - asn1.js "^5.2.0" + asn1.js "^4.0.0" browserify-aes "^1.0.0" + create-hash "^1.1.0" evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" safe-buffer "^5.1.1" @@ -19569,13 +19981,13 @@ parse-bmfont-xml@^1.1.4: xml2js "^0.4.5" parse-conflict-json@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz#3d05bc8ffe07d39600dc6436c6aefe382033d323" - integrity sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA== + version "2.0.1" + resolved "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-2.0.1.tgz#76647dd072e6068bcaff20be6ccea68a18e1fb58" + integrity sha512-Y7nYw+QaSGBto1LB9lgwOR05Rtz5SbuTf+Oe7HJ6SYQ/DHsvRjQ8O03oWdJbvkt6GzDWospgyZbGmjDYL0sDgA== dependencies: json-parse-even-better-errors "^2.3.1" just-diff "^5.0.1" - just-diff-apply "^5.2.0" + just-diff-apply "^4.0.1" parse-entities@^2.0.0: version "2.0.0" @@ -19589,6 +20001,18 @@ parse-entities@^2.0.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" +parse-entities@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-3.0.0.tgz#9ed6d6569b6cfc95ade058d683ddef239dad60dc" + integrity sha512-AJlcIFDNPEP33KyJLguv0xJc83BNvjxwpuUIcetyXUsLpVXAUCePJ5kIoYtEN2R1ac0cYaRu/vk9dVFkewHQhQ== + dependencies: + character-entities "^2.0.0" + character-entities-legacy "^2.0.0" + character-reference-invalid "^2.0.0" + is-alphanumerical "^2.0.0" + is-decimal "^2.0.0" + is-hexadecimal "^2.0.0" + parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" @@ -19599,9 +20023,9 @@ parse-filepath@^1.0.2: path-root "^0.1.1" parse-headers@^2.0.0: - version "2.0.5" - resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9" - integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA== + version "2.0.4" + resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.4.tgz#9eaf2d02bed2d1eff494331ce3df36d7924760bf" + integrity sha512-psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw== parse-json@^2.2.0: version "2.2.0" @@ -19618,7 +20042,17 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0, parse-json@^5.2.0: +parse-json@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" + integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + lines-and-columns "^1.1.6" + +parse-json@^5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -19634,22 +20068,20 @@ parse-package-name@^0.1.0: integrity sha1-P0Tdg4/rTCvkvzGLrkR313BrreQ= parse-path@^4.0.0: - version "4.0.3" - resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" - integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== + version "4.0.1" + resolved "https://registry.npmjs.org/parse-path/-/parse-path-4.0.1.tgz#0ec769704949778cb3b8eda5e994c32073a1adff" + integrity sha512-d7yhga0Oc+PwNXDvQ0Jv1BuWkLVPXcAoQ/WREgd6vNNoKYaW52KI+RdOFjI63wjkmps9yUE8VS4veP+AgpQ/hA== dependencies: is-ssh "^1.3.0" protocols "^1.4.0" - qs "^6.9.4" - query-string "^6.13.8" -parse-url@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d" - integrity sha512-cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw== +parse-url@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/parse-url/-/parse-url-5.0.1.tgz#99c4084fc11be14141efa41b3d117a96fcb9527f" + integrity sha512-flNUPP27r3vJpROi0/R3/2efgKkyXqnXwyP1KQ2U0SfFRgdizOdWfvrrvJg1LuOoxs7GQhmxJlq23IpQ/BkByg== dependencies: is-ssh "^1.3.0" - normalize-url "^6.1.0" + normalize-url "^3.3.0" parse-path "^4.0.0" protocols "^1.4.0" @@ -19724,9 +20156,9 @@ passport-microsoft@^1.0.0: pkginfo "0.4.x" passport-oauth1@1.x.x: - version "1.2.0" - resolved "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.2.0.tgz#5229d431781bf5b265bec86ce9a9cce58a756cf9" - integrity sha512-Sv2YWodC6jN12M/OXwmR4BIXeeIHjjbwYTQw4kS6tHK4zYzSEpxBgSJJnknBjICA5cj0ju3FSnG1XmHgIhYnLg== + version "1.1.0" + resolved "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.1.0.tgz#a7de988a211f9cf4687377130ea74df32730c918" + integrity sha1-p96YiiEfnPRoc3cTDqdN8ycwyRg= dependencies: oauth "0.9.x" passport-strategy "1.x.x" @@ -19846,6 +20278,11 @@ path-is-inside@1.0.2, path-is-inside@^1.0.2: resolved "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -19896,9 +20333,9 @@ path-to-regexp@^1.7.0: isarray "0.0.1" path-to-regexp@^6.2.0: - version "6.2.1" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5" - integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw== + version "6.2.0" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" + integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== path-type@^1.0.0: version "1.1.0" @@ -19934,9 +20371,9 @@ pause@0.0.1: integrity sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10= pbkdf2@^3.0.3: - version "3.1.2" - resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" - integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== + version "3.0.17" + resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" + integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== dependencies: create-hash "^1.1.2" create-hmac "^1.1.4" @@ -19944,10 +20381,10 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" -peek-readable@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz#4ece1111bf5c2ad8867c314c81356847e8a62e72" - integrity sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg== +peek-readable@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz#9a045f291db254111c3412c1ce4fec27ddd4d202" + integrity sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ== pend@~1.2.0: version "1.2.0" @@ -20004,11 +20441,11 @@ pg@^8.3.0, pg@^8.4.0: pgpass "1.x" pgpass@1.x: - version "1.0.5" - resolved "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d" - integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug== + version "1.0.2" + resolved "https://registry.npmjs.org/pgpass/-/pgpass-1.0.2.tgz#2a7bb41b6065b67907e91da1b07c1847c877b306" + integrity sha1-Knu0G2BltnkH6R2hsHwYR8h3swY= dependencies: - split2 "^4.1.0" + split "^1.0.0" pgtools@^0.3.0: version "0.3.2" @@ -20104,7 +20541,14 @@ pino@^5.12.2: quick-format-unescaped "^3.0.3" sonic-boom "^0.7.5" -pirates@^4.0.0, pirates@^4.0.1, pirates@^4.0.4: +pirates@^4.0.0, pirates@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== + dependencies: + node-modules-regexp "^1.0.0" + +pirates@^4.0.4: version "4.0.5" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== @@ -20167,107 +20611,109 @@ posix-character-classes@^0.1.0: resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= -postcss-calc@^8.2.3: - version "8.2.4" - resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" - integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== +postcss-calc@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.0.0.tgz#a05b87aacd132740a5db09462a3612453e5df90a" + integrity sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g== dependencies: - postcss-selector-parser "^6.0.9" - postcss-value-parser "^4.2.0" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.0.2" -postcss-colormin@^5.3.0: - version "5.3.0" - resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" - integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== +postcss-colormin@^5.2.1: + version "5.2.1" + resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.2.1.tgz#6e444a806fd3c578827dbad022762df19334414d" + integrity sha512-VVwMrEYLcHYePUYV99Ymuoi7WhKrMGy/V9/kTS0DkCoJYmmjdOMneyhzYUxcNgteKDVbrewOkSM7Wje/MFwxzA== dependencies: browserslist "^4.16.6" caniuse-api "^3.0.0" colord "^2.9.1" - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-convert-values@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.0.tgz#f8d3abe40b4ce4b1470702a0706343eac17e7c10" - integrity sha512-GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g== +postcss-convert-values@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.0.2.tgz#879b849dc3677c7d6bc94b6a2c1a3f0808798059" + integrity sha512-KQ04E2yadmfa1LqXm7UIDwW1ftxU/QWZmz6NKnHnUvJ3LEYbbcX6i329f/ig+WnEByHegulocXrECaZGLpL8Zg== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-discard-comments@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.1.tgz#e90019e1a0e5b99de05f63516ce640bd0df3d369" - integrity sha512-5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ== +postcss-discard-comments@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz#9eae4b747cf760d31f2447c27f0619d5718901fe" + integrity sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg== -postcss-discard-duplicates@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" - integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== +postcss-discard-duplicates@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz#68f7cc6458fe6bab2e46c9f55ae52869f680e66d" + integrity sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA== -postcss-discard-empty@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" - integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== +postcss-discard-empty@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz#ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8" + integrity sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw== -postcss-discard-overridden@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" - integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== +postcss-discard-overridden@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz#454b41f707300b98109a75005ca4ab0ff2743ac6" + integrity sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q== postcss-load-config@^3.0.0: - version "3.1.4" - resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" - integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== + version "3.0.1" + resolved "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.0.1.tgz#d214bf9cfec1608ffaf0f4161b3ba20664ab64b9" + integrity sha512-/pDHe30UYZUD11IeG8GWx9lNtu1ToyTsZHnyy45B4Mrwr/Kb6NgYl7k753+05CJNKnjbwh4975amoPJ+TEjHNQ== dependencies: - lilconfig "^2.0.5" - yaml "^1.10.2" + cosmiconfig "^7.0.0" + import-cwd "^3.0.0" -postcss-merge-longhand@^5.1.4: - version "5.1.4" - resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.4.tgz#0f46f8753989a33260efc47de9a0cdc571f2ec5c" - integrity sha512-hbqRRqYfmXoGpzYKeW0/NCZhvNyQIlQeWVSao5iKWdyx7skLvCfQFGIUsP9NUs3dSbPac2IC4Go85/zG+7MlmA== +postcss-merge-longhand@^5.0.4: + version "5.0.4" + resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.0.4.tgz#41f4f3270282ea1a145ece078b7679f0cef21c32" + integrity sha512-2lZrOVD+d81aoYkZDpWu6+3dTAAGkCKbV5DoRhnIR7KOULVrI/R7bcMjhrH9KTRy6iiHKqmtG+n/MMj1WmqHFw== dependencies: - postcss-value-parser "^4.2.0" - stylehacks "^5.1.0" + postcss-value-parser "^4.1.0" + stylehacks "^5.0.1" -postcss-merge-rules@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.1.tgz#d327b221cd07540bcc8d9ff84446d8b404d00162" - integrity sha512-8wv8q2cXjEuCcgpIB1Xx1pIy8/rhMPIQqYKNzEdyx37m6gpq83mQQdCxgIkFgliyEnKvdwJf/C61vN4tQDq4Ww== +postcss-merge-rules@^5.0.3: + version "5.0.3" + resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.0.3.tgz#b5cae31f53129812a77e3eb1eeee448f8cf1a1db" + integrity sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg== dependencies: browserslist "^4.16.6" caniuse-api "^3.0.0" - cssnano-utils "^3.1.0" + cssnano-utils "^2.0.1" postcss-selector-parser "^6.0.5" -postcss-minify-font-values@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" - integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== +postcss-minify-font-values@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz#a90cefbfdaa075bd3dbaa1b33588bb4dc268addf" + integrity sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-minify-gradients@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" - integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== +postcss-minify-gradients@^5.0.3: + version "5.0.3" + resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.0.3.tgz#f970a11cc71e08e9095e78ec3a6b34b91c19550e" + integrity sha512-Z91Ol22nB6XJW+5oe31+YxRsYooxOdFKcbOqY/V8Fxse1Y3vqlNRpi1cxCqoACZTQEhl+xvt4hsbWiV5R+XI9Q== dependencies: colord "^2.9.1" - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-minify-params@^5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.2.tgz#77e250780c64198289c954884ebe3ee4481c3b1c" - integrity sha512-aEP+p71S/urY48HWaRHasyx4WHQJyOYaKpQ6eXl8k0kxg66Wt/30VR6/woh8THgcpRbonJD5IeD+CzNhPi1L8g== +postcss-minify-params@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.0.2.tgz#1b644da903473fbbb18fbe07b8e239883684b85c" + integrity sha512-qJAPuBzxO1yhLad7h2Dzk/F7n1vPyfHfCCh5grjGfjhi1ttCnq4ZXGIW77GSrEbh9Hus9Lc/e/+tB4vh3/GpDg== dependencies: + alphanum-sort "^1.0.2" browserslist "^4.16.6" - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-minify-selectors@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.0.tgz#17c2be233e12b28ffa8a421a02fc8b839825536c" - integrity sha512-vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA== +postcss-minify-selectors@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz#4385c845d3979ff160291774523ffa54eafd5a54" + integrity sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og== dependencies: + alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" postcss-modules-extract-imports@^3.0.0: @@ -20299,11 +20745,11 @@ postcss-modules-values@^4.0.0: icss-utils "^5.0.0" postcss-modules@^4.0.0: - version "4.3.1" - resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.3.1.tgz#517c06c09eab07d133ae0effca2c510abba18048" - integrity sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q== + version "4.0.0" + resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.0.0.tgz#2bc7f276ab88f3f1b0fadf6cbd7772d43b5f3b9b" + integrity sha512-ghS/ovDzDqARm4Zj6L2ntadjyQMoyJmi0JkLlYtH2QFLrvNlxH5OAVRPWPeKilB0pY7SbuhO173KOWkPAxRJcw== dependencies: - generic-names "^4.0.0" + generic-names "^2.0.1" icss-replace-symbols "^1.1.0" lodash.camelcase "^4.3.0" postcss-modules-extract-imports "^3.0.0" @@ -20312,113 +20758,129 @@ postcss-modules@^4.0.0: postcss-modules-values "^4.0.0" string-hash "^1.1.1" -postcss-normalize-charset@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" - integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== +postcss-normalize-charset@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz#121559d1bebc55ac8d24af37f67bd4da9efd91d0" + integrity sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg== -postcss-normalize-display-values@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" - integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== +postcss-normalize-display-values@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz#62650b965981a955dffee83363453db82f6ad1fd" + integrity sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ== dependencies: - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-normalize-positions@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.0.tgz#902a7cb97cf0b9e8b1b654d4a43d451e48966458" - integrity sha512-8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ== +postcss-normalize-positions@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz#868f6af1795fdfa86fbbe960dceb47e5f9492fe5" + integrity sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-normalize-repeat-style@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.0.tgz#f6d6fd5a54f51a741cc84a37f7459e60ef7a6398" - integrity sha512-IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw== +postcss-normalize-repeat-style@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz#cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5" + integrity sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w== dependencies: - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-normalize-string@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" - integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== +postcss-normalize-string@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz#d9eafaa4df78c7a3b973ae346ef0e47c554985b0" + integrity sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-normalize-timing-functions@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" - integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== +postcss-normalize-timing-functions@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz#8ee41103b9130429c6cbba736932b75c5e2cb08c" + integrity sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q== dependencies: - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-normalize-unicode@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz#3d23aede35e160089a285e27bf715de11dc9db75" - integrity sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ== +postcss-normalize-unicode@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz#82d672d648a411814aa5bf3ae565379ccd9f5e37" + integrity sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA== dependencies: - browserslist "^4.16.6" - postcss-value-parser "^4.2.0" + browserslist "^4.16.0" + postcss-value-parser "^4.1.0" -postcss-normalize-url@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" - integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== +postcss-normalize-url@^5.0.3: + version "5.0.3" + resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.0.3.tgz#42eca6ede57fe69075fab0f88ac8e48916ef931c" + integrity sha512-qWiUMbvkRx3kc1Dp5opzUwc7MBWZcSDK2yofCmdvFBCpx+zFPkxBC1FASQ59Pt+flYfj/nTZSkmF56+XG5elSg== dependencies: + is-absolute-url "^3.0.3" normalize-url "^6.0.1" - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-normalize-whitespace@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" - integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== +postcss-normalize-whitespace@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz#b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a" + integrity sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" -postcss-ordered-values@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.1.tgz#0b41b610ba02906a3341e92cab01ff8ebc598adb" - integrity sha512-7lxgXF0NaoMIgyihL/2boNAEZKiW0+HkMhdKMTD93CjW8TdCy2hSdj8lsAo+uwm7EDG16Da2Jdmtqpedl0cMfw== +postcss-ordered-values@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz#1f351426977be00e0f765b3164ad753dac8ed044" + integrity sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ== dependencies: - cssnano-utils "^3.1.0" - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-reduce-initial@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz#fc31659ea6e85c492fb2a7b545370c215822c5d6" - integrity sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw== +postcss-reduce-initial@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.0.1.tgz#9d6369865b0f6f6f6b165a0ef5dc1a4856c7e946" + integrity sha512-zlCZPKLLTMAqA3ZWH57HlbCjkD55LX9dsRyxlls+wfuRfqCi5mSlZVan0heX5cHr154Dq9AfbH70LyhrSAezJw== dependencies: - browserslist "^4.16.6" + browserslist "^4.16.0" caniuse-api "^3.0.0" -postcss-reduce-transforms@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" - integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== +postcss-reduce-transforms@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz#93c12f6a159474aa711d5269923e2383cedcf640" + integrity sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA== dependencies: - postcss-value-parser "^4.2.0" + cssnano-utils "^2.0.1" + postcss-value-parser "^4.1.0" -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: - version "6.0.10" - resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" - integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: + version "6.0.4" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + +postcss-selector-parser@^6.0.5: + version "6.0.6" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea" + integrity sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-svgo@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" - integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== +postcss-svgo@^5.0.3: + version "5.0.3" + resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.0.3.tgz#d945185756e5dfaae07f9edb0d3cae7ff79f9b30" + integrity sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA== dependencies: - postcss-value-parser "^4.2.0" + postcss-value-parser "^4.1.0" svgo "^2.7.0" -postcss-unique-selectors@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" - integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== +postcss-unique-selectors@^5.0.2: + version "5.0.2" + resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.0.2.tgz#5d6893daf534ae52626708e0d62250890108c0c1" + integrity sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA== dependencies: + alphanum-sort "^1.0.2" postcss-selector-parser "^6.0.5" postcss-value-parser@^3.3.0: @@ -20426,7 +20888,7 @@ postcss-value-parser@^3.3.0: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: +postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== @@ -20451,9 +20913,9 @@ postgres-bytea@~1.0.0: integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU= postgres-date@~1.0.4: - version "1.0.7" - resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8" - integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q== + version "1.0.5" + resolved "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.5.tgz#710b27de5f27d550f6e80b5d34f7ba189213c2ee" + integrity sha512-pdau6GRPERdAYUQwkBnGKxEfPyhVZXG/JiS44iZWiNdSOWE09N2lUgN6yshuq6fVSon4Pm0VMXd1srUUkLe9iA== postgres-interval@^1.1.0: version "1.2.0" @@ -20462,10 +20924,17 @@ postgres-interval@^1.1.0: dependencies: xtend "^4.0.0" +<<<<<<< HEAD prebuild-install@^7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.0.tgz#991b6ac16c81591ba40a6d5de93fb33673ac1370" integrity sha512-CNcMgI1xBypOyGqjp3wOc8AAo1nMhZS3Cwd3iHIxOdAUbb+YxdNuM4Z5iIrZ8RLvOsf3F3bl7b7xGq6DjQoNYA== +======= +prebuild-install@^7.0.0: + version "7.0.1" + resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.0.1.tgz#c10075727c318efe72412f333e0ef625beaf3870" + integrity sha512-QBSab31WqkyxpnMWQxubYAHR5S9B2+r81ucocew34Fkl98FhvKIF50jIJnNOBmAZfyNV7vE5T6gd3hTVWgY6tg== +>>>>>>> Fix some typos and other requested changes dependencies: detect-libc "^2.0.0" expand-template "^2.0.3" @@ -20544,7 +21013,7 @@ pretty-format@^26.0.0, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" -pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: +pretty-format@^27.0.0, pretty-format@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== @@ -20553,16 +21022,31 @@ pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: ansi-styles "^5.0.0" react-is "^17.0.1" -prismjs@^1.27.0: - version "1.28.0" - resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.28.0.tgz#0d8f561fa0f7cf6ebca901747828b149147044b6" - integrity sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw== +pretty-format@^27.0.2: + version "27.3.1" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5" + integrity sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA== + dependencies: + "@jest/types" "^27.2.5" + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" -prismjs@~1.27.0: +printj@~1.1.0: + version "1.1.2" + resolved "https://registry.npmjs.org/printj/-/printj-1.1.2.tgz#d90deb2975a8b9f600fb3a1c94e3f4c53c78a222" + integrity sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ== + +prismjs@^1.27.0, prismjs@~1.27.0: version "1.27.0" resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== +private@^0.1.8: + version "0.1.8" + resolved "https://registry.npmjs.org/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== + proc-log@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/proc-log/-/proc-log-1.0.0.tgz#0d927307401f69ed79341e83a0b2c9a13395eb77" @@ -20657,9 +21141,9 @@ properties-reader@^2.2.0: mkdirp "^1.0.4" property-expr@^2.0.4: - version "2.0.5" - resolved "https://registry.npmjs.org/property-expr/-/property-expr-2.0.5.tgz#278bdb15308ae16af3e3b9640024524f4dc02cb4" - integrity sha512-IJUkICM5dP5znhCckHSv30Q4b5/JA5enCtkRHYaOVOAocnH/1BQEYTC5NMfT3AVl/iXKdr3aqQbQn9DxyWknwA== + version "2.0.4" + resolved "https://registry.npmjs.org/property-expr/-/property-expr-2.0.4.tgz#37b925478e58965031bb612ec5b3260f8241e910" + integrity sha512-sFPkHQjVKheDNnPvotjQmm3KD3uk1fWKUN7CrpdbwmUx3CrG3QiM8QpTSimvig5vTXmTvjz7+TDvXOI9+4rkcg== property-information@^5.0.0: version "5.6.0" @@ -20669,19 +21153,19 @@ property-information@^5.0.0: xtend "^4.0.0" property-information@^6.0.0: - version "6.1.1" - resolved "https://registry.npmjs.org/property-information/-/property-information-6.1.1.tgz#5ca85510a3019726cb9afed4197b7b8ac5926a22" - integrity sha512-hrzC564QIl0r0vy4l6MvRLhafmUowhO/O3KgVSoXIbbA2Sz4j8HGpJc6T2cubRVwMwpdiG/vKGfhT4IixmKN9w== + version "6.0.1" + resolved "https://registry.npmjs.org/property-information/-/property-information-6.0.1.tgz#7c668d9f2b9cb63bc3e105d8b8dfee7221a17800" + integrity sha512-F4WUUAF7fMeF4/JUFHNBWDaKDXi2jbvqBW/y6o5wsf3j19wTZ7S60TmtB5HoBhtgw7NKQRMWuz5vk2PR0CygUg== proto-list@~1.2.1: version "1.2.4" resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= -proto3-json-serializer@^0.1.8: - version "0.1.8" - resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.8.tgz#f80f9afc1efe5ed9a9856bbbd17dc7cabd7ce9a3" - integrity sha512-ACilkB6s1U1gWnl5jtICpnDai4VCxmI9GFxuEaYdxtDG2oVI3sVFIUsvUZcQbJgtPM6p+zqKbjTKQZp6Y4FpQw== +proto3-json-serializer@^0.1.5: + version "0.1.6" + resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.6.tgz#67cf3b8d5f4c8bebfc410698ad3b1ed64da39c7b" + integrity sha512-tGbV6m6Kad8NqxMh5hw87euPS0YoZSAOIfvR01zYkQV8Gpx1V/8yU/0gCKCvfCkhAJsjvzzhnnsdQxA1w7PSog== dependencies: protobufjs "^6.11.2" @@ -20705,9 +21189,9 @@ protobufjs@6.11.3, protobufjs@^6.10.0, protobufjs@^6.11.2, protobufjs@^6.8.6: long "^4.0.0" protocols@^1.1.0, protocols@^1.4.0: - version "1.4.8" - resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" - integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== + version "1.4.7" + resolved "https://registry.npmjs.org/protocols/-/protocols-1.4.7.tgz#95f788a4f0e979b291ffefcf5636ad113d037d32" + integrity sha512-Fx65lf9/YDn3hUX08XUc0J8rSux36rEsyiv21ZGUC1mOyeM3lTRpZLcrm8aAolzS4itwVfm7TAPyxC2E5zd6xg== proxy-addr@~2.0.7: version "2.0.7" @@ -20761,6 +21245,11 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" safe-buffer "^5.1.2" +puka@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/puka/-/puka-1.0.1.tgz#a2df782b7eb4cf9564e4c93a5da422de0dfacc02" + integrity sha512-ssjRZxBd7BT3dte1RR3VoeT2cT/ODH8x+h0rUF1rMqB0srHYf48stSDWfiYakTp5UBZMxroZhB2+ExLDHm7W3g== + pump@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -20835,25 +21324,20 @@ qs@6.9.3: resolved "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== -qs@~6.5.2: - version "6.5.3" - resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" - integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== +qs@6.9.7: + version "6.9.7" + resolved "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" + integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== -query-string@^6.13.8: - version "6.14.1" - resolved "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" - integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== - dependencies: - decode-uri-component "^0.2.0" - filter-obj "^1.1.0" - split-on-first "^1.0.0" - strict-uri-encode "^2.0.0" +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== query-string@^7.0.0: - version "7.1.1" - resolved "https://registry.npmjs.org/query-string/-/query-string-7.1.1.tgz#754620669db978625a90f635f12617c271a088e1" - integrity sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w== + version "7.0.0" + resolved "https://registry.npmjs.org/query-string/-/query-string-7.0.0.tgz#aaad2c8d5c6a6d0c6afada877fecbd56af79e609" + integrity sha512-Iy7moLybliR5ZgrK/1R3vjrXq03S13Vz4Rbm5Jg3EFq1LUmQppto0qtXz4vqZ386MSRjZgnTSZ9QC+NZOSd/XA== dependencies: decode-uri-component "^0.2.0" filter-obj "^1.1.0" @@ -20875,11 +21359,6 @@ querystringify@^2.1.1: resolved "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== -queue-microtask@^1.2.2: - version "1.2.3" - resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" - integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== - quick-format-unescaped@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-3.0.3.tgz#fb3e468ac64c01d22305806c39f121ddac0d1fb9" @@ -20896,9 +21375,9 @@ quick-lru@^5.1.1: integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== raf-schd@^4.0.2: - version "4.0.3" - resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.3.tgz#5d6c34ef46f8b2a0e880a8fcdb743efc5bfdbc1a" - integrity sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ== + version "4.0.2" + resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.2.tgz#bd44c708188f2e84c810bf55fcea9231bcaed8a0" + integrity sha512-VhlMZmGy6A6hrkJWHLNTGl5gtgMUm+xfGza6wbwnE914yeQ5Ybm18vgM734RZhMgfw4tacUrWseGZlpUrrakEQ== raf@^3.4.0: version "3.4.1" @@ -20950,6 +21429,16 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== +raw-body@2.4.3: + version "2.4.3" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" + integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== + dependencies: + bytes "3.1.2" + http-errors "1.8.1" + iconv-lite "0.4.24" + unpipe "1.0.0" + raw-body@2.5.1, raw-body@^2.4.1: version "2.5.1" resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" @@ -20979,9 +21468,9 @@ rc-progress@3.3.3: rc-util "^5.16.1" rc-util@^5.16.1: - version "5.21.4" - resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz#61e24ad297f679ca0796b618a3ef30eca959d904" - integrity sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw== + version "5.16.1" + resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.16.1.tgz#374db7cb735512f05165ddc3d6b2c61c21b8b4e3" + integrity sha512-kSCyytvdb3aRxQacS/71ta6c+kBWvM1v8/2h9d/HaNWauc3qB8pLnF20PJ8NajkNN8gb+rR1l0eWO+D4Pz+LLQ== dependencies: "@babel/runtime" "^7.12.5" react-is "^16.12.0" @@ -20998,15 +21487,15 @@ rc@^1.2.7, rc@^1.2.8: strip-json-comments "~2.0.1" react-beautiful-dnd@^13.0.0: - version "13.1.0" - resolved "https://registry.npmjs.org/react-beautiful-dnd/-/react-beautiful-dnd-13.1.0.tgz#ec97c81093593526454b0de69852ae433783844d" - integrity sha512-aGvblPZTJowOWUNiwd6tNfEpgkX5OxmpqxHKNW/4VmvZTNTbeiq7bA3bn5T+QSF2uibXB0D1DmJsb1aC/+3cUA== + version "13.0.0" + resolved "https://registry.npmjs.org/react-beautiful-dnd/-/react-beautiful-dnd-13.0.0.tgz#f70cc8ff82b84bc718f8af157c9f95757a6c3b40" + integrity sha512-87It8sN0ineoC3nBW0SbQuTFXM6bUqM62uJGY4BtTf0yzPl8/3+bHMWkgIe0Z6m8e+gJgjWxefGRVfpE3VcdEg== dependencies: - "@babel/runtime" "^7.9.2" + "@babel/runtime" "^7.8.4" css-box-model "^1.2.0" memoize-one "^5.1.1" raf-schd "^4.0.2" - react-redux "^7.2.0" + react-redux "^7.1.1" redux "^4.0.4" use-memo-one "^1.1.1" @@ -21071,9 +21560,9 @@ react-double-scrollbar@0.0.15: integrity sha1-6RWrjLO5WYdwdfSUNt6/2wQoj+Q= react-error-boundary@^3.1.0: - version "3.1.4" - resolved "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0" - integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA== + version "3.1.3" + resolved "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.3.tgz#276bfa05de8ac17b863587c9e0647522c25e2a0b" + integrity sha512-A+F9HHy9fvt9t8SNDlonq01prnU8AmkjvGKV4kk8seB9kU3xMEO8J/PQlLVmoOIDODl5U2kufSBs4vrWIqhsAA== dependencies: "@babel/runtime" "^7.12.5" @@ -21155,15 +21644,15 @@ react-is@^16.10.2, react-is@^16.12.0, react-is@^16.13.1, react-is@^16.7.0, react resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -"react-is@^16.8.0 || ^17.0.0", react-is@^17.0.1, react-is@^17.0.2: +"react-is@^16.8.0 || ^17.0.0", react-is@^17.0.1: version "17.0.2" resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== react-is@^18.0.0: - version "18.1.0" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.1.0.tgz#61aaed3096d30eacf2a2127118b5b41387d32a67" - integrity sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg== + version "18.0.0" + resolved "https://registry.npmjs.org/react-is/-/react-is-18.0.0.tgz#026f6c4a27dbe33bf4a35655b9e1327c4e55e3f5" + integrity sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw== react-lifecycles-compat@^3.0.4: version "3.0.4" @@ -21200,17 +21689,17 @@ react-query@^3.34.16: broadcast-channel "^3.4.1" match-sorter "^6.0.2" -react-redux@^7.2.0, react-redux@^7.2.4: - version "7.2.8" - resolved "https://registry.npmjs.org/react-redux/-/react-redux-7.2.8.tgz#a894068315e65de5b1b68899f9c6ee0923dd28de" - integrity sha512-6+uDjhs3PSIclqoCk0kd6iX74gzrGc3W5zcAjbrFgEdIjRSQObdIwfx80unTkVUYvbQ95Y8Av3OvFHq1w5EOUw== +react-redux@^7.1.1, react-redux@^7.2.4: + version "7.2.5" + resolved "https://registry.npmjs.org/react-redux/-/react-redux-7.2.5.tgz#213c1b05aa1187d9c940ddfc0b29450957f6a3b8" + integrity sha512-Dt29bNyBsbQaysp6s/dN0gUodcq+dVKKER8Qv82UrpeygwYeX1raTtil7O/fftw/rFqzaf6gJhDZRkkZnn6bjg== dependencies: - "@babel/runtime" "^7.15.4" - "@types/react-redux" "^7.1.20" + "@babel/runtime" "^7.12.1" + "@types/react-redux" "^7.1.16" hoist-non-react-statics "^3.3.2" loose-envify "^1.4.0" prop-types "^15.7.2" - react-is "^17.0.2" + react-is "^16.13.1" react-resize-detector@^2.3.0: version "2.3.0" @@ -21247,21 +21736,21 @@ react-router@6.0.0-beta.0: prop-types "^15.7.2" react-router@^6.0.0-beta.0: - version "6.3.0" - resolved "https://registry.npmjs.org/react-router/-/react-router-6.3.0.tgz#3970cc64b4cb4eae0c1ea5203a80334fdd175557" - integrity sha512-7Wh1DzVQ+tlFjkeo+ujvjSqSJmkt1+8JO+T5xklPlgrh70y7ogx75ODRW0ThWhY7S+6yEDks8TYrtQe/aoboBQ== + version "6.2.1" + resolved "https://registry.npmjs.org/react-router/-/react-router-6.2.1.tgz#be2a97a6006ce1d9123c28934e604faef51448a3" + integrity sha512-2fG0udBtxou9lXtK97eJeET2ki5//UWfQSl1rlJ7quwe6jrktK9FCCc8dQb5QY6jAv3jua8bBQRhhDOM/kVRsg== dependencies: history "^5.2.0" react-side-effect@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.1.tgz#66c5701c3e7560ab4822a4ee2742dee215d72eb3" - integrity sha512-2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ== + version "2.1.0" + resolved "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.0.tgz#1ce4a8b4445168c487ed24dab886421f74d380d3" + integrity sha512-IgmcegOSi5SNX+2Snh1vqmF0Vg/CbkycU9XZbOHJlZ6kMzTmi3yc254oB1WCkgA7OQtIAoLmcSFuHTc/tlcqXg== react-smooth@^1.0.5: - version "1.0.6" - resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.6.tgz#18b964f123f7bca099e078324338cd8739346d0a" - integrity sha512-B2vL4trGpNSMSOzFiAul9kFAsxTukL9Wyy9EXtkQy3GJr6sZqW9e1nShdVOJ3hRYamPZ94O17r3Q0bjSw3UYtg== + version "1.0.5" + resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.5.tgz#94ae161d7951cdd893ccb7099d031d342cb762ad" + integrity sha512-eW057HT0lFgCKh8ilr0y2JaH2YbNcuEdFpxyg7Gf/qDKk9hqGMyXryZJ8iMGJEuKH0+wxS0ccSsBBB3W8yCn8w== dependencies: lodash "~4.17.4" prop-types "^15.6.0" @@ -21323,9 +21812,9 @@ react-transition-group@2.9.0, react-transition-group@^2.5.0: react-lifecycles-compat "^3.0.4" react-transition-group@^4.0.0, react-transition-group@^4.4.0: - version "4.4.2" - resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470" - integrity sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg== + version "4.4.1" + resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.1.tgz#63868f9325a38ea5ee9535d828327f85773345c9" + integrity sha512-Djqr7OQ2aPUiYurhPalTrVy9ddmFCCzwhqQmtN+J3+3DzLO209Fdr70QrN8Z3DsglWql6iY1lDWAfpFiBtuKGw== dependencies: "@babel/runtime" "^7.5.5" dom-helpers "^5.0.1" @@ -21383,12 +21872,7 @@ read-cmd-shim@^2.0.0: resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== -read-cmd-shim@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz#62b8c638225c61e6cc607f8f4b779f3b8238f155" - integrity sha512-KQDVjGqhZk92PPNRj9ZEXEuqg8bUobSKRw+q0YQ3TKI5xkce7bUJobL4Z/OtiEbAAv70yEpYIXp4iQ9L8oPVog== - -read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: +read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2: version "2.0.3" resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== @@ -21397,29 +21881,21 @@ read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json- npm-normalize-package-bin "^1.0.1" read-package-json@^2.0.0: - version "2.1.2" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" - integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== + version "2.1.1" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz#16aa66c59e7d4dad6288f179dd9295fd59bb98f1" + integrity sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A== dependencies: glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" + json-parse-better-errors "^1.0.1" normalize-package-data "^2.0.0" npm-normalize-package-bin "^1.0.0" + optionalDependencies: + graceful-fs "^4.1.2" read-package-json@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" - integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-json@^4.1.1: - version "4.1.2" - resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-4.1.2.tgz#b444d047de7c75d4a160cb056d00c0693c1df703" - integrity sha512-Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ== + version "3.0.0" + resolved "https://registry.npmjs.org/read-package-json/-/read-package-json-3.0.0.tgz#2219328e77c9be34f035a4ce58d1fb8e2979adf9" + integrity sha512-4TnJZ5fnDs+/3deg1AuMExL4R1SFNRLQeOhV9c8oDKm3eoG6u8xU0r0mNNRJHi3K6B+jXmT7JOhwhAklWw9SSQ== dependencies: glob "^7.1.1" json-parse-even-better-errors "^2.3.0" @@ -21559,9 +22035,9 @@ readdirp@~3.6.0: picomatch "^2.2.1" recast@^0.20.3, recast@^0.20.4: - version "0.20.5" - resolved "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz#8e2c6c96827a1b339c634dd232957d230553ceae" - integrity sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ== + version "0.20.4" + resolved "https://registry.npmjs.org/recast/-/recast-0.20.4.tgz#db55983eac70c46b3fff96c8e467d65ffb4a7abc" + integrity sha512-6qLIBGGRcwjrTZGIiBpJVC/NeuXpogXNyRQpqU1zWPUigCphvApoCs9KIwDYh1eDuJ6dAFlQoi/QUyE5KQ6RBQ== dependencies: ast-types "0.14.2" esprima "~4.0.0" @@ -21683,9 +22159,9 @@ redux-immutable@^4.0.0: integrity sha1-Ohoy32Y2ZGK2NpHw4dw15HK7yfM= redux@^4.0.0, redux@^4.0.4, redux@^4.1.2: - version "4.2.0" - resolved "https://registry.npmjs.org/redux/-/redux-4.2.0.tgz#46f10d6e29b6666df758780437651eeb2b969f13" - integrity sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA== + version "4.1.2" + resolved "https://registry.npmjs.org/redux/-/redux-4.1.2.tgz#140f35426d99bb4729af760afcf79eaaac407104" + integrity sha512-SH8PglcebESbd/shgf6mii6EIoRM0zrQyjcuQ+ojmfxjTtE0z9Y8pa62iA/OJ58qjP6j27uyW4kUF4jl/jd6sw== dependencies: "@babel/runtime" "^7.9.2" @@ -21703,17 +22179,17 @@ refractor@^3.6.0: parse-entities "^2.0.0" prismjs "~1.27.0" -regenerate-unicode-properties@^9.0.0: - version "9.0.0" - resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326" - integrity sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA== +regenerate-unicode-properties@^8.2.0: + version "8.2.0" + resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" + integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== dependencies: - regenerate "^1.4.2" + regenerate "^1.4.0" -regenerate@^1.4.2: - version "1.4.2" - resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" - integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== +regenerate@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== regenerator-runtime@^0.10.5: version "0.10.5" @@ -21731,11 +22207,12 @@ regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== + version "0.14.4" + resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" + integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== dependencies: "@babel/runtime" "^7.8.4" + private "^0.1.8" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" @@ -21745,6 +22222,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +<<<<<<< HEAD <<<<<<< HEAD regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: ======= @@ -21753,10 +22231,15 @@ regexp.prototype.flags@^1.4.1: version "1.4.3" resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== +======= +regexp.prototype.flags@^1.3.1: + version "1.4.1" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" + integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== +>>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" define-properties "^1.1.3" - functions-have-names "^1.2.2" regexpp@^3.2.0: version "3.2.0" @@ -21764,21 +22247,21 @@ regexpp@^3.2.0: integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== regexpu-core@^4.7.1: - version "4.8.0" - resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0" - integrity sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg== + version "4.7.1" + resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" + integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== dependencies: - regenerate "^1.4.2" - regenerate-unicode-properties "^9.0.0" - regjsgen "^0.5.2" - regjsparser "^0.7.0" - unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.0.0" + regenerate "^1.4.0" + regenerate-unicode-properties "^8.2.0" + regjsgen "^0.5.1" + regjsparser "^0.6.4" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.2.0" registry-auth-token@^4.0.0: - version "4.2.1" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" - integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + version "4.1.1" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz#40a33be1e82539460f94328b0f7f0f84c16d9479" + integrity sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA== dependencies: rc "^1.2.8" @@ -21789,15 +22272,15 @@ registry-url@^5.0.0: dependencies: rc "^1.2.8" -regjsgen@^0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== +regjsgen@^0.5.1: + version "0.5.1" + resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz#48f0bf1a5ea205196929c0d9798b42d1ed98443c" + integrity sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg== -regjsparser@^0.7.0: - version "0.7.0" - resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz#a6b667b54c885e18b52554cb4960ef71187e9968" - integrity sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ== +regjsparser@^0.6.4: + version "0.6.4" + resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" + integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== dependencies: jsesc "~0.5.0" @@ -21854,9 +22337,9 @@ remark-gfm@^3.0.1: unified "^10.0.0" remark-parse@^10.0.0: - version "10.0.1" - resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz#6f60ae53edbf0cf38ea223fe643db64d112e0775" - integrity sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw== + version "10.0.0" + resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.0.tgz#65e2b2b34d8581d36b97f12a2926bb2126961cb4" + integrity sha512-07ei47p2Xl7Bqbn9H2VYQYirnAFJPwdMuypdozWsSbnmrkgA2e2sZLZdnDNrrsxR4onmIzH/J6KXqKxCuqHtPQ== dependencies: "@types/mdast" "^3.0.0" mdast-util-from-markdown "^1.0.0" @@ -21912,9 +22395,9 @@ renderkid@^3.0.0: strip-ansi "^6.0.1" repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + version "1.1.3" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" @@ -22009,9 +22492,9 @@ resize-observer-polyfill@^1.5.0, resize-observer-polyfill@^1.5.1: integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== resolve-alpn@^1.0.0: - version "1.2.1" - resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" - integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== + version "1.0.0" + resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c" + integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA== resolve-cwd@^3.0.0: version "3.0.0" @@ -22040,7 +22523,16 @@ resolve.exports@^1.1.0: resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: + version "1.21.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz#b51adc97f3472e6a5cf4444d34bc9d6b9037591f" + integrity sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA== + dependencies: + is-core-module "^2.8.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@^1.22.0: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -22120,7 +22612,7 @@ retry-request@^4.0.0, retry-request@^4.2.2: debug "^4.1.1" extend "^3.0.2" -retry@0.13.1, retry@^0.13.1: +retry@0.13.1: version "0.13.1" resolved "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== @@ -22136,9 +22628,9 @@ reusify@^1.0.4: integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rfc4648@^1.3.0: - version "1.5.1" - resolved "https://registry.npmjs.org/rfc4648/-/rfc4648-1.5.1.tgz#b0b16756e33d9de8c0c7833e94b28e627ec372a4" - integrity sha512-60e/YWs2/D3MV1ErdjhJHcmlgnyLUiG4X/14dgsfm9/zmCWLN16xI6YqJYSCd/OANM7bUNzJqPY5B8/02S9Ibw== + version "1.4.0" + resolved "https://registry.npmjs.org/rfc4648/-/rfc4648-1.4.0.tgz#c75b2856ad2e2d588b6ddb985d556f1f7f2a2abd" + integrity sha512-3qIzGhHlMHA6PoT6+cdPKZ+ZqtxkIvg8DZGKA5z6PQ33/uuhoJ+Ws/D/J9rXW6gXodgH8QYlz2UCl+sdUDmNIg== rfdc@^1.3.0: version "1.3.0" @@ -22255,23 +22747,23 @@ rollup@^2.60.2: fsevents "~2.3.2" rtl-css-js@^1.14.0: - version "1.15.0" - resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.15.0.tgz#680ed816e570a9ebccba9e1cd0f202c6a8bb2dc0" - integrity sha512-99Cu4wNNIhrI10xxUaABHsdDqzalrSRTie4GeCmbGVuehm4oj+fIy8fTzB+16pmKe8Bv9rl+hxIBez6KxExTew== + version "1.14.0" + resolved "https://registry.npmjs.org/rtl-css-js/-/rtl-css-js-1.14.0.tgz#daa4f192a92509e292a0519f4b255e6e3c076b7d" + integrity sha512-Dl5xDTeN3e7scU1cWX8c9b6/Nqz3u/HgR4gePc1kWXYiQWVQbKCEyK6+Hxve9LbcJ5EieHy1J9nJCN3grTtGwg== dependencies: "@babel/runtime" "^7.1.2" run-async@^2.4.0: - version "2.4.1" - resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + version "2.4.0" + resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz#e59054a5b86876cfae07f431d18cbaddc594f1e8" + integrity sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg== + dependencies: + is-promise "^2.1.0" run-parallel@^1.1.9: - version "1.2.0" - resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" - integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== - dependencies: - queue-microtask "^1.2.2" + version "1.1.9" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== run-script-webpack-plugin@^0.0.14: version "0.0.14" @@ -22304,7 +22796,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -22412,9 +22904,9 @@ scoped-regex@^2.0.0: integrity sha512-g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ== screenfull@^5.1.0: - version "5.2.0" - resolved "https://registry.npmjs.org/screenfull/-/screenfull-5.2.0.tgz#6533d524d30621fc1283b9692146f3f13a93d1ba" - integrity sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA== + version "5.1.0" + resolved "https://registry.npmjs.org/screenfull/-/screenfull-5.1.0.tgz#85c13c70f4ead4c1b8a935c70010dfdcd2c0e5c8" + integrity sha512-dYaNuOdzr+kc6J6CFcBrzkLCfyGcMg+gWkJ8us93IQ7y1cevhQAugFsaCdMHb6lw8KV3xPzSxzH7zM1dQap9mA== scuid@^1.1.0: version "1.1.0" @@ -22455,7 +22947,7 @@ semver-store@^0.3.0: resolved "https://registry.npmjs.org/semver-store/-/semver-store-0.3.0.tgz#ce602ff07df37080ec9f4fb40b29576547befbe9" integrity sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -22904,34 +23396,40 @@ socket.io@^2.2.0: sockjs@^0.3.24: ======= sockjs@^0.3.21: +<<<<<<< HEAD >>>>>>> First implementation of vault-plugin version "0.3.24" resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== +======= + version "0.3.21" + resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417" + integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw== +>>>>>>> Fix some typos and other requested changes dependencies: faye-websocket "^0.11.3" - uuid "^8.3.2" + uuid "^3.4.0" websocket-driver "^0.7.4" socks-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" - integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== + version "5.0.0" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz#7c0f364e7b1cf4a7a437e71253bed72e9004be60" + integrity sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA== dependencies: - agent-base "^6.0.2" + agent-base "6" debug "4" socks "^2.3.3" socks-proxy-agent@^6.0.0, socks-proxy-agent@^6.1.1: - version "6.2.0" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz#f6b5229cc0cbd6f2f202d9695f09d871e951c85e" - integrity sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ== + version "6.1.1" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz#e664e8f1aaf4e1fb3df945f09e3d94f911137f87" + integrity sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew== dependencies: agent-base "^6.0.2" - debug "^4.3.3" - socks "^2.6.2" + debug "^4.3.1" + socks "^2.6.1" -socks@^2.3.3, socks@^2.6.2: +socks@^2.3.3, socks@^2.6.1: version "2.6.2" resolved "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== @@ -22999,9 +23497,9 @@ source-map-support@^0.5.10, source-map-support@^0.5.16, source-map-support@^0.5. source-map "^0.6.0" source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + version "0.4.0" + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= source-map@0.5.6: version "0.5.6" @@ -23018,19 +23516,12 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3: +source-map@^0.7.3, source-map@~0.7.2: version "0.7.3" resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== -source-map@~0.8.0-beta.0: - version "0.8.0-beta.0" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" - integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== - dependencies: - whatwg-url "^7.0.0" - -sourcemap-codec@^1.4.8: +sourcemap-codec@^1.4.4, sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== @@ -23059,30 +23550,30 @@ spawndamnit@^2.0.0: signal-exit "^3.0.2" spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + version "3.1.0" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" + integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + version "2.2.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" + integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + version "3.0.0" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" + integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.11" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" - integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== + version "3.0.5" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== spdy-transport@^3.0.0: version "3.0.0" @@ -23131,11 +23622,6 @@ split2@^3.0.0: dependencies: readable-stream "^3.0.0" -split2@^4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz#101907a24370f85bb782f08adaabe4e281ecf809" - integrity sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ== - split@0.3: version "0.3.3" resolved "https://registry.npmjs.org/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" @@ -23168,9 +23654,9 @@ sprintf-js@~1.0.2: integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sqlstring@^2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" - integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== + version "2.3.2" + resolved "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.2.tgz#cdae7169389a1375b18e885f2e60b3e460809514" + integrity sha512-vF4ZbYdKS8OnoJAWBmMxCQDkiEBkGQYU7UZPtL8flbDRSNkhaXvRJ279ZtI6M+zDaQovVU4tuRgzK5fVhvFAhg== ssh-remote-port-forward@^1.0.4: version "1.0.4" @@ -23181,20 +23667,20 @@ ssh-remote-port-forward@^1.0.4: ssh2 "^1.4.0" ssh2@^1.4.0: - version "1.10.0" - resolved "https://registry.npmjs.org/ssh2/-/ssh2-1.10.0.tgz#e05d870dfc8e83bc918a2ffb3dcbd4d523472dee" - integrity sha512-OnKAAmf4j8wCRrXXZv3Tp5lCZkLJZtgZbn45ELiShCg27djDQ3XFGvIzuGsIsf4hdHslP+VdhA9BhUQdTdfd9w== + version "1.5.0" + resolved "https://registry.npmjs.org/ssh2/-/ssh2-1.5.0.tgz#4dc559ba98a1cbb420e8d42998dfe35d0eda92bc" + integrity sha512-iUmRkhH9KGeszQwDW7YyyqjsMTf4z+0o48Cp4xOwlY5LjtbIAvyd3fwnsoUZW/hXmTCRA3yt7S/Jb9uVjErVlA== dependencies: asn1 "^0.2.4" bcrypt-pbkdf "^1.0.2" optionalDependencies: - cpu-features "~0.0.4" + cpu-features "0.0.2" nan "^2.15.0" sshpk@^1.14.1, sshpk@^1.7.0: - version "1.17.0" - resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" - integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== + version "1.16.1" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -23213,13 +23699,6 @@ ssri@^8.0.0, ssri@^8.0.1: dependencies: minipass "^3.1.1" -ssri@^9.0.0: - version "9.0.0" - resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.0.tgz#70ad90e339eb910f1a7ff1dcf4afc268326c4547" - integrity sha512-Y1Z6J8UYnexKFN1R/hxUaYoY2LVdKEzziPmVAFKiKX8fiwvCJTVzn/xYE9TEWod5OVyNfIHHuVfIEuBClL/uJQ== - dependencies: - minipass "^3.1.1" - stable@^0.1.8: version "0.1.8" resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -23245,9 +23724,9 @@ stack-utils@^2.0.3: escape-string-regexp "^2.0.0" stackframe@^1.1.1: - version "1.2.1" - resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.2.1.tgz#1033a3473ee67f08e2f2fc8eba6aef4f845124e1" - integrity sha512-h88QkzREN/hy8eRdyNhhsO7RSJ5oyTqxxmmn0dzBIMUclZsjpfmrsg81vp8mjjAs2vAZ72nyWxRUwSwmh0e4xg== + version "1.1.1" + resolved "https://registry.npmjs.org/stackframe/-/stackframe-1.1.1.tgz#ffef0a3318b1b60c3b58564989aca5660729ec71" + integrity sha512-0PlYhdKh6AfFxRyK/v+6/k+/mMfyiEBbTM5L94D0ZytQnJ166wuwoTYLHFWGbs2dpA8Rgq763KGWmN1EQEYHRQ== stacktrace-gps@^3.0.4: version "3.0.4" @@ -23297,7 +23776,7 @@ statuses@2.0.1, statuses@^2.0.0: resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -"statuses@>= 1.4.0 < 2": +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2": version "1.5.0" resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -23350,22 +23829,17 @@ stream-shift@^1.0.0: resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -stream-transform@^2.1.3: +stream-transform@^2.0.1: version "2.1.3" resolved "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" integrity sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ== dependencies: mixme "^0.5.1" -streamsearch@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" - integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== - strict-event-emitter@^0.2.0: - version "0.2.4" - resolved "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.4.tgz#365714f0c95f059db31064ca745d5b33e5b30f6e" - integrity sha512-xIqTLS5azUH1djSUsLH9DbP6UnM/nI18vu8d43JigCQEoVsnY+mrlE+qv6kYqs6/1OkMnMIiL6ffedQSZStuoQ== + version "0.2.0" + resolved "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.0.tgz#78e2f75dc6ea502e5d8a877661065a1e2deedecd" + integrity sha512-zv7K2egoKwkQkZGEaH8m+i2D0XiKzx5jNsiSul6ja2IYFvil10A59Z9Y7PPAAe5OW53dQUf9CfsHKzjZzKkm1w== dependencies: events "^3.3.0" @@ -23397,9 +23871,9 @@ string-hash@^1.1.1: integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs= string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + version "4.0.1" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1" + integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw== dependencies: char-regex "^1.0.2" strip-ansi "^6.0.0" @@ -23430,6 +23904,15 @@ string-width@^2.1.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + string-width@^5.0.0: version "5.1.2" resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" @@ -23443,29 +23926,35 @@ string-width@^5.0.0: string.prototype.matchall@^4.0.7: ======= string.prototype.matchall@^4.0.6: +<<<<<<< HEAD >>>>>>> First implementation of vault-plugin version "4.0.7" resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg== +======= + version "4.0.6" + resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" + integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== +>>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" define-properties "^1.1.3" es-abstract "^1.19.1" get-intrinsic "^1.1.1" - has-symbols "^1.0.3" + has-symbols "^1.0.2" internal-slot "^1.0.3" - regexp.prototype.flags "^1.4.1" + regexp.prototype.flags "^1.3.1" side-channel "^1.0.4" -string.prototype.trimend@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" - integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== dependencies: call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.19.5" + define-properties "^1.1.3" +<<<<<<< HEAD <<<<<<< HEAD string.prototype.trimend@^1.0.5: version "1.0.5" @@ -23476,10 +23965,13 @@ string.prototype.trimend@^1.0.5: define-properties "^1.1.4" es-abstract "^1.19.5" +======= +>>>>>>> Fix some typos and other requested changes string.prototype.trimstart@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +<<<<<<< HEAD ======= string.prototype.trimstart@^1.0.5: version "1.0.5" @@ -23495,10 +23987,11 @@ string.prototype.trimstart@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== +======= +>>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.19.5" + define-properties "^1.1.3" string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" @@ -23514,7 +24007,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@5.2.0: +strip-ansi@5.2.0, strip-ansi@^5.1.0: version "5.2.0" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== @@ -23581,6 +24074,11 @@ strip-bom@^4.0.0: resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -23618,12 +24116,12 @@ strong-log-transformer@^2.1.0: through "^2.3.4" strtok3@^6.2.4: - version "6.3.0" - resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz#358b80ffe6d5d5620e19a073aa78ce947a90f9a0" - integrity sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw== + version "6.2.4" + resolved "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz#302aea64c0fa25d12a0385069ba66253fdc38a81" + integrity sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw== dependencies: "@tokenizer/token" "^0.3.0" - peek-readable "^4.1.0" + peek-readable "^4.0.1" stubs@^3.0.0: version "3.0.0" @@ -23652,18 +24150,18 @@ style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" -stylehacks@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz#a40066490ca0caca04e96c6b02153ddc39913520" - integrity sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q== +stylehacks@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb" + integrity sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA== dependencies: - browserslist "^4.16.6" + browserslist "^4.16.0" postcss-selector-parser "^6.0.4" stylis@^4.0.6: - version "4.1.1" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.1.1.tgz#e46c6a9bbf7c58db1e65bb730be157311ae1fe12" - integrity sha512-lVrM/bNdhVX2OgBFNa2YJ9Lxj7kPzylieHd3TNjuGE0Re9JB7joL5VUKOVH1kdNNJTgGPpT8hmwIAPLaSyEVFQ== + version "4.0.7" + resolved "https://registry.npmjs.org/stylis/-/stylis-4.0.7.tgz#412a90c28079417f3d27c028035095e4232d2904" + integrity sha512-OFFeUXFgwnGOKvEXaSv0D0KQ5ADP0n6g3SVONx6I/85JzNZ3u50FRwB3lVIk1QO2HNdI75tbVzc4Z66Gdp9voA== sucrase@^3.18.0, sucrase@^3.20.2: version "3.21.0" @@ -23753,9 +24251,9 @@ supports-color@^8.0.0, supports-color@^8.1.0, supports-color@^8.1.1: has-flag "^4.0.0" supports-hyperlinks@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" - integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== + version "2.1.0" + resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" + integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" @@ -23783,13 +24281,21 @@ svgo@^2.5.0, svgo@^2.7.0: picocolors "^1.0.0" stable "^0.1.8" +<<<<<<< HEAD swagger-client@^3.18.5: version "3.18.5" resolved "https://registry.npmjs.org/swagger-client/-/swagger-client-3.18.5.tgz#8034df561452f4bbd36871a8072394b7ca883106" integrity sha512-c0txGDtfQTJnaIBaEKCwtRNcUaaAfj+RXI4QVV9p3WW+AUCQqp4naCjaDNNsOfMkE4ySyhnblbL+jGqAVC7snw== +======= +swagger-client@^3.18.4: + version "3.18.4" + resolved "https://registry.npmjs.org/swagger-client/-/swagger-client-3.18.4.tgz#71be9df585157a3335a542c407733d2134fa75e9" + integrity sha512-Wj26oEctONq/u0uM+eSj18675YM5e2vFnx7Kr4neLeXEHKUsfceVQ/OdtrBXdrT3VbtdBbZfMTfl1JOBpix2MA== +>>>>>>> Fix some typos and other requested changes dependencies: "@babel/runtime-corejs3" "^7.11.2" - cookie "~0.5.0" + btoa "^1.2.1" + cookie "~0.4.1" cross-fetch "^3.1.5" deepmerge "~4.2.2" fast-json-patch "^3.0.0-1" @@ -23853,7 +24359,7 @@ swr@^1.1.2: resolved "https://registry.npmjs.org/swr/-/swr-1.3.0.tgz#c6531866a35b4db37b38b72c45a63171faf9f4e8" integrity sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw== -symbol-observable@^1.1.0: +symbol-observable@1.2.0, symbol-observable@^1.1.0: version "1.2.0" resolved "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== @@ -24009,9 +24515,9 @@ temp@^0.8.4: rimraf "~2.6.2" term-size@^2.1.0: - version "2.2.1" - resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" - integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== + version "2.2.0" + resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" + integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== terminal-link@^2.0.0: version "2.1.1" @@ -24033,13 +24539,13 @@ terser-webpack-plugin@*, terser-webpack-plugin@^5.1.3: terser "^5.7.2" terser@^5.10.0, terser@^5.7.2: - version "5.13.1" - resolved "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz#66332cdc5a01b04a224c9fad449fc1a18eaa1799" - integrity sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA== + version "5.12.0" + resolved "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz#728c6bff05f7d1dcb687d8eace0644802a9dae8a" + integrity sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A== dependencies: acorn "^8.5.0" commander "^2.20.0" - source-map "~0.8.0-beta.0" + source-map "~0.7.2" source-map-support "~0.5.20" test-exclude@^6.0.0: @@ -24090,9 +24596,9 @@ text-table@0.2.0, text-table@^0.2.0: integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= textextensions@^5.12.0, textextensions@^5.13.0: - version "5.15.0" - resolved "https://registry.npmjs.org/textextensions/-/textextensions-5.15.0.tgz#4bb3296ad6fc111cf4b39c589dd028d8aaaf7060" - integrity sha512-MeqZRHLuaGamUXGuVn2ivtU3LA3mLCCIO5kUGoohTCoGmCBg/+8yPhWVX9WSl9telvVd8erftjFk9Fwb2dD6rw== + version "5.14.0" + resolved "https://registry.npmjs.org/textextensions/-/textextensions-5.14.0.tgz#a6ff6aee5faaa751e6157d422c722a2bfd59eedf" + integrity sha512-4cAYwNFNYlIAHBUo7p6zw8POUvWbZor+/R0Tanv+rIhsauEyV9QSrEXL40pI+GfTQxKX8k6Tyw6CmdSDSmASrg== thenify-all@^1.0.0: version "1.6.0" @@ -24154,9 +24660,9 @@ tildify@2.0.0: integrity sha512-Cc+OraorugtXNfs50hU9KS369rFXCfgGLpfCfvlc+Ud5u6VWmUQsOAa9HbTvheQdYnrdJqqv1e5oIqXppMYnSw== timers-browserify@^2.0.4: - version "2.0.12" - resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" - integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== + version "2.0.11" + resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" + integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ== dependencies: setimmediate "^1.0.4" @@ -24165,15 +24671,20 @@ timm@^1.6.1: resolved "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz#96bab60c7d45b5a10a8a4d0f0117c6b7e5aff76f" integrity sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw== -timsort@~0.3.0: +timsort@^0.3.0, timsort@~0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= tiny-invariant@^1.0.6: - version "1.2.0" - resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.2.0.tgz#a1141f86b672a9148c72e978a19a73b9b94a15a9" - integrity sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg== + version "1.1.0" + resolved "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" + integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== + +tiny-lru@7.0.6: + version "7.0.6" + resolved "https://registry.npmjs.org/tiny-lru/-/tiny-lru-7.0.6.tgz#b0c3cdede1e5882aa2d1ae21cb2ceccf2a331f24" + integrity sha512-zNYO0Kvgn5rXzWpL0y3RS09sMK67eGaQj9805jlK9G6pSadfriTczzLHFXa/xcW4mIRfmlB9HyQ/+SgL0V1uow== tiny-merge-patch@^0.1.2: version "0.1.2" @@ -24198,9 +24709,9 @@ title-case@^3.0.3: tslib "^2.0.3" tmp-promise@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz#60a1a1cc98c988674fcbfd23b6e3367bdeac4ce7" - integrity sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ== + version "3.0.2" + resolved "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.2.tgz#6e933782abff8b00c3119d63589ca1fb9caaa62a" + integrity sha512-OyCLAKU1HzBjL6Ev3gxUeraJNlbNingmi8IrHHEsYH8LTmEuhvYfqvhn2F/je+mjf4N58UmZ96OMEy1JanSCpA== dependencies: tmp "^0.2.0" @@ -24218,7 +24729,7 @@ tmp@^0.2.0, tmp@~0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.5: +tmpl@1.0.x: version "1.0.5" resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -24286,9 +24797,9 @@ toidentifier@1.0.1: integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== token-types@^4.1.1: - version "4.2.0" - resolved "https://registry.npmjs.org/token-types/-/token-types-4.2.0.tgz#b66bc3d67420c6873222a424eee64a744f4c2f13" - integrity sha512-P0rrp4wUpefLncNamWIef62J0v0kQR/GfDVji9WKY7GDCWy5YbVSrKUTam07iWPZQGy0zWNOfstYTykMmPNR7w== + version "4.1.1" + resolved "https://registry.npmjs.org/token-types/-/token-types-4.1.1.tgz#ef9e8c8e2e0ded9f1b3f8dbaa46a3228b113ba1a" + integrity sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w== dependencies: "@tokenizer/token" "^0.3.0" ieee754 "^1.2.1" @@ -24327,13 +24838,6 @@ tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - tr46@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" @@ -24371,15 +24875,20 @@ trim-newlines@^3.0.0: resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== +trim-off-newlines@^1.0.0: + version "1.0.3" + resolved "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz#8df24847fcb821b0ab27d58ab6efec9f2fe961a1" + integrity sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg== + triple-beam@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz#a595214c7298db8339eeeee083e4d10bd8cb8dd9" integrity sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw== trough@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz#0f7b511a4fde65a46f18477ab38849b22c554876" - integrity sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g== + version "2.0.2" + resolved "https://registry.npmjs.org/trough/-/trough-2.0.2.tgz#94a3aa9d5ce379fc561f6244905b3f36b7458d96" + integrity sha512-FnHq5sTMxC0sk957wHDzRnemFnNBvt/gSY99HzK8F7UP5WAbvP70yX5bd7CjEQkN+TjdxwI7g7lJ6podqrG2/w== truncate-utf8-bytes@^1.0.0: version "1.0.2" @@ -24399,14 +24908,14 @@ ts-easing@^0.2.0: integrity sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ== ts-interface-checker@^0.1.9: - version "0.1.13" - resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" - integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== + version "0.1.10" + resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.10.tgz#b68a49e37e90a05797e590f08494dd528bf383cf" + integrity sha512-UJYuKET7ez7ry0CnvfY6fPIUIZDw+UI3qvTUQeS2MyI4TgEeWAUBqy185LeaHcdJ9zG2dgFpPJU/AecXU0Afug== ts-log@^2.2.3: - version "2.2.4" - resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.4.tgz#d672cf904b33735eaba67a7395c93d45fba475b3" - integrity sha512-DEQrfv6l7IvN2jlzc/VTdZJYsWUnQNCsueYjMkC/iXoEoi5fNan6MjeDqkvhfzbmHgdz9UxDUluX3V5HdjTydQ== + version "2.2.3" + resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.3.tgz#4da5640fe25a9fb52642cd32391c886721318efb" + integrity sha512-XvB+OdKSJ708Dmf9ore4Uf/q62AYDTzFcAdxc8KNML1mmAWywRFVt/dn1KYJH8Agt5UJNujfM3znU5PxgAzA2w== ts-morph@^15.0.0: version "15.1.0" @@ -24473,6 +24982,7 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== +<<<<<<< HEAD tslib@^2.1.0, tslib@~2.4.0: ======= tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.4.0: @@ -24482,10 +24992,18 @@ tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== tslib@~2.3.0: +======= +tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.3.0: +>>>>>>> Fix some typos and other requested changes version "2.3.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== +tslib@^2.1.0, tslib@~2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" + integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== + tsutils@^3.21.0: version "3.21.0" resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" @@ -24595,9 +25113,9 @@ type-is@~1.6.18: mime-types "~2.1.24" typed-rest-client@^1.8.4: - version "1.8.6" - resolved "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.6.tgz#d8facd6abd98cbd8ad14cccf056ca5cc306919d7" - integrity sha512-xcQpTEAJw2DP7GqVNECh4dD+riS+C1qndXLfBCJ3xk0kqprtGN491P5KlmrDbKdtuW8NEcP/5ChxiJI3S9WYTA== + version "1.8.4" + resolved "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.8.4.tgz#ba3fb788e5b9322547406392533f12d660a5ced6" + integrity sha512-MyfKKYzk3I6/QQp6e1T50py4qg+c+9BzOEl2rBmQIpStwNUoqQ73An+Tkfy9YuV7O+o2mpVVJpe+fH//POZkbg== dependencies: qs "^6.9.1" tunnel "0.0.6" @@ -24634,10 +25152,10 @@ typescript@~4.6.0, typescript@~4.6.3, typescript@~4.6.4: resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz#caa78bbc3a59e6a5c510d35703f6a09877ce45e9" integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== -ua-parser-js@^0.7.30: - version "0.7.31" - resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz#649a656b191dffab4f21d5e053e27ca17cbff5c6" - integrity sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ== +ua-parser-js@^0.7.18: + version "0.7.28" + resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" + integrity sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g== uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" @@ -24645,9 +25163,9 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== uglify-js@^3.1.4: - version "3.15.5" - resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.5.tgz#2b10f9e0bfb3f5c15a8e8404393b6361eaeb33b3" - integrity sha512-hNM5q5GbBRB5xB+PMqVRcgYe4c8jbyZ1pzZhS6jbq54/4F2gFK869ZheiE5A8/t+W5jtTNpWef/5Q9zk639FNQ== + version "3.14.3" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf" + integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g== uid-number@0.0.6: version "0.0.6" @@ -24661,29 +25179,24 @@ uid-safe@~2.1.5: dependencies: random-bytes "~1.0.0" -uid2@0.0.3: +uid2@0.0.3, uid2@0.0.x: version "0.0.3" resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82" integrity sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I= -uid2@0.0.x: - version "0.0.4" - resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz#033f3b1d5d32505f5ce5f888b9f3b667123c0a44" - integrity sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA== - umask@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= -unbox-primitive@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" - integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== dependencies: - call-bind "^1.0.2" - has-bigints "^1.0.2" - has-symbols "^1.0.3" + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" which-boxed-primitive "^1.0.2" unbox-primitive@^1.0.2: @@ -24715,37 +25228,37 @@ undefsafe@^2.0.5: integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== underscore@^1.12.1, underscore@^1.9.1: - version "1.13.3" - resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.3.tgz#54bc95f7648c5557897e5e968d0f76bc062c34ee" - integrity sha512-QvjkYpiD+dJJraRA8+dGAU4i7aBbb2s0S3jA45TFOvg2VgqvdCDd/3N6CqA8gluk1W91GLoXg5enMUx560QzuA== + version "1.13.1" + resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz#0c1c6bd2df54b6b69f2314066d65b6cde6fcf9d1" + integrity sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g== -undici@^5.1.0: - version "5.1.1" - resolved "https://registry.npmjs.org/undici/-/undici-5.1.1.tgz#356427b0d1f032ca4cf85537b1e1694a52090438" - integrity sha512-CmK9JzLSMGx+2msOao8LhkKn3J7eKo2M50v0KZQ2XbiHcGqLS1HiIj01ceIm3jbUYlspw/FTSb6nMdSNyvVyaQ== +undici@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/undici/-/undici-5.0.0.tgz#3c1e08c7f0df90c485d5d8dbb0517e11e34f2090" + integrity sha512-VhUpiZ3No1DOPPQVQnsDZyfcbTTcHdcgWej1PdFnSvOeJmOVDgiOHkunJmBLfmjt4CqgPQddPVjSWW0dsTs5Yg== -unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" - integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== -unicode-match-property-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" - integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== dependencies: - unicode-canonical-property-names-ecmascript "^2.0.0" - unicode-property-aliases-ecmascript "^2.0.0" + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" -unicode-match-property-value-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" - integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== +unicode-match-property-value-ecmascript@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" + integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== -unicode-property-aliases-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" - integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== +unicode-property-aliases-ecmascript@^1.0.4: + version "1.1.0" + resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" + integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== unidiff@1.0.2: version "1.0.2" @@ -24755,9 +25268,9 @@ unidiff@1.0.2: diff "^2.2.2" unified@^10.0.0: - version "10.1.2" - resolved "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" - integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== + version "10.1.0" + resolved "https://registry.npmjs.org/unified/-/unified-10.1.0.tgz#4e65eb38fc2448b1c5ee573a472340f52b9346fe" + integrity sha512-4U3ru/BRXYYhKbwXV6lU6bufLikoAavTwev89H5UxY8enDFaAT2VXmIXYNm6hb5oHPng/EXr77PVyDFcptbk5g== dependencies: "@types/unist" "^2.0.0" bail "^2.0.0" @@ -24777,6 +25290,11 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -24816,16 +25334,14 @@ unist-util-is@^5.0.0: integrity sha512-F5CZ68eYzuSvJjGhCLPL3cYx45IxkqXSetCcRgUXtbcm50X2L9oOWQlfUfDdAf+6Pd27YDblBfdtmsThXmwpbQ== unist-util-position@^4.0.0: - version "4.0.3" - resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.3.tgz#5290547b014f6222dff95c48d5c3c13a88fadd07" - integrity sha512-p/5EMGIa1qwbXjA+QgcBXaPWjSnZfQ2Sc3yBEEfgPwsEmJd8Qh+DSk3LGnmOM4S1bY2C0AjmMnB8RuEYxpPwXQ== - dependencies: - "@types/unist" "^2.0.0" + version "4.0.1" + resolved "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.1.tgz#f8484b2da19a897a0180556d160c28633070dbb9" + integrity sha512-mgy/zI9fQ2HlbOtTdr2w9lhVaiFUHWQnZrFF2EUoVOqtAUdzqMtNiD99qA5a1IcjWVR8O6aVYE9u7Z2z1v0SQA== unist-util-stringify-position@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.2.tgz#5c6aa07c90b1deffd9153be170dce628a869a447" - integrity sha512-7A6eiDCs9UtjcwZOcCpM4aPII3bAAGv13E96IkawkOAW0OhH+yRxtY0lzo8KiHpzEMfH7Q+FizUmwp8Iqy5EWg== + version "3.0.0" + resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.0.tgz#d517d2883d74d0daa0b565adc3d10a02b4a8cde9" + integrity sha512-SdfAl8fsDclywZpfMDTVDxA2V7LjtRDTOFd44wUJamgl6OlVngsqWjxvermMYf60elWHbxhuRCZml7AnuXCaSA== dependencies: "@types/unist" "^2.0.0" @@ -24871,6 +25387,13 @@ universal-github-app-jwt@^1.0.1: "@types/jsonwebtoken" "^8.3.3" jsonwebtoken "^8.5.1" +universal-user-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz#a3182aa758069bf0e79952570ca757de3579c1d9" + integrity sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q== + dependencies: + os-name "^3.1.0" + universal-user-agent@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" @@ -24975,9 +25498,9 @@ upper-case@^2.0.2: tslib "^2.0.3" uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + version "4.2.2" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== dependencies: punycode "^2.1.0" @@ -25002,9 +25525,9 @@ url-parse@^1.5.8: requires-port "^1.0.0" url-value-parser@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/url-value-parser/-/url-value-parser-2.1.0.tgz#fe1ae776122b2eea4bbf284896bbdcd7fc75e1fa" - integrity sha512-gIYPWXujdUdwd/9TGCHTf5Vvgw6lOxjE5Q/k+7WNByYyS0vW5WX0k+xuVlhvPq6gRNhzXVv/ezC+OfeAet5Kcw== + version "2.0.3" + resolved "https://registry.npmjs.org/url-value-parser/-/url-value-parser-2.0.3.tgz#cd4b8d6754e458d65e8125260c09718d926e6e21" + integrity sha512-FjIX+Q9lYmDM9uYIGdMYfQW0uLbWVwN2NrL2ayAI7BTOvEwzH+VoDdNquwB9h4dFAx+u6mb0ONLa3sHD5DvyvA== url@0.10.3: version "0.10.3" @@ -25028,9 +25551,9 @@ use-immer@^0.7.0: integrity sha512-Re4hjrP3a/2ABZjAc0b7AK9s626bnO+H33RO2VUhiDZ2StBz5B663K6WNNlr4QtHWaGUmvLpwt3whFvvWuolQw== use-memo-one@^1.1.1: - version "1.1.2" - resolved "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.2.tgz#0c8203a329f76e040047a35a1197defe342fab20" - integrity sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ== + version "1.1.1" + resolved "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.1.tgz#39e6f08fe27e422a7d7b234b5f9056af313bd22c" + integrity sha512-oFfsyun+bP7RX8X2AskHNTxu+R3QdE/RC5IefMbqptmACAA/gfol1KDD5KRzPsGMa62sWxGZw+Ui43u6x4ddoQ== use-resize-observer@^8.0.0: version "8.0.0" @@ -25133,15 +25656,21 @@ uvu@^0.5.0: v8-compile-cache-lib@^3.0.1: ======= v8-compile-cache-lib@^3.0.0: +<<<<<<< HEAD >>>>>>> First implementation of vault-plugin version "3.0.1" resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== +======= + version "3.0.0" + resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8" + integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA== +>>>>>>> Fix some typos and other requested changes v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + version "2.1.0" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== v8-to-istanbul@^8.1.0: version "8.1.1" @@ -25218,13 +25747,13 @@ vary@^1, vary@~1.1.2: integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= vasync@^2.2.0: - version "2.2.1" - resolved "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz#d881379ff3685e4affa8e775cf0fd369262a201b" - integrity sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ== + version "2.2.0" + resolved "https://registry.npmjs.org/vasync/-/vasync-2.2.0.tgz#cfde751860a15822db3b132bc59b116a4adaf01b" + integrity sha1-z951GGChWCLbOxMrxZsRakra8Bs= dependencies: verror "1.10.0" -verror@1.10.0: +verror@1.10.0, verror@^1.8.1: version "1.10.0" resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= @@ -25233,27 +25762,18 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -verror@^1.8.1: - version "1.10.1" - resolved "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb" - integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg== - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - vfile-message@^3.0.0: - version "3.1.2" - resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.2.tgz#a2908f64d9e557315ec9d7ea3a910f658ac05f7d" - integrity sha512-QjSNP6Yxzyycd4SVOtmKKyTsSvClqBPJcd00Z0zuPj3hOIjg0rUPG6DbFGPvUKRgYyaIWLPKpuEclcuvb3H8qA== + version "3.0.2" + resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-3.0.2.tgz#db7eaebe7fecb853010f2ef1664427f52baf8f74" + integrity sha512-UUjZYIOg9lDRwwiBAuezLIsu9KlXntdxwG+nXnjuQAHvBpcX3x0eN8h+I7TkY5nkCXj+cWVp4ZqebtGBvok8ww== dependencies: "@types/unist" "^2.0.0" unist-util-stringify-position "^3.0.0" vfile@^5.0.0: - version "5.3.2" - resolved "https://registry.npmjs.org/vfile/-/vfile-5.3.2.tgz#b499fbc50197ea50ad3749e9b60beb16ca5b7c54" - integrity sha512-w0PLIugRY3Crkgw89TeMvHCzqCs/zpreR31hl4D92y6SOE07+bfJe+dK5Q2akwS+i/c801kzjoOr9gMcTe6IAA== + version "5.1.0" + resolved "https://registry.npmjs.org/vfile/-/vfile-5.1.0.tgz#18e78016f0f71e98d737d40f0fca921dc264a600" + integrity sha512-4o7/DJjEaFPYSh0ckv5kcYkJTHQgCKdL8ozMM1jLAxO9ox95IzveDPXCZp08HamdWq8JXTkClDvfAKaeLQeKtg== dependencies: "@types/unist" "^2.0.0" is-buffer "^2.0.0" @@ -25297,9 +25817,9 @@ vm2@^3.9.6: acorn-walk "^8.2.0" vscode-languageserver-types@^3.15.1: - version "3.17.0" - resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0.tgz#98f27a8855152897c9dde6127cb778ce70c7c239" - integrity sha512-ECJg27DKWEfkIUuNyjMydPsl5Lu7XX1xmwEpZ61I4oeK1qFNbfp3tSZUVmeMPPgnNjasd1rrb3on9jbSe5g3nQ== + version "3.15.1" + resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz#17be71d78d2f6236d414f0001ce1ef4d23e6b6de" + integrity sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ== w3c-hr-time@^1.0.2: version "1.0.2" @@ -25342,11 +25862,11 @@ walk-up-path@^1.0.0: integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg== walker@^1.0.7: - version "1.0.8" - resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + version "1.0.7" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" + integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= dependencies: - makeerror "1.0.12" + makeerror "1.0.x" watchpack@^2.3.1: version "2.3.1" @@ -25376,20 +25896,15 @@ web-streams-polyfill@4.0.0-beta.1: integrity sha512-3ux37gEX670UUphBF9AMCq8XM6iQ8Ac6A+DSRRjDoRBm1ufCkaCDdNVbaqq60PsEkdNlLKrGtv/YBP4EJXqNtQ== web-streams-polyfill@^3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" - integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== + version "3.2.0" + resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.0.tgz#a6b74026b38e4885869fb5c589e90b95ccfc7965" + integrity sha512-EqPmREeOzttaLRm5HS7io98goBgZ7IVz79aDvqjD0kYXLtFZTc0T/U6wHTPKyIjb+MdN7DFIIX6hgdBEpWmfPA== webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - webidl-conversions@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" @@ -25537,15 +26052,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^7.0.0: - version "7.1.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" - integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-url@^8.0.0, whatwg-url@^8.4.0, whatwg-url@^8.5.0: version "8.7.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" @@ -25585,16 +26091,17 @@ which-pm@2.0.0: path-exists "^4.0.0" which-typed-array@^1.1.2: - version "1.1.7" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz#2761799b9a22d4b8660b3c1b40abaa7739691793" - integrity sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw== + version "1.1.4" + resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz#8fcb7d3ee5adf2d771066fba7cf37e32fe8711ff" + integrity sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA== dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" - es-abstract "^1.18.5" + available-typed-arrays "^1.0.2" + call-bind "^1.0.0" + es-abstract "^1.18.0-next.1" foreach "^2.0.5" - has-tostringtag "^1.0.0" - is-typed-array "^1.1.7" + function-bind "^1.1.1" + has-symbols "^1.0.1" + is-typed-array "^1.1.3" which@^1.2.9, which@^1.3.1: version "1.3.1" @@ -25610,7 +26117,7 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0, wide-align@^1.1.2, wide-align@^1.1.5: +wide-align@^1.1.0, wide-align@^1.1.2: version "1.1.5" resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== @@ -25629,6 +26136,13 @@ window-size@^0.2.0: resolved "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" integrity sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU= +windows-release@^3.1.0: + version "3.2.0" + resolved "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz#8122dad5afc303d833422380680a79cdfa91785f" + integrity sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA== + dependencies: + execa "^1.0.0" + winston-transport@^4.5.0: version "4.5.0" resolved "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz#6e7b0dd04d393171ed5e4e4905db265f7ab384fa" @@ -25763,20 +26277,41 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" +<<<<<<< HEAD ws@8.7.0, ws@^8.0.0, ws@^8.3.0: version "8.7.0" resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== +======= +<<<<<<< HEAD +ws@8.6.0, ws@^8.0.0, ws@^8.3.0: + version "8.6.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" + integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== +======= +ws@8.5.0, ws@^8.4.2: + version "8.5.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" + integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== +>>>>>>> Fix some typos and other requested changes +>>>>>>> Fix some typos and other requested changes ws@^7.3.1, ws@^7.4.6: version "7.5.7" resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== +<<<<<<< HEAD ws@^8.4.2: version "8.5.0" resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== +======= +ws@^8.0.0, ws@^8.3.0: + version "8.6.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" + integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== +>>>>>>> Fix some typos and other requested changes ws@~7.4.2: version "7.4.6" @@ -25889,9 +26424,9 @@ xpath@0.0.32: integrity sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw== xss@^1.0.8: - version "1.0.11" - resolved "https://registry.npmjs.org/xss/-/xss-1.0.11.tgz#211cb82e95b5071d4c75d597283c021157ebe46a" - integrity sha512-EimjrjThZeK2MO7WKR9mN5ZC1CSqivSl55wvUK5EtU6acf0rzEE1pN+9ZDrFXJ82BRp3JL38pPE6S4o/rpp1zQ== + version "1.0.10" + resolved "https://registry.npmjs.org/xss/-/xss-1.0.10.tgz#5cd63a9b147a755a14cb0455c7db8866120eb4d2" + integrity sha512-qmoqrRksmzqSKvgqzN0055UFWY7OKx1/9JWeRswwEVX9fCG5jcYRxa/A2DHcmZX6VJvjzHRQ2STeeVcQkrmLSw== dependencies: commander "^2.20.3" cssfilter "0.0.10" @@ -25941,6 +26476,7 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2, yaml@^1.9.2: resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +<<<<<<< HEAD <<<<<<< HEAD yaml@^2.1.1: version "2.1.1" @@ -25951,6 +26487,9 @@ yargs-parser@20.2.4, yargs-parser@^20.2.3: ======= yargs-parser@20.2.4: >>>>>>> First implementation of vault-plugin +======= +yargs-parser@20.2.4, yargs-parser@^20.2.3: +>>>>>>> Fix some typos and other requested changes version "20.2.4" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== @@ -25963,15 +26502,15 @@ yargs-parser@^18.1.2, yargs-parser@^18.1.3: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^20.2.2, yargs-parser@^20.2.3: +yargs-parser@^20.2.2: version "20.2.9" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs-parser@^21.0.0: - version "21.0.1" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35" - integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg== + version "21.0.0" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.0.tgz#a485d3966be4317426dd56bdb6a30131b281dc55" + integrity sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA== yargs-parser@^3.2.0: version "3.2.0" @@ -25998,7 +26537,7 @@ yargs@^15.1.0, yargs@^15.3.1: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^16.2.0: +yargs@^16.1.1, yargs@^16.2.0: version "16.2.0" resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -26024,10 +26563,20 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" +<<<<<<< HEAD yargs@^17.0.1, yargs@^17.3.1: +======= +yargs@^17.3.1: +<<<<<<< HEAD +>>>>>>> Fix some typos and other requested changes version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== +======= + version "17.4.1" + resolved "https://registry.npmjs.org/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284" + integrity sha512-WSZD9jgobAg3ZKuCQZSa3g9QOJeCCqLoLAykiWgmXnDo9EPnn4RPf5qVTtzgOx66o6/oqhcA5tHtJXpG8pMt3g== +>>>>>>> Fix some typos and other requested changes dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -26167,15 +26716,15 @@ yup@^0.32.9: toposort "^2.0.2" z-schema@~5.0.2: - version "5.0.3" - resolved "https://registry.npmjs.org/z-schema/-/z-schema-5.0.3.tgz#68fafb9b735fc7f3c89eabb3e5a6353b4d7b4935" - integrity sha512-sGvEcBOTNum68x9jCpCVGPFJ6mWnkD0YxOcddDlJHRx3tKdB2q8pCHExMVZo/AV/6geuVJXG7hljDaWG8+5GDw== + version "5.0.2" + resolved "https://registry.npmjs.org/z-schema/-/z-schema-5.0.2.tgz#f410394b2c9fcb9edaf6a7511491c0bb4e89a504" + integrity sha512-40TH47ukMHq5HrzkeVE40Ad7eIDKaRV2b+Qpi2prLc9X9eFJFzV7tMe5aH12e6avaSS/u5l653EQOv+J9PirPw== dependencies: lodash.get "^4.4.2" lodash.isequal "^4.5.0" validator "^13.7.0" optionalDependencies: - commander "^2.20.3" + commander "^2.7.1" zen-observable@^0.8.15: version "0.8.15" From 7b0b852fab790d6c31a693850af39366055ca569 Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 19 May 2022 11:08:24 +0200 Subject: [PATCH 203/550] Add api-reports & include plugin into marketplace Signed-off-by: ivgo --- microsite/data/plugins/vault.yaml | 11 +++ microsite/static/img/vault.png | Bin 0 -> 13714 bytes plugins/vault-backend/api-report.md | 119 ++++++++++++++++++++++++++++ plugins/vault/api-report.md | 21 +++++ 4 files changed, 151 insertions(+) create mode 100644 microsite/data/plugins/vault.yaml create mode 100644 microsite/static/img/vault.png create mode 100644 plugins/vault-backend/api-report.md create mode 100644 plugins/vault/api-report.md diff --git a/microsite/data/plugins/vault.yaml b/microsite/data/plugins/vault.yaml new file mode 100644 index 0000000000..c16ed434f1 --- /dev/null +++ b/microsite/data/plugins/vault.yaml @@ -0,0 +1,11 @@ +--- +title: Vault +author: Spread Group +authorUrl: https://github.com/ivangonzalezacuna +category: Vault +description: Visualize a list secrets stored in your vault instance. +documentation: https://github.com/backstage/backstage/tree/master/plugins/vault +iconUrl: img/vault.png +npmPackageName: '@backstage/plugin-vault' +tags: + - vault \ No newline at end of file diff --git a/microsite/static/img/vault.png b/microsite/static/img/vault.png new file mode 100644 index 0000000000000000000000000000000000000000..ecd443c0555387dcac49af62ac89038214281cc9 GIT binary patch literal 13714 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 literal 0 HcmV?d00001 diff --git a/plugins/vault-backend/api-report.md b/plugins/vault-backend/api-report.md new file mode 100644 index 0000000000..eba8a660ed --- /dev/null +++ b/plugins/vault-backend/api-report.md @@ -0,0 +1,119 @@ +## API Report File for "@backstage/plugin-vault-backend" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +import { Config } from '@backstage/config'; +import { Duration } from 'luxon'; +import express from 'express'; +import { Logger } from 'winston'; + +// Warning: (ae-missing-release-tag) "createRouter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function createRouter(options: RouterOptions): Promise; + +// Warning: (ae-missing-release-tag) "RenewTokenResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type RenewTokenResponse = { + auth: { + client_token: string; + }; +}; + +// Warning: (ae-missing-release-tag) "RouterOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export interface RouterOptions { + // (undocumented) + config: Config; + // (undocumented) + logger: Logger; +} + +// Warning: (ae-missing-release-tag) "Secret" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type Secret = { + name: string; + showUrl: string; + editUrl: string; +}; + +// Warning: (ae-missing-release-tag) "VaultApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export interface VaultApi { + // (undocumented) + getFrontendSecretsUrl(): string; + // (undocumented) + listSecrets(secretPath: string): Promise; + // (undocumented) + renewToken?(): Promise; +} + +// Warning: (ae-missing-release-tag) "VaultBuilder" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export class VaultBuilder { + constructor(env: VaultEnvironment); + // (undocumented) + build(): VaultBuilderReturn; + // (undocumented) + protected buildRouter(vaultClient: VaultClient): express.Router; + // (undocumented) + static createBuilder(env: VaultEnvironment): VaultBuilder; + // (undocumented) + enableTokenRenew(): this; + // (undocumented) + protected readonly env: VaultEnvironment; + // (undocumented) + protected renewToken(vaultClient: VaultClient): Promise; + // (undocumented) + setVaultClient(vaultClient: VaultClient): this; + // (undocumented) + setVaultTokenRefreshInterval(refreshInterval: Duration): this; +} + +// Warning: (ae-missing-release-tag) "VaultBuilderReturn" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type VaultBuilderReturn = Promise<{ + router: express.Router; +}>; + +// Warning: (ae-missing-release-tag) "VaultClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export class VaultClient implements VaultApi { + constructor({ config }: { config: Config }); + // (undocumented) + getFrontendSecretsUrl(): string; + // (undocumented) + listSecrets(secretPath: string): Promise; + // (undocumented) + renewToken(): Promise; +} + +// Warning: (ae-missing-release-tag) "VaultEnvironment" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export interface VaultEnvironment { + // (undocumented) + config: Config; + // (undocumented) + logger: Logger; +} + +// Warning: (ae-missing-release-tag) "VaultSecretList" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type VaultSecretList = { + data: { + keys: string[]; + }; +}; + +// (No @packageDocumentation comment for this package) +``` diff --git a/plugins/vault/api-report.md b/plugins/vault/api-report.md new file mode 100644 index 0000000000..a5b38f50c7 --- /dev/null +++ b/plugins/vault/api-report.md @@ -0,0 +1,21 @@ +## API Report File for "@backstage/plugin-vault" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +/// + +import { BackstagePlugin } from '@backstage/core-plugin-api'; + +// Warning: (ae-missing-release-tag) "EntityVaultCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const EntityVaultCard: () => JSX.Element; + +// Warning: (ae-missing-release-tag) "vaultPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const vaultPlugin: BackstagePlugin<{}, {}>; + +// (No @packageDocumentation comment for this package) +``` From 5ca80ad93556f81a360c4e7b0b71fbb3a2e1d7c7 Mon Sep 17 00:00:00 2001 From: ivgo Date: Mon, 23 May 2022 14:35:08 +0200 Subject: [PATCH 204/550] Apply changes, update tests & change vault icon temporarilly Signed-off-by: ivgo --- microsite/static/img/vault.png | Bin 13714 -> 6364 bytes plugins/vault-backend/README.md | 18 +- plugins/vault-backend/api-report.md | 82 +-- plugins/vault-backend/package.json | 12 +- .../src/service/VaultBuilder.tsx | 89 ++- .../vault-backend/src/service/router.test.ts | 19 +- plugins/vault-backend/src/service/router.ts | 19 +- .../src/service/runPeriodically.ts | 54 -- .../src/service/standaloneApplication.ts | 20 +- .../src/service/vaultApi.test.ts | 4 +- plugins/vault-backend/src/service/vaultApi.ts | 39 +- plugins/vault/api-report.md | 8 +- plugins/vault/package.json | 20 +- plugins/vault/src/api.test.ts | 6 +- plugins/vault/src/api.ts | 14 +- .../EntityVaultTable.test.tsx | 4 +- .../EntityVaultTable/EntityVaultTable.tsx | 6 +- plugins/vault/src/plugin.ts | 8 + yarn.lock | 641 ++---------------- 19 files changed, 304 insertions(+), 759 deletions(-) delete mode 100644 plugins/vault-backend/src/service/runPeriodically.ts diff --git a/microsite/static/img/vault.png b/microsite/static/img/vault.png index ecd443c0555387dcac49af62ac89038214281cc9..9b5d59622d430fa9269c682168ead2c16d96f966 100644 GIT binary patch literal 6364 zcmbW6cT^MIyYD9Dv*+30=Q9s&tV}uCh1dZA z;50)R*#ZEFVS<2DER5<#z>8aq3KD2&W`BxNB2V2+V(hc|Bb)*OfYsyQ4WxOmV1m(j zF31=eWaoD)DAYZ`69^3rRl4Kr9f)!F_f+x=@G4x>6#{^>PG&}b+lLjcPKLh~@hs@w zT%W6rlQKwBFau)G<2b-d=Vd?g-h>!u7~3aos-%^wq;YU9Z9WCFznQ^F);3Q!5t_~y zo<>QybMV-}zwsoopNfl<%J9$jZ{F%1@_F+ZW!>)J;^23EY(3BlKRa9f=3dLtcF;)c z{iOeWu`g8)0n)z2E|T&{ESZ?UKFv7MuF>GMmmi74hTh5>Qx+sHRZ9pbpPMF+_!FPm6GO#lT3OaJE&r>2ip~WCjrO-Z#Cc zm&>TkkPM0dcDqhPL%?Ubf3RXjwYW0R3IIBwehl+h@#QW>8E~Re+TT)nY$QPCf+L{1 z4)lPmX;TOK%r{tcUCfN2-QW4cOqa=0WN(eF;}Obb~Dci2ZEl;s`TOHjmB@K zJ>4w*3>{qX&vt$Yl9{HVE|? zRvSVzO_L^p&i+V5_&J@rk@khUuue{gmZT5z507-VW603>ms{N`e>HJw^5ydrPNZlPr26WyN9wLFe54){7F{AzGbxxq zqMd*!9Z?1S0SSU?mS|^dd__xZGLnq`d6mXSbHmX&GzX6NwppNhHNI?5#rGm(dv)UH zPbcw)KWu^Fm^KOzkMGl8`Hg)~10Aodbe!23z3;*I65m2UXz!LQ5Zm$NW_k>6 zWU|9!T(2R5pqK0#b#Pl+xc+c%mUEPggZ2ci{Jo^8ueCWo>{ORUxIxjgzK0mD(>!Z+?= zo8P*`t`Z$HzN+#h$A*)xkS0l%l(JXK{9-SS${}BMDgaZkA1n1#$}$bfN1UsvU^*E- zX#9mk5v7NcV>?3pBNutifo-@L>g7&5iJF6|yePJOxm|yQlV(B#(+m}~5S%Z03B_W_7GjMzj$m$YDVtPXD_6MbHX8)AB_kWr8=mY zTgrllJGDu@IM!Hh@Nze&mpz6s_jVo=Dl>VuH03GeD}9G$jd=ioFKr-S<2=aXx=&QB>47V0=%Aa$({%{OK9&g30ZW_D(F=HX@oGemY-hU>IwVy7`+^1#z%o51~ zT6&2jaTxm6!~CMa9&F>8+Jh|rU<-h(?OCYlNzIR`acqcO-7JlbHO6 zscVI(dq((HzU1wM9Qr6YIwcjEgILM~ltTLsV*7C?-6q|l;|GUxdyS)1)&949qc;Qx zF>9Ad{r#MkHYoRX69Ur$ zebOgEcGep)uX{9xm2DW9e4;N=^ zfL7Sr7TVxJ5t)(R90Jp=pv~YcNCi;xLF}A1y=Wd>()ImhXtsH8Vxo~L%?$>_WzAUv z=-gZQXyO%lYM;MR!dcS^0SuW^Ixe!u4zIsnSwjBk1B3J4?T-swH#|=6Xm1~)&%P>$ z*wk9_8t9LngRKj$R(8ESp+H)3?UZ6OIq?rlZ(R~ZL!)TRNE!Td<)h3AVB^y9yAH#J z?vfp9F|@7l?syJhK57OAT5;ChF%_cC)hzE2Z4R+yvxnu#qL;haTiB&J?d%v{NO()XReLM#gD7F(y4m5Io;<&FOSY#sjbXS3JN!(z#RCUV z__6VCKgk{O#QO5bcc+ygYos30A1U>d`qu`VeQD)5I1^pTHNBi|H zyx!*v;@sMC03m zcAW-kgBN9P$J5c=kz_gjxJZ4-GdOVkejFa++PX=gx0H`O4|x*6N((-4`g>2I#Z;^J zT(rhr@M0lkOHZ>vRBP@+Y$tB&R?=&`Mt8vqjrhIHxYYVRrsFCTsxG%v zu2Uu8NOZbj4$L{FfBPkKTStFGv&35NL;~;dXD;{xJUdfHai>9C+cVMTMqu!{U`YqD z4u8hk1qokbHJ&&i`COi~Zx(Jw$A1au>31TLi+)G36>iK3O6`tNGMe->Bb=3kAxm)T zE6uviUmDo0X!pn8M7NgkI7^!+>II9NW!5)Z_?I)AtPS^Fk>qYQ#ZGzAA#BQ&5%NL{ zlWh89;0=2i9dhJM_XE;zJz6M-OJD^&$R#MElorq78S9xSX$J+>9Sph^w~9K`WqS^W z`+YUE&zCEVu47iLgvD)0cTFDV>@Md#mIX>9QO%6Fa*s>Y>m?Ox_v zugl?*1?6DuvLceIrK@_5Z7NqPDU^K$*E9zK*ZZ*8=}pTnXCb9dlQqjvVJpVfGt!$> ziwPI0^k0;s0YQ`8YYgvB@2MD`WqRH%jY={n)}y5m(FTkIH-O zv~;WeVeB;G6bu&-#)gh2EjI$vu$*crs%{FoGN!c{X7;Ni2g?^c0NodiRC5nKL-i_! z*nsQ7Ih}x_8V+Rk_OI~a7ucso^rx{jyS?*I~ zGgAjO9}cEv#_wbC{>7gOevY2e6{(D1#^nc1vGQ#G=sK69NV;`Ya6k2?MHc*XaFg-5 zoiFC00L%s~Yx*(3E!;C4yT$tri*+BC*_@!&{khj~tC8tYP;v+JlIy9+1#{hyyvN8;-Z#8~E3A%|F!IUWwJ?AWy zrL`DQts;^eyi~o9nDcjW1fkunU{Ft@@if8vPglDobbA6)c=Wt6Qk`Ktc9wNUj=3 zy=p!l(xj9IdDWo7HR>^-|A`PYkxroEo>gS%w(loXBFtyDcQ_XRmSf1#oX+JcJ~eJy zoz!l!8%M{Wue!LzME8-mYm4nQA-|nceI7^UpHXlpZ38og%nJA{)7%i|jeUz2S`Qg7 zl=N3;LJsa(V}GYgk%5xitA*-q8lS#djaT8uticWDvcgg*mpF(mShhC+`#eQz2%I); zSzoU)UinD~axC2XF%1-rtL6+-+@Ozk_;3`ZP3icnxBg65|3kGX+%5RrTY|F>u!W(+ zeWBq%|7D7ERB-|F%l_?ZP!!25&hoA5U>)VFi{GBFV+kz$)3yvk90EB8UKFbJWcMb- zjgbF*4njZG!KsBeZk!LC>;P^o-y(E3HT@VJHHZxp=A_fgI* z6#)~rr@GX~J0o$HO`Duqeo==6x6S+qH+z`8bmlG)d(+hIHU$yYP>^~SuR*vNL@cnc z-Mp?rf2KxUCATTtzBs;v(!-7GfQa-SDu|h!!IfVF%aVCU7iB&jBBFi8*7}i((ODQA zIX=-LpA0@($i2rN2G=Aioxgba**%7b6?zOKY2WM{`qdT4dy3dOwjd|Pfp zqMrueXi@ISP8{sn`41H!R*K}DrVPK}@zfu8jOv^BHLGqbUG-suiT)^bE zIXFM5zFnp}4{pGM7Q|v>7HYl$8x9{FXU#5xgl*I_rjIyKsu2f-o4G+LFy`)(F*&xo zobFTgRV`|u7hF#xlQ(6$e(-hpohTvw+AYO~xP_EGo=x1+d9ZAo--a!k`hWN&Udm>b>E)QIlT zOhyJ?CxX09wpLkI5~q~JpW`7^@R6_4I7C4e=2T#-r1$irDK3>T|GaF5p0a0Qfqxh? z5lKy=he}WQ#5DSHgfHrXrYyoO7n~uU|8z+jTs4-$1rw!fJqL*2Cu&FEd5&g9NPBE8 zhpUQx`>yflXUDlPS#(EjL--zfvlJF9X}1$~zlnV8V-CQU)j`-;McIOFiwMDS!48GK zyK+Ru?&8!dO2-A1styd%H0eEVjK7}Kqj3R)QvG~7?8}GI2n&nRbuxWXz=9!c@KQK4 zFU!z&uX_6c_S{ zZND}?#8GZAjk2O??8*=w%!Ss31&$MwssI(UN;9+^0UvnuiV+nQ{J?ujTP;_V(MVVxT|npk~Za3>vLX`T^H)^ z{C(2diHWPfm9-kqz{5WZ#vT?0{uulI3s1_^BIo|Hq8%0elF#Nf`1D%}_jZl2>z-}r zJN%u>^@E|qs`#)1p1RW=19h^#?eDYkTSYg%YW29QCbl)Ah&qYBLrIXYif5FbwRwF# z#4VD}P_||VN2fyla$yD6kU`_RtRe=#S2{Y|!OI$Mf zKVPR@7K_k=S6n8m_V1|s^BfCBqw7w&J*5A>=_E|}XBpj5GzQLQyffZC(-qaL(3dFi zMoZW6sN9x7Il}q=Yxyl)D6K{sGU{=c*PnI&@qzr1Fv0W*Ih)#2d&(k`3YNExZGizb z9|j69{n}@wBz+<)0#k+NZ9an7FYl7gii4ZXQD~-6U&$5Ue?X(@68+ChZL=7euj@_( zHt0t?=A#$ zWxVhiiksgu2eu>-f#I ztz`~SO%~yhcWIVcndPA_pM3!Dd#TO0%_@igLbQBPqh*t%z2)uIM#yUdDvkb}+^H?7 z7ne%3DWQuoh{D8oLE^_3_H43)XiGD|!9L~Tu+=0l>0^0a!qzpz!_SRGLW{aDJ00xzei4IWbtR?U2uWuciuuTd9By&#YkeL3)h;PL;MafE&WqX@}7Zsxe9G&I}a9v*At)JCf@#b&j=s zKJJRPFZ;Ii1o%DxxH3hG$GG5PM=$GO?3|KMZCeBAEy(eO26bdsP2*018w2iL`o_T~ z5$C&WZ1OFK0k%qQ{;#x+(2~mX*_)d-M0}9pJT4gmI55@;N=^O4k1F>d|BdIC%OM+M z6c7UQ=d)2Q1DL&GcI@FYyhjCgT$cZZY4eysh%6hziG{FEkt8z7nKSTNBzF_2P%Lt} z=@}y33AkaIu9)-Pn+;g8qOA`_96=tlH;Z!pWJYNY^B-pyAlEAw_#MoZ&tN9%lARR ztICW6XAVuCL#2qR?ZwQWrOKlZiQKCVJ&l3G=V%Uzf84bi6hF!_xKc_$d7We^P;n(5GWS>l~HaNn5 zmhhMY;i7;Drm=1Yy@l2hZ@qsZsE;%@)(8`80+3u+nR>c7P0RQ#VzY6W*k90Ia8R!# z2~h|(Wl99Kf|h$22PI$Qv`95Lad$eX#Y96IH+_IJqa;2acDyIzZ<_e4nTsO(46CmY zXhFvs{VtueJ)(x6ugGj;9}%faIAMcc+KgY=DSw|pQ0k_CTx>&fx27w@ySCvDgmGhUW~L-ToYhzI|2(f=`!jT%e|VcZ)DT0B^q z+QbDnV3D~SK(-?>k9ne6Z<5DB3(Z^x5-8T TPx{3869JeRTN%AEMBo1}q0RU% literal 13714 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 diff --git a/plugins/vault-backend/README.md b/plugins/vault-backend/README.md index 4e425f9630..d7d227607d 100644 --- a/plugins/vault-backend/README.md +++ b/plugins/vault-backend/README.md @@ -33,6 +33,7 @@ To get started, first you need a running instance of Vault. You can follow [this return await createRouter({ logger: env.logger, config: env.config, + scheduler: env.scheduler, }); } ``` @@ -106,25 +107,28 @@ You will set the `vault.io/secret-path` to `test/backstage`. If the folder `back ## Renew token -In a secure Vault instance, it's usual that the tokens are refreshed after some time. In order to always have a valid token to fetch the secrets, it might be necessary to execute a renew action after some time. By default this is deactivated, but it can be easily activated and configured to be executed periodically. In order to do that, modify your `src/plugins/vault.ts` file to look like this one: +In a secure Vault instance, it's usual that the tokens are refreshed after some time. In order to always have a valid token to fetch the secrets, it might be necessary to execute a renew action after some time. By default this is deactivated, but it can be easily activated and configured to be executed periodically (hourly by default, but customizable by the user). In order to do that, modify your `src/plugins/vault.ts` file to look like this one: ```typescript import { VaultBuilder } from '@backstage/plugin-vault-backend'; import { Router } from 'express'; -import { Duration } from 'luxon'; import { PluginEnvironment } from '../types'; export default async function createPlugin( env: PluginEnvironment, ): Promise { - const builder = VaultBuilder.createBuilder({ + const builder = await VaultBuilder.createBuilder({ logger: env.logger, config: env.config, - }) - .setVaultTokenRefreshInterval(Duration.fromObject({ hours: 5 })) // Optional, by default it's executed every hour - .enableTokenRenew(); + scheduler: env.scheduler, + }).enableTokenRenew( + env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 10 }, + timeout: { minutes: 1 }, + }), + ); - const { router } = await builder.build(); + const { router } = builder.build(); return router; } diff --git a/plugins/vault-backend/api-report.md b/plugins/vault-backend/api-report.md index eba8a660ed..1c7e669ef2 100644 --- a/plugins/vault-backend/api-report.md +++ b/plugins/vault-backend/api-report.md @@ -4,111 +4,85 @@ ```ts import { Config } from '@backstage/config'; -import { Duration } from 'luxon'; import express from 'express'; import { Logger } from 'winston'; +import { PluginTaskScheduler } from '@backstage/backend-tasks'; +import { TaskRunner } from '@backstage/backend-tasks'; -// Warning: (ae-missing-release-tag) "createRouter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function createRouter(options: RouterOptions): Promise; +// @public +export function createRouter(options: RouterOptions): express.Router; -// Warning: (ae-missing-release-tag) "RenewTokenResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export type RenewTokenResponse = { auth: { client_token: string; }; }; -// Warning: (ae-missing-release-tag) "RouterOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export interface RouterOptions { // (undocumented) config: Config; // (undocumented) logger: Logger; + // (undocumented) + scheduler: PluginTaskScheduler; } -// Warning: (ae-missing-release-tag) "Secret" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type Secret = { - name: string; - showUrl: string; - editUrl: string; -}; - -// Warning: (ae-missing-release-tag) "VaultApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export interface VaultApi { - // (undocumented) getFrontendSecretsUrl(): string; - // (undocumented) - listSecrets(secretPath: string): Promise; - // (undocumented) + listSecrets(secretPath: string): Promise; renewToken?(): Promise; } -// Warning: (ae-missing-release-tag) "VaultBuilder" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export class VaultBuilder { constructor(env: VaultEnvironment); - // (undocumented) build(): VaultBuilderReturn; - // (undocumented) protected buildRouter(vaultClient: VaultClient): express.Router; - // (undocumented) static createBuilder(env: VaultEnvironment): VaultBuilder; - // (undocumented) - enableTokenRenew(): this; + enableTokenRenew(schedule?: TaskRunner): Promise; // (undocumented) protected readonly env: VaultEnvironment; - // (undocumented) protected renewToken(vaultClient: VaultClient): Promise; - // (undocumented) setVaultClient(vaultClient: VaultClient): this; - // (undocumented) - setVaultTokenRefreshInterval(refreshInterval: Duration): this; } -// Warning: (ae-missing-release-tag) "VaultBuilderReturn" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type VaultBuilderReturn = Promise<{ +// @public +export type VaultBuilderReturn = { router: express.Router; -}>; +}; -// Warning: (ae-missing-release-tag) "VaultClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export class VaultClient implements VaultApi { constructor({ config }: { config: Config }); // (undocumented) getFrontendSecretsUrl(): string; // (undocumented) - listSecrets(secretPath: string): Promise; + listSecrets(secretPath: string): Promise; // (undocumented) renewToken(): Promise; } -// Warning: (ae-missing-release-tag) "VaultEnvironment" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export interface VaultEnvironment { // (undocumented) config: Config; // (undocumented) logger: Logger; + // (undocumented) + scheduler: PluginTaskScheduler; } -// Warning: (ae-missing-release-tag) "VaultSecretList" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public +export type VaultSecret = { + name: string; + showUrl: string; + editUrl: string; +}; + +// @public export type VaultSecretList = { data: { keys: string[]; diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index d9469d81e3..efdf4ffd83 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault-backend", "description": "A Backstage backend plugin that integrates towards Vault", - "version": "0.1.0", + "version": "0.0.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,10 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.13.2", - "@backstage/backend-test-utils": "^0.1.23", - "@backstage/config": "^1.0.0", + "@backstage/backend-common": "^0.13.5", + "@backstage/backend-tasks": "^0.3.1", + "@backstage/backend-test-utils": "^0.1.24", + "@backstage/config": "^1.0.1", "@types/compression": "^1.7.2", "@types/express": "*", "compression": "^1.7.4", @@ -45,12 +46,11 @@ "express": "^4.17.1", "express-promise-router": "^4.1.0", "helmet": "^5.0.2", - "luxon": "^2.4.0", "winston": "^3.7.2", "yn": "^5.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.0", + "@backstage/cli": "^0.17.1", "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", "msw": "^0.35.0", diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index 03179bcd41..20d5eab8e4 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -17,31 +17,55 @@ import { Config } from '@backstage/config'; import { Logger } from 'winston'; import express, { Router } from 'express'; -import { Duration } from 'luxon'; import { VaultClient } from './vaultApi'; -import { runPeriodically } from './runPeriodically'; +import { TaskRunner, PluginTaskScheduler } from '@backstage/backend-tasks'; +/** + * Environment values needed by the VaultBuilder + * @public + */ export interface VaultEnvironment { logger: Logger; config: Config; + scheduler: PluginTaskScheduler; } -export type VaultBuilderReturn = Promise<{ +/** + * The object returned by the VaultBuilder.build() function + * @public + */ +export type VaultBuilderReturn = { router: express.Router; -}>; +}; +/** + * Implementation for Vault. It creates the routing and initializes the backend + * to allow the use of the Vault's frontend plugin. + * @public + */ export class VaultBuilder { - private vaultTokenRefreshInterval: Duration = Duration.fromObject({ - minutes: 60, - }); + // private vaultTokenRefreshInterval: Duration = Duration.fromObject({ + // minutes: 60, + // }); private vaultClient?: VaultClient; + /** + * Creates a new instance of the VaultBuilder. + * + * @param env - The backstage environment + * @returns A new instance of the VaultBuilder + */ static createBuilder(env: VaultEnvironment) { return new VaultBuilder(env); } constructor(protected readonly env: VaultEnvironment) {} - public async build(): VaultBuilderReturn { + /** + * Builds the routes for Vault. + * + * @returns The router configured for Vault + */ + public build(): VaultBuilderReturn { const { logger, config } = this.env; logger.info('Initializing Vault backend'); @@ -64,25 +88,46 @@ export class VaultBuilder { }; } + /** + * Overwrites the current vault client. + * + * @param vaultClient - The new Vault client + * @returns + */ public setVaultClient(vaultClient: VaultClient) { this.vaultClient = vaultClient; return this; } - public setVaultTokenRefreshInterval(refreshInterval: Duration) { - this.vaultTokenRefreshInterval = refreshInterval; - return this; - } - - public enableTokenRenew() { - runPeriodically(async () => { - this.env.logger.info('Renewing Vault token'); - const vaultClient = this.vaultClient ?? new VaultClient(this.env); - await this.renewToken(vaultClient); - }, this.vaultTokenRefreshInterval.toMillis()); + /** + * Enables the token renewal for Vault. + * + * @param schedule - The TaskRunner used to schedule the renewal, if not set, renewing hourly + * @returns + */ + public async enableTokenRenew(schedule?: TaskRunner) { + const taskRunner = schedule + ? schedule + : this.env.scheduler.createScheduledTaskRunner({ + frequency: { hours: 1 }, + timeout: { hours: 1 }, + }); + await taskRunner.run({ + id: 'refresh-vault-token', + fn: async () => { + this.env.logger.info('Renewing Vault token'); + const vaultClient = this.vaultClient ?? new VaultClient(this.env); + await this.renewToken(vaultClient); + }, + }); return this; } + /** + * Renews the token for vault using a defined client. + * + * @param vaultClient - The vault client used to renew the token + */ protected async renewToken(vaultClient: VaultClient) { const result = await vaultClient.renewToken(); if (!result) { @@ -92,6 +137,12 @@ export class VaultBuilder { } } + /** + * Builds the backend routes for Vault. + * + * @param vaultClient - The Vault client used to list the secrets. + * @returns The generated backend router + */ protected buildRouter(vaultClient: VaultClient): express.Router { const router = Router(); router.use(express.json()); diff --git a/plugins/vault-backend/src/service/router.test.ts b/plugins/vault-backend/src/service/router.test.ts index a4799fc2d8..97997b30ef 100644 --- a/plugins/vault-backend/src/service/router.test.ts +++ b/plugins/vault-backend/src/service/router.test.ts @@ -14,18 +14,32 @@ * limitations under the License. */ -import { getVoidLogger } from '@backstage/backend-common'; +import { getVoidLogger, DatabaseManager } from '@backstage/backend-common'; import { ConfigReader } from '@backstage/config'; import express from 'express'; import request from 'supertest'; +import { TestDatabases } from '@backstage/backend-test-utils'; +import { TaskScheduler } from '@backstage/backend-tasks'; import { createRouter } from './router'; describe('createRouter', () => { let app: express.Express; + const databases = TestDatabases.create({ + ids: ['POSTGRES_13', 'POSTGRES_9', 'SQLITE_3'], + }); beforeAll(async () => { - const router = await createRouter({ + const knex = await databases.init('SQLITE_3'); + const databaseManager: Partial = { + forPlugin: (_: string) => ({ + getClient: async () => knex, + }), + }; + const manager = databaseManager as DatabaseManager; + const scheduler = new TaskScheduler(manager, getVoidLogger()); + + const router = createRouter({ logger: getVoidLogger(), config: new ConfigReader({ vault: { @@ -33,6 +47,7 @@ describe('createRouter', () => { token: '1234567890', }, }), + scheduler: scheduler.forPlugin('vault'), }); app = express().use(router); }); diff --git a/plugins/vault-backend/src/service/router.ts b/plugins/vault-backend/src/service/router.ts index 5ad98b5610..45e2ca8c86 100644 --- a/plugins/vault-backend/src/service/router.ts +++ b/plugins/vault-backend/src/service/router.ts @@ -14,20 +14,31 @@ * limitations under the License. */ +import { PluginTaskScheduler } from '@backstage/backend-tasks'; import { Config } from '@backstage/config'; import express from 'express'; import { Logger } from 'winston'; import { VaultBuilder } from './VaultBuilder'; +/** + * Options for the router creation. + * @public + */ export interface RouterOptions { logger: Logger; config: Config; + scheduler: PluginTaskScheduler; } -export async function createRouter( - options: RouterOptions, -): Promise { - const { router } = await VaultBuilder.createBuilder(options).build(); +/** + * Creates the routes used for Vault. + * + * @param options - The options used for the Vault's router creation + * @returns The router for Vault + * @public + */ +export function createRouter(options: RouterOptions): express.Router { + const { router } = VaultBuilder.createBuilder(options).build(); return router; } diff --git a/plugins/vault-backend/src/service/runPeriodically.ts b/plugins/vault-backend/src/service/runPeriodically.ts deleted file mode 100644 index 2f3104e221..0000000000 --- a/plugins/vault-backend/src/service/runPeriodically.ts +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2020 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. - */ - -/** - * Runs a function repeatedly, with a fixed wait between invocations. - * - * Supports async functions, and silently ignores exceptions and rejections. - * - * @param fn - The function to run. May return a Promise. - * @param delayMs - The delay between a completed function invocation and the - * next. - * @returns A function that, when called, stops the invocation loop. - */ -export function runPeriodically(fn: () => any, delayMs: number): () => void { - let cancel: () => void; - let cancelled = false; - const cancellationPromise = new Promise(resolve => { - cancel = () => { - resolve(); - cancelled = true; - }; - }); - - const startRefresh = async () => { - while (!cancelled) { - try { - await fn(); - } catch { - // ignore intentionally - } - - await Promise.race([ - new Promise(resolve => setTimeout(resolve, delayMs)), - cancellationPromise, - ]); - } - }; - startRefresh(); - - return cancel!; -} diff --git a/plugins/vault-backend/src/service/standaloneApplication.ts b/plugins/vault-backend/src/service/standaloneApplication.ts index 29262744e5..bcec8ca419 100644 --- a/plugins/vault-backend/src/service/standaloneApplication.ts +++ b/plugins/vault-backend/src/service/standaloneApplication.ts @@ -18,6 +18,8 @@ import { errorHandler, notFoundHandler, requestLoggingHandler, + DatabaseManager, + getVoidLogger, } from '@backstage/backend-common'; import compression from 'compression'; import cors from 'cors'; @@ -26,6 +28,8 @@ import helmet from 'helmet'; import { Logger } from 'winston'; import { createRouter } from './router'; import { ConfigReader } from '@backstage/config'; +import { TestDatabases } from '@backstage/backend-test-utils'; +import { TaskScheduler } from '@backstage/backend-tasks'; export interface ApplicationOptions { enableCors: boolean; @@ -39,6 +43,20 @@ export async function createStandaloneApplication( const config = new ConfigReader({}); const app = express(); + const databases = TestDatabases.create({ + ids: ['POSTGRES_13', 'POSTGRES_9', 'SQLITE_3'], + }); + const knex = await databases.init('SQLITE_3'); + const databaseManager: Partial = { + forPlugin: (_: string) => ({ + getClient: async () => knex, + }), + }; + const manager = databaseManager as DatabaseManager; + const scheduler = new TaskScheduler(manager, getVoidLogger()).forPlugin( + 'vault', + ); + app.use(helmet()); if (enableCors) { app.use(cors()); @@ -46,7 +64,7 @@ export async function createStandaloneApplication( app.use(compression()); app.use(express.json()); app.use(requestLoggingHandler()); - app.use('/', await createRouter({ logger, config })); + app.use('/', createRouter({ logger, config, scheduler })); app.use(notFoundHandler()); app.use(errorHandler()); diff --git a/plugins/vault-backend/src/service/vaultApi.test.ts b/plugins/vault-backend/src/service/vaultApi.test.ts index 6e2ab24c3f..5a29633933 100644 --- a/plugins/vault-backend/src/service/vaultApi.test.ts +++ b/plugins/vault-backend/src/service/vaultApi.test.ts @@ -17,7 +17,7 @@ import { setupRequestMockHandlers } from '@backstage/backend-test-utils'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; -import { Secret, VaultClient, VaultSecretList } from './vaultApi'; +import { VaultSecret, VaultClient, VaultSecretList } from './vaultApi'; import { ConfigReader } from '@backstage/config'; describe('VaultApi', () => { @@ -43,7 +43,7 @@ describe('VaultApi', () => { }, }; - const mockSecretsResult: Secret[] = [ + const mockSecretsResult: VaultSecret[] = [ { name: 'secret::one', editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, diff --git a/plugins/vault-backend/src/service/vaultApi.ts b/plugins/vault-backend/src/service/vaultApi.ts index 89ff578727..af85fbec72 100644 --- a/plugins/vault-backend/src/service/vaultApi.ts +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -18,30 +18,61 @@ import { Config } from '@backstage/config'; import fetch from 'cross-fetch'; import { getVaultConfig, VaultConfig } from '../config'; +/** + * Object received as a response from the Vault API when fetching secrets + * @public + */ export type VaultSecretList = { data: { keys: string[]; }; }; -export type Secret = { +/** + * Object containing the secret name and some links + * @public + */ +export type VaultSecret = { name: string; showUrl: string; editUrl: string; }; +/** + * Object received as response when the token is renewed using the Vault API + * @public + */ export type RenewTokenResponse = { auth: { client_token: string; }; }; +/** + * Interface for the Vault API + * @public + */ export interface VaultApi { + /** + * Returns the URL to acces the Vault UI with the defined config. + */ getFrontendSecretsUrl(): string; - listSecrets(secretPath: string): Promise; + /** + * Returns a list of secrets used to show in a table. + * @param secretPath - The path where the secrets are stored in Vault + */ + listSecrets(secretPath: string): Promise; + /** + * Optional, to renew the token used to list the secrets. Returns true + * if the action was successfull, false otherwise. + */ renewToken?(): Promise; } +/** + * Implementation of the Vault API to list secrets and renew the token if necessary + * @public + */ export class VaultClient implements VaultApi { private vaultConfig: VaultConfig; @@ -81,7 +112,7 @@ export class VaultClient implements VaultApi { return `${this.vaultConfig.baseUrl}/ui/vault/secrets/${this.vaultConfig.secretEngine}`; } - async listSecrets(secretPath: string): Promise { + async listSecrets(secretPath: string): Promise { const listUrl = this.vaultConfig.kvVersion === 2 ? `v1/${this.vaultConfig.secretEngine}/metadata/${secretPath}` @@ -91,7 +122,7 @@ export class VaultClient implements VaultApi { return []; } - const secrets: Secret[] = []; + const secrets: VaultSecret[] = []; await Promise.all( result.data.keys.map(async secret => { if (this.isFolder(secret)) { diff --git a/plugins/vault/api-report.md b/plugins/vault/api-report.md index a5b38f50c7..a0b5773c70 100644 --- a/plugins/vault/api-report.md +++ b/plugins/vault/api-report.md @@ -7,14 +7,10 @@ import { BackstagePlugin } from '@backstage/core-plugin-api'; -// Warning: (ae-missing-release-tag) "EntityVaultCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export const EntityVaultCard: () => JSX.Element; -// Warning: (ae-missing-release-tag) "vaultPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export const vaultPlugin: BackstagePlugin<{}, {}>; // (No @packageDocumentation comment for this package) diff --git a/plugins/vault/package.json b/plugins/vault/package.json index b4be19adec..ec6ec0e643 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault", "description": "A Backstage plugin that integrates towards Vault", - "version": "0.1.0", + "version": "0.0.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-test-utils": "^0.1.23", - "@backstage/catalog-model": "^1.0.1", - "@backstage/core-components": "^0.9.3", - "@backstage/core-plugin-api": "^1.0.1", - "@backstage/plugin-catalog-react": "^1.0.1", + "@backstage/backend-test-utils": "^0.1.24", + "@backstage/catalog-model": "^1.0.2", + "@backstage/core-components": "^0.9.4", + "@backstage/core-plugin-api": "^1.0.2", + "@backstage/plugin-catalog-react": "^1.1.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.0", - "@backstage/core-app-api": "^1.0.1", - "@backstage/dev-utils": "^1.0.1", - "@backstage/test-utils": "^1.0.1", + "@backstage/cli": "^0.17.1", + "@backstage/core-app-api": "^1.0.2", + "@backstage/dev-utils": "^1.0.2", + "@backstage/test-utils": "^1.1.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/vault/src/api.test.ts b/plugins/vault/src/api.test.ts index f1337241c2..a913be01be 100644 --- a/plugins/vault/src/api.test.ts +++ b/plugins/vault/src/api.test.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import { setupRequestMockHandlers } from '@backstage/backend-test-utils'; +import { setupRequestMockHandlers } from '@backstage/test-utils'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; -import { Secret, VaultClient } from './api'; +import { VaultSecret, VaultClient } from './api'; import { UrlPatternDiscovery } from '@backstage/core-app-api'; describe('api', () => { @@ -27,7 +27,7 @@ describe('api', () => { const mockBaseUrl = 'https://api-vault.com/api/vault'; const discoveryApi = UrlPatternDiscovery.compile(mockBaseUrl); - const mockSecretsResult: Secret[] = [ + const mockSecretsResult: VaultSecret[] = [ { name: 'secret::one', editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, diff --git a/plugins/vault/src/api.ts b/plugins/vault/src/api.ts index 0b9c2ddc94..ce92eb7538 100644 --- a/plugins/vault/src/api.ts +++ b/plugins/vault/src/api.ts @@ -19,20 +19,14 @@ export const vaultApiRef = createApiRef({ id: 'plugin.vault.service', }); -export type VaultSecretList = { - data: { - keys: string[]; - }; -}; - -export type Secret = { +export type VaultSecret = { name: string; showUrl: string; editUrl: string; }; export interface VaultApi { - listSecrets(secretPath: string): Promise; + listSecrets(secretPath: string): Promise; } export class VaultClient implements VaultApi { @@ -61,8 +55,8 @@ export class VaultClient implements VaultApi { return undefined; } - async listSecrets(secretPath: string): Promise { - const result = await this.callApi('v1/secrets', { + async listSecrets(secretPath: string): Promise { + const result = await this.callApi('v1/secrets', { path: secretPath, }); if (!result) { diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx index 17353974a1..805039e2ea 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx @@ -24,7 +24,7 @@ import { ComponentEntity } from '@backstage/catalog-model'; import { renderInTestApp } from '@backstage/test-utils'; import { EntityVaultTable } from './EntityVaultTable'; import { ApiProvider, UrlPatternDiscovery } from '@backstage/core-app-api'; -import { Secret, vaultApiRef, VaultClient } from '../../api'; +import { VaultSecret, vaultApiRef, VaultClient } from '../../api'; import { rest } from 'msw'; describe('EntityVautTable', () => { @@ -68,7 +68,7 @@ describe('EntityVautTable', () => { }, }; - const mockSecretsResult: Secret[] = [ + const mockSecretsResult: VaultSecret[] = [ { name: 'secret::one', editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx index 5356342a5c..197c82c5b8 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx @@ -22,7 +22,7 @@ import Edit from '@material-ui/icons/Edit'; import Visibility from '@material-ui/icons/Visibility'; import Alert from '@material-ui/lab/Alert'; import useAsync from 'react-use/lib/useAsync'; -import { Secret, vaultApiRef } from '../../api'; +import { VaultSecret, vaultApiRef } from '../../api'; import { VAULT_SECRET_PATH_ANNOTATION } from '../../constants'; export const vaultSecretPath = (entity: Entity) => { @@ -35,7 +35,9 @@ export const vaultSecretPath = (entity: Entity) => { export const EntityVaultTable = ({ entity }: { entity: Entity }) => { const vaultApi = useApi(vaultApiRef); const { secretPath } = vaultSecretPath(entity); - const { value, loading, error } = useAsync(async (): Promise => { + const { value, loading, error } = useAsync(async (): Promise< + VaultSecret[] + > => { return vaultApi.listSecrets(secretPath); }, []); diff --git a/plugins/vault/src/plugin.ts b/plugins/vault/src/plugin.ts index b07d7820f3..8275505abb 100644 --- a/plugins/vault/src/plugin.ts +++ b/plugins/vault/src/plugin.ts @@ -23,6 +23,10 @@ import { import { VaultClient, vaultApiRef } from './api'; +/** + * The vault plugin. + * @public + */ export const vaultPlugin = createPlugin({ id: 'vault', apis: [ @@ -37,6 +41,10 @@ export const vaultPlugin = createPlugin({ ], }); +/** + * Card used to show the list of Vault secrets. + * @public + */ export const EntityVaultCard = vaultPlugin.provide( createComponentExtension({ name: 'EntityVaultCard', diff --git a/yarn.lock b/yarn.lock index c287b11e76..88ad1e15aa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1467,30 +1467,16 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/app-defaults@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.1.tgz#adb7a1f974463fb9fde18dd4038d80ca4839ce4e" - integrity sha512-+RKNsADsd2s5XFiFxkfxHf/OxMwY3X7avYFhk+Y9Ho/mPMbMHvlXcW9NAr4h9jC8uy9TNLB5XGTqWwe4HPU0xA== +"@backstage/backend-common@^0.13.5": + version "0.13.5" + resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.5.tgz#9ff55e1da2a9cf65d0c4782cb360f9b6abd0754c" + integrity sha512-37kLw1BolfstantREuawbyRKXD+xKHUta3A63j0868JZPxRSCfiysBzF3uAorH/3WIh0p2lswutmunbVQFsXDA== dependencies: - "@backstage/core-app-api" "^1.0.1" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/plugin-permission-react" "^0.4.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - react-router-dom "6.0.0-beta.0" - -"@backstage/backend-common@^0.13.2": - version "0.13.2" - resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.2.tgz#c3619dee671936f306f49eae9c8bbde436cbc40d" - integrity sha512-FblxaHCw29N4ME1uHb+513EXcbn30vA224+6cj8159Wje2Rcv8EdMFtuf2awCNcYgoIdDD/R1wwBPeRmZhtERw== - dependencies: - "@backstage/cli-common" "^0.1.8" - "@backstage/config" "^1.0.0" - "@backstage/config-loader" "^1.1.0" + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/config-loader" "^1.1.1" "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.1.0" + "@backstage/integration" "^1.2.0" "@backstage/types" "^1.0.0" "@google-cloud/storage" "^5.8.0" "@keyv/redis" "^2.2.3" @@ -1503,23 +1489,24 @@ "@types/webpack-env" "^1.15.2" archiver "^5.0.2" aws-sdk "^2.840.0" + base64-stream "^1.0.0" compression "^1.7.4" concat-stream "^2.0.0" cors "^2.8.5" dockerode "^3.3.1" express "^4.17.1" express-promise-router "^4.1.0" - fs-extra "10.0.1" + fs-extra "10.1.0" git-url-parse "^11.6.0" helmet "^5.0.2" isomorphic-git "^1.8.0" - jose "^1.27.1" + jose "^4.6.0" keyv "^4.0.3" keyv-memcache "^1.2.5" knex "^1.0.2" lodash "^4.17.21" logform "^2.3.2" - luxon "^2.0.2" + luxon "^2.3.1" minimatch "^5.0.0" minimist "^1.2.5" morgan "^1.10.0" @@ -1533,443 +1520,6 @@ winston "^3.2.1" yn "^4.0.0" -"@backstage/backend-test-utils@^0.1.23": - version "0.1.23" - resolved "https://registry.npmjs.org/@backstage/backend-test-utils/-/backend-test-utils-0.1.23.tgz#30f003efa1e5fbdd039a945637eaea089cf06f8f" - integrity sha512-tr5/GGumq0z97aQ1lOna9veqwgmVcFZgjFLuApfdeim+QkI0E8PvBLGaq5H3Vo6xw6Z21UKX0SeGE81QUi6pZw== - dependencies: - "@backstage/backend-common" "^0.13.2" - "@backstage/cli" "^0.17.0" - "@backstage/config" "^1.0.0" - better-sqlite3 "^7.5.0" - knex "^1.0.2" - msw "^0.35.0" - mysql2 "^2.2.5" - pg "^8.3.0" - testcontainers "^8.1.2" - uuid "^8.0.0" - -"@backstage/catalog-client@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.1.tgz#f19888635825b3104b0e293409d924fb5e21feb9" - integrity sha512-2JUEqtR3v361JM6JDjTt8k/tlZd27RB/ZQ2Vwp5seJf4QYXfR9s5AM4M35l/A5vosDKhGrxMAq3t2s4gcH9vVg== - dependencies: - "@backstage/catalog-model" "^1.0.1" - "@backstage/errors" "^1.0.0" - cross-fetch "^3.1.5" - -"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.1.tgz#16acb8cf52083dd038da7d9fae38811fd88d55e5" - integrity sha512-VxKQ+WzcsxAWtwWyeGw04vTefkmwxi6XweXSNRhNddXAVqsAbDcCYBUc9jylu0bYVXXWYJkEl8kiwyawUloPPQ== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - ajv "^8.10.0" - json-schema "^0.4.0" - lodash "^4.17.21" - uuid "^8.0.0" - -"@backstage/cli-common@^0.1.8": - version "0.1.8" - resolved "https://registry.npmjs.org/@backstage/cli-common/-/cli-common-0.1.8.tgz#a20777b0448cada100b3967592925dc15fa25be5" - integrity sha512-OSFUhEaPMbdGvB130GRlJ+tZvvIRYGZK10sIcOGuXg3cl/K+sVAWh1XuewBLa+YI6wspAsReNiMR/+YbH8q2/A== - -"@backstage/cli@^0.17.0": - version "0.17.0" - resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.0.tgz#d9fa2fd14ba8984950398f9e7b018d2970b5ce26" - integrity sha512-DWM5GRnvkehoNvPZWgmbl36DfzcDsUMYCT8Mh0ThiyllnS7VwU1EYBtvUR6IubxVZIVy6RIdwzCXnVczp4kAOQ== - dependencies: - "@backstage/cli-common" "^0.1.8" - "@backstage/config" "^1.0.0" - "@backstage/config-loader" "^1.1.0" - "@backstage/errors" "^1.0.0" - "@backstage/release-manifests" "^0.0.2" - "@backstage/types" "^1.0.0" - "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" - "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" - "@manypkg/get-packages" "^1.1.3" - "@octokit/request" "^5.4.12" - "@rollup/plugin-commonjs" "^21.0.1" - "@rollup/plugin-json" "^4.1.0" - "@rollup/plugin-node-resolve" "^13.0.0" - "@rollup/plugin-yaml" "^3.1.0" - "@spotify/eslint-config-base" "^13.0.0" - "@spotify/eslint-config-react" "^13.0.0" - "@spotify/eslint-config-typescript" "^13.0.0" - "@sucrase/jest-plugin" "^2.1.1" - "@sucrase/webpack-loader" "^2.0.0" - "@svgr/plugin-jsx" "6.2.x" - "@svgr/plugin-svgo" "6.2.x" - "@svgr/rollup" "6.2.x" - "@svgr/webpack" "6.2.x" - "@types/webpack-env" "^1.15.2" - "@typescript-eslint/eslint-plugin" "^5.9.0" - "@typescript-eslint/parser" "^5.9.0" - "@yarnpkg/lockfile" "^1.1.0" - bfj "^7.0.2" - buffer "^6.0.3" - chalk "^4.0.0" - chokidar "^3.3.1" - commander "^6.1.0" - css-loader "^6.5.1" - diff "^5.0.0" - esbuild "^0.14.10" - esbuild-loader "^2.18.0" - eslint "^8.6.0" - eslint-config-prettier "^8.3.0" - eslint-formatter-friendly "^7.0.0" - eslint-plugin-deprecation "^1.3.2" - eslint-plugin-import "^2.25.4" - eslint-plugin-jest "^26.1.2" - eslint-plugin-jsx-a11y "^6.5.1" - eslint-plugin-monorepo "^0.3.2" - eslint-plugin-react "^7.28.0" - eslint-plugin-react-hooks "^4.3.0" - eslint-webpack-plugin "^3.1.1" - express "^4.17.1" - fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" - fs-extra "10.0.1" - glob "^7.1.7" - handlebars "^4.7.3" - html-webpack-plugin "^5.3.1" - inquirer "^8.2.0" - jest "^27.5.1" - jest-css-modules "^2.1.0" - jest-runtime "^27.5.1" - jest-transform-yaml "^1.0.0" - json-schema "^0.4.0" - lodash "^4.17.21" - mini-css-extract-plugin "^2.4.2" - minimatch "5.0.1" - node-libs-browser "^2.2.1" - npm-packlist "^5.0.0" - ora "^5.3.0" - postcss "^8.1.0" - process "^0.11.10" - react-dev-utils "^12.0.0-next.60" - react-hot-loader "^4.13.0" - recursive-readdir "^2.2.2" - replace-in-file "^6.0.0" - rollup "^2.60.2" - rollup-plugin-dts "^4.0.1" - rollup-plugin-esbuild "^4.7.2" - rollup-plugin-postcss "^4.0.0" - rollup-pluginutils "^2.8.2" - run-script-webpack-plugin "^0.0.11" - semver "^7.3.2" - style-loader "^3.3.1" - sucrase "^3.20.2" - tar "^6.1.2" - terser-webpack-plugin "^5.1.3" - util "^0.12.3" - webpack "^5.66.0" - webpack-dev-server "^4.7.3" - webpack-node-externals "^3.0.0" - yaml "^1.10.0" - yml-loader "^2.1.0" - yn "^4.0.0" - zod "^3.11.6" - -"@backstage/config-loader@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.0.tgz#477127d84705ed9a63451563c31ecb4592e58dbc" - integrity sha512-pZJz54pOSfZ5MC8vhDVrq1yM4p/T2O1iQNW5br5iv/e1JjHWpGt00yeZOxsHpsOeAfTl2JRpooUQQxpJQ47uUQ== - dependencies: - "@backstage/cli-common" "^0.1.8" - "@backstage/config" "^1.0.0" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - "@types/json-schema" "^7.0.6" - ajv "^8.10.0" - chokidar "^3.5.2" - fs-extra "10.0.1" - json-schema "^0.4.0" - json-schema-merge-allof "^0.8.1" - json-schema-traverse "^1.0.0" - node-fetch "^2.6.7" - typescript-json-schema "^0.53.0" - yaml "^1.9.2" - yup "^0.32.9" - -"@backstage/config@^1.0.0": - version "1.0.0" - resolved "https://registry.npmjs.org/@backstage/config/-/config-1.0.0.tgz#7af40758ae3f8e1d9ef3a07f063a1fd9cf5c364e" - integrity sha512-0M8UPHjCev3i/Puz/DGV7hor/vujx27bpWip5UTjachzBorI5xB0CBV1GfZ1UZMm5R5py7RJ+lKdmSJVFdw9IA== - dependencies: - "@backstage/types" "^1.0.0" - lodash "^4.17.21" - -"@backstage/core-app-api@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.1.tgz#56743fb135588f522e97e7e88a848c9a8f351406" - integrity sha512-DLsEOpmvUA+LRbhlHiYWGq360lm/WcD2uk27HXWmhEcOnvY/xUItR/aFkHF9QRuGLsU3DQkJb4/ts6/vPjuvvQ== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - "@types/prop-types" "^15.7.3" - prop-types "^15.7.2" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - zod "^3.11.6" - -"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.3": - version "0.9.3" - resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.3.tgz#79d8bcea06281da492730fe8eb14aa18877b27c4" - integrity sha512-cZr6pT3Q7whzdKvB/M3P4NH2/J4+GHKLvQsnRNoel+DE6PmenyAPDslSRf62Lu17+n6qZNHPMfySK1rePnf0Kg== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/theme" "^0.2.15" - "@material-table/core" "^3.1.0" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - "@react-hookz/web" "^13.0.0" - "@types/react-sparklines" "^1.7.0" - "@types/react-text-truncate" "^0.14.0" - ansi-regex "^6.0.1" - classnames "^2.2.6" - d3-selection "^3.0.0" - d3-shape "^3.0.0" - d3-zoom "^3.0.0" - dagre "^0.8.5" - history "^5.0.0" - immer "^9.0.1" - lodash "^4.17.21" - pluralize "^8.0.0" - prop-types "^15.7.2" - qs "^6.9.4" - rc-progress "3.2.4" - react-helmet "6.1.0" - react-hook-form "^7.12.2" - react-markdown "^8.0.0" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - react-sparklines "^1.7.0" - react-syntax-highlighter "^15.4.5" - react-text-truncate "^0.18.0" - react-use "^17.3.2" - react-virtualized-auto-sizer "^1.0.6" - react-window "^1.8.6" - remark-gfm "^3.0.1" - zen-observable "^0.8.15" - zod "^3.11.6" - -"@backstage/core-plugin-api@^1.0.0", "@backstage/core-plugin-api@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/core-plugin-api/-/core-plugin-api-1.0.1.tgz#2ad19da6765c40db353c6ae5bf4255dab1f47be2" - integrity sha512-x7xlSDqi7SuVgbq9NSdzciDEThIfytVmtbZasY/TtHH3upLre/5AFb8SiPEFiQJX6QBmPWeKG/I+LW+91cEMig== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - history "^5.0.0" - prop-types "^15.7.2" - react-router-dom "6.0.0-beta.0" - zen-observable "^0.8.15" - -"@backstage/dev-utils@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.1.tgz#42c8c8cd2521c7908ad4f60769709a56ae173a2c" - integrity sha512-f3AYmGkqgKLUgWlAX9vKLjl7C86UGQlsJvYACCR4sU35TOfaL9L8uJ/Tr9jxkGT6warpaTWzpa/pyg6FGFgIOw== - dependencies: - "@backstage/app-defaults" "^1.0.1" - "@backstage/catalog-model" "^1.0.1" - "@backstage/core-app-api" "^1.0.1" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/integration-react" "^1.0.1" - "@backstage/plugin-catalog-react" "^1.0.1" - "@backstage/test-utils" "^1.0.1" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - react-hot-loader "^4.13.0" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - -"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.0.1.tgz#47f56df1fdc9c30ab43be4471667769989b2192e" - integrity sha512-+ED8g3cJFjSrbeldhgjAaPfjygRM+iDPYKwpQGLRGT1u7gyyDVtCwrg1WFRihbvG0PFbv6Nf0+la/V2Y42whpg== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/integration" "^1.1.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - react-use "^17.2.4" - -"@backstage/integration@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.1.0.tgz#4784fe96cca5af0e9bf6ca98ee357338c43f797d" - integrity sha512-2yf1ioFsbivHf/PtQy66WT7pa9Mzazc44OORDO4EFEsJT4noIZHff2NZfHvg/5dFFQPPPY/esyEf83jhsOE7Wg== - dependencies: - "@backstage/config" "^1.0.0" - "@octokit/auth-app" "^3.4.0" - "@octokit/rest" "^18.5.3" - cross-fetch "^3.1.5" - git-url-parse "^11.6.0" - lodash "^4.17.21" - luxon "^2.0.2" - -"@backstage/plugin-catalog-common@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-common/-/plugin-catalog-common-1.0.1.tgz#97d70bfb6083e576e2163af19fd096e9f97f7b88" - integrity sha512-zPf8OGSjH+ZftMnjBxTgwLtgapnO1L7fzulLQ2RRaWrUcXGk8N3szQBDcqwxfBFiWSIX1G4vvRi/BGXFMUMlnw== - dependencies: - "@backstage/plugin-permission-common" "^0.6.0" - "@backstage/search-common" "^0.3.3" - -"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.0.1.tgz#647cb19bff2885bb4e1e289bb1b751a7e9a36477" - integrity sha512-oDHYsU6C9/h0X1qJV8YNSQjGpL51ZdgXLuxKFYmsQv3Bw/dbxUNfoaEd1/+rQLbGW/EVZj1ma9HyF3u32wNSiA== - dependencies: - "@backstage/catalog-client" "^1.0.1" - "@backstage/catalog-model" "^1.0.1" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.1.0" - "@backstage/plugin-catalog-common" "^1.0.1" - "@backstage/plugin-permission-common" "^0.6.0" - "@backstage/plugin-permission-react" "^0.4.0" - "@backstage/theme" "^0.2.15" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - classnames "^2.2.6" - jwt-decode "^3.1.0" - lodash "^4.17.21" - qs "^6.9.4" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - yaml "^1.10.0" - zen-observable "^0.8.15" - -"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.20": - version "0.4.20" - resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.20.tgz#ba66cad0c7c275a3add56fc09d3c550b4aa23d5d" - integrity sha512-OhOd69fZwbOMifb8+DkqJx72q8q7GB6btLho2JdGNqKv+i4hWmnodwNp6ibs32guPY6alqj7tsjUleOuVFASPA== - dependencies: - "@backstage/catalog-model" "^1.0.1" - "@backstage/config" "^1.0.0" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/plugin-catalog-react" "^1.0.1" - "@backstage/plugin-stack-overflow" "^0.1.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - lodash "^4.17.21" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - -"@backstage/plugin-permission-common@^0.6.0": - version "0.6.0" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-common/-/plugin-permission-common-0.6.0.tgz#85464aa10d1f271252775e5eb30ecfd88e2af152" - integrity sha512-wx5TUDFilRqmMJP8TxjR5GuulFFOPHNwoK6eNMuz5ESzLzPhiJDovqaXjqpxsdCVGNb2VJOUlND3SzbwjQ65aA== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/errors" "^1.0.0" - cross-fetch "^3.1.5" - uuid "^8.0.0" - zod "^3.11.6" - -"@backstage/plugin-permission-react@^0.4.0": - version "0.4.0" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-react/-/plugin-permission-react-0.4.0.tgz#3135b8bbd0e303afafeeae7b9a0d4de7d9e1198c" - integrity sha512-bqyBWHKQKT7Lsk4Z3Y6m2FkczN/0I7cRHiBAqv8go8etYk+tEsud9Mk7lRMX/e4+RKg3i4bLcUHerWdEeNqagw== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/plugin-permission-common" "^0.6.0" - cross-fetch "^3.1.5" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - swr "^1.1.2" - -"@backstage/plugin-search-common@0.3.3", "@backstage/plugin-search-common@^0.3.3": - version "0.3.3" - resolved "https://registry.npmjs.org/@backstage/plugin-search-common/-/plugin-search-common-0.3.3.tgz#e9251172163731aef61626b3e1ec40504a38cb11" - integrity sha512-CARcpoMFEQJdpe+Rm9m/mPhMOsWM0V+zncIHOLuKlzsMrQRTcwmcFoPqBdtlfdT9wEJTu1bci2ccsDsnZiSrhA== - dependencies: - "@backstage/plugin-permission-common" "^0.6.0" - "@backstage/types" "^1.0.0" - -"@backstage/plugin-stack-overflow@^0.1.0": - version "0.1.0" - resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.0.tgz#5f5ee8b30d684b7c71f746fe923c16875a62d621" - integrity sha512-ti0eEwkiu+cmihIISiEA5tqQil6gISyy34flQyxL0wukLNrKAOYCq+lgrN+N/MqJijXoy/FugWhX24+PKsocLQ== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-components" "^0.9.3" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/plugin-home" "^0.4.20" - "@backstage/plugin-search-common" "^0.3.3" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@testing-library/jest-dom" "^5.10.1" - cross-fetch "^3.1.5" - lodash "^4.17.21" - qs "^6.9.4" - react-use "^17.2.4" - -"@backstage/release-manifests@^0.0.2": - version "0.0.2" - resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.2.tgz#42faca60dae0c89cf6bc6fbf1b34e1e8cb2a564b" - integrity sha512-gBzcxIlDM3k0SXhVfyKQDxRvwS2hdXPy1qQU+wcVijImGez0CIIw1iD1+ksCYpWKb8uGZFovLj4fEvm5fA942g== - dependencies: - cross-fetch "^3.1.5" - -"@backstage/search-common@^0.3.3": - version "0.3.3" - resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.3.tgz#756af22187283b754aefdc436c651231054be269" - integrity sha512-DtWd1Nrpvm2fkJRkw6bW8WeB6cFOvxsJ//o/fcoMsD5NCnaFtE1kFlCEt6QuUl6chAg6d+cX0rU+DJjSIC1rgQ== - dependencies: - "@backstage/plugin-search-common" "0.3.3" - -"@backstage/test-utils@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.0.1.tgz#ce8c6e75bcd424b527d4f903ee6f276a8d1855b7" - integrity sha512-KXG0VXqR+Q/GIJz0Ycasr5ZBOtUxAjA1prbY2L4NovaZNyCC/emIaOw/zqhvhhX6XdHV4pP5sQBbAhg4Ceoc6g== - dependencies: - "@backstage/config" "^1.0.0" - "@backstage/core-app-api" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.1" - "@backstage/plugin-permission-common" "^0.6.0" - "@backstage/plugin-permission-react" "^0.4.0" - "@backstage/theme" "^0.2.15" - "@backstage/types" "^1.0.0" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.11.2" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - cross-fetch "^3.1.5" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - zen-observable "^0.8.15" - "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -7307,18 +6857,10 @@ "@typescript-eslint/types" "5.23.0" "@typescript-eslint/visitor-keys" "5.23.0" -"@typescript-eslint/scope-manager@5.9.0": - version "5.9.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.9.0.tgz#02dfef920290c1dcd7b1999455a3eaae7a1a3117" - integrity sha512-DKtdIL49Qxk2a8icF6whRk7uThuVz4A6TCXfjdJSwOsf+9ree7vgQWcx0KOyCdk0i9ETX666p4aMhrRhxhUkyg== - dependencies: - "@typescript-eslint/types" "5.9.0" - "@typescript-eslint/visitor-keys" "5.9.0" - -"@typescript-eslint/type-utils@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.23.0.tgz#f852252f2fc27620d5bb279d8fed2a13d2e3685e" - integrity sha512-iuI05JsJl/SUnOTXA9f4oI+/4qS/Zcgk+s2ir+lRmXI+80D8GaGwoUqs4p+X+4AxDolPpEpVUdlEH4ADxFy4gw== +"@typescript-eslint/scope-manager@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.24.0.tgz#ac8c4d65064204b596909c204fe9b7e30c3f51b2" + integrity sha512-WpMWipcDzGmMzdT7NtTjRXFabx10WleLUGrJpuJLGaxSqpcyq5ACpKSD5VE40h2nz3melQ91aP4Du7lh9FliCA== dependencies: "@typescript-eslint/types" "5.27.0" "@typescript-eslint/visitor-keys" "5.27.0" @@ -7350,13 +6892,18 @@ resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.23.0.tgz#8733de0f58ae0ed318dbdd8f09868cdbf9f9ad09" integrity sha512-NfBsV/h4dir/8mJwdZz7JFibaKC3E/QdeMEDJhiAE3/eMkoniZ7MjbEMCGXw6MZnZDMN3G9S0mH/6WUIj91dmw== -<<<<<<< HEAD "@typescript-eslint/types@5.24.0": version "5.24.0" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.24.0.tgz#565ff94a4b89073265e27514dc65225d18aabe6c" integrity sha512-Tpg1c3shTDgTmZd3qdUyd+16r/pGmVaVEbLs+ufuWP0EruVbUiEOmpBBQxBb9a8iPRxi8Rb2oiwOxuZJzSq11A== -======= +"@typescript-eslint/types@5.9.0": + version "5.9.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.9.0.tgz#e5619803e39d24a03b3369506df196355736e1a3" + integrity sha512-mWp6/b56Umo1rwyGCk8fPIzb9Migo8YOniBGPAQDNC6C52SeyNGN4gsVwQTAR+RS2L5xyajON4hOLwAGwPtUwg== + +"@typescript-eslint/typescript-estree@5.20.0": + version "5.20.0" resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.20.0.tgz#ab73686ab18c8781bbf249c9459a55dc9417d6b0" integrity sha512-36xLjP/+bXusLMrT9fMMYy1KJAGgHhlER2TqpUVDYUQg4w0q/NW/sg4UGAgVwAqb8V4zYg43KMUpM8vV2lve6w== dependencies: @@ -7381,6 +6928,19 @@ semver "^7.3.5" tsutils "^3.21.0" +"@typescript-eslint/typescript-estree@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.24.0.tgz#30b9cbc1af475b9e02aca34cfe9ba9e1bb820143" + integrity sha512-zcor6vQkQmZAQfebSPVwUk/FD+CvnsnlfKXYeQDsWXRF+t7SBPmIfNia/wQxCSeu1h1JIjwV2i9f5/DdSp/uDw== + dependencies: + "@typescript-eslint/types" "5.24.0" + "@typescript-eslint/visitor-keys" "5.24.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + "@typescript-eslint/typescript-estree@5.9.0": version "5.9.0" resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.9.0.tgz#0e5c6f03f982931abbfbc3c1b9df5fbf92a3490f" @@ -7394,15 +6954,15 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.23.0.tgz#4691c3d1b414da2c53d8943310df36ab1c50648a" - integrity sha512-dbgaKN21drqpkbbedGMNPCtRPZo1IOUr5EI9Jrrh99r5UW5Q0dz46RKXeSBoPV+56R6dFKpbrdhgUNSJsDDRZA== +"@typescript-eslint/utils@5.24.0": + version "5.24.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.24.0.tgz#7a854028040a305ddea129328e45cfb2c6406e75" + integrity sha512-K05sbWoeCBJH8KXu6hetBJ+ukG0k2u2KlgD3bN+v+oBKm8adJqVHpSSLHNzqyuv0Lh4GVSAUgZ5lB4icmPmWLw== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.23.0" - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/typescript-estree" "5.23.0" + "@typescript-eslint/scope-manager" "5.24.0" + "@typescript-eslint/types" "5.24.0" + "@typescript-eslint/typescript-estree" "5.24.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" @@ -7431,24 +6991,17 @@ resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.23.0.tgz#057c60a7ca64667a39f991473059377a8067c87b" integrity sha512-Vd4mFNchU62sJB8pX19ZSPog05B0Y0CE2UxAZPT5k4iqhRYjPnqyY3woMxCd0++t9OTqkgjST+1ydLBi7e2Fvg== dependencies: -<<<<<<< HEAD - "@typescript-eslint/types" "5.27.0" -======= "@typescript-eslint/types" "5.23.0" eslint-visitor-keys "^3.0.0" -<<<<<<< HEAD "@typescript-eslint/visitor-keys@5.24.0": version "5.24.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.24.0.tgz#bb3e9a788ccd50c53e03557e4e203599880c3123" integrity sha512-qzGwSXMyMnogcAo+/2fU+jhlPPVMXlIH2PeAonIKjJSoDKl1+lJVvG5Z5Oud36yU0TWK2cs1p/FaSN5J2OUFYA== dependencies: "@typescript-eslint/types" "5.24.0" ->>>>>>> Fix some typos and other requested changes eslint-visitor-keys "^3.3.0" -======= ->>>>>>> Fix some typos and other requested changes "@typescript-eslint/visitor-keys@5.9.0": version "5.9.0" resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.9.0.tgz#7585677732365e9d27f1878150fab3922784a1a6" @@ -8362,9 +7915,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1132.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1132.0.tgz#0cb615e97db5a5133914ba0f2bdc8ea10eef4069" - integrity sha512-NPDesfTrNx8UMQ5VuosQNlFFFhswJ8cGVcVltZBXKVl1kW0BCp52XQBySSruIznaRX7vG6Ir2+nox0NdL05qBQ== + version "2.1137.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1137.0.tgz#505e51b3c9ed31d54bbd620cb70d005e6086f23b" + integrity sha512-iOm81glo7Y3bj6bO6pUEhFlclfANe0ExBJOZ8TxFx2mE8KsaPkofAy8dSzwbn357yOyVxur9tkZgXM2f05ynlA== dependencies: buffer "4.9.2" events "1.1.1" @@ -9029,11 +8582,6 @@ btoa-lite@^1.0.0: resolved "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= -btoa@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz#01a9909f8b2c93f6bf680ba26131eb30f7fa3d73" - integrity sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g== - buffer-crc32@^0.2.1, buffer-crc32@^0.2.13, buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" @@ -9914,11 +9462,6 @@ commander@^5.1.0: resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== -commander@^6.1.0: - version "6.2.1" - resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" - integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== - commander@^7.2.0: version "7.2.0" resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" @@ -10276,20 +9819,12 @@ cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== -<<<<<<< HEAD cookie@0.5.0, cookie@~0.5.0: -======= -cookie@0.5.0: ->>>>>>> Fix some typos and other requested changes version "0.5.0" resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== -<<<<<<< HEAD -cookiejar@^2.1.3: -======= cookiejar@^2.1.0, cookiejar@^2.1.3: ->>>>>>> Fix some typos and other requested changes version "2.1.3" resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== @@ -11081,14 +10616,6 @@ dataloader@2.1.0, dataloader@^2.0.0: resolved "https://registry.npmjs.org/dataloader/-/dataloader-2.1.0.tgz#c69c538235e85e7ac6c6c444bae8ecabf5de9df7" integrity sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ== -<<<<<<< HEAD -======= -date-and-time@^2.0.0: - version "2.3.0" - resolved "https://registry.npmjs.org/date-and-time/-/date-and-time-2.3.0.tgz#1b509be4c938dbbf5fc9c14d66e1daf9fe3cef13" - integrity sha512-DY53oj742mykXjZzDxT7NxH5cxwBRb7FsVG5+8pcV96qU9JQd0UhA21pQB18fwwsXOXeSM0RJV4OzgVxu8eatg== - ->>>>>>> Fix some typos and other requested changes date-fns@^1.27.2: version "1.30.1" resolved "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" @@ -12105,8 +11632,8 @@ esbuild-windows-arm64@0.14.42: resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.42.tgz#79da8744626f24bc016dc40d016950b5a4a2bac5" integrity sha512-+lRAARnF+hf8J0mN27ujO+VbhPbDqJ8rCcJKye4y7YZLV6C4n3pTRThAb388k/zqF5uM0lS5O201u0OqoWSicw== -<<<<<<< HEAD esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: +<<<<<<< HEAD <<<<<<< HEAD version "0.14.42" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" @@ -12115,6 +11642,8 @@ esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: ======= esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.6: >>>>>>> Fix some typos and other requested changes +======= +>>>>>>> Apply changes, update tests & change vault icon temporarilly version "0.14.39" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.39.tgz#c926b2259fe6f6d3a94f528fb42e103c5a6d909a" integrity sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ== @@ -13391,15 +12920,6 @@ fs-constants@^1.0.0: resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-extra@10.0.1: - version "10.0.1" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz#27de43b4320e833f6867cc044bfce29fdf0ef3b8" - integrity sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-extra@10.1.0, fs-extra@^10.0.0, fs-extra@^10.0.1: version "10.1.0" resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -16222,13 +15742,6 @@ joi@^17.4.0: "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" -jose@^1.27.1: - version "1.28.1" - resolved "https://registry.npmjs.org/jose/-/jose-1.28.1.tgz#34a0f851a534be59ffab82a6e8845f6874e8c128" - integrity sha512-6JK28rFu5ENp/yxMwM+iN7YeaInnY9B9Bggjkz5fuwLiJhbVrl2O4SJr65bdNBPl9y27fdC3Mymh+FVCvozLIg== - dependencies: - "@panva/asn1.js" "^1.0.0" - jose@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/jose/-/jose-2.0.5.tgz#29746a18d9fff7dcf9d5d2a6f62cb0c7cd27abd3" @@ -16799,9 +16312,9 @@ keyv@^3.0.0: json-buffer "3.0.0" keyv@^4.0.0, keyv@^4.0.3: - version "4.2.7" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.2.7.tgz#00b8994d46098e8eb8c933cb29aaaf18be5effea" - integrity sha512-HeOstD8SXvtWoQhMMBCelcUuZsiV7T7MwsADtOXT0KuwYP9nCxrSoMDeLXNDTLN3VFSuRp38JzoGbbTboq3QQw== + version "4.2.9" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.2.9.tgz#b8f25d4968b583ed7f07fceadab646d4baadad6b" + integrity sha512-vqRBrN4xQHud7UMAGzGGFbt96MtGB9pb0OOg8Dhtq5RtiswCb1pCFq878iqC4hdeOP6eDPnCoFxA+2TXx427Ow== dependencies: compress-brotli "^1.3.8" json-buffer "3.0.1" @@ -17579,6 +17092,7 @@ lunr@^2.3.9: resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== +<<<<<<< HEAD <<<<<<< HEAD luxon@^1.23.x: version "1.28.0" @@ -17588,10 +17102,9 @@ luxon@^1.23.x: ======= <<<<<<< HEAD >>>>>>> Fix some typos and other requested changes -luxon@^2.0.2, luxon@^2.3.0, luxon@^2.3.1: ======= -luxon@^2.0.2, luxon@^2.3.0, luxon@^2.4.0: ->>>>>>> Fix some typos and other requested changes +>>>>>>> Apply changes, update tests & change vault icon temporarilly +luxon@^2.0.2, luxon@^2.3.0, luxon@^2.3.1: version "2.4.0" resolved "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz#9435806545bb32d4234dab766ab8a3d54847a765" integrity sha512-w+NAwWOUL5hO0SgwOHsMBAmZ15SoknmQXhSO0hIbJCAmPKSsGeK8MlmhYh2w6Iib38IxN2M+/ooXWLbeis7GuA== @@ -20924,17 +20437,10 @@ postgres-interval@^1.1.0: dependencies: xtend "^4.0.0" -<<<<<<< HEAD prebuild-install@^7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.0.tgz#991b6ac16c81591ba40a6d5de93fb33673ac1370" integrity sha512-CNcMgI1xBypOyGqjp3wOc8AAo1nMhZS3Cwd3iHIxOdAUbb+YxdNuM4Z5iIrZ8RLvOsf3F3bl7b7xGq6DjQoNYA== -======= -prebuild-install@^7.0.0: - version "7.0.1" - resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.0.1.tgz#c10075727c318efe72412f333e0ef625beaf3870" - integrity sha512-QBSab31WqkyxpnMWQxubYAHR5S9B2+r81ucocew34Fkl98FhvKIF50jIJnNOBmAZfyNV7vE5T6gd3hTVWgY6tg== ->>>>>>> Fix some typos and other requested changes dependencies: detect-libc "^2.0.0" expand-template "^2.0.3" @@ -24281,21 +23787,13 @@ svgo@^2.5.0, svgo@^2.7.0: picocolors "^1.0.0" stable "^0.1.8" -<<<<<<< HEAD swagger-client@^3.18.5: version "3.18.5" resolved "https://registry.npmjs.org/swagger-client/-/swagger-client-3.18.5.tgz#8034df561452f4bbd36871a8072394b7ca883106" integrity sha512-c0txGDtfQTJnaIBaEKCwtRNcUaaAfj+RXI4QVV9p3WW+AUCQqp4naCjaDNNsOfMkE4ySyhnblbL+jGqAVC7snw== -======= -swagger-client@^3.18.4: - version "3.18.4" - resolved "https://registry.npmjs.org/swagger-client/-/swagger-client-3.18.4.tgz#71be9df585157a3335a542c407733d2134fa75e9" - integrity sha512-Wj26oEctONq/u0uM+eSj18675YM5e2vFnx7Kr4neLeXEHKUsfceVQ/OdtrBXdrT3VbtdBbZfMTfl1JOBpix2MA== ->>>>>>> Fix some typos and other requested changes dependencies: "@babel/runtime-corejs3" "^7.11.2" - btoa "^1.2.1" - cookie "~0.4.1" + cookie "~0.5.0" cross-fetch "^3.1.5" deepmerge "~4.2.2" fast-json-patch "^3.0.0-1" @@ -26277,6 +25775,7 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" +<<<<<<< HEAD <<<<<<< HEAD ws@8.7.0, ws@^8.0.0, ws@^8.3.0: version "8.7.0" @@ -26284,10 +25783,13 @@ ws@8.7.0, ws@^8.0.0, ws@^8.3.0: integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== ======= <<<<<<< HEAD +======= +>>>>>>> Apply changes, update tests & change vault icon temporarilly ws@8.6.0, ws@^8.0.0, ws@^8.3.0: version "8.6.0" resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== +<<<<<<< HEAD ======= ws@8.5.0, ws@^8.4.2: version "8.5.0" @@ -26295,23 +25797,18 @@ ws@8.5.0, ws@^8.4.2: integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== >>>>>>> Fix some typos and other requested changes >>>>>>> Fix some typos and other requested changes +======= +>>>>>>> Apply changes, update tests & change vault icon temporarilly ws@^7.3.1, ws@^7.4.6: version "7.5.7" resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== -<<<<<<< HEAD ws@^8.4.2: version "8.5.0" resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== -======= -ws@^8.0.0, ws@^8.3.0: - version "8.6.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" - integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== ->>>>>>> Fix some typos and other requested changes ws@~7.4.2: version "7.4.6" @@ -26508,9 +26005,9 @@ yargs-parser@^20.2.2: integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs-parser@^21.0.0: - version "21.0.0" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.0.tgz#a485d3966be4317426dd56bdb6a30131b281dc55" - integrity sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA== + version "21.0.1" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35" + integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg== yargs-parser@^3.2.0: version "3.2.0" @@ -26568,15 +26065,13 @@ yargs@^17.0.1, yargs@^17.3.1: ======= yargs@^17.3.1: <<<<<<< HEAD +<<<<<<< HEAD >>>>>>> Fix some typos and other requested changes +======= +>>>>>>> Apply changes, update tests & change vault icon temporarilly version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== -======= - version "17.4.1" - resolved "https://registry.npmjs.org/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284" - integrity sha512-WSZD9jgobAg3ZKuCQZSa3g9QOJeCCqLoLAykiWgmXnDo9EPnn4RPf5qVTtzgOx66o6/oqhcA5tHtJXpG8pMt3g== ->>>>>>> Fix some typos and other requested changes dependencies: cliui "^7.0.2" escalade "^3.1.1" From 34536e7af62b317afde024145d37d6a51bbe4d85 Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 2 Jun 2022 17:37:17 +0200 Subject: [PATCH 205/550] Update package.json and yarn.lock Signed-off-by: ivgo --- plugins/vault-backend/package.json | 6 +- plugins/vault/package.json | 1 - yarn.lock | 478 +++++++++++++++++++++++------ 3 files changed, 384 insertions(+), 101 deletions(-) diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index efdf4ffd83..46fa30bf04 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -34,9 +34,9 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.13.5", - "@backstage/backend-tasks": "^0.3.1", - "@backstage/backend-test-utils": "^0.1.24", + "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-test-utils": "^0.1.25-next.1", "@backstage/config": "^1.0.1", "@types/compression": "^1.7.2", "@types/express": "*", diff --git a/plugins/vault/package.json b/plugins/vault/package.json index ec6ec0e643..7dcf2f6817 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -34,7 +34,6 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-test-utils": "^0.1.24", "@backstage/catalog-model": "^1.0.2", "@backstage/core-components": "^0.9.4", "@backstage/core-plugin-api": "^1.0.2", diff --git a/yarn.lock b/yarn.lock index 88ad1e15aa..7e34850f34 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1467,16 +1467,16 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/backend-common@^0.13.5": - version "0.13.5" - resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.5.tgz#9ff55e1da2a9cf65d0c4782cb360f9b6abd0754c" - integrity sha512-37kLw1BolfstantREuawbyRKXD+xKHUta3A63j0868JZPxRSCfiysBzF3uAorH/3WIh0p2lswutmunbVQFsXDA== +"@backstage/backend-common@^0.13.6-next.1": + version "0.13.6-next.1" + resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.6-next.1.tgz#8a890e27985cb77b1f3a4482cc6f97ccac2edeb4" + integrity sha512-zr0fEioWB2dUN3Z4m0kjkf04K+pyWVxAO3zp9VOd57IBSRoY0Ul1z+5Da7iCia/G7uTC2Hpe2X8TzEo0Toz1tA== dependencies: "@backstage/cli-common" "^0.1.9" "@backstage/config" "^1.0.1" - "@backstage/config-loader" "^1.1.1" + "@backstage/config-loader" "^1.1.2-next.0" "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.2.0" + "@backstage/integration" "^1.2.1-next.1" "@backstage/types" "^1.0.0" "@google-cloud/storage" "^5.8.0" "@keyv/redis" "^2.2.3" @@ -1520,6 +1520,182 @@ winston "^3.2.1" yn "^4.0.0" +"@backstage/backend-tasks@^0.3.2-next.1": + version "0.3.2-next.1" + resolved "https://registry.npmjs.org/@backstage/backend-tasks/-/backend-tasks-0.3.2-next.1.tgz#1e86b67914cb501d8f8a27dc62ea5ca63a3e52a6" + integrity sha512-x4YrxVxDkCAXm1pH6hkbOFCfWQpEC5EogZeXDjZ0yLIamCvEW+HaMFzIbCBfBA7nqV+FIsaq6obiuczo6LtIlQ== + dependencies: + "@backstage/backend-common" "^0.13.6-next.1" + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/luxon" "^2.0.4" + cron "^2.0.0" + knex "^1.0.2" + lodash "^4.17.21" + luxon "^2.0.2" + node-abort-controller "^3.0.1" + uuid "^8.0.0" + winston "^3.2.1" + zod "^3.9.5" + +"@backstage/backend-test-utils@^0.1.25-next.1": + version "0.1.25-next.1" + resolved "https://registry.npmjs.org/@backstage/backend-test-utils/-/backend-test-utils-0.1.25-next.1.tgz#2775726648b0aa4ac7d15b8f90fcb5b4b318266c" + integrity sha512-2Gfeujb/haNP4j1mTM+b6Y7LGBY46OAeaHGtbQYS4oUXJFTZzpha0dkYzsz4SO99ObIgmyFpRdZdNGguuiYESA== + dependencies: + "@backstage/backend-common" "^0.13.6-next.1" + "@backstage/cli" "^0.17.2-next.1" + "@backstage/config" "^1.0.1" + better-sqlite3 "^7.5.0" + knex "^1.0.2" + msw "^0.42.0" + mysql2 "^2.2.5" + pg "^8.3.0" + testcontainers "^8.1.2" + uuid "^8.0.0" + +"@backstage/cli@^0.17.2-next.1": + version "0.17.2-next.1" + resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.2-next.1.tgz#4860cb75b9228389606aa08fe2e393ff2d1e017a" + integrity sha512-5hC3ggIvwf0mWk4/z6Zb+7WUYpQy7aLjsrfH2Sqj0ErOqrcQqI7hIpUwBajdow7P3+moowrN+AtzhiVLlgEVrQ== + dependencies: + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/config-loader" "^1.1.2-next.0" + "@backstage/errors" "^1.0.0" + "@backstage/release-manifests" "^0.0.4-next.0" + "@backstage/types" "^1.0.0" + "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" + "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" + "@manypkg/get-packages" "^1.1.3" + "@octokit/request" "^5.4.12" + "@rollup/plugin-commonjs" "^21.0.1" + "@rollup/plugin-json" "^4.1.0" + "@rollup/plugin-node-resolve" "^13.0.0" + "@rollup/plugin-yaml" "^3.1.0" + "@spotify/eslint-config-base" "^13.0.0" + "@spotify/eslint-config-react" "^13.0.0" + "@spotify/eslint-config-typescript" "^13.0.0" + "@sucrase/jest-plugin" "^2.1.1" + "@sucrase/webpack-loader" "^2.0.0" + "@svgr/plugin-jsx" "6.2.x" + "@svgr/plugin-svgo" "6.2.x" + "@svgr/rollup" "6.2.x" + "@svgr/webpack" "6.2.x" + "@types/webpack-env" "^1.15.2" + "@typescript-eslint/eslint-plugin" "^5.9.0" + "@typescript-eslint/parser" "^5.9.0" + "@yarnpkg/lockfile" "^1.1.0" + "@yarnpkg/parsers" "^3.0.0-rc.4" + bfj "^7.0.2" + buffer "^6.0.3" + chalk "^4.0.0" + chokidar "^3.3.1" + commander "^9.1.0" + css-loader "^6.5.1" + diff "^5.0.0" + esbuild "^0.14.10" + esbuild-loader "^2.18.0" + eslint "^8.6.0" + eslint-config-prettier "^8.3.0" + eslint-formatter-friendly "^7.0.0" + eslint-plugin-deprecation "^1.3.2" + eslint-plugin-import "^2.25.4" + eslint-plugin-jest "^26.1.2" + eslint-plugin-jsx-a11y "^6.5.1" + eslint-plugin-monorepo "^0.3.2" + eslint-plugin-react "^7.28.0" + eslint-plugin-react-hooks "^4.3.0" + eslint-webpack-plugin "^3.1.1" + express "^4.17.1" + fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" + fs-extra "10.1.0" + glob "^7.1.7" + global-agent "^3.0.0" + handlebars "^4.7.3" + html-webpack-plugin "^5.3.1" + inquirer "^8.2.0" + jest "^27.5.1" + jest-css-modules "^2.1.0" + jest-runtime "^27.5.1" + jest-transform-yaml "^1.0.0" + json-schema "^0.4.0" + lodash "^4.17.21" + mini-css-extract-plugin "^2.4.2" + minimatch "5.0.1" + node-fetch "^2.6.7" + node-libs-browser "^2.2.1" + npm-packlist "^5.0.0" + ora "^5.3.0" + postcss "^8.1.0" + process "^0.11.10" + react-dev-utils "^12.0.0-next.60" + react-hot-loader "^4.13.0" + recursive-readdir "^2.2.2" + replace-in-file "^6.0.0" + rollup "^2.60.2" + rollup-plugin-dts "^4.0.1" + rollup-plugin-esbuild "^4.7.2" + rollup-plugin-postcss "^4.0.0" + rollup-pluginutils "^2.8.2" + run-script-webpack-plugin "^0.0.14" + semver "^7.3.2" + style-loader "^3.3.1" + sucrase "^3.20.2" + tar "^6.1.2" + terser-webpack-plugin "^5.1.3" + util "^0.12.3" + webpack "^5.66.0" + webpack-dev-server "^4.7.3" + webpack-node-externals "^3.0.0" + yaml "^1.10.0" + yml-loader "^2.1.0" + yn "^4.0.0" + zod "^3.11.6" + +"@backstage/config-loader@^1.1.2-next.0": + version "1.1.2-next.0" + resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.2-next.0.tgz#9b313c55f2137bd93cc55d902041523004e41c0d" + integrity sha512-s6/j9fEBAy13wcBlE7YCRR/PDpx1LD5CWf3ThIY4JNsRI6IhUg7joz4K/1D/V3YjHXp2nbit5X+9n2FS8ktH+Q== + dependencies: + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/json-schema" "^7.0.6" + ajv "^8.10.0" + chokidar "^3.5.2" + fs-extra "10.1.0" + json-schema "^0.4.0" + json-schema-merge-allof "^0.8.1" + json-schema-traverse "^1.0.0" + node-fetch "^2.6.7" + typescript-json-schema "^0.53.0" + yaml "^1.9.2" + yup "^0.32.9" + +"@backstage/integration@^1.2.1-next.1": + version "1.2.1-next.1" + resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.1-next.1.tgz#820b32d6703676ef42e6546f96c22931d152188e" + integrity sha512-tbrESE55sZUlFioheCyaKv8VD8lcAZ2ZHhr9LOhOONUp+3PmrKinxfMfc6Ans6ZxB5bdbGIlcOG+u8FgAea9FA== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@octokit/auth-app" "^3.4.0" + "@octokit/rest" "^18.5.3" + cross-fetch "^3.1.5" + git-url-parse "^11.6.0" + lodash "^4.17.21" + luxon "^2.0.2" + +"@backstage/release-manifests@^0.0.4-next.0": + version "0.0.4-next.0" + resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.4-next.0.tgz#9d5ee4c17b81507bb652cd002e10a3a262cb7d51" + integrity sha512-SBUDu7EDcZI5Cet5ppZ2FV9rG4MO7GL6L5x87feO/l8N0a9crF7UnT5mnBmlrw0sOqiAq7R34zyNnFQbUzsWlg== + dependencies: + cross-fetch "^3.1.5" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -1969,10 +2145,10 @@ dependencies: tiny-lru "7.0.6" -"@eslint/eslintrc@^1.2.3": - version "1.2.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.3.tgz#fcaa2bcef39e13d6e9e7f6271f4cc7cae1174886" - integrity sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA== +"@eslint/eslintrc@^1.3.0": + version "1.3.0" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz#29f92c30bb3e771e4a2048c95fa6855392dfac4f" + integrity sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -2522,24 +2698,24 @@ "@repeaterjs/repeater" "^3.0.4" tslib "^2.3.1" -"@grpc/grpc-js@~1.4.0": - version "1.4.6" - resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.4.6.tgz#8108d7ab7c0c21b38c538c1a48583edbbf2c2412" - integrity sha512-Byau4xiXfIixb1PnW30V/P9mkrZ05lknyNqiK+cVY9J5hj3gecxd/anwaUbAM8j834zg1x78NvAbwGnMfWEu7A== +"@grpc/grpc-js@~1.6.0": + version "1.6.7" + resolved "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz#4c4fa998ff719fe859ac19fe977fdef097bb99aa" + integrity sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw== dependencies: "@grpc/proto-loader" "^0.6.4" "@types/node" ">=12.12.47" -"@grpc/proto-loader@^0.6.1", "@grpc/proto-loader@^0.6.4": - version "0.6.7" - resolved "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.7.tgz#e62a202f4cf5897bdd0e244dec1dbc80d84bdfa1" - integrity sha512-QzTPIyJxU0u+r2qGe8VMl3j/W2ryhEvBv7hc42OjYfthSj370fUrb7na65rG6w3YLZS/fb8p89iTBobfWGDgdw== +"@grpc/proto-loader@^0.6.12", "@grpc/proto-loader@^0.6.4": + version "0.6.12" + resolved "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz#459b619b8b9b67794bf0d1cb819653a38c63e164" + integrity sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg== dependencies: "@types/long" "^4.0.1" lodash.camelcase "^4.3.0" long "^4.0.0" protobufjs "^6.10.0" - yargs "^16.1.1" + yargs "^16.2.0" "@hapi/hoek@^9.0.0": version "9.0.4" @@ -3138,14 +3314,22 @@ integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== "@jridgewell/resolve-uri@^3.0.3": - version "3.0.5" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" - integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== + version "3.0.7" + resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" + integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.11" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" - integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== + version "1.4.13" + resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" + integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping@^0.3.0": version "0.3.4" @@ -4079,9 +4263,9 @@ react-is "^16.8.0 || ^17.0.0" "@maxim_mazurok/gapi.client.calendar@^3.0.20220408": - version "3.0.20220527" - resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220527.tgz#0fab1e9c874037d5aa02fadff25590f436768265" - integrity sha512-Yx+zwL8TSUySr7e1iuvUlPdobAxFzstGYQQwEfS54dHIoAuorOj4CMxL4g47H+45Z0fpER8NfvGFEHLkA9ECsA== + version "3.0.20220520" + resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220520.tgz#b79cecaa73bfc8a95ba03dcc1ce6a98f76af9d11" + integrity sha512-AfwT996ExOgjpVGyxWslOLPDvDx+gAmWQwywnljya3nBMuRdvfmJHbJu1r89G4MVkl/2hLvl8rGwyDhU1THYQA== dependencies: "@types/gapi.client" "*" @@ -6017,12 +6201,7 @@ resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.0.tgz#9541eec4ad6e3ec5633270a3a2b55d981edc44a9" - integrity sha512-14t0v1ICYRtRVcHASzes0v/O+TIeASb8aD55cWF1PidtInhFWSXcmhzhHqGjUWf9SUq1w70cvd1cWKUULubAfQ== - -"@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -7251,12 +7430,12 @@ acorn@^7.1.1: resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0: +acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.0: version "8.7.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== -acorn@^8.7.1: +acorn@^8.4.1, acorn@^8.7.1: version "8.7.1" resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== @@ -7915,9 +8094,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1137.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1137.0.tgz#505e51b3c9ed31d54bbd620cb70d005e6086f23b" - integrity sha512-iOm81glo7Y3bj6bO6pUEhFlclfANe0ExBJOZ8TxFx2mE8KsaPkofAy8dSzwbn357yOyVxur9tkZgXM2f05ynlA== + version "2.1147.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1147.0.tgz#5d279abee153a0627ae502cdbb57d321388b534c" + integrity sha512-+CO8FnBgqHgxMJH0s8fv17Xqrh6V0lJ8zKOt3lHU+8QTiSoX5aLgr8zwmi0m7msHtyVeDWh50kiWAlvUs7U8Gw== dependencies: buffer "4.9.2" events "1.1.1" @@ -9467,10 +9646,10 @@ commander@^7.2.0: resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commander@^9.1.0: - version "9.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" - integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== +commander@^9.1.0, commander@^9.3.0: + version "9.3.0" + resolved "https://registry.npmjs.org/commander/-/commander-9.3.0.tgz#f619114a5a2d2054e0d9ff1b31d5ccf89255e26b" + integrity sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw== common-ancestor-path@^1.0.1: version "1.0.1" @@ -9971,11 +10150,18 @@ crelt@^1.0.5: integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== cron@^1.8.2: - version "1.8.2" - resolved "https://registry.npmjs.org/cron/-/cron-1.8.2.tgz#4ac5e3c55ba8c163d84f3407bde94632da8370ce" - integrity sha512-Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg== + version "1.8.3" + resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" + integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== dependencies: - moment-timezone "^0.5.x" + luxon "^1.23.x" + +cron@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/cron/-/cron-2.0.0.tgz#15c6bf37c1cebf6da1d7a688b9ba1c68338bfe6b" + integrity sha512-RPeRunBCFr/WEo7WLp8Jnm45F/ziGJiHVvVQEBSDTSGu6uHW49b2FOP2O14DcXlGJRLhwE7TIoDzHHK4KmlL6g== + dependencies: + luxon "^1.23.x" cronstrue@^2.2.0: version "2.9.0" @@ -11198,15 +11384,10 @@ drange@^1.0.2: resolved "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz#b2aecec2aab82fcef11dbbd7b9e32b83f8f6c0b8" integrity sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA== -dset@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/dset/-/dset-3.1.0.tgz#23feb6df93816ea452566308b1374d6e869b0d7b" - integrity sha512-7xTQ5DzyE59Nn+7ZgXDXjKAGSGmXZHqttMVVz1r4QNfmGpyj+cm2YtI3II0c/+4zS4a9yq2mBhgdeq2QnpcYlw== - -dset@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/dset/-/dset-3.1.1.tgz#07de5af7a8d03eab337ad1a8ba77fe17bba61a8c" - integrity sha512-hYf+jZNNqJBD2GiMYb+5mqOIX4R4RRHXU3qWMWYN+rqcR2/YpRL2bUHr8C8fU+5DNvqYjJ8YvMGSLuVPWU1cNg== +dset@^3.1.0, dset@^3.1.1: + version "3.1.2" + resolved "https://registry.npmjs.org/dset/-/dset-3.1.2.tgz#89c436ca6450398396dc6538ea00abc0c54cd45a" + integrity sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q== duplexer2@~0.1.4: version "0.1.4" @@ -11634,6 +11815,7 @@ esbuild-windows-arm64@0.14.42: esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: <<<<<<< HEAD +<<<<<<< HEAD <<<<<<< HEAD version "0.14.42" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" @@ -11648,6 +11830,11 @@ esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.6: resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.39.tgz#c926b2259fe6f6d3a94f528fb42e103c5a6d909a" integrity sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ== >>>>>>> Fix some typos and other requested changes +======= + version "0.14.42" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" + integrity sha512-V0uPZotCEHokJdNqyozH6qsaQXqmZEOiZWrXnds/zaH/0SyrIayRXWRB98CENO73MIZ9T3HBIOsmds5twWtmgw== +>>>>>>> Update package.json and yarn.lock optionalDependencies: esbuild-android-64 "0.14.42" esbuild-android-arm64 "0.14.42" @@ -13348,10 +13535,10 @@ globals@^11.1.0, globals@^11.12.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.6.0, globals@^13.9.0: - version "13.9.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb" - integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== +globals@^13.15.0: + version "13.15.0" + resolved "https://registry.npmjs.org/globals/-/globals-13.15.0.tgz#38113218c907d2f7e98658af246cef8b77e90bac" + integrity sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog== dependencies: type-fest "^0.20.2" @@ -13386,7 +13573,7 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -google-auth-library@^7.14.1, google-auth-library@^7.6.1: +google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7.6.1: version "7.14.1" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz#e3483034162f24cc71b95c8a55a210008826213c" integrity sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA== @@ -13402,22 +13589,22 @@ google-auth-library@^7.14.1, google-auth-library@^7.6.1: lru-cache "^6.0.0" google-gax@^2.24.1: - version "2.28.1" - resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.28.1.tgz#99bc234b5769d901d70959d40bd1651729eb4a34" - integrity sha512-2Xjd3FrjlVd6Cmw2B2Aicpc/q92SwTpIOvxPUlnRg9w+Do8nu7UR+eQrgoKlo2FIUcUuDTvppvcx8toND0pK9g== + version "2.30.5" + resolved "https://registry.npmjs.org/google-gax/-/google-gax-2.30.5.tgz#e836f984f3228900a8336f608c83d75f9cb73eff" + integrity sha512-Jey13YrAN2hfpozHzbtrwEfEHdStJh1GwaQ2+Akh1k0Tv/EuNVSuBtHZoKSBm5wBMvNsxTsEIZ/152NrYyZgxQ== dependencies: - "@grpc/grpc-js" "~1.4.0" - "@grpc/proto-loader" "^0.6.1" + "@grpc/grpc-js" "~1.6.0" + "@grpc/proto-loader" "^0.6.12" "@types/long" "^4.0.0" abort-controller "^3.0.0" duplexify "^4.0.0" fast-text-encoding "^1.0.3" - google-auth-library "^7.6.1" + google-auth-library "^7.14.0" is-stream-ended "^0.1.4" node-fetch "^2.6.1" - object-hash "^2.1.1" - proto3-json-serializer "^0.1.5" - protobufjs "6.11.2" + object-hash "^3.0.0" + proto3-json-serializer "^0.1.8" + protobufjs "6.11.3" retry-request "^4.0.0" google-p12-pem@^3.0.3: @@ -16535,7 +16722,12 @@ libnpmpublish@^4.0.0: semver "^7.1.3" ssri "^8.0.0" -lilconfig@2.0.4, lilconfig@^2.0.3: +lilconfig@2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" + integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== + +lilconfig@^2.0.3: version "2.0.4" resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== @@ -16552,16 +16744,27 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" +<<<<<<< HEAD lint-staged@^13.0.0: version "13.0.0" resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa" integrity sha512-vWban5utFt78VZohbosUxNIa46KKJ+KOQTDWTQ8oSl1DLEEVl9zhUtaQbiiydAmx+h2wKJK2d0+iMaRmknuWRQ== +======= +lint-staged@^12.2.0: + version "12.5.0" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz#d6925747480ae0e380d13988522f9dd8ef9126e3" + integrity sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g== +>>>>>>> Update package.json and yarn.lock dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" commander "^9.3.0" debug "^4.3.4" +<<<<<<< HEAD execa "^6.1.0" +======= + execa "^5.1.1" +>>>>>>> Update package.json and yarn.lock lilconfig "2.0.5" listr2 "^4.0.5" micromatch "^4.0.5" @@ -16569,7 +16772,12 @@ lint-staged@^13.0.0: object-inspect "^1.12.2" pidtree "^0.5.0" string-argv "^0.3.1" +<<<<<<< HEAD yaml "^2.1.1" +======= + supports-color "^9.2.2" + yaml "^1.10.2" +>>>>>>> Update package.json and yarn.lock listenercount@~1.0.1: version "1.0.1" @@ -17094,16 +17302,22 @@ lunr@^2.3.9: <<<<<<< HEAD <<<<<<< HEAD +<<<<<<< HEAD +======= +>>>>>>> Update package.json and yarn.lock luxon@^1.23.x: version "1.28.0" resolved "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz#e7f96daad3938c06a62de0fb027115d251251fbf" integrity sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ== +<<<<<<< HEAD ======= <<<<<<< HEAD >>>>>>> Fix some typos and other requested changes ======= >>>>>>> Apply changes, update tests & change vault icon temporarilly +======= +>>>>>>> Update package.json and yarn.lock luxon@^2.0.2, luxon@^2.3.0, luxon@^2.3.1: version "2.4.0" resolved "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz#9435806545bb32d4234dab766ab8a3d54847a765" @@ -18164,17 +18378,10 @@ modify-values@^1.0.0: resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -moment-timezone@^0.5.x: - version "0.5.34" - resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c" - integrity sha512-3zAEHh2hKUs3EXLESx/wsgw6IQdusOT8Bxm3D9UrHPQR7zlMmzwybC8zHEM1tQ4LJwP7fcxrWr8tuBg05fFCbg== - dependencies: - moment ">= 2.9.0" - -"moment@>= 2.9.0", moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: - version "2.29.2" - resolved "https://registry.npmjs.org/moment/-/moment-2.29.2.tgz#00910c60b20843bcba52d37d58c628b47b1f20e4" - integrity sha512-UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg== +moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: + version "2.29.3" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3" + integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw== morgan@^1.10.0: version "1.10.0" @@ -18289,6 +18496,32 @@ msw@^0.42.0: type-fest "^1.2.2" yargs "^17.3.1" +msw@^0.42.0: + version "0.42.0" + resolved "https://registry.npmjs.org/msw/-/msw-0.42.0.tgz#2286aefad82808888914e2bc5e40666e82b2824b" + integrity sha512-vB9rzgiGHoQGfkKpp3QZHxobzfuuQOJk+0bff0wtbK8k3P3CaUSt8bCwvExours682AY4mUfTjIkCsxy0JoS3w== + dependencies: + "@mswjs/cookies" "^0.2.0" + "@mswjs/interceptors" "^0.16.3" + "@open-draft/until" "^1.0.3" + "@types/cookie" "^0.4.1" + "@types/js-levenshtein" "^1.1.1" + chalk "4.1.1" + chokidar "^3.4.2" + cookie "^0.4.2" + graphql "^16.3.0" + headers-polyfill "^3.0.4" + inquirer "^8.2.0" + is-node-process "^1.0.1" + js-levenshtein "^1.1.6" + node-fetch "^2.6.7" + outvariant "^1.3.0" + path-to-regexp "^6.2.0" + statuses "^2.0.0" + strict-event-emitter "^0.2.0" + type-fest "^1.2.2" + yargs "^17.3.1" + multicast-dns@^7.2.4: version "7.2.4" resolved "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.4.tgz#cf0b115c31e922aeb20b64e6556cbeb34cf0dd19" @@ -18379,7 +18612,7 @@ nanoid@^3.1.23: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== -nanoid@^3.3.3: +nanoid@^3.3.4: version "3.3.4" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== @@ -18896,7 +19129,7 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-hash@^2.0.1, object-hash@^2.1.1: +object-hash@^2.0.1: version "2.2.0" resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== @@ -18906,11 +19139,16 @@ object-hash@^3.0.0: resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== -object-inspect@^1.11.0, object-inspect@^1.12.0, object-inspect@^1.9.0: +object-inspect@^1.11.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== +object-inspect@^1.12.2: + version "1.12.2" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" + integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== + object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -19205,12 +19443,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.0: - version "1.2.1" - resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.2.1.tgz#e630f6cdc1dbf398ed857e36f219de4a005ccd35" - integrity sha512-bcILvFkvpMXh66+Ubax/inxbKRyWTUiiFIW2DWkiS79wakrLGn3Ydy+GvukadiyfZjaL6C7YhIem4EZSM282wA== - -outvariant@^1.2.1: +outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -20668,10 +20901,10 @@ proto-list@~1.2.1: resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= -proto3-json-serializer@^0.1.5: - version "0.1.6" - resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.6.tgz#67cf3b8d5f4c8bebfc410698ad3b1ed64da39c7b" - integrity sha512-tGbV6m6Kad8NqxMh5hw87euPS0YoZSAOIfvR01zYkQV8Gpx1V/8yU/0gCKCvfCkhAJsjvzzhnnsdQxA1w7PSog== +proto3-json-serializer@^0.1.8: + version "0.1.9" + resolved "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.9.tgz#705ddb41b009dd3e6fcd8123edd72926abf65a34" + integrity sha512-A60IisqvnuI45qNRygJjrnNjX2TMdQGMY+57tR3nul3ZgO2zXkR9OGR8AXxJhkqx84g0FTnrfi3D5fWMSdANdQ== dependencies: protobufjs "^6.11.2" @@ -21099,6 +21332,7 @@ react-helmet@6.1.0: react-hook-form@^7.12.2, react-hook-form@^7.13.0: <<<<<<< HEAD +<<<<<<< HEAD <<<<<<< HEAD version "7.31.3" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" @@ -21109,6 +21343,11 @@ react-hook-form@^7.12.2, react-hook-form@^7.13.0: version "7.31.1" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.1.tgz#16c357dd366bc226172e6acbb5a1672873bbfb28" integrity sha512-QjtjZ8r8KtEBWWpcXLyQordCraTFxILtyQpaz5KLLxN2YzcC+FZ9LLtOnNGuOnzZo9gCoB+viK3ZHV9Mb2htmQ== +======= + version "7.31.3" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" + integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== +>>>>>>> Update package.json and yarn.lock react-hot-loader@^4.13.0: >>>>>>> Added tests to plugin vault & vault-backend @@ -22283,6 +22522,11 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" +run-script-webpack-plugin@^0.0.14: + version "0.0.14" + resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" + integrity sha512-DXe6lzzEVXjBr/74zd4m4yOfmz5P6GMjzhQxDDsViOmwG7cap8UCE6RgD5rT7zf4wM83a+ToHnpB3v4efUv5IA== + rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" @@ -22898,6 +23142,7 @@ socket.io@^2.2.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" +<<<<<<< HEAD <<<<<<< HEAD sockjs@^0.3.24: ======= @@ -22912,9 +23157,15 @@ sockjs@^0.3.21: resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417" integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw== >>>>>>> Fix some typos and other requested changes +======= +sockjs@^0.3.24: + version "0.3.24" + resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" + integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== +>>>>>>> Update package.json and yarn.lock dependencies: faye-websocket "^0.11.3" - uuid "^3.4.0" + uuid "^8.3.2" websocket-driver "^0.7.4" socks-proxy-agent@^5.0.0: @@ -23756,6 +24007,14 @@ supports-color@^8.0.0, supports-color@^8.1.0, supports-color@^8.1.1: dependencies: has-flag "^4.0.0" +<<<<<<< HEAD +======= +supports-color@^9.2.2: + version "9.2.2" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-9.2.2.tgz#502acaf82f2b7ee78eb7c83dcac0f89694e5a7bb" + integrity sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA== + +>>>>>>> Update package.json and yarn.lock supports-hyperlinks@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" @@ -25129,6 +25388,14 @@ uuid@8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== +<<<<<<< HEAD +======= + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +>>>>>>> Update package.json and yarn.lock uuid@8.3.2, uuid@^8.0.0, uuid@^8.2.0, uuid@^8.3.0, uuid@^8.3.2: version "8.3.2" @@ -25150,6 +25417,7 @@ uvu@^0.5.0: kleur "^4.0.3" sade "^1.7.3" +<<<<<<< HEAD <<<<<<< HEAD v8-compile-cache-lib@^3.0.1: ======= @@ -25164,6 +25432,12 @@ v8-compile-cache-lib@^3.0.0: resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8" integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA== >>>>>>> Fix some typos and other requested changes +======= +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== +>>>>>>> Update package.json and yarn.lock v8-compile-cache@^2.0.3: version "2.1.0" @@ -25777,10 +26051,14 @@ write-pkg@^4.0.0: <<<<<<< HEAD <<<<<<< HEAD +<<<<<<< HEAD +======= +>>>>>>> Update package.json and yarn.lock ws@8.7.0, ws@^8.0.0, ws@^8.3.0: version "8.7.0" resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== +<<<<<<< HEAD ======= <<<<<<< HEAD ======= @@ -25799,6 +26077,8 @@ ws@8.5.0, ws@^8.4.2: >>>>>>> Fix some typos and other requested changes ======= >>>>>>> Apply changes, update tests & change vault icon temporarilly +======= +>>>>>>> Update package.json and yarn.lock ws@^7.3.1, ws@^7.4.6: version "7.5.7" @@ -26034,7 +26314,7 @@ yargs@^15.1.0, yargs@^15.3.1: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^16.1.1, yargs@^16.2.0: +yargs@^16.2.0: version "16.2.0" resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -26060,6 +26340,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" +<<<<<<< HEAD <<<<<<< HEAD yargs@^17.0.1, yargs@^17.3.1: ======= @@ -26069,6 +26350,9 @@ yargs@^17.3.1: >>>>>>> Fix some typos and other requested changes ======= >>>>>>> Apply changes, update tests & change vault icon temporarilly +======= +yargs@^17.0.1, yargs@^17.3.0, yargs@^17.3.1: +>>>>>>> Update package.json and yarn.lock version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From 3cde8e19d9e51045e3d9fc43e5f44cf5bef34ede Mon Sep 17 00:00:00 2001 From: ivgo Date: Fri, 3 Jun 2022 15:16:28 +0200 Subject: [PATCH 206/550] Use best practices in express responses Signed-off-by: ivgo --- plugins/vault-backend/package.json | 1 + plugins/vault-backend/src/service/VaultBuilder.tsx | 11 ++++------- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 46fa30bf04..1d82786ec0 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -38,6 +38,7 @@ "@backstage/backend-tasks": "^0.3.2-next.1", "@backstage/backend-test-utils": "^0.1.25-next.1", "@backstage/config": "^1.0.1", + "@backstage/errors": "^1.0.0", "@types/compression": "^1.7.2", "@types/express": "*", "compression": "^1.7.4", diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index 20d5eab8e4..8ea2399d84 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -15,6 +15,7 @@ */ import { Config } from '@backstage/config'; +import { InputError } from '@backstage/errors'; import { Logger } from 'winston'; import express, { Router } from 'express'; import { VaultClient } from './vaultApi'; @@ -147,18 +148,14 @@ export class VaultBuilder { const router = Router(); router.use(express.json()); - router.get('/health', (_, response) => { - response.send({ status: 'ok' }); + router.get('/health', (_, res) => { + res.json({ status: 'ok' }); }); router.get('/v1/secrets', async (req, res) => { const path = req.query.path; if (typeof path !== 'string') { - res - .status(400) - .send('Something was unexpected about the path query string'); - - return; + throw new InputError(`Invalid path: ${path}`); } const secrets = await vaultClient.listSecrets(path); From ee04412ef2b953a6e5c1445c7ae47474b952a544 Mon Sep 17 00:00:00 2001 From: ivgo Date: Fri, 3 Jun 2022 15:44:44 +0200 Subject: [PATCH 207/550] Fix yarn.lock merge Signed-off-by: ivgo --- yarn.lock | 937 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 492 insertions(+), 445 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7e34850f34..6af655e54d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1467,104 +1467,52 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/backend-common@^0.13.6-next.1": - version "0.13.6-next.1" - resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.6-next.1.tgz#8a890e27985cb77b1f3a4482cc6f97ccac2edeb4" - integrity sha512-zr0fEioWB2dUN3Z4m0kjkf04K+pyWVxAO3zp9VOd57IBSRoY0Ul1z+5Da7iCia/G7uTC2Hpe2X8TzEo0Toz1tA== +"@backstage/app-defaults@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.2.tgz#0260b470551ea3ce6ea9d7fae33429bceb41bac4" + integrity sha512-G8/seM6GWevrM5wZmF6X+u9Bs5yPZHsog6mJstMw2Z63d57boLGZAHpBh3DQpqGs6QY9lBFvoub4lxmOkNoAzA== dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/config-loader" "^1.1.2-next.0" - "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.2.1-next.1" - "@backstage/types" "^1.0.0" - "@google-cloud/storage" "^5.8.0" - "@keyv/redis" "^2.2.3" - "@manypkg/get-packages" "^1.1.3" - "@octokit/rest" "^18.5.3" - "@types/cors" "^2.8.6" - "@types/dockerode" "^3.3.0" - "@types/express" "^4.17.6" - "@types/luxon" "^2.0.4" - "@types/webpack-env" "^1.15.2" - archiver "^5.0.2" - aws-sdk "^2.840.0" - base64-stream "^1.0.0" - compression "^1.7.4" - concat-stream "^2.0.0" - cors "^2.8.5" - dockerode "^3.3.1" - express "^4.17.1" - express-promise-router "^4.1.0" - fs-extra "10.1.0" - git-url-parse "^11.6.0" - helmet "^5.0.2" - isomorphic-git "^1.8.0" - jose "^4.6.0" - keyv "^4.0.3" - keyv-memcache "^1.2.5" - knex "^1.0.2" - lodash "^4.17.21" - logform "^2.3.2" - luxon "^2.3.1" - minimatch "^5.0.0" - minimist "^1.2.5" - morgan "^1.10.0" - node-abort-controller "^3.0.1" - node-fetch "^2.6.7" - raw-body "^2.4.1" - selfsigned "^2.0.0" - stoppable "^1.1.0" - tar "^6.1.2" - unzipper "^0.10.11" - winston "^3.2.1" - yn "^4.0.0" + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + react-router-dom "6.0.0-beta.0" -"@backstage/backend-tasks@^0.3.2-next.1": - version "0.3.2-next.1" - resolved "https://registry.npmjs.org/@backstage/backend-tasks/-/backend-tasks-0.3.2-next.1.tgz#1e86b67914cb501d8f8a27dc62ea5ca63a3e52a6" - integrity sha512-x4YrxVxDkCAXm1pH6hkbOFCfWQpEC5EogZeXDjZ0yLIamCvEW+HaMFzIbCBfBA7nqV+FIsaq6obiuczo6LtIlQ== +"@backstage/catalog-client@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" + integrity sha512-3983OrSPZQyTHRi78Ot2708h8iKd3bcvG0PSPmtbmQDkgxUUAXJ1w276THNoGA/Vt84NsNBO0Srfm0b4PmegAQ== + dependencies: + "@backstage/catalog-model" "^1.0.2" + "@backstage/errors" "^1.0.0" + cross-fetch "^3.1.5" + +"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.2.tgz#50328068632b452fabed67e53fb7f83ead08f9df" + integrity sha512-0GCTW0XqFoHRiZKRXiru5wVMm0hoPiFAEyBiudWlYAFXtVEoVnrzJ+pa9F96zqtFgcGHmgSybgzjmVqiGUMSlw== dependencies: - "@backstage/backend-common" "^0.13.6-next.1" "@backstage/config" "^1.0.1" "@backstage/errors" "^1.0.0" "@backstage/types" "^1.0.0" - "@types/luxon" "^2.0.4" - cron "^2.0.0" - knex "^1.0.2" + ajv "^8.10.0" + json-schema "^0.4.0" lodash "^4.17.21" - luxon "^2.0.2" - node-abort-controller "^3.0.1" - uuid "^8.0.0" - winston "^3.2.1" - zod "^3.9.5" - -"@backstage/backend-test-utils@^0.1.25-next.1": - version "0.1.25-next.1" - resolved "https://registry.npmjs.org/@backstage/backend-test-utils/-/backend-test-utils-0.1.25-next.1.tgz#2775726648b0aa4ac7d15b8f90fcb5b4b318266c" - integrity sha512-2Gfeujb/haNP4j1mTM+b6Y7LGBY46OAeaHGtbQYS4oUXJFTZzpha0dkYzsz4SO99ObIgmyFpRdZdNGguuiYESA== - dependencies: - "@backstage/backend-common" "^0.13.6-next.1" - "@backstage/cli" "^0.17.2-next.1" - "@backstage/config" "^1.0.1" - better-sqlite3 "^7.5.0" - knex "^1.0.2" - msw "^0.42.0" - mysql2 "^2.2.5" - pg "^8.3.0" - testcontainers "^8.1.2" uuid "^8.0.0" -"@backstage/cli@^0.17.2-next.1": - version "0.17.2-next.1" - resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.2-next.1.tgz#4860cb75b9228389606aa08fe2e393ff2d1e017a" - integrity sha512-5hC3ggIvwf0mWk4/z6Zb+7WUYpQy7aLjsrfH2Sqj0ErOqrcQqI7hIpUwBajdow7P3+moowrN+AtzhiVLlgEVrQ== +"@backstage/cli@^0.17.1": + version "0.17.1" + resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.1.tgz#69504a527c71c04adb34cfec0b75a2b4cc2f9292" + integrity sha512-KMrTznSpYnhmlLTcttDCvCKKrSZs6P3d+GecD55gq1YGfMbNyWTBKhbduBa11DaTGHX1hIusbv/uHKYEa57Ikg== dependencies: "@backstage/cli-common" "^0.1.9" "@backstage/config" "^1.0.1" - "@backstage/config-loader" "^1.1.2-next.0" + "@backstage/config-loader" "^1.1.1" "@backstage/errors" "^1.0.0" - "@backstage/release-manifests" "^0.0.4-next.0" + "@backstage/release-manifests" "^0.0.3" "@backstage/types" "^1.0.0" "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" @@ -1587,7 +1535,6 @@ "@typescript-eslint/eslint-plugin" "^5.9.0" "@typescript-eslint/parser" "^5.9.0" "@yarnpkg/lockfile" "^1.1.0" - "@yarnpkg/parsers" "^3.0.0-rc.4" bfj "^7.0.2" buffer "^6.0.3" chalk "^4.0.0" @@ -1639,7 +1586,7 @@ rollup-plugin-esbuild "^4.7.2" rollup-plugin-postcss "^4.0.0" rollup-pluginutils "^2.8.2" - run-script-webpack-plugin "^0.0.14" + run-script-webpack-plugin "^0.0.11" semver "^7.3.2" style-loader "^3.3.1" sucrase "^3.20.2" @@ -1654,10 +1601,10 @@ yn "^4.0.0" zod "^3.11.6" -"@backstage/config-loader@^1.1.2-next.0": - version "1.1.2-next.0" - resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.2-next.0.tgz#9b313c55f2137bd93cc55d902041523004e41c0d" - integrity sha512-s6/j9fEBAy13wcBlE7YCRR/PDpx1LD5CWf3ThIY4JNsRI6IhUg7joz4K/1D/V3YjHXp2nbit5X+9n2FS8ktH+Q== +"@backstage/config-loader@^1.1.1": + version "1.1.1" + resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" + integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== dependencies: "@backstage/cli-common" "^0.1.9" "@backstage/config" "^1.0.1" @@ -1675,10 +1622,123 @@ yaml "^1.9.2" yup "^0.32.9" -"@backstage/integration@^1.2.1-next.1": - version "1.2.1-next.1" - resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.1-next.1.tgz#820b32d6703676ef42e6546f96c22931d152188e" - integrity sha512-tbrESE55sZUlFioheCyaKv8VD8lcAZ2ZHhr9LOhOONUp+3PmrKinxfMfc6Ans6ZxB5bdbGIlcOG+u8FgAea9FA== +"@backstage/core-app-api@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.2.tgz#466b660db644150bc4639244c42bdebcddb3bc79" + integrity sha512-9CM/60hR6xEZmUEVyhdyFiyZrG95S299KyZh8R1s4/ndX86Wmqu0zBBBeufXJnCWYa8ebo/IVhCJF4YIAFAI3g== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + "@types/prop-types" "^15.7.3" + prop-types "^15.7.2" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + zod "^3.11.6" + +"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": + version "0.9.4" + resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" + integrity sha512-zg297mSw1BIc/BENrSClmgMx4kp0so0cK+lQ4FVa22+Dg5PDc2/NXWId2qEN2zD2XV/nm9RFBQM02gd6M6q3jQ== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/errors" "^1.0.0" + "@backstage/theme" "^0.2.15" + "@material-table/core" "^3.1.0" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + "@react-hookz/web" "^13.0.0" + "@types/react-sparklines" "^1.7.0" + "@types/react-text-truncate" "^0.14.0" + ansi-regex "^6.0.1" + classnames "^2.2.6" + d3-selection "^3.0.0" + d3-shape "^3.0.0" + d3-zoom "^3.0.0" + dagre "^0.8.5" + history "^5.0.0" + immer "^9.0.1" + lodash "^4.17.21" + pluralize "^8.0.0" + prop-types "^15.7.2" + qs "^6.9.4" + rc-progress "3.3.2" + react-helmet "6.1.0" + react-hook-form "^7.12.2" + react-markdown "^8.0.0" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + react-sparklines "^1.7.0" + react-syntax-highlighter "^15.4.5" + react-text-truncate "^0.18.0" + react-use "^17.3.2" + react-virtualized-auto-sizer "^1.0.6" + react-window "^1.8.6" + remark-gfm "^3.0.1" + zen-observable "^0.8.15" + zod "^3.11.6" + +"@backstage/core-plugin-api@^1.0.0", "@backstage/core-plugin-api@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/core-plugin-api/-/core-plugin-api-1.0.2.tgz#6ebf52c20df33ee3c128c98937d0d349a805d3eb" + integrity sha512-82bFp3lTW4o4Bske+zLXSzHueLP/mdUPWx6J/6YUfn88Aq93gb4VrdUJ04fXXDNWPqaBzfpynaIbme9QRZqfHQ== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + history "^5.0.0" + prop-types "^15.7.2" + react-router-dom "6.0.0-beta.0" + zen-observable "^0.8.15" + +"@backstage/dev-utils@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.2.tgz#ec1b261b7277b7d2f16952df64e7aaf0b8ae2adc" + integrity sha512-7g3yqlaIQqn/wTDYr7iatBxsuSFnprYGC0pwd3+owR2W7RMo5E900yS5yZ/WjzrwJ4i/Gsper013unuZTukxZA== + dependencies: + "@backstage/app-defaults" "^1.0.2" + "@backstage/catalog-model" "^1.0.2" + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/integration-react" "^1.1.0" + "@backstage/plugin-catalog-react" "^1.1.0" + "@backstage/test-utils" "^1.1.0" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + react-hot-loader "^4.13.0" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + react-use "^17.2.4" + zen-observable "^0.8.15" + +"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" + integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/integration" "^1.2.0" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + react-use "^17.2.4" + +"@backstage/integration@^1.2.0": + version "1.2.0" + resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.0.tgz#89a3fc95c079c541ca6a5cafc613ebefc0463687" + integrity sha512-ZUfaMUUEUlmS2JE4M0Z4fXe269Z+hRGooptgILC21hgXW20hjVrhb7Q6ynH78md0ItcEuHVs2mnCztc7LS8erg== dependencies: "@backstage/config" "^1.0.1" "@backstage/errors" "^1.0.0" @@ -1689,13 +1749,149 @@ lodash "^4.17.21" luxon "^2.0.2" -"@backstage/release-manifests@^0.0.4-next.0": - version "0.0.4-next.0" - resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.4-next.0.tgz#9d5ee4c17b81507bb652cd002e10a3a262cb7d51" - integrity sha512-SBUDu7EDcZI5Cet5ppZ2FV9rG4MO7GL6L5x87feO/l8N0a9crF7UnT5mnBmlrw0sOqiAq7R34zyNnFQbUzsWlg== +"@backstage/plugin-catalog-common@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@backstage/plugin-catalog-common/-/plugin-catalog-common-1.0.2.tgz#04f45745c0f30a1193d25c2dcf3eef01a97ab6be" + integrity sha512-5YCSZ9b2pMKJxHTJMPMo5qC3KeO4aCJCSV9uez7dHMIxkpEV+YThx3JAjrdj6KMMF0EGK4817fd6tipGUdfwDA== + dependencies: + "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/search-common" "^0.3.4" + +"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.1.0.tgz#aa2c479e12fa8cfa5409b563e0a7e7dc665204e5" + integrity sha512-jOVDIcwTwdTPA7wuAMZ/1UHipeo9EMOmSJ0mtGllFP8/ldjxe0tNNjaYb4UazCQgCdUUSuk4ccwZ/EU5GtUfYg== + dependencies: + "@backstage/catalog-client" "^1.0.2" + "@backstage/catalog-model" "^1.0.2" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/errors" "^1.0.0" + "@backstage/integration" "^1.2.0" + "@backstage/plugin-catalog-common" "^1.0.2" + "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/theme" "^0.2.15" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + classnames "^2.2.6" + jwt-decode "^3.1.0" + lodash "^4.17.21" + qs "^6.9.4" + react-router "6.0.0-beta.0" + react-use "^17.2.4" + yaml "^1.10.0" + zen-observable "^0.8.15" + +"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.21": + version "0.4.21" + resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.21.tgz#798058d9aeead651ff830641cb0222b6bafb5542" + integrity sha512-mdaxdR+76ZNYJiK1NtAGjnfQQKPIsZ2tVfyskWaZov1C6DxTGsguQ5oL2kiDiFj4rF7FgmtwfIxKZqWfivbR5Q== + dependencies: + "@backstage/catalog-model" "^1.0.2" + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-catalog-react" "^1.1.0" + "@backstage/plugin-stack-overflow" "^0.1.1" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + lodash "^4.17.21" + react-router "6.0.0-beta.0" + react-use "^17.2.4" + +"@backstage/plugin-permission-common@^0.6.1": + version "0.6.1" + resolved "https://registry.npmjs.org/@backstage/plugin-permission-common/-/plugin-permission-common-0.6.1.tgz#fd63ba10b90896e6f8627c569a5f28127821523f" + integrity sha512-abAZEuzhjSuybQ+EjAl6bonDCBRVcNlcAhp/uia+znDyUzLRaOE1rh9y9lyKQco5UCnxXCeR0FzRv592lBmYVw== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + cross-fetch "^3.1.5" + uuid "^8.0.0" + zod "^3.11.6" + +"@backstage/plugin-permission-react@^0.4.1": + version "0.4.1" + resolved "https://registry.npmjs.org/@backstage/plugin-permission-react/-/plugin-permission-react-0.4.1.tgz#18740913a8df06629a32b9c8679caa451c3989ac" + integrity sha512-yCuKGXP1TNJrphdkvBBLf+Jf7KYtW4Z9uV4M7vtBsK9qR2U3YU9T24iRDJ3hhBIr7dj66h4JCMhyrsDqYjMCTQ== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-permission-common" "^0.6.1" + cross-fetch "^3.1.5" + react-router "6.0.0-beta.0" + react-use "^17.2.4" + swr "^1.1.2" + +"@backstage/plugin-search-common@0.3.4", "@backstage/plugin-search-common@^0.3.4": + version "0.3.4" + resolved "https://registry.npmjs.org/@backstage/plugin-search-common/-/plugin-search-common-0.3.4.tgz#04e59618b1bef4c52045b3103c87a570e260cdb3" + integrity sha512-ft3+H8zQevm1QduQBLmP7awO8XHzh4Jlq0V6BdFrZftgyw0MbMz/YVtRwtHL++6qp91xDtQnwntZ5/3B95Hbug== + dependencies: + "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/types" "^1.0.0" + +"@backstage/plugin-stack-overflow@^0.1.1": + version "0.1.1" + resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.1.tgz#238ae82cb5f5732eb343b4f87aa6fc973bb613d2" + integrity sha512-CUSQfrymZw90gWB6SbtRKt/SwgpoAxlClSeEMuDkC1JI9QjyLBNkXwYfesTpuQyBF3J6tyn/02q6r9tKKiObgQ== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.4" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-home" "^0.4.21" + "@backstage/plugin-search-common" "^0.3.4" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@testing-library/jest-dom" "^5.10.1" + cross-fetch "^3.1.5" + lodash "^4.17.21" + qs "^6.9.4" + react-use "^17.2.4" + +"@backstage/release-manifests@^0.0.3": + version "0.0.3" + resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.3.tgz#6ba1da20782b90dbbbd62091aa017c75562968e5" + integrity sha512-9vbneGroxkVzDvEz8iITq+iJKV48WsIrTeGqR0GAMfr0BUgs6DR8Dujsn5XMHmwAtPkfMdLrNNanhJJ1Hv10oA== dependencies: cross-fetch "^3.1.5" +"@backstage/search-common@^0.3.4": + version "0.3.4" + resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" + integrity sha512-lANcEeA++EaZ6lAPuuN7I9DrP4Ij1d/Mb9wyrY01DKnw0wUVKj8wdGwB2KR/LWdxg7dY8BIHU49bUqSTMKl2+w== + dependencies: + "@backstage/plugin-search-common" "0.3.4" + +"@backstage/test-utils@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.1.0.tgz#9ec83ae08aec975b1d3edad2a84c5d8d310378d2" + integrity sha512-ZQSA58fWwfhscIFwM+1GFR8QR0nJCz4mZxnaYDycLueDrOA4vHpkqzdgkytqMbCvV16xJaa+UUkGkhUf0gzQyg== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-app-api" "^1.0.2" + "@backstage/core-plugin-api" "^1.0.2" + "@backstage/plugin-permission-common" "^0.6.1" + "@backstage/plugin-permission-react" "^0.4.1" + "@backstage/theme" "^0.2.15" + "@backstage/types" "^1.0.0" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.11.2" + "@testing-library/jest-dom" "^5.10.1" + "@testing-library/react" "^12.1.3" + "@testing-library/user-event" "^14.0.0" + cross-fetch "^3.1.5" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + zen-observable "^0.8.15" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -4263,9 +4459,9 @@ react-is "^16.8.0 || ^17.0.0" "@maxim_mazurok/gapi.client.calendar@^3.0.20220408": - version "3.0.20220520" - resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220520.tgz#b79cecaa73bfc8a95ba03dcc1ce6a98f76af9d11" - integrity sha512-AfwT996ExOgjpVGyxWslOLPDvDx+gAmWQwywnljya3nBMuRdvfmJHbJu1r89G4MVkl/2hLvl8rGwyDhU1THYQA== + version "3.0.20220527" + resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220527.tgz#0fab1e9c874037d5aa02fadff25590f436768265" + integrity sha512-Yx+zwL8TSUySr7e1iuvUlPdobAxFzstGYQQwEfS54dHIoAuorOj4CMxL4g47H+45Z0fpER8NfvGFEHLkA9ECsA== dependencies: "@types/gapi.client" "*" @@ -4391,6 +4587,29 @@ resolved "https://registry.npmjs.org/@n1ru4l/push-pull-async-iterable-iterator/-/push-pull-async-iterable-iterator-3.1.0.tgz#be450c97d1c7cd6af1a992d53232704454345df9" integrity sha512-K4scWxGhdQM0masHHy4gIQs2iGiLEXCrXttumknyPJqtdl4J179BjpibWSSQ1fxKdCcHgIlCTKXJU6cMM6D6Wg== +"@nestjs/common@8.4.4": + version "8.4.4" + resolved "https://registry.npmjs.org/@nestjs/common/-/common-8.4.4.tgz#0914c6c0540b5a344c7c8fd6072faa1a49af1158" + integrity sha512-QHi7QcgH/5Jinz+SCfIZJkFHc6Cch1YsAEGFEhi6wSp6MILb0sJMQ1CX06e9tCOAjSlBwaJj4PH0eFCVau5v9Q== + dependencies: + axios "0.26.1" + iterare "1.2.1" + tslib "2.3.1" + uuid "8.3.2" + +"@nestjs/core@8.4.4": + version "8.4.4" + resolved "https://registry.npmjs.org/@nestjs/core/-/core-8.4.4.tgz#94fd2d63fd77791f616fbecafb79faa2235eeeff" + integrity sha512-Ef3yJPuzAttpNfehnGqIV5kHIL9SHptB5F4ERxoU7pT61H3xiYpZw6hSjx68cJO7cc6rm7/N+b4zeuJvFHtvBg== + dependencies: + "@nuxtjs/opencollective" "0.3.2" + fast-safe-stringify "2.1.1" + iterare "1.2.1" + object-hash "3.0.0" + path-to-regexp "3.2.0" + tslib "2.3.1" + uuid "8.3.2" + "@nodelib/fs.scandir@2.1.3": version "2.1.3" resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" @@ -5138,6 +5357,19 @@ react-router-dom "6.0.0-beta.0" react-use "^17.2.4" +"@rollup/plugin-commonjs@^21.0.1": + version "21.1.0" + resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.1.0.tgz#45576d7b47609af2db87f55a6d4b46e44fc3a553" + integrity sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA== + dependencies: + "@rollup/pluginutils" "^3.1.0" + commondir "^1.0.1" + estree-walker "^2.0.1" + glob "^7.1.6" + is-reference "^1.2.1" + magic-string "^0.25.7" + resolve "^1.17.0" + "@rollup/plugin-commonjs@^22.0.0": version "22.0.0" resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz#f4d87016e2fbf187a593ab9f46626fe05b59e8bd" @@ -7028,18 +7260,10 @@ "@typescript-eslint/types" "5.20.0" "@typescript-eslint/visitor-keys" "5.20.0" -"@typescript-eslint/scope-manager@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.23.0.tgz#4305e61c2c8e3cfa3787d30f54e79430cc17ce1b" - integrity sha512-EhjaFELQHCRb5wTwlGsNMvzK9b8Oco4aYNleeDlNuL6qXWDF47ch4EhVNPh8Rdhf9tmqbN4sWDk/8g+Z/J8JVw== - dependencies: - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/visitor-keys" "5.23.0" - -"@typescript-eslint/scope-manager@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.24.0.tgz#ac8c4d65064204b596909c204fe9b7e30c3f51b2" - integrity sha512-WpMWipcDzGmMzdT7NtTjRXFabx10WleLUGrJpuJLGaxSqpcyq5ACpKSD5VE40h2nz3melQ91aP4Du7lh9FliCA== +"@typescript-eslint/scope-manager@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.27.0.tgz#a272178f613050ed62f51f69aae1e19e870a8bbb" + integrity sha512-VnykheBQ/sHd1Vt0LJ1JLrMH1GzHO+SzX6VTXuStISIsvRiurue/eRkTqSrG0CexHQgKG8shyJfR4o5VYioB9g== dependencies: "@typescript-eslint/types" "5.27.0" "@typescript-eslint/visitor-keys" "5.27.0" @@ -7066,15 +7290,10 @@ resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.20.0.tgz#fa39c3c2aa786568302318f1cb51fcf64258c20c" integrity sha512-+d8wprF9GyvPwtoB4CxBAR/s0rpP25XKgnOvMf/gMXYDvlUC3rPFHupdTQ/ow9vn7UDe5rX02ovGYQbv/IUCbg== -"@typescript-eslint/types@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.23.0.tgz#8733de0f58ae0ed318dbdd8f09868cdbf9f9ad09" - integrity sha512-NfBsV/h4dir/8mJwdZz7JFibaKC3E/QdeMEDJhiAE3/eMkoniZ7MjbEMCGXw6MZnZDMN3G9S0mH/6WUIj91dmw== - -"@typescript-eslint/types@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.24.0.tgz#565ff94a4b89073265e27514dc65225d18aabe6c" - integrity sha512-Tpg1c3shTDgTmZd3qdUyd+16r/pGmVaVEbLs+ufuWP0EruVbUiEOmpBBQxBb9a8iPRxi8Rb2oiwOxuZJzSq11A== +"@typescript-eslint/types@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.27.0.tgz#c3f44b9dda6177a9554f94a74745ca495ba9c001" + integrity sha512-lY6C7oGm9a/GWhmUDOs3xAVRz4ty/XKlQ2fOLr8GAIryGn0+UBOoJDWyHer3UgrHkenorwvBnphhP+zPmzmw0A== "@typescript-eslint/types@5.9.0": version "5.9.0" @@ -7094,26 +7313,13 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.23.0.tgz#dca5f10a0a85226db0796e8ad86addc9aee52065" - integrity sha512-xE9e0lrHhI647SlGMl+m+3E3CKPF1wzvvOEWnuE3CCjjT7UiRnDGJxmAcVKJIlFgK6DY9RB98eLr1OPigPEOGg== +"@typescript-eslint/typescript-estree@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.0.tgz#7965f5b553c634c5354a47dcce0b40b94611e995" + integrity sha512-QywPMFvgZ+MHSLRofLI7BDL+UczFFHyj0vF5ibeChDAJgdTV8k4xgEwF0geFhVlPc1p8r70eYewzpo6ps+9LJQ== dependencies: - "@typescript-eslint/types" "5.23.0" - "@typescript-eslint/visitor-keys" "5.23.0" - debug "^4.3.2" - globby "^11.0.4" - is-glob "^4.0.3" - semver "^7.3.5" - tsutils "^3.21.0" - -"@typescript-eslint/typescript-estree@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.24.0.tgz#30b9cbc1af475b9e02aca34cfe9ba9e1bb820143" - integrity sha512-zcor6vQkQmZAQfebSPVwUk/FD+CvnsnlfKXYeQDsWXRF+t7SBPmIfNia/wQxCSeu1h1JIjwV2i9f5/DdSp/uDw== - dependencies: - "@typescript-eslint/types" "5.24.0" - "@typescript-eslint/visitor-keys" "5.24.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/visitor-keys" "5.27.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -7133,15 +7339,15 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.24.0.tgz#7a854028040a305ddea129328e45cfb2c6406e75" - integrity sha512-K05sbWoeCBJH8KXu6hetBJ+ukG0k2u2KlgD3bN+v+oBKm8adJqVHpSSLHNzqyuv0Lh4GVSAUgZ5lB4icmPmWLw== +"@typescript-eslint/utils@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.27.0.tgz#d0021cbf686467a6a9499bd0589e19665f9f7e71" + integrity sha512-nZvCrkIJppym7cIbP3pOwIkAefXOmfGPnCM0LQfzNaKxJHI6VjI8NC662uoiPlaf5f6ymkTy9C3NQXev2mdXmA== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.24.0" - "@typescript-eslint/types" "5.24.0" - "@typescript-eslint/typescript-estree" "5.24.0" + "@typescript-eslint/scope-manager" "5.27.0" + "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/typescript-estree" "5.27.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" @@ -7165,20 +7371,12 @@ "@typescript-eslint/types" "5.20.0" eslint-visitor-keys "^3.0.0" -"@typescript-eslint/visitor-keys@5.23.0": - version "5.23.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.23.0.tgz#057c60a7ca64667a39f991473059377a8067c87b" - integrity sha512-Vd4mFNchU62sJB8pX19ZSPog05B0Y0CE2UxAZPT5k4iqhRYjPnqyY3woMxCd0++t9OTqkgjST+1ydLBi7e2Fvg== +"@typescript-eslint/visitor-keys@5.27.0": + version "5.27.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.0.tgz#97aa9a5d2f3df8215e6d3b77f9d214a24db269bd" + integrity sha512-46cYrteA2MrIAjv9ai44OQDUoCZyHeGIc4lsjCUX2WT6r4C+kidz1bNiR4017wHOPUythYeH+Sc7/cFP97KEAA== dependencies: - "@typescript-eslint/types" "5.23.0" - eslint-visitor-keys "^3.0.0" - -"@typescript-eslint/visitor-keys@5.24.0": - version "5.24.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.24.0.tgz#bb3e9a788ccd50c53e03557e4e203599880c3123" - integrity sha512-qzGwSXMyMnogcAo+/2fU+jhlPPVMXlIH2PeAonIKjJSoDKl1+lJVvG5Z5Oud36yU0TWK2cs1p/FaSN5J2OUFYA== - dependencies: - "@typescript-eslint/types" "5.24.0" + "@typescript-eslint/types" "5.27.0" eslint-visitor-keys "^3.3.0" "@typescript-eslint/visitor-keys@5.9.0": @@ -7948,14 +8146,15 @@ array.prototype.flat@^1.2.5: define-properties "^1.1.3" es-abstract "^1.19.0" -array.prototype.flatmap@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" - integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== +array.prototype.flatmap@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz#a7e8ed4225f4788a70cd910abcf0791e76a5534f" + integrity sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" define-properties "^1.1.3" - es-abstract "^1.19.0" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" arraybuffer.slice@~0.0.7: version "0.0.7" @@ -8094,9 +8293,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1147.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1147.0.tgz#5d279abee153a0627ae502cdbb57d321388b534c" - integrity sha512-+CO8FnBgqHgxMJH0s8fv17Xqrh6V0lJ8zKOt3lHU+8QTiSoX5aLgr8zwmi0m7msHtyVeDWh50kiWAlvUs7U8Gw== + version "2.1148.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1148.0.tgz#028211e724aee5118223eb5fa65495eaae4b5083" + integrity sha512-FUYAyveKmS5eqIiGQgrGVsLZwwtI+K6S6Gz8oJf56pgypZCo9dV+cXO4aaS+vN0+LSmGh6dSKc6G8h8FYASIJg== dependencies: buffer "4.9.2" events "1.1.1" @@ -9616,7 +9815,7 @@ command-exists@^1.2.9: resolved "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== -commander@*, commander@^8.3.0: +commander@*, commander@8.3.0, commander@^8.3.0: version "8.3.0" resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== @@ -10149,13 +10348,6 @@ crelt@^1.0.5: resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz#57c0d52af8c859e354bace1883eb2e1eb182bb94" integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== -cron@^1.8.2: - version "1.8.3" - resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" - integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== - dependencies: - luxon "^1.23.x" - cron@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/cron/-/cron-2.0.0.tgz#15c6bf37c1cebf6da1d7a688b9ba1c68338bfe6b" @@ -11682,11 +11874,47 @@ es-abstract@^1.17.0-next.1, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next string.prototype.trimstart "^1.0.4" unbox-primitive "^1.0.1" +es-abstract@^1.19.2, es-abstract@^1.19.5: + version "1.20.1" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" + integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + function.prototype.name "^1.1.5" + get-intrinsic "^1.1.1" + get-symbol-description "^1.0.0" + has "^1.0.3" + has-property-descriptors "^1.0.0" + has-symbols "^1.0.3" + internal-slot "^1.0.3" + is-callable "^1.2.4" + is-negative-zero "^2.0.2" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.2" + is-string "^1.0.7" + is-weakref "^1.0.2" + object-inspect "^1.12.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + regexp.prototype.flags "^1.4.3" + string.prototype.trimend "^1.0.5" + string.prototype.trimstart "^1.0.5" + unbox-primitive "^1.0.2" + es-module-lexer@^0.9.0, es-module-lexer@^0.9.3: version "0.9.3" resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-shim-unscopables@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== + dependencies: + has "^1.0.3" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -11814,27 +12042,9 @@ esbuild-windows-arm64@0.14.42: integrity sha512-+lRAARnF+hf8J0mN27ujO+VbhPbDqJ8rCcJKye4y7YZLV6C4n3pTRThAb388k/zqF5uM0lS5O201u0OqoWSicw== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: -<<<<<<< HEAD -<<<<<<< HEAD -<<<<<<< HEAD version "0.14.42" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" integrity sha512-V0uPZotCEHokJdNqyozH6qsaQXqmZEOiZWrXnds/zaH/0SyrIayRXWRB98CENO73MIZ9T3HBIOsmds5twWtmgw== -======= -======= -esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.6: ->>>>>>> Fix some typos and other requested changes -======= ->>>>>>> Apply changes, update tests & change vault icon temporarilly - version "0.14.39" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.39.tgz#c926b2259fe6f6d3a94f528fb42e103c5a6d909a" - integrity sha512-2kKujuzvRWYtwvNjYDY444LQIA3TyJhJIX3Yo4+qkFlDDtGlSicWgeHVJqMUP/2sSfH10PGwfsj+O2ro1m10xQ== ->>>>>>> Fix some typos and other requested changes -======= - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" - integrity sha512-V0uPZotCEHokJdNqyozH6qsaQXqmZEOiZWrXnds/zaH/0SyrIayRXWRB98CENO73MIZ9T3HBIOsmds5twWtmgw== ->>>>>>> Update package.json and yarn.lock optionalDependencies: esbuild-android-64 "0.14.42" esbuild-android-arm64 "0.14.42" @@ -12380,6 +12590,21 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" + integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^3.0.1" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + executable@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -13107,6 +13332,15 @@ fs-constants@^1.0.0: resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== +fs-extra@10.0.1: + version "10.0.1" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz#27de43b4320e833f6867cc044bfce29fdf0ef3b8" + integrity sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@10.1.0, fs-extra@^10.0.0, fs-extra@^10.0.1: version "10.1.0" resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -13188,11 +13422,26 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function.prototype.name@^1.1.5: + version "1.1.5" + resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" + integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.0" + functions-have-names "^1.2.2" + functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +functions-have-names@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + gauge@^3.0.0: version "3.0.2" resolved "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" @@ -13743,9 +13992,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql-ws@^5.4.1: - version "5.5.5" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.5.5.tgz#f375486d3f196e2a2527b503644693ae3a8670a9" - integrity sha512-hvyIS71vs4Tu/yUYHPvGXsTgo0t3arU820+lT5VjZS2go0ewp2LqyCgxEN56CzOG7Iys52eRhHBiD1gGRdiQtw== + version "5.8.2" + resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" + integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== graphql@^15.5.1: version "15.8.0" @@ -13858,6 +14107,13 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-property-descriptors@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== + dependencies: + get-intrinsic "^1.1.1" + has-symbols@^1.0.1, has-symbols@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" @@ -16499,9 +16755,9 @@ keyv@^3.0.0: json-buffer "3.0.0" keyv@^4.0.0, keyv@^4.0.3: - version "4.2.9" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.2.9.tgz#b8f25d4968b583ed7f07fceadab646d4baadad6b" - integrity sha512-vqRBrN4xQHud7UMAGzGGFbt96MtGB9pb0OOg8Dhtq5RtiswCb1pCFq878iqC4hdeOP6eDPnCoFxA+2TXx427Ow== + version "4.3.0" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.3.0.tgz#b4352e0e4fe7c94111947d6738a6d3fe7903027c" + integrity sha512-C30Un9+63J0CsR7Wka5quXKqYZsT6dcRQ2aOwGcSc3RiQ4HGWpTAHlCA+puNfw2jA/s11EsxA1nCXgZRuRKMQQ== dependencies: compress-brotli "^1.3.8" json-buffer "3.0.1" @@ -16744,27 +17000,16 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" -<<<<<<< HEAD lint-staged@^13.0.0: version "13.0.0" resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa" integrity sha512-vWban5utFt78VZohbosUxNIa46KKJ+KOQTDWTQ8oSl1DLEEVl9zhUtaQbiiydAmx+h2wKJK2d0+iMaRmknuWRQ== -======= -lint-staged@^12.2.0: - version "12.5.0" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz#d6925747480ae0e380d13988522f9dd8ef9126e3" - integrity sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g== ->>>>>>> Update package.json and yarn.lock dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" commander "^9.3.0" debug "^4.3.4" -<<<<<<< HEAD execa "^6.1.0" -======= - execa "^5.1.1" ->>>>>>> Update package.json and yarn.lock lilconfig "2.0.5" listr2 "^4.0.5" micromatch "^4.0.5" @@ -16772,12 +17017,7 @@ lint-staged@^12.2.0: object-inspect "^1.12.2" pidtree "^0.5.0" string-argv "^0.3.1" -<<<<<<< HEAD yaml "^2.1.1" -======= - supports-color "^9.2.2" - yaml "^1.10.2" ->>>>>>> Update package.json and yarn.lock listenercount@~1.0.1: version "1.0.1" @@ -17300,24 +17540,11 @@ lunr@^2.3.9: resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== -<<<<<<< HEAD -<<<<<<< HEAD -<<<<<<< HEAD -======= ->>>>>>> Update package.json and yarn.lock luxon@^1.23.x: version "1.28.0" resolved "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz#e7f96daad3938c06a62de0fb027115d251251fbf" integrity sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ== -<<<<<<< HEAD -======= -<<<<<<< HEAD ->>>>>>> Fix some typos and other requested changes -======= ->>>>>>> Apply changes, update tests & change vault icon temporarilly -======= ->>>>>>> Update package.json and yarn.lock luxon@^2.0.2, luxon@^2.3.0, luxon@^2.3.1: version "2.4.0" resolved "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz#9435806545bb32d4234dab766ab8a3d54847a765" @@ -18200,13 +18427,20 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.0.1, minimatch@^5.0.0, minimatch@^5.0.1: +minimatch@5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== dependencies: brace-expansion "^2.0.1" +minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: + version "5.1.0" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" + integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -18378,7 +18612,7 @@ modify-values@^1.0.0: resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -moment@>=2.14.0, moment@^2.27.0, moment@^2.29.1: +moment@^2.27.0, moment@^2.29.1: version "2.29.3" resolved "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz#edd47411c322413999f7a5940d526de183c031f3" integrity sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw== @@ -18496,32 +18730,6 @@ msw@^0.42.0: type-fest "^1.2.2" yargs "^17.3.1" -msw@^0.42.0: - version "0.42.0" - resolved "https://registry.npmjs.org/msw/-/msw-0.42.0.tgz#2286aefad82808888914e2bc5e40666e82b2824b" - integrity sha512-vB9rzgiGHoQGfkKpp3QZHxobzfuuQOJk+0bff0wtbK8k3P3CaUSt8bCwvExours682AY4mUfTjIkCsxy0JoS3w== - dependencies: - "@mswjs/cookies" "^0.2.0" - "@mswjs/interceptors" "^0.16.3" - "@open-draft/until" "^1.0.3" - "@types/cookie" "^0.4.1" - "@types/js-levenshtein" "^1.1.1" - chalk "4.1.1" - chokidar "^3.4.2" - cookie "^0.4.2" - graphql "^16.3.0" - headers-polyfill "^3.0.4" - inquirer "^8.2.0" - is-node-process "^1.0.1" - js-levenshtein "^1.1.6" - node-fetch "^2.6.7" - outvariant "^1.3.0" - path-to-regexp "^6.2.0" - statuses "^2.0.0" - strict-event-emitter "^0.2.0" - type-fest "^1.2.2" - yargs "^17.3.1" - multicast-dns@^7.2.4: version "7.2.4" resolved "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.4.tgz#cf0b115c31e922aeb20b64e6556cbeb34cf0dd19" @@ -19129,22 +19337,22 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" +object-hash@3.0.0, object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== + object-hash@^2.0.1: version "2.2.0" resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== -object-hash@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" - integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== - object-inspect@^1.11.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== -object-inspect@^1.12.2: +object-inspect@^1.12.0, object-inspect@^1.12.2: version "1.12.2" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== @@ -19197,13 +19405,13 @@ object.getownpropertydescriptors@^2.0.3: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" -object.hasown@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" - integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== +object.hasown@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz#ad1eecc60d03f49460600430d97f23882cf592a3" + integrity sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A== dependencies: - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" object.pick@^1.3.0: version "1.3.0" @@ -21331,29 +21539,15 @@ react-helmet@6.1.0: react-side-effect "^2.1.0" react-hook-form@^7.12.2, react-hook-form@^7.13.0: -<<<<<<< HEAD -<<<<<<< HEAD -<<<<<<< HEAD version "7.31.3" resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== -======= - version "7.31.0" -======= - version "7.31.1" - resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.1.tgz#16c357dd366bc226172e6acbb5a1672873bbfb28" - integrity sha512-QjtjZ8r8KtEBWWpcXLyQordCraTFxILtyQpaz5KLLxN2YzcC+FZ9LLtOnNGuOnzZo9gCoB+viK3ZHV9Mb2htmQ== -======= - version "7.31.3" - resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" - integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== ->>>>>>> Update package.json and yarn.lock react-hot-loader@^4.13.0: ->>>>>>> Added tests to plugin vault & vault-backend version "4.13.0" resolved "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.13.0.tgz#c27e9408581c2a678f5316e69c061b226dc6a202" integrity sha512-JrLlvUPqh6wIkrK2hZDfOyq/Uh/WeVEr8nc7hkn2/3Ul0sx1Kr5y4kOGNacNRoj7RhwLNcQ3Udf1KJXrqc0ZtA== + dependencies: fast-levenshtein "^2.0.6" global "^4.3.0" hoist-non-react-statics "^3.3.0" @@ -21967,24 +22161,14 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -<<<<<<< HEAD -<<<<<<< HEAD regexp.prototype.flags@^1.4.1, regexp.prototype.flags@^1.4.3: -======= -regexp.prototype.flags@^1.4.1: ->>>>>>> First implementation of vault-plugin version "1.4.3" resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== -======= -regexp.prototype.flags@^1.3.1: - version "1.4.1" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" - integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== ->>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" define-properties "^1.1.3" + functions-have-names "^1.2.2" regexpp@^3.2.0: version "3.2.0" @@ -22510,6 +22694,11 @@ run-parallel@^1.1.9: resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== +run-script-webpack-plugin@^0.0.11: + version "0.0.11" + resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.11.tgz#04c510bed06b907fa2285e75feece71a25691171" + integrity sha512-QmuBhiqBPmhQLpO5vMBHVTAGyoPBnrCM5gQ3IzgieiImBXiBbXcIv4kysCT1gilFNFxQk22oKQfiIhWbT/zXCw== + run-script-webpack-plugin@^0.0.14: version "0.0.14" resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" @@ -22522,11 +22711,6 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" -run-script-webpack-plugin@^0.0.14: - version "0.0.14" - resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" - integrity sha512-DXe6lzzEVXjBr/74zd4m4yOfmz5P6GMjzhQxDDsViOmwG7cap8UCE6RgD5rT7zf4wM83a+ToHnpB3v4efUv5IA== - rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" @@ -23142,27 +23326,10 @@ socket.io@^2.2.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" -<<<<<<< HEAD -<<<<<<< HEAD -sockjs@^0.3.24: -======= -sockjs@^0.3.21: -<<<<<<< HEAD ->>>>>>> First implementation of vault-plugin - version "0.3.24" - resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" - integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== -======= - version "0.3.21" - resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417" - integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw== ->>>>>>> Fix some typos and other requested changes -======= sockjs@^0.3.24: version "0.3.24" resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== ->>>>>>> Update package.json and yarn.lock dependencies: faye-websocket "^0.11.3" uuid "^8.3.2" @@ -23679,28 +23846,18 @@ string-width@^5.0.0: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -<<<<<<< HEAD string.prototype.matchall@^4.0.7: -======= -string.prototype.matchall@^4.0.6: -<<<<<<< HEAD ->>>>>>> First implementation of vault-plugin version "4.0.7" resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d" integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg== -======= - version "4.0.6" - resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" - integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== ->>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" define-properties "^1.1.3" es-abstract "^1.19.1" get-intrinsic "^1.1.1" - has-symbols "^1.0.2" + has-symbols "^1.0.3" internal-slot "^1.0.3" - regexp.prototype.flags "^1.3.1" + regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" string.prototype.trimend@^1.0.4: @@ -23711,8 +23868,6 @@ string.prototype.trimend@^1.0.4: call-bind "^1.0.2" define-properties "^1.1.3" -<<<<<<< HEAD -<<<<<<< HEAD string.prototype.trimend@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" @@ -23722,33 +23877,22 @@ string.prototype.trimend@^1.0.5: define-properties "^1.1.4" es-abstract "^1.19.5" -======= ->>>>>>> Fix some typos and other requested changes string.prototype.trimstart@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== -<<<<<<< HEAD -======= -string.prototype.trimstart@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" - integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== ->>>>>>> First implementation of vault-plugin dependencies: call-bind "^1.0.2" - define-properties "^1.1.4" - es-abstract "^1.19.5" + define-properties "^1.1.3" string.prototype.trimstart@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== -======= ->>>>>>> Fix some typos and other requested changes dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" @@ -24007,14 +24151,6 @@ supports-color@^8.0.0, supports-color@^8.1.0, supports-color@^8.1.1: dependencies: has-flag "^4.0.0" -<<<<<<< HEAD -======= -supports-color@^9.2.2: - version "9.2.2" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-9.2.2.tgz#502acaf82f2b7ee78eb7c83dcac0f89694e5a7bb" - integrity sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA== - ->>>>>>> Update package.json and yarn.lock supports-hyperlinks@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" @@ -24728,7 +24864,6 @@ tslib@2.0.3: resolved "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== -<<<<<<< HEAD tslib@2.3.1, tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.3.0: version "2.3.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" @@ -24739,23 +24874,6 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -<<<<<<< HEAD -tslib@^2.1.0, tslib@~2.4.0: -======= -tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.4.0: ->>>>>>> First implementation of vault-plugin - version "2.4.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" - integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== - -tslib@~2.3.0: -======= -tslib@^2, tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.3.1, tslib@~2.3.0: ->>>>>>> Fix some typos and other requested changes - version "2.3.1" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" - integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== - tslib@^2.1.0, tslib@~2.4.0: version "2.4.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" @@ -25388,14 +25506,6 @@ uuid@8.0.0: version "8.0.0" resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== -<<<<<<< HEAD -======= - -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== ->>>>>>> Update package.json and yarn.lock uuid@8.3.2, uuid@^8.0.0, uuid@^8.2.0, uuid@^8.3.0, uuid@^8.3.2: version "8.3.2" @@ -25417,27 +25527,10 @@ uvu@^0.5.0: kleur "^4.0.3" sade "^1.7.3" -<<<<<<< HEAD -<<<<<<< HEAD -v8-compile-cache-lib@^3.0.1: -======= -v8-compile-cache-lib@^3.0.0: -<<<<<<< HEAD ->>>>>>> First implementation of vault-plugin - version "3.0.1" - resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" - integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== -======= - version "3.0.0" - resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8" - integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA== ->>>>>>> Fix some typos and other requested changes -======= v8-compile-cache-lib@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== ->>>>>>> Update package.json and yarn.lock v8-compile-cache@^2.0.3: version "2.1.0" @@ -26049,36 +26142,10 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -<<<<<<< HEAD -<<<<<<< HEAD -<<<<<<< HEAD -======= ->>>>>>> Update package.json and yarn.lock ws@8.7.0, ws@^8.0.0, ws@^8.3.0: version "8.7.0" resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== -<<<<<<< HEAD -======= -<<<<<<< HEAD -======= ->>>>>>> Apply changes, update tests & change vault icon temporarilly -ws@8.6.0, ws@^8.0.0, ws@^8.3.0: - version "8.6.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" - integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== -<<<<<<< HEAD -======= -ws@8.5.0, ws@^8.4.2: - version "8.5.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" - integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== ->>>>>>> Fix some typos and other requested changes ->>>>>>> Fix some typos and other requested changes -======= ->>>>>>> Apply changes, update tests & change vault icon temporarilly -======= ->>>>>>> Update package.json and yarn.lock ws@^7.3.1, ws@^7.4.6: version "7.5.7" @@ -26253,20 +26320,12 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2, yaml@^1.9.2: resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -<<<<<<< HEAD -<<<<<<< HEAD yaml@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/yaml/-/yaml-2.1.1.tgz#1e06fb4ca46e60d9da07e4f786ea370ed3c3cfec" integrity sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw== yargs-parser@20.2.4, yargs-parser@^20.2.3: -======= -yargs-parser@20.2.4: ->>>>>>> First implementation of vault-plugin -======= -yargs-parser@20.2.4, yargs-parser@^20.2.3: ->>>>>>> Fix some typos and other requested changes version "20.2.4" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== @@ -26340,19 +26399,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -<<<<<<< HEAD -<<<<<<< HEAD yargs@^17.0.1, yargs@^17.3.1: -======= -yargs@^17.3.1: -<<<<<<< HEAD -<<<<<<< HEAD ->>>>>>> Fix some typos and other requested changes -======= ->>>>>>> Apply changes, update tests & change vault icon temporarilly -======= -yargs@^17.0.1, yargs@^17.3.0, yargs@^17.3.1: ->>>>>>> Update package.json and yarn.lock version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From d331cecc2e39fe78bbca09842148464c3827c4f4 Mon Sep 17 00:00:00 2001 From: ivgo Date: Fri, 3 Jun 2022 15:57:20 +0200 Subject: [PATCH 208/550] Fix some final issues Signed-off-by: ivgo --- microsite/data/plugins/vault.yaml | 2 +- plugins/vault-backend/package.json | 2 +- plugins/vault-backend/src/service/vaultApi.ts | 20 +++++++++---------- plugins/vault/package.json | 16 +++++++-------- 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/microsite/data/plugins/vault.yaml b/microsite/data/plugins/vault.yaml index c16ed434f1..3214cf669a 100644 --- a/microsite/data/plugins/vault.yaml +++ b/microsite/data/plugins/vault.yaml @@ -8,4 +8,4 @@ documentation: https://github.com/backstage/backstage/tree/master/plugins/vault iconUrl: img/vault.png npmPackageName: '@backstage/plugin-vault' tags: - - vault \ No newline at end of file + - vault diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 1d82786ec0..81a9d52095 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -51,7 +51,7 @@ "yn": "^5.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.1", + "@backstage/cli": "^0.17.2-next.1", "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", "msw": "^0.35.0", diff --git a/plugins/vault-backend/src/service/vaultApi.ts b/plugins/vault-backend/src/service/vaultApi.ts index af85fbec72..5c7cc97dbe 100644 --- a/plugins/vault-backend/src/service/vaultApi.ts +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -85,18 +85,16 @@ export class VaultClient implements VaultApi { query: { [key in string]: any }, method: string = 'GET', ): Promise { - const response = await fetch( - `${this.vaultConfig.baseUrl}/${path}?${new URLSearchParams( - query, - ).toString()}`, - { - method, - headers: { - Accept: 'application/json', - 'X-Vault-Token': this.vaultConfig.token, - }, + const url = `${this.vaultConfig.baseUrl}/${path}?${new URLSearchParams( + query, + ).toString()}`; + const response = await fetch(url, { + method, + headers: { + Accept: 'application/json', + 'X-Vault-Token': this.vaultConfig.token, }, - ); + }); if (response.status === 200) { return (await response.json()) as T; } diff --git a/plugins/vault/package.json b/plugins/vault/package.json index 7dcf2f6817..05b8da1df4 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -34,10 +34,10 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.2", - "@backstage/core-components": "^0.9.4", - "@backstage/core-plugin-api": "^1.0.2", - "@backstage/plugin-catalog-react": "^1.1.0", + "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5-next.1", + "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/plugin-catalog-react": "^1.1.1-next.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.1", - "@backstage/core-app-api": "^1.0.2", - "@backstage/dev-utils": "^1.0.2", - "@backstage/test-utils": "^1.1.0", + "@backstage/cli": "^0.17.2-next.1", + "@backstage/core-app-api": "^1.0.3-next.0", + "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", From 97c34999de7e5f76edc700432882670a229e2433 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 07:52:55 +0200 Subject: [PATCH 209/550] Remove types from dependencies Signed-off-by: ivgo --- plugins/vault-backend/package.json | 1 - yarn.lock | 230 +---------------------------- 2 files changed, 1 insertion(+), 230 deletions(-) diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 81a9d52095..39fc0d7d43 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -39,7 +39,6 @@ "@backstage/backend-test-utils": "^0.1.25-next.1", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@types/compression": "^1.7.2", "@types/express": "*", "compression": "^1.7.4", "cors": "^2.8.5", diff --git a/yarn.lock b/yarn.lock index 6af655e54d..00e6731bac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1467,20 +1467,6 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/app-defaults@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/app-defaults/-/app-defaults-1.0.2.tgz#0260b470551ea3ce6ea9d7fae33429bceb41bac4" - integrity sha512-G8/seM6GWevrM5wZmF6X+u9Bs5yPZHsog6mJstMw2Z63d57boLGZAHpBh3DQpqGs6QY9lBFvoub4lxmOkNoAzA== - dependencies: - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-react" "^0.4.1" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - react-router-dom "6.0.0-beta.0" - "@backstage/catalog-client@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" @@ -1503,141 +1489,6 @@ lodash "^4.17.21" uuid "^8.0.0" -"@backstage/cli@^0.17.1": - version "0.17.1" - resolved "https://registry.npmjs.org/@backstage/cli/-/cli-0.17.1.tgz#69504a527c71c04adb34cfec0b75a2b4cc2f9292" - integrity sha512-KMrTznSpYnhmlLTcttDCvCKKrSZs6P3d+GecD55gq1YGfMbNyWTBKhbduBa11DaTGHX1hIusbv/uHKYEa57Ikg== - dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/config-loader" "^1.1.1" - "@backstage/errors" "^1.0.0" - "@backstage/release-manifests" "^0.0.3" - "@backstage/types" "^1.0.0" - "@hot-loader/react-dom-v16" "npm:@hot-loader/react-dom@^16.0.2" - "@hot-loader/react-dom-v17" "npm:@hot-loader/react-dom@^17.0.2" - "@manypkg/get-packages" "^1.1.3" - "@octokit/request" "^5.4.12" - "@rollup/plugin-commonjs" "^21.0.1" - "@rollup/plugin-json" "^4.1.0" - "@rollup/plugin-node-resolve" "^13.0.0" - "@rollup/plugin-yaml" "^3.1.0" - "@spotify/eslint-config-base" "^13.0.0" - "@spotify/eslint-config-react" "^13.0.0" - "@spotify/eslint-config-typescript" "^13.0.0" - "@sucrase/jest-plugin" "^2.1.1" - "@sucrase/webpack-loader" "^2.0.0" - "@svgr/plugin-jsx" "6.2.x" - "@svgr/plugin-svgo" "6.2.x" - "@svgr/rollup" "6.2.x" - "@svgr/webpack" "6.2.x" - "@types/webpack-env" "^1.15.2" - "@typescript-eslint/eslint-plugin" "^5.9.0" - "@typescript-eslint/parser" "^5.9.0" - "@yarnpkg/lockfile" "^1.1.0" - bfj "^7.0.2" - buffer "^6.0.3" - chalk "^4.0.0" - chokidar "^3.3.1" - commander "^9.1.0" - css-loader "^6.5.1" - diff "^5.0.0" - esbuild "^0.14.10" - esbuild-loader "^2.18.0" - eslint "^8.6.0" - eslint-config-prettier "^8.3.0" - eslint-formatter-friendly "^7.0.0" - eslint-plugin-deprecation "^1.3.2" - eslint-plugin-import "^2.25.4" - eslint-plugin-jest "^26.1.2" - eslint-plugin-jsx-a11y "^6.5.1" - eslint-plugin-monorepo "^0.3.2" - eslint-plugin-react "^7.28.0" - eslint-plugin-react-hooks "^4.3.0" - eslint-webpack-plugin "^3.1.1" - express "^4.17.1" - fork-ts-checker-webpack-plugin "^7.0.0-alpha.8" - fs-extra "10.1.0" - glob "^7.1.7" - global-agent "^3.0.0" - handlebars "^4.7.3" - html-webpack-plugin "^5.3.1" - inquirer "^8.2.0" - jest "^27.5.1" - jest-css-modules "^2.1.0" - jest-runtime "^27.5.1" - jest-transform-yaml "^1.0.0" - json-schema "^0.4.0" - lodash "^4.17.21" - mini-css-extract-plugin "^2.4.2" - minimatch "5.0.1" - node-fetch "^2.6.7" - node-libs-browser "^2.2.1" - npm-packlist "^5.0.0" - ora "^5.3.0" - postcss "^8.1.0" - process "^0.11.10" - react-dev-utils "^12.0.0-next.60" - react-hot-loader "^4.13.0" - recursive-readdir "^2.2.2" - replace-in-file "^6.0.0" - rollup "^2.60.2" - rollup-plugin-dts "^4.0.1" - rollup-plugin-esbuild "^4.7.2" - rollup-plugin-postcss "^4.0.0" - rollup-pluginutils "^2.8.2" - run-script-webpack-plugin "^0.0.11" - semver "^7.3.2" - style-loader "^3.3.1" - sucrase "^3.20.2" - tar "^6.1.2" - terser-webpack-plugin "^5.1.3" - util "^0.12.3" - webpack "^5.66.0" - webpack-dev-server "^4.7.3" - webpack-node-externals "^3.0.0" - yaml "^1.10.0" - yml-loader "^2.1.0" - yn "^4.0.0" - zod "^3.11.6" - -"@backstage/config-loader@^1.1.1": - version "1.1.1" - resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" - integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== - dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - "@types/json-schema" "^7.0.6" - ajv "^8.10.0" - chokidar "^3.5.2" - fs-extra "10.1.0" - json-schema "^0.4.0" - json-schema-merge-allof "^0.8.1" - json-schema-traverse "^1.0.0" - node-fetch "^2.6.7" - typescript-json-schema "^0.53.0" - yaml "^1.9.2" - yup "^0.32.9" - -"@backstage/core-app-api@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/core-app-api/-/core-app-api-1.0.2.tgz#466b660db644150bc4639244c42bdebcddb3bc79" - integrity sha512-9CM/60hR6xEZmUEVyhdyFiyZrG95S299KyZh8R1s4/ndX86Wmqu0zBBBeufXJnCWYa8ebo/IVhCJF4YIAFAI3g== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - "@types/prop-types" "^15.7.3" - prop-types "^15.7.2" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - zod "^3.11.6" - "@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": version "0.9.4" resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" @@ -1695,32 +1546,7 @@ react-router-dom "6.0.0-beta.0" zen-observable "^0.8.15" -"@backstage/dev-utils@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/dev-utils/-/dev-utils-1.0.2.tgz#ec1b261b7277b7d2f16952df64e7aaf0b8ae2adc" - integrity sha512-7g3yqlaIQqn/wTDYr7iatBxsuSFnprYGC0pwd3+owR2W7RMo5E900yS5yZ/WjzrwJ4i/Gsper013unuZTukxZA== - dependencies: - "@backstage/app-defaults" "^1.0.2" - "@backstage/catalog-model" "^1.0.2" - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/integration-react" "^1.1.0" - "@backstage/plugin-catalog-react" "^1.1.0" - "@backstage/test-utils" "^1.1.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - react-hot-loader "^4.13.0" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - react-use "^17.2.4" - zen-observable "^0.8.15" - -"@backstage/integration-react@^1.0.0", "@backstage/integration-react@^1.1.0": +"@backstage/integration-react@^1.0.0": version "1.1.0" resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== @@ -1856,13 +1682,6 @@ qs "^6.9.4" react-use "^17.2.4" -"@backstage/release-manifests@^0.0.3": - version "0.0.3" - resolved "https://registry.npmjs.org/@backstage/release-manifests/-/release-manifests-0.0.3.tgz#6ba1da20782b90dbbbd62091aa017c75562968e5" - integrity sha512-9vbneGroxkVzDvEz8iITq+iJKV48WsIrTeGqR0GAMfr0BUgs6DR8Dujsn5XMHmwAtPkfMdLrNNanhJJ1Hv10oA== - dependencies: - cross-fetch "^3.1.5" - "@backstage/search-common@^0.3.4": version "0.3.4" resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" @@ -1870,28 +1689,6 @@ dependencies: "@backstage/plugin-search-common" "0.3.4" -"@backstage/test-utils@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/test-utils/-/test-utils-1.1.0.tgz#9ec83ae08aec975b1d3edad2a84c5d8d310378d2" - integrity sha512-ZQSA58fWwfhscIFwM+1GFR8QR0nJCz4mZxnaYDycLueDrOA4vHpkqzdgkytqMbCvV16xJaa+UUkGkhUf0gzQyg== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.2" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/plugin-permission-react" "^0.4.1" - "@backstage/theme" "^0.2.15" - "@backstage/types" "^1.0.0" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.11.2" - "@testing-library/jest-dom" "^5.10.1" - "@testing-library/react" "^12.1.3" - "@testing-library/user-event" "^14.0.0" - cross-fetch "^3.1.5" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - zen-observable "^0.8.15" - "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -5357,19 +5154,6 @@ react-router-dom "6.0.0-beta.0" react-use "^17.2.4" -"@rollup/plugin-commonjs@^21.0.1": - version "21.1.0" - resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-21.1.0.tgz#45576d7b47609af2db87f55a6d4b46e44fc3a553" - integrity sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA== - dependencies: - "@rollup/pluginutils" "^3.1.0" - commondir "^1.0.1" - estree-walker "^2.0.1" - glob "^7.1.6" - is-reference "^1.2.1" - magic-string "^0.25.7" - resolve "^1.17.0" - "@rollup/plugin-commonjs@^22.0.0": version "22.0.0" resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz#f4d87016e2fbf187a593ab9f46626fe05b59e8bd" @@ -18427,13 +18211,6 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" - integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== - dependencies: - brace-expansion "^2.0.1" - minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" @@ -22694,11 +22471,6 @@ run-parallel@^1.1.9: resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== -run-script-webpack-plugin@^0.0.11: - version "0.0.11" - resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.11.tgz#04c510bed06b907fa2285e75feece71a25691171" - integrity sha512-QmuBhiqBPmhQLpO5vMBHVTAGyoPBnrCM5gQ3IzgieiImBXiBbXcIv4kysCT1gilFNFxQk22oKQfiIhWbT/zXCw== - run-script-webpack-plugin@^0.0.14: version "0.0.14" resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" From 655a8d46d8743ae27ec63aeb5a10e10d28b07fe1 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 08:39:55 +0200 Subject: [PATCH 210/550] Fix codeQL error using URL params as part of the URL & remove commit added by mistake Signed-off-by: ivgo --- .../src/service/VaultBuilder.tsx | 4 ++-- plugins/vault-backend/src/service/vaultApi.ts | 19 ++++++++++--------- plugins/vault/src/api.test.ts | 8 ++++---- plugins/vault/src/api.ts | 10 +++++++--- .../EntityVaultTable.test.tsx | 8 ++++---- yarn.lock | 2 +- 6 files changed, 28 insertions(+), 23 deletions(-) diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index 8ea2399d84..aa2858345f 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -152,8 +152,8 @@ export class VaultBuilder { res.json({ status: 'ok' }); }); - router.get('/v1/secrets', async (req, res) => { - const path = req.query.path; + router.get('/v1/secrets/:path', async (req, res) => { + const { path } = req.params; if (typeof path !== 'string') { throw new InputError(`Invalid path: ${path}`); } diff --git a/plugins/vault-backend/src/service/vaultApi.ts b/plugins/vault-backend/src/service/vaultApi.ts index 5c7cc97dbe..0623780654 100644 --- a/plugins/vault-backend/src/service/vaultApi.ts +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -85,16 +85,17 @@ export class VaultClient implements VaultApi { query: { [key in string]: any }, method: string = 'GET', ): Promise { - const url = `${this.vaultConfig.baseUrl}/${path}?${new URLSearchParams( - query, - ).toString()}`; - const response = await fetch(url, { - method, - headers: { - Accept: 'application/json', - 'X-Vault-Token': this.vaultConfig.token, + const url = new URL(path, this.vaultConfig.baseUrl); + const response = await fetch( + `${url.toString()}?${new URLSearchParams(query).toString()}`, + { + method, + headers: { + Accept: 'application/json', + 'X-Vault-Token': this.vaultConfig.token, + }, }, - }); + ); if (response.status === 200) { return (await response.json()) as T; } diff --git a/plugins/vault/src/api.test.ts b/plugins/vault/src/api.test.ts index a913be01be..3452cbad38 100644 --- a/plugins/vault/src/api.test.ts +++ b/plugins/vault/src/api.test.ts @@ -42,11 +42,11 @@ describe('api', () => { const setupHandlers = () => { server.use( - rest.get(`${mockBaseUrl}/v1/secrets`, (req, res, ctx) => { - const path = req.url.searchParams.get('path'); - if (path === 'test/success') { + rest.get(`${mockBaseUrl}/v1/secrets/:path`, (req, res, ctx) => { + const { path } = req.params; + if (path === 'test%2Fsuccess') { return res(ctx.json(mockSecretsResult)); - } else if (path === 'test/error') { + } else if (path === 'test%2Ferror') { return res(ctx.json([])); } return res(ctx.status(400)); diff --git a/plugins/vault/src/api.ts b/plugins/vault/src/api.ts index ce92eb7538..74b212429f 100644 --- a/plugins/vault/src/api.ts +++ b/plugins/vault/src/api.ts @@ -56,9 +56,13 @@ export class VaultClient implements VaultApi { } async listSecrets(secretPath: string): Promise { - const result = await this.callApi('v1/secrets', { - path: secretPath, - }); + if (secretPath === '') { + return []; + } + const result = await this.callApi( + `v1/secrets/${encodeURIComponent(secretPath)}`, + {}, + ); if (!result) { return []; } diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx index 805039e2ea..3538d2e0ae 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx @@ -83,11 +83,11 @@ describe('EntityVautTable', () => { const setupHandlers = () => { server.use( - rest.get(`${mockBaseUrl}/v1/secrets`, (req, res, ctx) => { - const path = req.url.searchParams.get('path'); - if (path === 'test/success') { + rest.get(`${mockBaseUrl}/v1/secrets/:path`, (req, res, ctx) => { + const { path } = req.params; + if (path === 'test%2Fsuccess') { return res(ctx.json(mockSecretsResult)); - } else if (path === 'test/error') { + } else if (path === 'test%2Ferror') { return res(ctx.json([])); } return res(ctx.status(400)); diff --git a/yarn.lock b/yarn.lock index 00e6731bac..f50e0af69d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18211,7 +18211,7 @@ minimatch@3.0.4: dependencies: brace-expansion "^1.1.7" -minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1: +minimatch@5.1.0, minimatch@^5.0.0, minimatch@^5.0.1, minimatch@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== From ac800867131f3323aefb299dcaf19148c30c9114 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 10:46:38 +0200 Subject: [PATCH 211/550] Update wrong packages Signed-off-by: ivgo --- plugins/vault-backend/package.json | 2 +- yarn.lock | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 39fc0d7d43..15e5be42a8 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -34,7 +34,7 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.13.6-next.1", + "@backstage/backend-common": "^0.14.0-next.2", "@backstage/backend-tasks": "^0.3.2-next.1", "@backstage/backend-test-utils": "^0.1.25-next.1", "@backstage/config": "^1.0.1", diff --git a/yarn.lock b/yarn.lock index f50e0af69d..5945e795eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12242,14 +12242,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.1" + version "0.2.72-next.2" dependencies: "@backstage/app-defaults" "^1.0.3-next.1" "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/cli" "^0.17.2-next.2" "@backstage/config" "^1.0.1" "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" + "@backstage/core-components" "^0.9.5-next.2" "@backstage/core-plugin-api" "^1.0.3-next.0" "@backstage/integration-react" "^1.1.1-next.1" "@backstage/plugin-airbrake" "^0.3.6-next.1" @@ -12258,14 +12258,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-azure-devops" "^0.1.22-next.1" "@backstage/plugin-badges" "^0.2.30-next.1" "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.0" + "@backstage/plugin-catalog-common" "^1.0.3-next.1" "@backstage/plugin-catalog-graph" "^0.2.18-next.1" "@backstage/plugin-catalog-import" "^0.8.9-next.1" "@backstage/plugin-catalog-react" "^1.1.1-next.1" "@backstage/plugin-circleci" "^0.3.6-next.1" "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-cost-insights" "^0.11.28-next.2" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12275,17 +12275,17 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-home" "^0.4.22-next.1" "@backstage/plugin-jenkins" "^0.7.5-next.1" "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.1" + "@backstage/plugin-kubernetes" "^0.6.6-next.2" "@backstage/plugin-lighthouse" "^0.3.6-next.1" "@backstage/plugin-newrelic" "^0.3.24-next.1" "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.1" - "@backstage/plugin-pagerduty" "0.3.33-next.1" + "@backstage/plugin-org" "^0.5.6-next.2" + "@backstage/plugin-pagerduty" "0.4.0-next.2" "@backstage/plugin-permission-react" "^0.4.2-next.0" "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.1" - "@backstage/plugin-search" "^0.8.2-next.1" - "@backstage/plugin-search-common" "^0.3.5-next.0" + "@backstage/plugin-scaffolder" "^1.3.0-next.2" + "@backstage/plugin-search" "^0.8.2-next.2" + "@backstage/plugin-search-common" "^0.3.5-next.1" "@backstage/plugin-search-react" "^0.2.1-next.0" "@backstage/plugin-sentry" "^0.3.44-next.1" "@backstage/plugin-shortcuts" "^0.2.7-next.1" From d047d812953c94c4b7d54320d0b8f3ac27ef4d7d Mon Sep 17 00:00:00 2001 From: Phil Kuang Date: Wed, 1 Jun 2022 10:59:50 -0400 Subject: [PATCH 212/550] feat(techdocs): use entity title as label in header Signed-off-by: Phil Kuang --- .changeset/polite-ligers-hang.md | 5 +++++ .changeset/ten-wombats-reply.md | 5 +++++ plugins/techdocs-addons-test-utils/src/test-utils.tsx | 2 +- .../TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx | 1 + 4 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .changeset/polite-ligers-hang.md create mode 100644 .changeset/ten-wombats-reply.md diff --git a/.changeset/polite-ligers-hang.md b/.changeset/polite-ligers-hang.md new file mode 100644 index 0000000000..182822fc6c --- /dev/null +++ b/.changeset/polite-ligers-hang.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs': patch +--- + +Use entity title as label in `TechDocsReaderPageHeader` if available diff --git a/.changeset/ten-wombats-reply.md b/.changeset/ten-wombats-reply.md new file mode 100644 index 0000000000..ec60aad81b --- /dev/null +++ b/.changeset/ten-wombats-reply.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs-addons-test-utils': patch +--- + +Update default mock diff --git a/plugins/techdocs-addons-test-utils/src/test-utils.tsx b/plugins/techdocs-addons-test-utils/src/test-utils.tsx index 2c20199038..0d65e7e51e 100644 --- a/plugins/techdocs-addons-test-utils/src/test-utils.tsx +++ b/plugins/techdocs-addons-test-utils/src/test-utils.tsx @@ -82,7 +82,7 @@ type TechDocsAddonTesterOptions = { const defaultOptions: TechDocsAddonTesterOptions = { dom: <>, - entity: {}, + entity: { metadata: { name: '' } }, metadata: {}, componentId: 'docs', apis: [], diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx index 204ac835e4..9cf3d15471 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx @@ -110,6 +110,7 @@ export const TechDocsReaderPageHeader = ( } From 2e7e4849592dea190c844687a3cf24709b1caa09 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 14:01:43 +0000 Subject: [PATCH 213/550] chore(deps): update graphqlcodegenerator monorepo Signed-off-by: Renovate Bot --- yarn.lock | 67 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 37 insertions(+), 30 deletions(-) diff --git a/yarn.lock b/yarn.lock index 33907e2310..63da11633f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2350,13 +2350,13 @@ tslib "~2.3.0" "@graphql-codegen/graphql-modules-preset@^2.3.2": - version "2.3.11" - resolved "https://registry.npmjs.org/@graphql-codegen/graphql-modules-preset/-/graphql-modules-preset-2.3.11.tgz#ba3c8435badfd6ffea0906a53e3fcb20e00602d9" - integrity sha512-nhh2C7Aq98pbVkD9gwwTIBO8GYbw13ztaaJn11YW4X515OcxYbrDTldqoNerBNlQvghiYYSSW/hUGll9f5sIvg== + version "2.3.12" + resolved "https://registry.npmjs.org/@graphql-codegen/graphql-modules-preset/-/graphql-modules-preset-2.3.12.tgz#e2e128eaab2ca5600bb137c8fec9e3f52c5f243b" + integrity sha512-Xz5RsiythN/6ivt+9n43ciHWZ6ngUK1mpBBG/0EYISfUUVaTBLBVKoAhqPHcquqrsByppE0Nclw5sUuOLQUjiA== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" - "@graphql-codegen/visitor-plugin-common" "2.8.0" - "@graphql-tools/utils" "8.6.9" + "@graphql-codegen/visitor-plugin-common" "2.9.0" + "@graphql-tools/utils" "8.6.12" change-case-all "1.0.14" parse-filepath "^1.0.2" tslib "~2.4.0" @@ -2383,32 +2383,32 @@ tslib "~2.3.0" "@graphql-codegen/typescript-resolvers@^2.4.3": - version "2.6.4" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript-resolvers/-/typescript-resolvers-2.6.4.tgz#857e24279603f4e8f7293385a90a1f2498eb672e" - integrity sha512-BTV5q9d7V+4mVyYRnE8N7HyArmvDbUEY5JwyV94jhlN0AOq2zKQBrs8MRvx8v1VenjTGV+PlnDpF3aEtQu8o+g== + version "2.6.5" + resolved "https://registry.npmjs.org/@graphql-codegen/typescript-resolvers/-/typescript-resolvers-2.6.5.tgz#f22635ae76218dbc12c39d32f84a3979a791c764" + integrity sha512-vzREbHyiYHhy/C90V8HKnfD7hnJIeioqZIYssX9WTQ5pVHqdeO/k4Gbw9ljcFe4OsP5d9GFHzhtU+/GnQlCyaA== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" - "@graphql-codegen/typescript" "^2.4.11" - "@graphql-codegen/visitor-plugin-common" "2.8.0" + "@graphql-codegen/typescript" "^2.5.0" + "@graphql-codegen/visitor-plugin-common" "2.9.0" "@graphql-tools/utils" "^8.1.1" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/typescript@^2.4.11", "@graphql-codegen/typescript@^2.4.2": - version "2.4.11" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-2.4.11.tgz#b9d8bddaeb79ff4a85e1d0f9c774afba7423177c" - integrity sha512-K3oDLPJRH9Wgpg9TOvb7L+xrJZ8HxkIzV2umqGn54c+8DQjvnRFBIYRO0THgUBMnEauE2sEy6RZkGHGfgQUruA== +"@graphql-codegen/typescript@^2.4.2", "@graphql-codegen/typescript@^2.5.0": + version "2.5.0" + resolved "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-2.5.0.tgz#5ae121db92120fecb6badb34aa361ac464bc23d3" + integrity sha512-eCCebNyhV5NcNyfrNOdur1b4zPSyj2o89yaSliEMSShf4WolfFOv4aYpL4tFXjhkw3n2pR7MYFDUnrzmDpfmNw== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" "@graphql-codegen/schema-ast" "^2.4.1" - "@graphql-codegen/visitor-plugin-common" "2.8.0" + "@graphql-codegen/visitor-plugin-common" "2.9.0" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/visitor-plugin-common@2.8.0": - version "2.8.0" - resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.8.0.tgz#f1de3bd5ee123e6f72c06423912a3a83a6044938" - integrity sha512-29MOaxBog7qaEhmeCzJn2mONSbcA+slCTzHN4nJ3aZl4KrC9V32rXlQpG5x0qHbFQ1LaG1f5gPO83xbiAeMBIw== +"@graphql-codegen/visitor-plugin-common@2.9.0": + version "2.9.0" + resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.9.0.tgz#a13556c805e72b63ee9d80fb437b9ba2eb0a9fa2" + integrity sha512-w353lPpXlgsQT6dxfcHw3hQdodGnfSwsxofHVfROqrIBZIjH0kNiFHOt8rnewYkLGEa75bWDVaM1ofyXEaN+3w== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" "@graphql-tools/optimize" "^1.0.1" @@ -2631,6 +2631,13 @@ value-or-promise "^1.0.11" ws "^8.3.0" +"@graphql-tools/utils@8.6.12": + version "8.6.12" + resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.12.tgz#0a550dc0331fd9b097fe7223d65cbbee720556e4" + integrity sha512-WQ91O40RC+UJgZ9K+IzevSf8oolR1QE+WQ21Oyc2fgDYYiqT0eSf+HVyhZr/8x9rVjn3N9HeqCsywbdmbljg0w== + dependencies: + tslib "~2.4.0" + "@graphql-tools/utils@8.6.9", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.1", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.0": version "8.6.9" resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.9.tgz#fe1b81df29c9418b41b7a1ffe731710b93d3a1fe" @@ -12242,14 +12249,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.1" + version "0.2.72-next.2" dependencies: "@backstage/app-defaults" "^1.0.3-next.1" "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/cli" "^0.17.2-next.2" "@backstage/config" "^1.0.1" "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" + "@backstage/core-components" "^0.9.5-next.2" "@backstage/core-plugin-api" "^1.0.3-next.0" "@backstage/integration-react" "^1.1.1-next.1" "@backstage/plugin-airbrake" "^0.3.6-next.1" @@ -12258,14 +12265,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-azure-devops" "^0.1.22-next.1" "@backstage/plugin-badges" "^0.2.30-next.1" "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.0" + "@backstage/plugin-catalog-common" "^1.0.3-next.1" "@backstage/plugin-catalog-graph" "^0.2.18-next.1" "@backstage/plugin-catalog-import" "^0.8.9-next.1" "@backstage/plugin-catalog-react" "^1.1.1-next.1" "@backstage/plugin-circleci" "^0.3.6-next.1" "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-cost-insights" "^0.11.28-next.2" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12275,17 +12282,17 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-home" "^0.4.22-next.1" "@backstage/plugin-jenkins" "^0.7.5-next.1" "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.1" + "@backstage/plugin-kubernetes" "^0.6.6-next.2" "@backstage/plugin-lighthouse" "^0.3.6-next.1" "@backstage/plugin-newrelic" "^0.3.24-next.1" "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.1" - "@backstage/plugin-pagerduty" "0.3.33-next.1" + "@backstage/plugin-org" "^0.5.6-next.2" + "@backstage/plugin-pagerduty" "0.4.0-next.2" "@backstage/plugin-permission-react" "^0.4.2-next.0" "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.1" - "@backstage/plugin-search" "^0.8.2-next.1" - "@backstage/plugin-search-common" "^0.3.5-next.0" + "@backstage/plugin-scaffolder" "^1.3.0-next.2" + "@backstage/plugin-search" "^0.8.2-next.2" + "@backstage/plugin-search-common" "^0.3.5-next.1" "@backstage/plugin-search-react" "^0.2.1-next.0" "@backstage/plugin-sentry" "^0.3.44-next.1" "@backstage/plugin-shortcuts" "^0.2.7-next.1" From 9122060776181e39499c2d14362414d935681c30 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 14:02:48 +0000 Subject: [PATCH 214/550] chore(deps): update dependency msw to ^0.42.0 Signed-off-by: Renovate Bot --- .changeset/renovate-b61d275.md | 6 + plugins/bitbucket-cloud-common/package.json | 2 +- .../package.json | 2 +- yarn.lock | 105 +++--------------- 4 files changed, 26 insertions(+), 89 deletions(-) create mode 100644 .changeset/renovate-b61d275.md diff --git a/.changeset/renovate-b61d275.md b/.changeset/renovate-b61d275.md new file mode 100644 index 0000000000..65977829f7 --- /dev/null +++ b/.changeset/renovate-b61d275.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-bitbucket-cloud-common': patch +'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch +--- + +Updated dependency `msw` to `^0.42.0`. diff --git a/plugins/bitbucket-cloud-common/package.json b/plugins/bitbucket-cloud-common/package.json index 449c14c6fd..322704e79f 100644 --- a/plugins/bitbucket-cloud-common/package.json +++ b/plugins/bitbucket-cloud-common/package.json @@ -34,7 +34,7 @@ "devDependencies": { "@backstage/cli": "^0.17.2-next.1", "@openapitools/openapi-generator-cli": "^2.4.26", - "msw": "^0.35.0", + "msw": "^0.42.0", "ts-morph": "^15.0.0" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket-cloud/package.json b/plugins/catalog-backend-module-bitbucket-cloud/package.json index d94e4c66e2..57f6ae2e16 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/package.json +++ b/plugins/catalog-backend-module-bitbucket-cloud/package.json @@ -45,7 +45,7 @@ "@backstage/backend-common": "^0.14.0-next.2", "@backstage/backend-test-utils": "^0.1.25-next.2", "@backstage/cli": "^0.17.2-next.2", - "msw": "^0.35.0" + "msw": "^0.42.0" }, "files": [ "dist", diff --git a/yarn.lock b/yarn.lock index 33907e2310..53b2a891a7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4322,14 +4322,6 @@ resolved "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.1.tgz#155ef21065427901994e765da8a0ba0eaae8b8bd" integrity sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw== -"@mswjs/cookies@^0.1.6": - version "0.1.7" - resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.1.7.tgz#d334081b2c51057a61c1dd7b76ca3cac02251651" - integrity sha512-bDg1ReMBx+PYDB4Pk7y1Q07Zz1iKIEUWQpkEXiA2lEWg9gvOZ8UBmGXilCEUvyYoRFlmr/9iXTRR69TrgSwX/Q== - dependencies: - "@types/set-cookie-parser" "^2.4.0" - set-cookie-parser "^2.4.6" - "@mswjs/cookies@^0.2.0": version "0.2.0" resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.2.0.tgz#7ef2b5d7e444498bb27cf57720e61f76a4ce9f23" @@ -4338,18 +4330,6 @@ "@types/set-cookie-parser" "^2.4.0" set-cookie-parser "^2.4.6" -"@mswjs/interceptors@^0.12.6": - version "0.12.7" - resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.12.7.tgz#0d1cd4cd31a0f663e0455993951201faa09d0909" - integrity sha512-eGjZ3JRAt0Fzi5FgXiV/P3bJGj0NqsN7vBS0J0FO2AQRQ0jCKQS4lEFm4wvlSgKQNfeuc/Vz6d81VtU3Gkx/zg== - dependencies: - "@open-draft/until" "^1.0.3" - "@xmldom/xmldom" "^0.7.2" - debug "^4.3.2" - headers-utils "^3.0.2" - outvariant "^1.2.0" - strict-event-emitter "^0.2.0" - "@mswjs/interceptors@^0.15.1": version "0.15.3" resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.15.3.tgz#bcd17b5d7558d4f598007a4bb383b42dc9264f8d" @@ -6133,14 +6113,6 @@ resolved "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz#f14740d1f585a0a8e3f46359b62fda8b0eaa31e7" integrity sha512-K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w== -"@types/inquirer@^7.3.3": - version "7.3.3" - resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-7.3.3.tgz#92e6676efb67fa6925c69a2ee638f67a822952ac" - integrity sha512-HhxyLejTHMfohAuhRun4csWigAMjXTmRyiJTU1Y/I1xmggikFMkOUoMQRlFm+zQcPEGHSs3io/0FAmNZf8EymQ== - dependencies: - "@types/through" "*" - rxjs "^6.4.0" - "@types/inquirer@^8.1.3": version "8.2.1" resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.1.tgz#28a139be3105a1175e205537e8ac10830e38dbf4" @@ -6217,7 +6189,7 @@ resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -7303,7 +7275,7 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.2", "@xmldom/xmldom@^0.7.5": +"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.5": version "0.7.5" resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A== @@ -9976,7 +9948,7 @@ cookie@0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== -cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: +cookie@0.4.2, cookie@^0.4.2, cookie@~0.4.1: version "0.4.2" resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== @@ -12242,14 +12214,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.1" + version "0.2.72-next.2" dependencies: "@backstage/app-defaults" "^1.0.3-next.1" "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/cli" "^0.17.2-next.2" "@backstage/config" "^1.0.1" "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" + "@backstage/core-components" "^0.9.5-next.2" "@backstage/core-plugin-api" "^1.0.3-next.0" "@backstage/integration-react" "^1.1.1-next.1" "@backstage/plugin-airbrake" "^0.3.6-next.1" @@ -12258,14 +12230,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-azure-devops" "^0.1.22-next.1" "@backstage/plugin-badges" "^0.2.30-next.1" "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.0" + "@backstage/plugin-catalog-common" "^1.0.3-next.1" "@backstage/plugin-catalog-graph" "^0.2.18-next.1" "@backstage/plugin-catalog-import" "^0.8.9-next.1" "@backstage/plugin-catalog-react" "^1.1.1-next.1" "@backstage/plugin-circleci" "^0.3.6-next.1" "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-cost-insights" "^0.11.28-next.2" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12275,17 +12247,17 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-home" "^0.4.22-next.1" "@backstage/plugin-jenkins" "^0.7.5-next.1" "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.1" + "@backstage/plugin-kubernetes" "^0.6.6-next.2" "@backstage/plugin-lighthouse" "^0.3.6-next.1" "@backstage/plugin-newrelic" "^0.3.24-next.1" "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.1" - "@backstage/plugin-pagerduty" "0.3.33-next.1" + "@backstage/plugin-org" "^0.5.6-next.2" + "@backstage/plugin-pagerduty" "0.4.0-next.2" "@backstage/plugin-permission-react" "^0.4.2-next.0" "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.1" - "@backstage/plugin-search" "^0.8.2-next.1" - "@backstage/plugin-search-common" "^0.3.5-next.0" + "@backstage/plugin-scaffolder" "^1.3.0-next.2" + "@backstage/plugin-search" "^0.8.2-next.2" + "@backstage/plugin-search-common" "^0.3.5-next.1" "@backstage/plugin-search-react" "^0.2.1-next.0" "@backstage/plugin-sentry" "^0.3.44-next.1" "@backstage/plugin-shortcuts" "^0.2.7-next.1" @@ -13775,11 +13747,6 @@ graphql-ws@^5.4.1: resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== -graphql@^15.5.1: - version "15.8.0" - resolved "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" - integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== - graphql@^16.0.0, graphql@^16.3.0: version "16.5.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.5.0.tgz#41b5c1182eaac7f3d47164fb247f61e4dfb69c85" @@ -14023,11 +13990,6 @@ headers-polyfill@^3.0.4: resolved "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.0.7.tgz#725c4f591e6748f46b036197eae102c92b959ff4" integrity sha512-JoLCAdCEab58+2/yEmSnOlficyHFpIl0XJqwu3l+Unkm1gXpFUYsThz6Yha3D6tNhocWkCPfyW0YVIGWFqTi7w== -headers-utils@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz#dfc65feae4b0e34357308aefbcafa99c895e59ef" - integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== - helmet@^5.0.2: version "5.1.0" resolved "https://registry.npmjs.org/helmet/-/helmet-5.1.0.tgz#e98a5d4bf89ab8119c856018a3bcc82addadcd47" @@ -14612,7 +14574,7 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@^8.0.0, inquirer@^8.1.1, inquirer@^8.2.0: +inquirer@^8.0.0, inquirer@^8.2.0: version "8.2.4" resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== @@ -18425,32 +18387,6 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msw@^0.35.0: - version "0.35.0" - resolved "https://registry.npmjs.org/msw/-/msw-0.35.0.tgz#18a4ceb6c822ef226a30421d434413bc45030d38" - integrity sha512-V7A6PqaS31F1k//fPS0OnO7vllfaqBUFsMEu3IpYixyWpiUInfyglodnbXhhtDyytkQikpkPZv8TZi/CvZzv/w== - dependencies: - "@mswjs/cookies" "^0.1.6" - "@mswjs/interceptors" "^0.12.6" - "@open-draft/until" "^1.0.3" - "@types/cookie" "^0.4.1" - "@types/inquirer" "^7.3.3" - "@types/js-levenshtein" "^1.1.0" - chalk "^4.1.1" - chokidar "^3.4.2" - cookie "^0.4.1" - graphql "^15.5.1" - headers-utils "^3.0.2" - inquirer "^8.1.1" - is-node-process "^1.0.1" - js-levenshtein "^1.1.6" - node-fetch "^2.6.1" - node-match-path "^0.6.3" - statuses "^2.0.0" - strict-event-emitter "^0.2.0" - type-fest "^1.2.2" - yargs "^17.0.1" - msw@^0.39.2: version "0.39.2" resolved "https://registry.npmjs.org/msw/-/msw-0.39.2.tgz#832e9274db62c43cb79854d5a69dce031c700de8" @@ -18795,11 +18731,6 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-match-path@^0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" - integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== - node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -19423,7 +19354,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: +outvariant@^1.2.1, outvariant@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -22478,7 +22409,7 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" -rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: +rxjs@^6.3.3, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -26142,7 +26073,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -yargs@^17.0.1, yargs@^17.3.1: +yargs@^17.3.1: version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From d329505d37586a616a1020015806a823640dd64f Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Tue, 10 May 2022 11:08:13 -0400 Subject: [PATCH 215/550] Allow tableOptions to be passed to relatedEntity components Signed-off-by: Michael Haley --- .../src/components/EntityTable/EntityTable.tsx | 16 +++++++++++----- .../DependencyOfComponentsCard.tsx | 15 ++++++++++++--- .../DependsOnComponentsCard.tsx | 12 +++++++++--- .../DependsOnResourcesCard.tsx | 8 +++++--- .../HasComponentsCard/HasComponentsCard.tsx | 8 +++++--- .../HasResourcesCard/HasResourcesCard.tsx | 8 +++++--- .../HasSubcomponentsCard.tsx | 8 +++++--- .../components/HasSystemsCard/HasSystemsCard.tsx | 5 +++-- .../RelatedEntitiesCard/RelatedEntitiesCard.tsx | 4 ++++ 9 files changed, 59 insertions(+), 25 deletions(-) diff --git a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx index 3aa6857120..aced5b63e1 100644 --- a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx +++ b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx @@ -23,6 +23,7 @@ import { InfoCardVariants, Table, TableColumn, + TableProps, } from '@backstage/core-components'; /** @@ -36,6 +37,7 @@ export interface EntityTableProps { entities: T[]; emptyContent?: ReactNode; columns: TableColumn[]; + tableOptions?: TableProps['options']; } const useStyles = makeStyles(theme => ({ @@ -59,6 +61,7 @@ export const EntityTable = (props: EntityTableProps) => { emptyContent, variant = 'gridItem', columns, + tableOptions, } = props; const classes = useStyles(); @@ -80,11 +83,14 @@ export const EntityTable = (props: EntityTableProps) => { emptyContent &&
{emptyContent}
} options={{ - // TODO: Toolbar padding if off compared to other cards, should be: padding: 16px 24px; - search: false, - paging: false, - actionsColumnIndex: -1, - padding: 'dense', + ...{ + // TODO: Toolbar padding if off compared to other cards, should be: padding: 16px 24px; + search: false, + paging: false, + actionsColumnIndex: -1, + padding: 'dense', + }, + ...tableOptions, }} data={entities} /> diff --git a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx index d87b558048..3b22ea2aa0 100644 --- a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx +++ b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx @@ -14,8 +14,11 @@ * limitations under the License. */ -import { RELATION_DEPENDENCY_OF } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { + ComponentEntity, + RELATION_DEPENDENCY_OF, +} from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -28,12 +31,17 @@ import { export interface DependencyOfComponentsCardProps { variant?: InfoCardVariants; title?: string; + tableOptions?: TableProps['options']; } export function DependencyOfComponentsCard( props: DependencyOfComponentsCardProps, ) { - const { variant = 'gridItem', title = 'Dependency of components' } = props; + const { + variant = 'gridItem', + title = 'Dependency of components', + tableOptions, + } = props; return ( ); } diff --git a/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx b/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx index 4f30c17a84..50e195e88a 100644 --- a/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx +++ b/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_DEPENDS_ON } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { ComponentEntity, RELATION_DEPENDS_ON } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -28,10 +28,15 @@ import { export interface DependsOnComponentsCardProps { variant?: InfoCardVariants; title?: string; + tableOptions?: TableProps['options']; } export function DependsOnComponentsCard(props: DependsOnComponentsCardProps) { - const { variant = 'gridItem', title = 'Depends on components' } = props; + const { + variant = 'gridItem', + title = 'Depends on components', + tableOptions, + } = props; return ( ); } diff --git a/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx b/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx index a0f4d399f9..49c05d5eef 100644 --- a/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx +++ b/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_DEPENDS_ON } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { RELATION_DEPENDS_ON, ResourceEntity } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asResourceEntities, @@ -27,10 +27,11 @@ import { /** @public */ export interface DependsOnResourcesCardProps { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; } export function DependsOnResourcesCard(props: DependsOnResourcesCardProps) { - const { variant = 'gridItem' } = props; + const { variant = 'gridItem', tableOptions } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx b/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx index 9654152a5c..e0f01e932e 100644 --- a/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx +++ b/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { ComponentEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -27,10 +27,11 @@ import { /** @public */ export interface HasComponentsCardProps { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; } export function HasComponentsCard(props: HasComponentsCardProps) { - const { variant = 'gridItem' } = props; + const { variant = 'gridItem', tableOptions } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx b/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx index 8476d77bda..fc32d056d5 100644 --- a/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx +++ b/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { RELATION_HAS_PART, ResourceEntity } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asResourceEntities, @@ -27,10 +27,11 @@ import { /** @public */ export interface HasResourcesCardProps { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; } export function HasResourcesCard(props: HasResourcesCardProps) { - const { variant = 'gridItem' } = props; + const { variant = 'gridItem', tableOptions } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx b/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx index db95d31f9f..9702a70788 100644 --- a/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx +++ b/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { ComponentEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -26,10 +26,11 @@ import { /** @public */ export interface HasSubcomponentsCardProps { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; } export function HasSubcomponentsCard(props: HasSubcomponentsCardProps) { - const { variant = 'gridItem' } = props; + const { variant = 'gridItem', tableOptions } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx b/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx index 5d6fa170f5..6eb29c721b 100644 --- a/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx +++ b/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants } from '@backstage/core-components'; +import { RELATION_HAS_PART, SystemEntity } from '@backstage/catalog-model'; +import { InfoCardVariants, TableProps } from '@backstage/core-components'; import React from 'react'; import { asSystemEntities, @@ -27,6 +27,7 @@ import { /** @public */ export interface HasSystemsCardProps { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; } export function HasSystemsCard(props: HasSystemsCardProps) { diff --git a/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx b/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx index e802b0b583..80785a071d 100644 --- a/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx +++ b/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx @@ -29,6 +29,7 @@ import { Progress, ResponseErrorPanel, TableColumn, + TableProps, } from '@backstage/core-components'; /** @public */ @@ -40,6 +41,7 @@ export type RelatedEntitiesCardProps = { relationType: string; emptyMessage: string; emptyHelpLink: string; + tableOptions?: TableProps['options']; asRenderableEntities: (entities: Entity[]) => T[]; }; @@ -66,6 +68,7 @@ export function RelatedEntitiesCard( relationType, emptyMessage, emptyHelpLink, + tableOptions, asRenderableEntities, } = props; @@ -105,6 +108,7 @@ export function RelatedEntitiesCard( } columns={columns} entities={asRenderableEntities(entities || [])} + tableOptions={tableOptions} /> ); } From 4263148f4739b23dba83e12879facf17494e7563 Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Wed, 18 May 2022 09:49:18 -0400 Subject: [PATCH 216/550] Allow tableOptions prop on API cards Signed-off-by: Michael Haley --- .../components/ApisCards/ConsumedApisCard.tsx | 16 +++++++++++++--- .../src/components/ApisCards/HasApisCard.tsx | 12 +++++++++--- .../components/ApisCards/ProvidedApisCard.tsx | 16 +++++++++++++--- .../ComponentsCards/ConsumingComponentsCard.tsx | 11 +++++++++-- .../ComponentsCards/ProvidingComponentsCard.tsx | 11 +++++++++-- .../src/components/EntityTable/EntityTable.tsx | 2 +- .../DependencyOfComponentsCard.tsx | 2 +- .../DependsOnComponentsCard.tsx | 2 +- .../DependsOnResourcesCard.tsx | 2 +- .../HasComponentsCard/HasComponentsCard.tsx | 2 +- .../HasResourcesCard/HasResourcesCard.tsx | 2 +- .../HasSubcomponentsCard.tsx | 2 +- .../RelatedEntitiesCard/RelatedEntitiesCard.tsx | 2 +- 13 files changed, 61 insertions(+), 21 deletions(-) diff --git a/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx b/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx index fde41425c9..60d6ffb699 100644 --- a/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx @@ -14,7 +14,11 @@ * limitations under the License. */ -import { ApiEntity, RELATION_CONSUMES_API } from '@backstage/catalog-model'; +import { + ApiEntity, + Entity, + RELATION_CONSUMES_API, +} from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -29,14 +33,19 @@ import { InfoCardVariants, Link, Progress, + TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; }; -export const ConsumedApisCard = ({ variant = 'gridItem' }: Props) => { +export const ConsumedApisCard = ({ + variant = 'gridItem', + tableOptions = {}, +}: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_CONSUMES_API, @@ -81,6 +90,7 @@ export const ConsumedApisCard = ({ variant = 'gridItem' }: Props) => { } columns={apiEntityColumns} entities={entities as ApiEntity[]} + tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx b/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx index bb22f82269..3f9e9c8d71 100644 --- a/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ApiEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; +import { ApiEntity, Entity, RELATION_HAS_PART } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -30,11 +30,13 @@ import { Link, Progress, TableColumn, + TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; }; const columns: TableColumn[] = [ @@ -45,7 +47,10 @@ const columns: TableColumn[] = [ EntityTable.columns.createMetadataDescriptionColumn(), ]; -export const HasApisCard = ({ variant = 'gridItem' }: Props) => { +export const HasApisCard = ({ + variant = 'gridItem', + tableOptions = {}, +}: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_HAS_PART, @@ -91,6 +96,7 @@ export const HasApisCard = ({ variant = 'gridItem' }: Props) => { } columns={columns} entities={entities as ApiEntity[]} + tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx b/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx index 6ffb6365d2..627a4bba37 100644 --- a/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx @@ -14,7 +14,11 @@ * limitations under the License. */ -import { ApiEntity, RELATION_PROVIDES_API } from '@backstage/catalog-model'; +import { + ApiEntity, + Entity, + RELATION_PROVIDES_API, +} from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -29,14 +33,19 @@ import { InfoCardVariants, Link, Progress, + TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; }; -export const ProvidedApisCard = ({ variant = 'gridItem' }: Props) => { +export const ProvidedApisCard = ({ + variant = 'gridItem', + tableOptions = {}, +}: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_PROVIDES_API, @@ -81,6 +90,7 @@ export const ProvidedApisCard = ({ variant = 'gridItem' }: Props) => { } columns={apiEntityColumns} entities={entities as ApiEntity[]} + tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx b/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx index af3dcb7204..62fa13c027 100644 --- a/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx +++ b/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx @@ -16,6 +16,7 @@ import { ComponentEntity, + Entity, RELATION_API_CONSUMED_BY, } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; @@ -31,14 +32,19 @@ import { InfoCardVariants, Link, Progress, + TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; }; -export const ConsumingComponentsCard = ({ variant = 'gridItem' }: Props) => { +export const ConsumingComponentsCard = ({ + variant = 'gridItem', + tableOptions = {}, +}: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_API_CONSUMED_BY, @@ -82,6 +88,7 @@ export const ConsumingComponentsCard = ({ variant = 'gridItem' }: Props) => { } columns={EntityTable.componentEntityColumns} entities={entities as ComponentEntity[]} + tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx b/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx index 0be746de6d..a16991d57a 100644 --- a/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx +++ b/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx @@ -16,6 +16,7 @@ import { ComponentEntity, + Entity, RELATION_API_PROVIDED_BY, } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; @@ -31,14 +32,19 @@ import { InfoCardVariants, Link, Progress, + TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; + tableOptions?: TableProps['options']; }; -export const ProvidingComponentsCard = ({ variant = 'gridItem' }: Props) => { +export const ProvidingComponentsCard = ({ + variant = 'gridItem', + tableOptions = {}, +}: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_API_PROVIDED_BY, @@ -82,6 +88,7 @@ export const ProvidingComponentsCard = ({ variant = 'gridItem' }: Props) => { } columns={EntityTable.componentEntityColumns} entities={entities as ComponentEntity[]} + tableOptions={tableOptions} /> ); }; diff --git a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx index aced5b63e1..9f65640569 100644 --- a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx +++ b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx @@ -61,7 +61,7 @@ export const EntityTable = (props: EntityTableProps) => { emptyContent, variant = 'gridItem', columns, - tableOptions, + tableOptions = {}, } = props; const classes = useStyles(); diff --git a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx index 3b22ea2aa0..d60785d165 100644 --- a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx +++ b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx @@ -40,7 +40,7 @@ export function DependencyOfComponentsCard( const { variant = 'gridItem', title = 'Dependency of components', - tableOptions, + tableOptions = {}, } = props; return ( ( relationType, emptyMessage, emptyHelpLink, - tableOptions, + tableOptions = {}, asRenderableEntities, } = props; From 6a70ba2fdc4ffed0b9b790adc5dd82bf0cb96bc9 Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Wed, 18 May 2022 10:26:51 -0400 Subject: [PATCH 217/550] Add changeset Signed-off-by: Michael Haley --- .changeset/lucky-zoos-own.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .changeset/lucky-zoos-own.md diff --git a/.changeset/lucky-zoos-own.md b/.changeset/lucky-zoos-own.md new file mode 100644 index 0000000000..5c7959441d --- /dev/null +++ b/.changeset/lucky-zoos-own.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-api-docs': patch +'@backstage/plugin-catalog': patch +'@backstage/plugin-catalog-react': patch +--- + +Extend `` props to allow `material-table` options to be passed via prop `tableOptions`. Prop is exposed to other components that are composed from `` From 8330eb02e581e6a1a69784b4d4b777612c8f022b Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Wed, 18 May 2022 11:55:06 -0400 Subject: [PATCH 218/550] add api-reports Signed-off-by: Michael Haley --- plugins/api-docs/api-report.md | 38 +++++++++++++++++++++++++---- plugins/catalog-react/api-report.md | 3 +++ plugins/catalog/api-report.md | 18 ++++++++++++++ 3 files changed, 54 insertions(+), 5 deletions(-) diff --git a/plugins/api-docs/api-report.md b/plugins/api-docs/api-report.md index 991c73d4ab..6246ee797e 100644 --- a/plugins/api-docs/api-report.md +++ b/plugins/api-docs/api-report.md @@ -9,8 +9,11 @@ import { ApiEntity } from '@backstage/catalog-model'; import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; import { CatalogTableRow } from '@backstage/plugin-catalog'; +import { ComponentEntity } from '@backstage/catalog-model'; +import { Entity } from '@backstage/catalog-model'; import { ExternalRouteRef } from '@backstage/core-plugin-api'; import { InfoCardVariants } from '@backstage/core-components'; +import { Options } from '@material-table/core'; import { default as React_2 } from 'react'; import { RouteRef } from '@backstage/core-plugin-api'; import { TableColumn } from '@backstage/core-components'; @@ -91,13 +94,19 @@ export type AsyncApiDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "ConsumedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ConsumedApisCard: ({ variant }: Props) => JSX.Element; +export const ConsumedApisCard: ({ + variant, + tableOptions, +}: Props) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "ConsumingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ConsumingComponentsCard: ({ variant }: Props_4) => JSX.Element; +export const ConsumingComponentsCard: ({ + variant, + tableOptions, +}: Props_4) => JSX.Element; // @public export const DefaultApiExplorerPage: ({ @@ -128,8 +137,10 @@ export const EntityApiDefinitionCard: () => JSX.Element; // @public (undocumented) export const EntityConsumedApisCard: ({ variant, + tableOptions, }: { variant?: InfoCardVariants | undefined; + tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityConsumingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -137,8 +148,10 @@ export const EntityConsumedApisCard: ({ // @public (undocumented) export const EntityConsumingComponentsCard: ({ variant, + tableOptions, }: { variant?: InfoCardVariants | undefined; + tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityHasApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -146,8 +159,10 @@ export const EntityConsumingComponentsCard: ({ // @public (undocumented) export const EntityHasApisCard: ({ variant, + tableOptions, }: { variant?: InfoCardVariants | undefined; + tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityProvidedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -155,8 +170,10 @@ export const EntityHasApisCard: ({ // @public (undocumented) export const EntityProvidedApisCard: ({ variant, + tableOptions, }: { variant?: InfoCardVariants | undefined; + tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityProvidingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -164,8 +181,10 @@ export const EntityProvidedApisCard: ({ // @public (undocumented) export const EntityProvidingComponentsCard: ({ variant, + tableOptions, }: { variant?: InfoCardVariants | undefined; + tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "GraphQlDefinitionWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -186,7 +205,10 @@ export type GraphQlDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "HasApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const HasApisCard: ({ variant }: Props_2) => JSX.Element; +export const HasApisCard: ({ + variant, + tableOptions, +}: Props_2) => JSX.Element; // Warning: (ae-missing-release-tag) "OpenApiDefinitionWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -221,11 +243,17 @@ export type PlainApiDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "ProvidedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ProvidedApisCard: ({ variant }: Props_3) => JSX.Element; +export const ProvidedApisCard: ({ + variant, + tableOptions, +}: Props_3) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "ProvidingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ProvidingComponentsCard: ({ variant }: Props_5) => JSX.Element; +export const ProvidingComponentsCard: ({ + variant, + tableOptions, +}: Props_5) => JSX.Element; ``` diff --git a/plugins/catalog-react/api-report.md b/plugins/catalog-react/api-report.md index 285ecafd70..48be22cd4a 100644 --- a/plugins/catalog-react/api-report.md +++ b/plugins/catalog-react/api-report.md @@ -26,6 +26,7 @@ import { ScmIntegrationRegistry } from '@backstage/integration'; import { StyleRules } from '@material-ui/core/styles/withStyles'; import { SystemEntity } from '@backstage/catalog-model'; import { TableColumn } from '@backstage/core-components'; +import { TableProps } from '@backstage/core-components'; // @public export const AsyncEntityProvider: ({ @@ -332,6 +333,8 @@ export interface EntityTableProps { // (undocumented) entities: T[]; // (undocumented) + tableOptions?: TableProps['options']; + // (undocumented) title: string; // (undocumented) variant?: InfoCardVariants; diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index 3d426a0c8b..70d9b05f33 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -7,6 +7,7 @@ import { ApiHolder } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { ComponentEntity } from '@backstage/catalog-model'; import { CompoundEntityRef } from '@backstage/catalog-model'; import { Entity } from '@backstage/catalog-model'; import { ExternalRouteRef } from '@backstage/core-plugin-api'; @@ -17,11 +18,13 @@ import { Observable } from '@backstage/types'; import { Overrides } from '@material-ui/core/styles/overrides'; import { default as React_2 } from 'react'; import { ReactNode } from 'react'; +import { ResourceEntity } from '@backstage/catalog-model'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { RouteRef } from '@backstage/core-plugin-api'; import { StarredEntitiesApi } from '@backstage/plugin-catalog-react'; import { StorageApi } from '@backstage/core-plugin-api'; import { StyleRules } from '@material-ui/core/styles/withStyles'; +import { SystemEntity } from '@backstage/catalog-model'; import { TableColumn } from '@backstage/core-components'; import { TableProps } from '@backstage/core-components'; import { TabProps } from '@material-ui/core'; @@ -184,6 +187,8 @@ export class DefaultStarredEntitiesApi implements StarredEntitiesApi { // @public (undocumented) export interface DependencyOfComponentsCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) title?: string; // (undocumented) @@ -192,6 +197,8 @@ export interface DependencyOfComponentsCardProps { // @public (undocumented) export interface DependsOnComponentsCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) title?: string; // (undocumented) @@ -200,6 +207,8 @@ export interface DependsOnComponentsCardProps { // @public (undocumented) export interface DependsOnResourcesCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } @@ -348,24 +357,32 @@ export function hasCatalogProcessingErrors( // @public (undocumented) export interface HasComponentsCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasResourcesCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasSubcomponentsCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasSystemsCardProps { + // (undocumented) + tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } @@ -406,6 +423,7 @@ export type RelatedEntitiesCardProps = { relationType: string; emptyMessage: string; emptyHelpLink: string; + tableOptions?: TableProps['options']; asRenderableEntities: (entities: Entity[]) => T[]; }; From ed1727148cabe423787930cb395114902889775a Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Tue, 24 May 2022 10:34:30 -0400 Subject: [PATCH 219/550] Allow tableOptions to be able to be passed to DefaultApiExplorerPage Signed-off-by: Michael Haley --- plugins/api-docs/api-report.md | 2 ++ .../src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx | 3 +++ 2 files changed, 5 insertions(+) diff --git a/plugins/api-docs/api-report.md b/plugins/api-docs/api-report.md index 6246ee797e..8f58a0ab86 100644 --- a/plugins/api-docs/api-report.md +++ b/plugins/api-docs/api-report.md @@ -113,6 +113,7 @@ export const DefaultApiExplorerPage: ({ initiallySelectedFilter, columns, actions, + tableOptions, }: DefaultApiExplorerPageProps) => JSX.Element; // @public @@ -120,6 +121,7 @@ export type DefaultApiExplorerPageProps = { initiallySelectedFilter?: UserListFilterKind; columns?: TableColumn[]; actions?: TableProps['actions']; + tableOptions?: TableProps['options']; }; // Warning: (ae-missing-release-tag) "defaultDefinitionWidgets" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) diff --git a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx index 9fc6b2c3c2..06c4b6f76a 100644 --- a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx +++ b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx @@ -57,6 +57,7 @@ export type DefaultApiExplorerPageProps = { initiallySelectedFilter?: UserListFilterKind; columns?: TableColumn[]; actions?: TableProps['actions']; + tableOptions?: TableProps['options']; }; /** @@ -67,6 +68,7 @@ export const DefaultApiExplorerPage = ({ initiallySelectedFilter = 'all', columns, actions, + tableOptions = {}, }: DefaultApiExplorerPageProps) => { const configApi = useApi(configApiRef); const generatedSubtitle = `${ @@ -103,6 +105,7 @@ export const DefaultApiExplorerPage = ({ From 83256d71803cbcf4a72eba899dcfbf4d359a8900 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 14:19:31 +0000 Subject: [PATCH 220/550] fix(deps): update dependency @azure/msal-node to v1.9.1 Signed-off-by: Renovate Bot --- yarn.lock | 42 ++++++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6567abf77f..c0edb1f430 100644 --- a/yarn.lock +++ b/yarn.lock @@ -297,19 +297,17 @@ dependencies: debug "^4.1.1" -"@azure/msal-common@^6.3.0": - version "6.3.0" - resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.3.0.tgz#a0cdb6be1ae3cfdc5acf3c32979375a0fef433b2" - integrity sha512-ZyLq9GdnLBi/83YpysE86TFKbA0TuvfNAN5Psqu20cdAjLo/4rw4ttiItdh1G//XeGErHk9qn57gi2AYU1b5/Q== +"@azure/msal-common@^6.4.0": + version "6.4.0" + resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.4.0.tgz#434a55be9639cb5c7910c0cc1a46555ff0bc6c39" + integrity sha512-WZdgq9f9O8cbxGzdRwLLMM5xjmLJ2mdtuzgXeiGxIRkVVlJ9nZ6sWnDFKa2TX8j72UXD1IfL0p/RYNoTXYoGfg== "@azure/msal-node@^1.1.0", "@azure/msal-node@^1.3.0": - version "1.9.0" - resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.9.0.tgz#d42d848d2997aa9559d6bd6e1ec4f602b29dc1ba" - integrity sha512-lw6ejz1WPqcdjkwp91Gidte98+kfGxHk9eYSmmpUChzrUUrZMFGvrtrvG3Qnr6bp5d4WijVge9LMe+2QQUMhoA== + version "1.9.1" + resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.9.1.tgz#86f130fa50a5409a0e47a0ba192c7cdec42bd34c" + integrity sha512-chr914ZuKPvKEW1JPNDRhgdrzbA9PkVknV+q01h+eVhFZvHfO0pIFoP4dOU96ZdBkMmdD5kAP1Snv1gAdVXMIg== dependencies: - "@azure/msal-common" "^6.3.0" - axios "^0.21.4" - https-proxy-agent "^5.0.0" + "@azure/msal-common" "^6.4.0" jsonwebtoken "^8.5.1" uuid "^8.3.0" @@ -8258,7 +8256,7 @@ axios@0.26.1: dependencies: follow-redirects "^1.14.8" -axios@^0.21.1, axios@^0.21.4: +axios@^0.21.1: version "0.21.4" resolved "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== @@ -12406,14 +12404,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.1" + version "0.2.72-next.2" dependencies: "@backstage/app-defaults" "^1.0.3-next.1" "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/cli" "^0.17.2-next.2" "@backstage/config" "^1.0.1" "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" + "@backstage/core-components" "^0.9.5-next.2" "@backstage/core-plugin-api" "^1.0.3-next.0" "@backstage/integration-react" "^1.1.1-next.1" "@backstage/plugin-airbrake" "^0.3.6-next.1" @@ -12422,14 +12420,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-azure-devops" "^0.1.22-next.1" "@backstage/plugin-badges" "^0.2.30-next.1" "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.0" + "@backstage/plugin-catalog-common" "^1.0.3-next.1" "@backstage/plugin-catalog-graph" "^0.2.18-next.1" "@backstage/plugin-catalog-import" "^0.8.9-next.1" "@backstage/plugin-catalog-react" "^1.1.1-next.1" "@backstage/plugin-circleci" "^0.3.6-next.1" "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-cost-insights" "^0.11.28-next.2" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12439,17 +12437,17 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-home" "^0.4.22-next.1" "@backstage/plugin-jenkins" "^0.7.5-next.1" "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.1" + "@backstage/plugin-kubernetes" "^0.6.6-next.2" "@backstage/plugin-lighthouse" "^0.3.6-next.1" "@backstage/plugin-newrelic" "^0.3.24-next.1" "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.1" - "@backstage/plugin-pagerduty" "0.3.33-next.1" + "@backstage/plugin-org" "^0.5.6-next.2" + "@backstage/plugin-pagerduty" "0.4.0-next.2" "@backstage/plugin-permission-react" "^0.4.2-next.0" "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.1" - "@backstage/plugin-search" "^0.8.2-next.1" - "@backstage/plugin-search-common" "^0.3.5-next.0" + "@backstage/plugin-scaffolder" "^1.3.0-next.2" + "@backstage/plugin-search" "^0.8.2-next.2" + "@backstage/plugin-search-common" "^0.3.5-next.1" "@backstage/plugin-search-react" "^0.2.1-next.0" "@backstage/plugin-sentry" "^0.3.44-next.1" "@backstage/plugin-shortcuts" "^0.2.7-next.1" From 5585fa5cff2e07f044429170e7e055e75741d0c4 Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Tue, 7 Jun 2022 10:15:48 -0400 Subject: [PATCH 221/550] Revert commits, to go in new direction Signed-off-by: Michael Haley --- .changeset/lucky-zoos-own.md | 7 ---- plugins/api-docs/api-report.md | 40 +++---------------- .../DefaultApiExplorerPage.tsx | 3 -- .../components/ApisCards/ConsumedApisCard.tsx | 16 ++------ .../src/components/ApisCards/HasApisCard.tsx | 12 ++---- .../components/ApisCards/ProvidedApisCard.tsx | 16 ++------ .../ConsumingComponentsCard.tsx | 11 +---- .../ProvidingComponentsCard.tsx | 11 +---- plugins/catalog-react/api-report.md | 3 -- .../components/EntityTable/EntityTable.tsx | 16 +++----- plugins/catalog/api-report.md | 18 --------- .../DependencyOfComponentsCard.tsx | 15 ++----- .../DependsOnComponentsCard.tsx | 12 ++---- .../DependsOnResourcesCard.tsx | 8 ++-- .../HasComponentsCard/HasComponentsCard.tsx | 8 ++-- .../HasResourcesCard/HasResourcesCard.tsx | 8 ++-- .../HasSubcomponentsCard.tsx | 8 ++-- .../HasSystemsCard/HasSystemsCard.tsx | 5 +-- .../RelatedEntitiesCard.tsx | 4 -- 19 files changed, 43 insertions(+), 178 deletions(-) delete mode 100644 .changeset/lucky-zoos-own.md diff --git a/.changeset/lucky-zoos-own.md b/.changeset/lucky-zoos-own.md deleted file mode 100644 index 5c7959441d..0000000000 --- a/.changeset/lucky-zoos-own.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-api-docs': patch -'@backstage/plugin-catalog': patch -'@backstage/plugin-catalog-react': patch ---- - -Extend `` props to allow `material-table` options to be passed via prop `tableOptions`. Prop is exposed to other components that are composed from `` diff --git a/plugins/api-docs/api-report.md b/plugins/api-docs/api-report.md index 8f58a0ab86..991c73d4ab 100644 --- a/plugins/api-docs/api-report.md +++ b/plugins/api-docs/api-report.md @@ -9,11 +9,8 @@ import { ApiEntity } from '@backstage/catalog-model'; import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; import { CatalogTableRow } from '@backstage/plugin-catalog'; -import { ComponentEntity } from '@backstage/catalog-model'; -import { Entity } from '@backstage/catalog-model'; import { ExternalRouteRef } from '@backstage/core-plugin-api'; import { InfoCardVariants } from '@backstage/core-components'; -import { Options } from '@material-table/core'; import { default as React_2 } from 'react'; import { RouteRef } from '@backstage/core-plugin-api'; import { TableColumn } from '@backstage/core-components'; @@ -94,26 +91,19 @@ export type AsyncApiDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "ConsumedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ConsumedApisCard: ({ - variant, - tableOptions, -}: Props) => JSX.Element; +export const ConsumedApisCard: ({ variant }: Props) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "ConsumingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ConsumingComponentsCard: ({ - variant, - tableOptions, -}: Props_4) => JSX.Element; +export const ConsumingComponentsCard: ({ variant }: Props_4) => JSX.Element; // @public export const DefaultApiExplorerPage: ({ initiallySelectedFilter, columns, actions, - tableOptions, }: DefaultApiExplorerPageProps) => JSX.Element; // @public @@ -121,7 +111,6 @@ export type DefaultApiExplorerPageProps = { initiallySelectedFilter?: UserListFilterKind; columns?: TableColumn[]; actions?: TableProps['actions']; - tableOptions?: TableProps['options']; }; // Warning: (ae-missing-release-tag) "defaultDefinitionWidgets" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -139,10 +128,8 @@ export const EntityApiDefinitionCard: () => JSX.Element; // @public (undocumented) export const EntityConsumedApisCard: ({ variant, - tableOptions, }: { variant?: InfoCardVariants | undefined; - tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityConsumingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -150,10 +137,8 @@ export const EntityConsumedApisCard: ({ // @public (undocumented) export const EntityConsumingComponentsCard: ({ variant, - tableOptions, }: { variant?: InfoCardVariants | undefined; - tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityHasApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -161,10 +146,8 @@ export const EntityConsumingComponentsCard: ({ // @public (undocumented) export const EntityHasApisCard: ({ variant, - tableOptions, }: { variant?: InfoCardVariants | undefined; - tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityProvidedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -172,10 +155,8 @@ export const EntityHasApisCard: ({ // @public (undocumented) export const EntityProvidedApisCard: ({ variant, - tableOptions, }: { variant?: InfoCardVariants | undefined; - tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "EntityProvidingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -183,10 +164,8 @@ export const EntityProvidedApisCard: ({ // @public (undocumented) export const EntityProvidingComponentsCard: ({ variant, - tableOptions, }: { variant?: InfoCardVariants | undefined; - tableOptions?: Options | undefined; }) => JSX.Element; // Warning: (ae-missing-release-tag) "GraphQlDefinitionWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -207,10 +186,7 @@ export type GraphQlDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "HasApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const HasApisCard: ({ - variant, - tableOptions, -}: Props_2) => JSX.Element; +export const HasApisCard: ({ variant }: Props_2) => JSX.Element; // Warning: (ae-missing-release-tag) "OpenApiDefinitionWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -245,17 +221,11 @@ export type PlainApiDefinitionWidgetProps = { // Warning: (ae-missing-release-tag) "ProvidedApisCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ProvidedApisCard: ({ - variant, - tableOptions, -}: Props_3) => JSX.Element; +export const ProvidedApisCard: ({ variant }: Props_3) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "ProvidingComponentsCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const ProvidingComponentsCard: ({ - variant, - tableOptions, -}: Props_5) => JSX.Element; +export const ProvidingComponentsCard: ({ variant }: Props_5) => JSX.Element; ``` diff --git a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx index 06c4b6f76a..9fc6b2c3c2 100644 --- a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx +++ b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx @@ -57,7 +57,6 @@ export type DefaultApiExplorerPageProps = { initiallySelectedFilter?: UserListFilterKind; columns?: TableColumn[]; actions?: TableProps['actions']; - tableOptions?: TableProps['options']; }; /** @@ -68,7 +67,6 @@ export const DefaultApiExplorerPage = ({ initiallySelectedFilter = 'all', columns, actions, - tableOptions = {}, }: DefaultApiExplorerPageProps) => { const configApi = useApi(configApiRef); const generatedSubtitle = `${ @@ -105,7 +103,6 @@ export const DefaultApiExplorerPage = ({ diff --git a/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx b/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx index 60d6ffb699..fde41425c9 100644 --- a/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/ConsumedApisCard.tsx @@ -14,11 +14,7 @@ * limitations under the License. */ -import { - ApiEntity, - Entity, - RELATION_CONSUMES_API, -} from '@backstage/catalog-model'; +import { ApiEntity, RELATION_CONSUMES_API } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -33,19 +29,14 @@ import { InfoCardVariants, Link, Progress, - TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; }; -export const ConsumedApisCard = ({ - variant = 'gridItem', - tableOptions = {}, -}: Props) => { +export const ConsumedApisCard = ({ variant = 'gridItem' }: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_CONSUMES_API, @@ -90,7 +81,6 @@ export const ConsumedApisCard = ({ } columns={apiEntityColumns} entities={entities as ApiEntity[]} - tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx b/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx index 3f9e9c8d71..bb22f82269 100644 --- a/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/HasApisCard.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ApiEntity, Entity, RELATION_HAS_PART } from '@backstage/catalog-model'; +import { ApiEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -30,13 +30,11 @@ import { Link, Progress, TableColumn, - TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; }; const columns: TableColumn[] = [ @@ -47,10 +45,7 @@ const columns: TableColumn[] = [ EntityTable.columns.createMetadataDescriptionColumn(), ]; -export const HasApisCard = ({ - variant = 'gridItem', - tableOptions = {}, -}: Props) => { +export const HasApisCard = ({ variant = 'gridItem' }: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_HAS_PART, @@ -96,7 +91,6 @@ export const HasApisCard = ({ } columns={columns} entities={entities as ApiEntity[]} - tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx b/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx index 627a4bba37..6ffb6365d2 100644 --- a/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx +++ b/plugins/api-docs/src/components/ApisCards/ProvidedApisCard.tsx @@ -14,11 +14,7 @@ * limitations under the License. */ -import { - ApiEntity, - Entity, - RELATION_PROVIDES_API, -} from '@backstage/catalog-model'; +import { ApiEntity, RELATION_PROVIDES_API } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; import { EntityTable, @@ -33,19 +29,14 @@ import { InfoCardVariants, Link, Progress, - TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; }; -export const ProvidedApisCard = ({ - variant = 'gridItem', - tableOptions = {}, -}: Props) => { +export const ProvidedApisCard = ({ variant = 'gridItem' }: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_PROVIDES_API, @@ -90,7 +81,6 @@ export const ProvidedApisCard = ({ } columns={apiEntityColumns} entities={entities as ApiEntity[]} - tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx b/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx index 62fa13c027..af3dcb7204 100644 --- a/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx +++ b/plugins/api-docs/src/components/ComponentsCards/ConsumingComponentsCard.tsx @@ -16,7 +16,6 @@ import { ComponentEntity, - Entity, RELATION_API_CONSUMED_BY, } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; @@ -32,19 +31,14 @@ import { InfoCardVariants, Link, Progress, - TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; }; -export const ConsumingComponentsCard = ({ - variant = 'gridItem', - tableOptions = {}, -}: Props) => { +export const ConsumingComponentsCard = ({ variant = 'gridItem' }: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_API_CONSUMED_BY, @@ -88,7 +82,6 @@ export const ConsumingComponentsCard = ({ } columns={EntityTable.componentEntityColumns} entities={entities as ComponentEntity[]} - tableOptions={tableOptions} /> ); }; diff --git a/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx b/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx index a16991d57a..0be746de6d 100644 --- a/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx +++ b/plugins/api-docs/src/components/ComponentsCards/ProvidingComponentsCard.tsx @@ -16,7 +16,6 @@ import { ComponentEntity, - Entity, RELATION_API_PROVIDED_BY, } from '@backstage/catalog-model'; import { Typography } from '@material-ui/core'; @@ -32,19 +31,14 @@ import { InfoCardVariants, Link, Progress, - TableProps, WarningPanel, } from '@backstage/core-components'; -type Props = { +type Props = { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; }; -export const ProvidingComponentsCard = ({ - variant = 'gridItem', - tableOptions = {}, -}: Props) => { +export const ProvidingComponentsCard = ({ variant = 'gridItem' }: Props) => { const { entity } = useEntity(); const { entities, loading, error } = useRelatedEntities(entity, { type: RELATION_API_PROVIDED_BY, @@ -88,7 +82,6 @@ export const ProvidingComponentsCard = ({ } columns={EntityTable.componentEntityColumns} entities={entities as ComponentEntity[]} - tableOptions={tableOptions} /> ); }; diff --git a/plugins/catalog-react/api-report.md b/plugins/catalog-react/api-report.md index 48be22cd4a..285ecafd70 100644 --- a/plugins/catalog-react/api-report.md +++ b/plugins/catalog-react/api-report.md @@ -26,7 +26,6 @@ import { ScmIntegrationRegistry } from '@backstage/integration'; import { StyleRules } from '@material-ui/core/styles/withStyles'; import { SystemEntity } from '@backstage/catalog-model'; import { TableColumn } from '@backstage/core-components'; -import { TableProps } from '@backstage/core-components'; // @public export const AsyncEntityProvider: ({ @@ -333,8 +332,6 @@ export interface EntityTableProps { // (undocumented) entities: T[]; // (undocumented) - tableOptions?: TableProps['options']; - // (undocumented) title: string; // (undocumented) variant?: InfoCardVariants; diff --git a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx index 9f65640569..3aa6857120 100644 --- a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx +++ b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx @@ -23,7 +23,6 @@ import { InfoCardVariants, Table, TableColumn, - TableProps, } from '@backstage/core-components'; /** @@ -37,7 +36,6 @@ export interface EntityTableProps { entities: T[]; emptyContent?: ReactNode; columns: TableColumn[]; - tableOptions?: TableProps['options']; } const useStyles = makeStyles(theme => ({ @@ -61,7 +59,6 @@ export const EntityTable = (props: EntityTableProps) => { emptyContent, variant = 'gridItem', columns, - tableOptions = {}, } = props; const classes = useStyles(); @@ -83,14 +80,11 @@ export const EntityTable = (props: EntityTableProps) => { emptyContent &&
{emptyContent}
} options={{ - ...{ - // TODO: Toolbar padding if off compared to other cards, should be: padding: 16px 24px; - search: false, - paging: false, - actionsColumnIndex: -1, - padding: 'dense', - }, - ...tableOptions, + // TODO: Toolbar padding if off compared to other cards, should be: padding: 16px 24px; + search: false, + paging: false, + actionsColumnIndex: -1, + padding: 'dense', }} data={entities} /> diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index 70d9b05f33..3d426a0c8b 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -7,7 +7,6 @@ import { ApiHolder } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; -import { ComponentEntity } from '@backstage/catalog-model'; import { CompoundEntityRef } from '@backstage/catalog-model'; import { Entity } from '@backstage/catalog-model'; import { ExternalRouteRef } from '@backstage/core-plugin-api'; @@ -18,13 +17,11 @@ import { Observable } from '@backstage/types'; import { Overrides } from '@material-ui/core/styles/overrides'; import { default as React_2 } from 'react'; import { ReactNode } from 'react'; -import { ResourceEntity } from '@backstage/catalog-model'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { RouteRef } from '@backstage/core-plugin-api'; import { StarredEntitiesApi } from '@backstage/plugin-catalog-react'; import { StorageApi } from '@backstage/core-plugin-api'; import { StyleRules } from '@material-ui/core/styles/withStyles'; -import { SystemEntity } from '@backstage/catalog-model'; import { TableColumn } from '@backstage/core-components'; import { TableProps } from '@backstage/core-components'; import { TabProps } from '@material-ui/core'; @@ -187,8 +184,6 @@ export class DefaultStarredEntitiesApi implements StarredEntitiesApi { // @public (undocumented) export interface DependencyOfComponentsCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) title?: string; // (undocumented) @@ -197,8 +192,6 @@ export interface DependencyOfComponentsCardProps { // @public (undocumented) export interface DependsOnComponentsCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) title?: string; // (undocumented) @@ -207,8 +200,6 @@ export interface DependsOnComponentsCardProps { // @public (undocumented) export interface DependsOnResourcesCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } @@ -357,32 +348,24 @@ export function hasCatalogProcessingErrors( // @public (undocumented) export interface HasComponentsCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasResourcesCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasSubcomponentsCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } // @public (undocumented) export interface HasSystemsCardProps { - // (undocumented) - tableOptions?: TableProps['options']; // (undocumented) variant?: InfoCardVariants; } @@ -423,7 +406,6 @@ export type RelatedEntitiesCardProps = { relationType: string; emptyMessage: string; emptyHelpLink: string; - tableOptions?: TableProps['options']; asRenderableEntities: (entities: Entity[]) => T[]; }; diff --git a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx index d60785d165..d87b558048 100644 --- a/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx +++ b/plugins/catalog/src/components/DependencyOfComponentsCard/DependencyOfComponentsCard.tsx @@ -14,11 +14,8 @@ * limitations under the License. */ -import { - ComponentEntity, - RELATION_DEPENDENCY_OF, -} from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_DEPENDENCY_OF } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -31,17 +28,12 @@ import { export interface DependencyOfComponentsCardProps { variant?: InfoCardVariants; title?: string; - tableOptions?: TableProps['options']; } export function DependencyOfComponentsCard( props: DependencyOfComponentsCardProps, ) { - const { - variant = 'gridItem', - title = 'Dependency of components', - tableOptions = {}, - } = props; + const { variant = 'gridItem', title = 'Dependency of components' } = props; return ( ); } diff --git a/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx b/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx index 83e01f10ca..4f30c17a84 100644 --- a/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx +++ b/plugins/catalog/src/components/DependsOnComponentsCard/DependsOnComponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ComponentEntity, RELATION_DEPENDS_ON } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_DEPENDS_ON } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -28,15 +28,10 @@ import { export interface DependsOnComponentsCardProps { variant?: InfoCardVariants; title?: string; - tableOptions?: TableProps['options']; } export function DependsOnComponentsCard(props: DependsOnComponentsCardProps) { - const { - variant = 'gridItem', - title = 'Depends on components', - tableOptions = {}, - } = props; + const { variant = 'gridItem', title = 'Depends on components' } = props; return ( ); } diff --git a/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx b/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx index 820afabaa2..a0f4d399f9 100644 --- a/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx +++ b/plugins/catalog/src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_DEPENDS_ON, ResourceEntity } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_DEPENDS_ON } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asResourceEntities, @@ -27,11 +27,10 @@ import { /** @public */ export interface DependsOnResourcesCardProps { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; } export function DependsOnResourcesCard(props: DependsOnResourcesCardProps) { - const { variant = 'gridItem', tableOptions = {} } = props; + const { variant = 'gridItem' } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx b/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx index b3ce15d249..9654152a5c 100644 --- a/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx +++ b/plugins/catalog/src/components/HasComponentsCard/HasComponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ComponentEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -27,11 +27,10 @@ import { /** @public */ export interface HasComponentsCardProps { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; } export function HasComponentsCard(props: HasComponentsCardProps) { - const { variant = 'gridItem', tableOptions = {} } = props; + const { variant = 'gridItem' } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx b/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx index c7e2c2423b..8476d77bda 100644 --- a/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx +++ b/plugins/catalog/src/components/HasResourcesCard/HasResourcesCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART, ResourceEntity } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asResourceEntities, @@ -27,11 +27,10 @@ import { /** @public */ export interface HasResourcesCardProps { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; } export function HasResourcesCard(props: HasResourcesCardProps) { - const { variant = 'gridItem', tableOptions = {} } = props; + const { variant = 'gridItem' } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx b/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx index cbfa2025db..db95d31f9f 100644 --- a/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx +++ b/plugins/catalog/src/components/HasSubcomponentsCard/HasSubcomponentsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ComponentEntity, RELATION_HAS_PART } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asComponentEntities, @@ -26,11 +26,10 @@ import { /** @public */ export interface HasSubcomponentsCardProps { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; } export function HasSubcomponentsCard(props: HasSubcomponentsCardProps) { - const { variant = 'gridItem', tableOptions = {} } = props; + const { variant = 'gridItem' } = props; return ( ); } diff --git a/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx b/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx index 6eb29c721b..5d6fa170f5 100644 --- a/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx +++ b/plugins/catalog/src/components/HasSystemsCard/HasSystemsCard.tsx @@ -14,8 +14,8 @@ * limitations under the License. */ -import { RELATION_HAS_PART, SystemEntity } from '@backstage/catalog-model'; -import { InfoCardVariants, TableProps } from '@backstage/core-components'; +import { RELATION_HAS_PART } from '@backstage/catalog-model'; +import { InfoCardVariants } from '@backstage/core-components'; import React from 'react'; import { asSystemEntities, @@ -27,7 +27,6 @@ import { /** @public */ export interface HasSystemsCardProps { variant?: InfoCardVariants; - tableOptions?: TableProps['options']; } export function HasSystemsCard(props: HasSystemsCardProps) { diff --git a/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx b/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx index 2e5d6bf9e3..e802b0b583 100644 --- a/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx +++ b/plugins/catalog/src/components/RelatedEntitiesCard/RelatedEntitiesCard.tsx @@ -29,7 +29,6 @@ import { Progress, ResponseErrorPanel, TableColumn, - TableProps, } from '@backstage/core-components'; /** @public */ @@ -41,7 +40,6 @@ export type RelatedEntitiesCardProps = { relationType: string; emptyMessage: string; emptyHelpLink: string; - tableOptions?: TableProps['options']; asRenderableEntities: (entities: Entity[]) => T[]; }; @@ -68,7 +66,6 @@ export function RelatedEntitiesCard( relationType, emptyMessage, emptyHelpLink, - tableOptions = {}, asRenderableEntities, } = props; @@ -108,7 +105,6 @@ export function RelatedEntitiesCard( } columns={columns} entities={asRenderableEntities(entities || [])} - tableOptions={tableOptions} /> ); } From f5283a42e21b607b9eb0310b7020601ba8899739 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 14:20:35 +0000 Subject: [PATCH 222/550] fix(deps): update dependency @google-cloud/storage to v6 Signed-off-by: Renovate Bot --- .changeset/renovate-01d4fe0.md | 6 +++ packages/backend-common/package.json | 2 +- plugins/techdocs-node/package.json | 2 +- yarn.lock | 72 +++++++++++++--------------- 4 files changed, 40 insertions(+), 42 deletions(-) create mode 100644 .changeset/renovate-01d4fe0.md diff --git a/.changeset/renovate-01d4fe0.md b/.changeset/renovate-01d4fe0.md new file mode 100644 index 0000000000..fb242da82e --- /dev/null +++ b/.changeset/renovate-01d4fe0.md @@ -0,0 +1,6 @@ +--- +'@backstage/backend-common': patch +'@backstage/plugin-techdocs-node': patch +--- + +Updated dependency `@google-cloud/storage` to `^6.0.0`. diff --git a/packages/backend-common/package.json b/packages/backend-common/package.json index 9e8bbb26e7..f7f34870ba 100644 --- a/packages/backend-common/package.json +++ b/packages/backend-common/package.json @@ -40,7 +40,7 @@ "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.2", "@backstage/types": "^1.0.0", - "@google-cloud/storage": "^5.8.0", + "@google-cloud/storage": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "@octokit/rest": "^18.5.3", "@types/cors": "^2.8.6", diff --git a/plugins/techdocs-node/package.json b/plugins/techdocs-node/package.json index 9dc3c11f01..8e133525a4 100644 --- a/plugins/techdocs-node/package.json +++ b/plugins/techdocs-node/package.json @@ -48,7 +48,7 @@ "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.2", "@backstage/plugin-search-common": "^0.3.5-next.1", - "@google-cloud/storage": "^5.6.0", + "@google-cloud/storage": "^6.0.0", "@trendyol-js/openstack-swift-sdk": "^0.0.5", "@types/express": "^4.17.6", "aws-sdk": "^2.840.0", diff --git a/yarn.lock b/yarn.lock index 6567abf77f..bde0ce7999 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2242,39 +2242,36 @@ resolved "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.0.1.tgz#13350ee609346435c795bbfe133a08dfeab78d65" integrity sha512-ZDG38U/Yy6Zr21LaR3BTiiLtpJl6RkPS/JwoRT453G+6Q1DhlV0waNf8Lfu+YVYGIIxgKnLayJRfYlFJfiI8iQ== -"@google-cloud/promisify@^2.0.0": - version "2.0.3" - resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.3.tgz#f934b5cdc939e3c7039ff62b9caaf59a9d89e3a8" - integrity sha512-d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw== +"@google-cloud/promisify@^3.0.0": + version "3.0.0" + resolved "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-3.0.0.tgz#5cd6941fc30c4acac18051706aa5af96069bd3e3" + integrity sha512-91ArYvRgXWb73YvEOBMmOcJc0bDRs5yiVHnqkwoG0f3nm7nZuipllz6e7BvFESBvjkDTBC0zMD8QxedUwNLc1A== -"@google-cloud/storage@^5.6.0", "@google-cloud/storage@^5.8.0": - version "5.20.5" - resolved "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.20.5.tgz#1de71fc88d37934a886bc815722c134b162d335d" - integrity sha512-lOs/dCyveVF8TkVFnFSF7IGd0CJrTm91qiK6JLu+Z8qiT+7Ag0RyVhxZIWkhiACqwABo7kSHDm8FdH8p2wxSSw== +"@google-cloud/storage@^6.0.0": + version "6.0.1" + resolved "https://registry.npmjs.org/@google-cloud/storage/-/storage-6.0.1.tgz#57c367345431da1f9196513ca836796b11b39d95" + integrity sha512-52P3A8IpqISc2aeGxx/DQyqDmG0uP5wUW3dsns4ZPKZS5jbllFMy0V7qzY2vVv7GgpIULIKQ26yEWjSEA/pLng== dependencies: "@google-cloud/paginator" "^3.0.7" "@google-cloud/projectify" "^2.0.0" - "@google-cloud/promisify" "^2.0.0" + "@google-cloud/promisify" "^3.0.0" abort-controller "^3.0.0" arrify "^2.0.0" async-retry "^1.3.3" compressible "^2.0.12" - configstore "^5.0.0" duplexify "^4.0.0" ent "^2.2.0" extend "^3.0.2" - gaxios "^4.0.0" - google-auth-library "^7.14.1" - hash-stream-validation "^0.2.2" + gaxios "^5.0.0" + google-auth-library "^8.0.1" mime "^3.0.0" mime-types "^2.0.8" p-limit "^3.0.1" pumpify "^2.0.0" - retry-request "^4.2.2" + retry-request "^5.0.0" stream-events "^1.0.4" - teeny-request "^7.1.3" + teeny-request "^8.0.0" uuid "^8.0.0" - xdg-basedir "^4.0.0" "@graphiql/react@^0.4.0": version "0.4.0" @@ -9962,7 +9959,7 @@ config-chain@^1.1.12: ini "^1.3.4" proto-list "~1.2.1" -configstore@^5.0.0, configstore@^5.0.1: +configstore@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== @@ -12406,14 +12403,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.1" + version "0.2.72-next.2" dependencies: "@backstage/app-defaults" "^1.0.3-next.1" "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/cli" "^0.17.2-next.2" "@backstage/config" "^1.0.1" "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" + "@backstage/core-components" "^0.9.5-next.2" "@backstage/core-plugin-api" "^1.0.3-next.0" "@backstage/integration-react" "^1.1.1-next.1" "@backstage/plugin-airbrake" "^0.3.6-next.1" @@ -12422,14 +12419,14 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-azure-devops" "^0.1.22-next.1" "@backstage/plugin-badges" "^0.2.30-next.1" "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.0" + "@backstage/plugin-catalog-common" "^1.0.3-next.1" "@backstage/plugin-catalog-graph" "^0.2.18-next.1" "@backstage/plugin-catalog-import" "^0.8.9-next.1" "@backstage/plugin-catalog-react" "^1.1.1-next.1" "@backstage/plugin-circleci" "^0.3.6-next.1" "@backstage/plugin-cloudbuild" "^0.3.6-next.1" "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.1" + "@backstage/plugin-cost-insights" "^0.11.28-next.2" "@backstage/plugin-explore" "^0.3.37-next.1" "@backstage/plugin-gcalendar" "^0.3.2-next.1" "@backstage/plugin-gcp-projects" "^0.3.25-next.1" @@ -12439,17 +12436,17 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: "@backstage/plugin-home" "^0.4.22-next.1" "@backstage/plugin-jenkins" "^0.7.5-next.1" "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.1" + "@backstage/plugin-kubernetes" "^0.6.6-next.2" "@backstage/plugin-lighthouse" "^0.3.6-next.1" "@backstage/plugin-newrelic" "^0.3.24-next.1" "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.1" - "@backstage/plugin-pagerduty" "0.3.33-next.1" + "@backstage/plugin-org" "^0.5.6-next.2" + "@backstage/plugin-pagerduty" "0.4.0-next.2" "@backstage/plugin-permission-react" "^0.4.2-next.0" "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.1" - "@backstage/plugin-search" "^0.8.2-next.1" - "@backstage/plugin-search-common" "^0.3.5-next.0" + "@backstage/plugin-scaffolder" "^1.3.0-next.2" + "@backstage/plugin-search" "^0.8.2-next.2" + "@backstage/plugin-search-common" "^0.3.5-next.1" "@backstage/plugin-search-react" "^0.2.1-next.0" "@backstage/plugin-sentry" "^0.3.44-next.1" "@backstage/plugin-shortcuts" "^0.2.7-next.1" @@ -13791,7 +13788,7 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7.6.1: +google-auth-library@^7.14.0, google-auth-library@^7.6.1: version "7.14.1" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz#e3483034162f24cc71b95c8a55a210008826213c" integrity sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA== @@ -13806,7 +13803,7 @@ google-auth-library@^7.14.0, google-auth-library@^7.14.1, google-auth-library@^7 jws "^4.0.0" lru-cache "^6.0.0" -google-auth-library@^8.0.2: +google-auth-library@^8.0.1, google-auth-library@^8.0.2: version "8.0.2" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.0.2.tgz#5fa0f2d3795c3e4019d2bb315ade4454cc9c30b5" integrity sha512-HoG+nWFAThLovKpvcbYzxgn+nBJPTfAwtq0GxPN821nOO+21+8oP7MoEHfd1sbDulUFFGfcjJr2CnJ4YssHcyg== @@ -14211,11 +14208,6 @@ hash-it@^5.0.0: resolved "https://registry.npmjs.org/hash-it/-/hash-it-5.0.2.tgz#8cc981944964a5124f74f1065af0c0a5d182d556" integrity sha512-csU3E/a9QEmEgPPxoShVuMcFWM329IGioEPRvYVBv3r5BFrU8pCfnk3jGEVvriAcwqd+nl6KsNhPPjg8MUzkhQ== -hash-stream-validation@^0.2.2: - version "0.2.4" - resolved "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.4.tgz#ee68b41bf822f7f44db1142ec28ba9ee7ccb7512" - integrity sha512-Gjzu0Xn7IagXVkSu9cSFuK1fqzwtLwFhNhVL8IFJijRNMgUttFbBSIAzKuSIrsFMO1+g1RlsoN49zPIbwPDMGQ== - hash.js@^1.0.0, hash.js@^1.0.3: version "1.1.7" resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" @@ -22556,7 +22548,7 @@ ret@~0.1.10: resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== -retry-request@^4.0.0, retry-request@^4.2.2: +retry-request@^4.0.0: version "4.2.2" resolved "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz#b7d82210b6d2651ed249ba3497f07ea602f1a903" integrity sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg== @@ -24373,10 +24365,10 @@ tdigest@^0.1.1: react-router-dom "6.0.0-beta.0" react-use "^17.2.4" -teeny-request@^7.1.3: - version "7.2.0" - resolved "https://registry.npmjs.org/teeny-request/-/teeny-request-7.2.0.tgz#41347ece068f08d741e7b86df38a4498208b2633" - integrity sha512-SyY0pek1zWsi0LRVAALem+avzMLc33MKW/JLLakdP4s9+D7+jHcy5x6P+h94g2QNZsAqQNfX5lsbd3WSeJXrrw== +teeny-request@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/teeny-request/-/teeny-request-8.0.0.tgz#9614410ba70114fd28ba7bf5077dce3e2f02adf7" + integrity sha512-6KEYxXI4lQPSDkXzXpPmJPNmo7oqduFFbhOEHf8sfsLbXyCsb+umUjBtMGAKhaSToD8JNCtQutTRefu29K64JA== dependencies: http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" From 568f2d1e75ba2643f8c1d1e5ae4270e0bf97998f Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Tue, 7 Jun 2022 10:28:57 -0400 Subject: [PATCH 223/550] Change Table component to no longer use draggable columns default Signed-off-by: Michael Haley --- .changeset/gorgeous-trees-sparkle.md | 5 +++++ .../catalog-react/src/components/EntityTable/EntityTable.tsx | 1 + 2 files changed, 6 insertions(+) create mode 100644 .changeset/gorgeous-trees-sparkle.md diff --git a/.changeset/gorgeous-trees-sparkle.md b/.changeset/gorgeous-trees-sparkle.md new file mode 100644 index 0000000000..692f1ad905 --- /dev/null +++ b/.changeset/gorgeous-trees-sparkle.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-react': patch +--- + +Table component no longer has draggable columns by default diff --git a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx index 3aa6857120..424d8b940e 100644 --- a/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx +++ b/plugins/catalog-react/src/components/EntityTable/EntityTable.tsx @@ -85,6 +85,7 @@ export const EntityTable = (props: EntityTableProps) => { paging: false, actionsColumnIndex: -1, padding: 'dense', + draggable: false, }} data={entities} /> From 720cfe533aa2e2800db704f040428b588cfa86e1 Mon Sep 17 00:00:00 2001 From: Julien Tanay Date: Tue, 7 Jun 2022 16:29:52 +0200 Subject: [PATCH 224/550] Add Doctolib in ADOPTERS Signed-off-by: Julien Tanay --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 4c07c247e4..ab9b49bb8b 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -156,3 +156,4 @@ _If you're using Backstage in your organization, please try to add your company | [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | | [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. | [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. +| [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. From 3f140b0b1bcb0630276d3874d627ecdf2a4f2943 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 15:03:35 +0000 Subject: [PATCH 225/550] fix(deps): update dependency webpack-dev-server to v4.9.2 Signed-off-by: Renovate Bot --- yarn.lock | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1fcc281792..17c2cf2eb8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6834,6 +6834,14 @@ "@types/mime" "^1" "@types/node" "*" +"@types/serve-static@^1.13.10": + version "1.13.10" + resolved "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" + integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== + dependencies: + "@types/mime" "^1" + "@types/node" "*" + "@types/set-cookie-parser@^2.4.0": version "2.4.0" resolved "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.0.tgz#10cc0446bad372827671a5195fbd14ebce4a9baf" @@ -25707,14 +25715,15 @@ webpack-dev-middleware@^5.3.1: schema-utils "^4.0.0" webpack-dev-server@^4.7.3: - version "4.9.1" - resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.1.tgz#184607b0287c791aeaa45e58e8fe75fcb4d7e2a8" - integrity sha512-CTMfu2UMdR/4OOZVHRpdy84pNopOuigVIsRbGX3LVDMWNP8EUgC5mUBMErbwBlHTEX99ejZJpVqrir6EXAEajA== + version "4.9.2" + resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.2.tgz#c188db28c7bff12f87deda2a5595679ebbc3c9bc" + integrity sha512-H95Ns95dP24ZsEzO6G9iT+PNw4Q7ltll1GfJHV4fKphuHWgKFzGHWi4alTlTnpk1SPPk41X+l2RB7rLfIhnB9Q== dependencies: "@types/bonjour" "^3.5.9" "@types/connect-history-api-fallback" "^1.3.5" "@types/express" "^4.17.13" "@types/serve-index" "^1.9.1" + "@types/serve-static" "^1.13.10" "@types/sockjs" "^0.3.33" "@types/ws" "^8.5.1" ansi-html-community "^0.0.8" From bfeaa6cc559fb9593601c74df2f7a1684eb19cb4 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 15:04:24 +0000 Subject: [PATCH 226/550] fix(deps): update typescript-eslint monorepo to v5.27.1 Signed-off-by: Renovate Bot --- yarn.lock | 90 +++++++++++++++++++++++++++---------------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1fcc281792..120c9b11b4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7096,13 +7096,13 @@ integrity sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw== "@typescript-eslint/eslint-plugin@^5.9.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.27.0.tgz#23d82a4f21aaafd8f69dbab7e716323bb6695cc8" - integrity sha512-DDrIA7GXtmHXr1VCcx9HivA39eprYBIFxbQEHI6NyraRDxCGpxAFiYQAT/1Y0vh1C+o2vfBiy4IuPoXxtTZCAQ== + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.27.1.tgz#fdf59c905354139046b41b3ed95d1609913d0758" + integrity sha512-6dM5NKT57ZduNnJfpY81Phe9nc9wolnMCnknb1im6brWi1RYv84nbMS3olJa27B6+irUVV1X/Wb+Am0FjJdGFw== dependencies: - "@typescript-eslint/scope-manager" "5.27.0" - "@typescript-eslint/type-utils" "5.27.0" - "@typescript-eslint/utils" "5.27.0" + "@typescript-eslint/scope-manager" "5.27.1" + "@typescript-eslint/type-utils" "5.27.1" + "@typescript-eslint/utils" "5.27.1" debug "^4.3.4" functional-red-black-tree "^1.0.1" ignore "^5.2.0" @@ -7123,13 +7123,13 @@ eslint-utils "^3.0.0" "@typescript-eslint/parser@^5.9.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.27.0.tgz#62bb091ed5cf9c7e126e80021bb563dcf36b6b12" - integrity sha512-8oGjQF46c52l7fMiPPvX4It3u3V3JipssqDfHQ2hcR0AeR8Zge+OYyKUCm5b70X72N1qXt0qgHenwN6Gc2SXZA== + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.27.1.tgz#3a4dcaa67e45e0427b6ca7bb7165122c8b569639" + integrity sha512-7Va2ZOkHi5NP+AZwb5ReLgNF6nWLGTeUJfxdkVUAPPSaAdbWNnFZzLZ4EGGmmiCTg+AwlbE1KyUYTBglosSLHQ== dependencies: - "@typescript-eslint/scope-manager" "5.27.0" - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/typescript-estree" "5.27.0" + "@typescript-eslint/scope-manager" "5.27.1" + "@typescript-eslint/types" "5.27.1" + "@typescript-eslint/typescript-estree" "5.27.1" debug "^4.3.4" "@typescript-eslint/scope-manager@5.20.0": @@ -7140,13 +7140,13 @@ "@typescript-eslint/types" "5.20.0" "@typescript-eslint/visitor-keys" "5.20.0" -"@typescript-eslint/scope-manager@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.27.0.tgz#a272178f613050ed62f51f69aae1e19e870a8bbb" - integrity sha512-VnykheBQ/sHd1Vt0LJ1JLrMH1GzHO+SzX6VTXuStISIsvRiurue/eRkTqSrG0CexHQgKG8shyJfR4o5VYioB9g== +"@typescript-eslint/scope-manager@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.27.1.tgz#4d1504392d01fe5f76f4a5825991ec78b7b7894d" + integrity sha512-fQEOSa/QroWE6fAEg+bJxtRZJTH8NTskggybogHt4H9Da8zd4cJji76gA5SBlR0MgtwF7rebxTbDKB49YUCpAg== dependencies: - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/visitor-keys" "5.27.0" + "@typescript-eslint/types" "5.27.1" + "@typescript-eslint/visitor-keys" "5.27.1" "@typescript-eslint/scope-manager@5.9.0": version "5.9.0" @@ -7156,12 +7156,12 @@ "@typescript-eslint/types" "5.9.0" "@typescript-eslint/visitor-keys" "5.9.0" -"@typescript-eslint/type-utils@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.27.0.tgz#36fd95f6747412251d79c795b586ba766cf0974b" - integrity sha512-vpTvRRchaf628Hb/Xzfek+85o//zEUotr1SmexKvTfs7czXfYjXVT/a5yDbpzLBX1rhbqxjDdr1Gyo0x1Fc64g== +"@typescript-eslint/type-utils@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.27.1.tgz#369f695199f74c1876e395ebea202582eb1d4166" + integrity sha512-+UC1vVUWaDHRnC2cQrCJ4QtVjpjjCgjNFpg8b03nERmkHv9JV9X5M19D7UFMd+/G7T/sgFwX2pGmWK38rqyvXw== dependencies: - "@typescript-eslint/utils" "5.27.0" + "@typescript-eslint/utils" "5.27.1" debug "^4.3.4" tsutils "^3.21.0" @@ -7170,10 +7170,10 @@ resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.20.0.tgz#fa39c3c2aa786568302318f1cb51fcf64258c20c" integrity sha512-+d8wprF9GyvPwtoB4CxBAR/s0rpP25XKgnOvMf/gMXYDvlUC3rPFHupdTQ/ow9vn7UDe5rX02ovGYQbv/IUCbg== -"@typescript-eslint/types@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.27.0.tgz#c3f44b9dda6177a9554f94a74745ca495ba9c001" - integrity sha512-lY6C7oGm9a/GWhmUDOs3xAVRz4ty/XKlQ2fOLr8GAIryGn0+UBOoJDWyHer3UgrHkenorwvBnphhP+zPmzmw0A== +"@typescript-eslint/types@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.27.1.tgz#34e3e629501349d38be6ae97841298c03a6ffbf1" + integrity sha512-LgogNVkBhCTZU/m8XgEYIWICD6m4dmEDbKXESCbqOXfKZxRKeqpiJXQIErv66sdopRKZPo5l32ymNqibYEH/xg== "@typescript-eslint/types@5.9.0": version "5.9.0" @@ -7193,13 +7193,13 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.0.tgz#7965f5b553c634c5354a47dcce0b40b94611e995" - integrity sha512-QywPMFvgZ+MHSLRofLI7BDL+UczFFHyj0vF5ibeChDAJgdTV8k4xgEwF0geFhVlPc1p8r70eYewzpo6ps+9LJQ== +"@typescript-eslint/typescript-estree@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.27.1.tgz#7621ee78607331821c16fffc21fc7a452d7bc808" + integrity sha512-DnZvvq3TAJ5ke+hk0LklvxwYsnXpRdqUY5gaVS0D4raKtbznPz71UJGnPTHEFo0GDxqLOLdMkkmVZjSpET1hFw== dependencies: - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/visitor-keys" "5.27.0" + "@typescript-eslint/types" "5.27.1" + "@typescript-eslint/visitor-keys" "5.27.1" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -7219,15 +7219,15 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.27.0.tgz#d0021cbf686467a6a9499bd0589e19665f9f7e71" - integrity sha512-nZvCrkIJppym7cIbP3pOwIkAefXOmfGPnCM0LQfzNaKxJHI6VjI8NC662uoiPlaf5f6ymkTy9C3NQXev2mdXmA== +"@typescript-eslint/utils@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.27.1.tgz#b4678b68a94bc3b85bf08f243812a6868ac5128f" + integrity sha512-mZ9WEn1ZLDaVrhRaYgzbkXBkTPghPFsup8zDbbsYTxC5OmqrFE7skkKS/sraVsLP3TcT3Ki5CSyEFBRkLH/H/w== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.27.0" - "@typescript-eslint/types" "5.27.0" - "@typescript-eslint/typescript-estree" "5.27.0" + "@typescript-eslint/scope-manager" "5.27.1" + "@typescript-eslint/types" "5.27.1" + "@typescript-eslint/typescript-estree" "5.27.1" eslint-scope "^5.1.1" eslint-utils "^3.0.0" @@ -7251,12 +7251,12 @@ "@typescript-eslint/types" "5.20.0" eslint-visitor-keys "^3.0.0" -"@typescript-eslint/visitor-keys@5.27.0": - version "5.27.0" - resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.0.tgz#97aa9a5d2f3df8215e6d3b77f9d214a24db269bd" - integrity sha512-46cYrteA2MrIAjv9ai44OQDUoCZyHeGIc4lsjCUX2WT6r4C+kidz1bNiR4017wHOPUythYeH+Sc7/cFP97KEAA== +"@typescript-eslint/visitor-keys@5.27.1": + version "5.27.1" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.27.1.tgz#05a62666f2a89769dac2e6baa48f74e8472983af" + integrity sha512-xYs6ffo01nhdJgPieyk7HAOpjhTsx7r/oB9LWEhwAXgwn33tkr+W8DI2ChboqhZlC4q3TC6geDYPoiX8ROqyOQ== dependencies: - "@typescript-eslint/types" "5.27.0" + "@typescript-eslint/types" "5.27.1" eslint-visitor-keys "^3.3.0" "@typescript-eslint/visitor-keys@5.9.0": From b5d9bf362e371617ee54aa558b01efc8543c2e62 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 7 Jun 2022 20:17:07 +0200 Subject: [PATCH 227/550] docs: update sign-in resolver docs to check email domain Signed-off-by: Patrik Oldsberg --- docs/auth/identity-resolver.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/auth/identity-resolver.md b/docs/auth/identity-resolver.md index 686c9a9dab..7930d1cb5a 100644 --- a/docs/auth/identity-resolver.md +++ b/docs/auth/identity-resolver.md @@ -210,6 +210,11 @@ is that it can be tricky to determine the ownership references, although it can be achieved for example through a lookup to an external service. You typically want to at least use the user itself as a lone ownership reference. +Because we no longer use the catalog as an allow-list of users, it is often important +that you limit what users are allowed to sign in. This could be a simple email domain +check like in the example below, or you might for example look up the GitHub organizations +that the user belongs to using the user access token in the provided result object. + ```ts import { DEFAULT_NAMESPACE, stringifyEntityRef, } from '@backstage/catalog-model'; @@ -220,8 +225,14 @@ async ({ profile }, ctx) => { 'Login failed, user profile does not contain an email', ); } - // We again use the local part of the email as the user name. - const [localPart] = profile.email.split('@'); + // Split the email into the local part and the domain. + const [localPart, domain] = profile.email.split('@'); + + // Next we verify the email domain. It is recommended to include this + // kind of check if you don't look up the user in an external service. + if (domain !== 'acme.org') { + throw new Error('Login failed, user email domain check failed'); + } // By using `stringifyEntityRef` we ensure that the reference is formatted correctly const userEntityRef = stringifyEntityRef({ From 1f2fdef1e351305d0fc218a2348c7926ec290df6 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 7 Jun 2022 20:24:27 +0200 Subject: [PATCH 228/550] docs: add note to sign-in docs for how to handle multiple sign-in resolvers Signed-off-by: Patrik Oldsberg --- docs/auth/identity-resolver.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/auth/identity-resolver.md b/docs/auth/identity-resolver.md index 7930d1cb5a..c7f90d0bbf 100644 --- a/docs/auth/identity-resolver.md +++ b/docs/auth/identity-resolver.md @@ -59,6 +59,11 @@ the given auth provider, as well as a context object that contains various helpe for looking up users and issuing tokens. There are also a number of built-in sign-in resolvers that can be used, which are covered a bit further down. +Note that while it possible to configure multiple auth providers to be used for sign-in, +you should take care when doing so. It is best to make sure that the different auth +providers either do not have any user overlap, or that any users that are able to log +in with multiple providers always end up with the same Backstage identity. + ### Custom Resolver Example Let's look at an example of a custom sign-in resolver for the Google auth provider. From bceef12907020e268fe658fada7242b3042295fa Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 7 Jun 2022 18:32:53 +0000 Subject: [PATCH 229/550] fix(deps): update dependency rollup to v2.75.6 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1fcc281792..33caf2b01e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22631,9 +22631,9 @@ rollup@^0.63.4: "@types/node" "*" rollup@^2.60.2: - version "2.75.5" - resolved "https://registry.npmjs.org/rollup/-/rollup-2.75.5.tgz#7985c1962483235dd07966f09fdad5c5f89f16d0" - integrity sha512-JzNlJZDison3o2mOxVmb44Oz7t74EfSd1SQrplQk0wSaXV7uLQXtVdHbxlcT3w+8tZ1TL4r/eLfc7nAbz38BBA== + version "2.75.6" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.75.6.tgz#ac4dc8600f95942a0180f61c7c9d6200e374b439" + integrity sha512-OEf0TgpC9vU6WGROJIk1JA3LR5vk/yvqlzxqdrE2CzzXnqKXNzbAwlWUXis8RS3ZPe7LAq+YUxsRa0l3r27MLA== optionalDependencies: fsevents "~2.3.2" From 73353737d95b6f4b574d5cbedffa3230278e85ba Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Tue, 7 Jun 2022 11:51:33 -0700 Subject: [PATCH 230/550] fix: remove call to IdentityApi in favor of FetchApi Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/src/api/DynatraceClient.ts | 13 +------------ plugins/dynatrace/src/plugin.ts | 5 +---- 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/plugins/dynatrace/src/api/DynatraceClient.ts b/plugins/dynatrace/src/api/DynatraceClient.ts index ae352106d0..015ad4bc44 100644 --- a/plugins/dynatrace/src/api/DynatraceClient.ts +++ b/plugins/dynatrace/src/api/DynatraceClient.ts @@ -14,28 +14,20 @@ * limitations under the License. */ import { DynatraceProblems, DynatraceApi } from './DynatraceApi'; -import { - DiscoveryApi, - IdentityApi, - FetchApi, -} from '@backstage/core-plugin-api'; +import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; export class DynatraceClient implements DynatraceApi { discoveryApi: DiscoveryApi; - identityApi: IdentityApi; fetchApi: FetchApi; constructor({ discoveryApi, - identityApi, fetchApi, }: { discoveryApi: DiscoveryApi; - identityApi: IdentityApi; fetchApi: FetchApi; }) { this.discoveryApi = discoveryApi; - this.identityApi = identityApi; this.fetchApi = fetchApi; } @@ -43,15 +35,12 @@ export class DynatraceClient implements DynatraceApi { path: string, query: { [key in string]: any }, ): Promise { - const { token: idToken } = await this.identityApi.getCredentials(); - const apiUrl = `${await this.discoveryApi.getBaseUrl('proxy')}/dynatrace`; const response = await this.fetchApi.fetch( `${apiUrl}/${path}?${new URLSearchParams(query).toString()}`, { headers: { 'Content-Type': 'application/json', - ...(idToken && { Authorization: `Bearer ${idToken}` }), }, }, ); diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts index 2bf1353e13..7ba3bef3a1 100644 --- a/plugins/dynatrace/src/plugin.ts +++ b/plugins/dynatrace/src/plugin.ts @@ -18,7 +18,6 @@ import { createApiFactory, createPlugin, discoveryApiRef, - identityApiRef, fetchApiRef, createRoutableExtension, } from '@backstage/core-plugin-api'; @@ -38,13 +37,11 @@ export const dynatracePlugin = createPlugin({ api: dynatraceApiRef, deps: { discoveryApi: discoveryApiRef, - identityApi: identityApiRef, fetchApi: fetchApiRef, }, - factory: ({ discoveryApi, identityApi, fetchApi }) => + factory: ({ discoveryApi, fetchApi }) => new DynatraceClient({ discoveryApi, - identityApi, fetchApi, }), }), From a11506895d2a3b898c28179e959e290c60546e49 Mon Sep 17 00:00:00 2001 From: Michael Haley Date: Tue, 7 Jun 2022 18:24:29 -0400 Subject: [PATCH 231/550] Fixed verbiage in changeset Signed-off-by: Michael Haley --- .changeset/gorgeous-trees-sparkle.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/gorgeous-trees-sparkle.md b/.changeset/gorgeous-trees-sparkle.md index 692f1ad905..962cc22021 100644 --- a/.changeset/gorgeous-trees-sparkle.md +++ b/.changeset/gorgeous-trees-sparkle.md @@ -2,4 +2,4 @@ '@backstage/plugin-catalog-react': patch --- -Table component no longer has draggable columns by default +Table component no longer has drag and drop columns by default From 18345620d08297b7af761fcc8e12162de85de668 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 00:37:01 +0000 Subject: [PATCH 232/550] chore(deps): update dependency @types/node to v16.11.39 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 159fe4b4d3..1f0e2921ea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6528,9 +6528,9 @@ integrity sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A== "@types/node@^16.0.0", "@types/node@^16.11.26", "@types/node@^16.9.2": - version "16.11.38" - resolved "https://registry.npmjs.org/@types/node/-/node-16.11.38.tgz#be0edd097b23eace6c471c525a74b3f98803017f" - integrity sha512-hjO/0K140An3GWDw2HJfq7gko3wWeznbjXgg+rzPdVzhe198hp4x2i1dgveAOEiFKd8sOilAxzoSJiVv5P/CUg== + version "16.11.39" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.39.tgz#07223cd2bc332ad9d92135e3a522eebdee3b060e" + integrity sha512-K0MsdV42vPwm9L6UwhIxMAOmcvH/1OoVkZyCgEtVu4Wx7sElGloy/W7kMBNe/oJ7V/jW9BVt1F6RahH6e7tPXw== "@types/normalize-package-data@^2.4.0": version "2.4.1" From 5dc5c658005e8072cd71701e81c3bd875e81c724 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 01:05:34 +0000 Subject: [PATCH 233/550] chore(deps): update dependency msw to v0.42.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e83fae6998..368f13e796 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18696,9 +18696,9 @@ msw@^0.39.2: yargs "^17.3.1" msw@^0.42.0: - version "0.42.0" - resolved "https://registry.npmjs.org/msw/-/msw-0.42.0.tgz#2286aefad82808888914e2bc5e40666e82b2824b" - integrity sha512-vB9rzgiGHoQGfkKpp3QZHxobzfuuQOJk+0bff0wtbK8k3P3CaUSt8bCwvExours682AY4mUfTjIkCsxy0JoS3w== + version "0.42.1" + resolved "https://registry.npmjs.org/msw/-/msw-0.42.1.tgz#2496d3e191754b68686e2530de459a2e102f85c4" + integrity sha512-LZZuz7VddL45gCBgfBWHyXj6a4W7OTJY0mZPoipJ3P/xwbuJwrtwB3IJrWlqBM8aink/eTKlRxwzmtIAwCj5yQ== dependencies: "@mswjs/cookies" "^0.2.0" "@mswjs/interceptors" "^0.16.3" From f8242295d08237cf3e6a08157cf93b5142e9e86c Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 02:30:59 +0000 Subject: [PATCH 234/550] fix(deps): update dependency ldapjs to v2.3.3 Signed-off-by: Renovate Bot --- yarn.lock | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d9966676fa..e07b324e7f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6385,9 +6385,7 @@ "@types/node" "*" "@types/ldapjs@^2.2.0": - version "2.2.2" - resolved "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.2.tgz#cf79510d8dc34e5579442c2743f8a228427eb99c" - integrity sha512-U5HdnwIZ5uZa+f3usxdqgyfNmOROxOxXvQdQtsu6sKo8fte5vej9br2csHxPvXreAbAO1bs8/rdEzvCLpi67nQ== + version "2.3.3" dependencies: "@types/node" "*" From 7f4675e8d0c494b8d2589a9924c68e297375d99d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 02:32:55 +0000 Subject: [PATCH 235/550] chore(deps): update dependency puppeteer to v14.3.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d9966676fa..6a418e91a5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21215,9 +21215,9 @@ pupa@^2.1.1: escape-goat "^2.0.0" puppeteer@^14.0.0: - version "14.2.1" - resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.2.1.tgz#e343379061e0211b4c02d0c535883c26a39f825e" - integrity sha512-cIEsAbEbNYqHbkvdZY4+YSdxVwh4YFqOHSezuLpu46XAYlKkQeAMdJQ+mDAxg9v77gIn8PHJ6PlftIVsWKRACA== + version "14.3.0" + resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.3.0.tgz#0099cabf97767461aca02486313e84fcfc776af6" + integrity sha512-pDtg1+vyw1UPIhUjh2/VW1HUdQnaZJHfMacrJciR3AVm+PBiqdCEcFeFb3UJ/CDEQlHOClm3/WFa7IjY25zIGg== dependencies: cross-fetch "3.1.5" debug "4.3.4" From d4f576044f88d9b5e6e736ee6f509a2f509913b2 Mon Sep 17 00:00:00 2001 From: fr0stf0x Date: Wed, 8 Jun 2022 10:07:27 +0700 Subject: [PATCH 236/550] add backstage-grpc-playground plugin to marketplace Signed-off-by: fr0stf0x --- microsite/data/plugins/grpc-playground.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 microsite/data/plugins/grpc-playground.yaml diff --git a/microsite/data/plugins/grpc-playground.yaml b/microsite/data/plugins/grpc-playground.yaml new file mode 100644 index 0000000000..097759be11 --- /dev/null +++ b/microsite/data/plugins/grpc-playground.yaml @@ -0,0 +1,9 @@ +--- +title: GRPC Playground +author: Zalopay-OSS +authorUrl: https://github.com/zalopay-oss/ +category: Discovery +description: Easily view and test your gRPC API with a GUI Client, inspired from BloomRPC application. +documentation: https://github.com/zalopay-oss/backstage-grpc-playground +iconUrl: https://raw.githubusercontent.com/zalopay-oss/backstage-grpc-playground/main/images/gprc-logo.png +npmPackageName: 'backstage-grpc-playground' From 37025f389eac897732221777cb7874e4cec90548 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 03:51:22 +0000 Subject: [PATCH 237/550] chore(deps): update dependency esbuild to v0.14.43 Signed-off-by: Renovate Bot --- yarn.lock | 210 +++++++++++++++++++++++++++--------------------------- 1 file changed, 106 insertions(+), 104 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2e92880be0..7932ab2e28 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6385,7 +6385,9 @@ "@types/node" "*" "@types/ldapjs@^2.2.0": - version "2.3.3" + version "2.2.2" + resolved "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.2.tgz#cf79510d8dc34e5579442c2743f8a228427eb99c" + integrity sha512-U5HdnwIZ5uZa+f3usxdqgyfNmOROxOxXvQdQtsu6sKo8fte5vej9br2csHxPvXreAbAO1bs8/rdEzvCLpi67nQ== dependencies: "@types/node" "*" @@ -11860,75 +11862,75 @@ es6-error@^4.1.1: resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== -esbuild-android-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.42.tgz#d7ab3d44d3671218d22bce52f65642b12908d954" - integrity sha512-P4Y36VUtRhK/zivqGVMqhptSrFILAGlYp0Z8r9UQqHJ3iWztRCNWnlBzD9HRx0DbueXikzOiwyOri+ojAFfW6A== +esbuild-android-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.43.tgz#59bf3edad6863c27aa92bbb5c1d83a9a5c981495" + integrity sha512-kqFXAS72K6cNrB6RiM7YJ5lNvmWRDSlpi7ZuRZ1hu1S3w0zlwcoCxWAyM23LQUyZSs1PbjHgdbbfYAN8IGh6xg== -esbuild-android-arm64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.42.tgz#45336d8bec49abddb3a022996a23373f45a57c27" - integrity sha512-0cOqCubq+RWScPqvtQdjXG3Czb3AWI2CaKw3HeXry2eoA2rrPr85HF7IpdU26UWdBXgPYtlTN1LUiuXbboROhg== +esbuild-android-arm64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.43.tgz#0258704edf92ce2463af6d2900b844b5423bed63" + integrity sha512-bKS2BBFh+7XZY9rpjiHGRNA7LvWYbZWP87pLehggTG7tTaCDvj8qQGOU/OZSjCSKDYbgY7Q+oDw8RlYQ2Jt2BA== -esbuild-darwin-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.42.tgz#6dff5e44cd70a88c33323e2f5fb598e40c68a9e0" - integrity sha512-ipiBdCA3ZjYgRfRLdQwP82rTiv/YVMtW36hTvAN5ZKAIfxBOyPXY7Cejp3bMXWgzKD8B6O+zoMzh01GZsCuEIA== +esbuild-darwin-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.43.tgz#72a47295678d4aa0656979baa8cf6d5c8c92656f" + integrity sha512-/3PSilx011ttoieRGkSZ0XV8zjBf2C9enV4ScMMbCT4dpx0mFhMOpFnCHkOK0pWGB8LklykFyHrWk2z6DENVUg== -esbuild-darwin-arm64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.42.tgz#2c7313e1b12d2fa5b889c03213d682fb92ca8c4f" - integrity sha512-bU2tHRqTPOaoH/4m0zYHbFWpiYDmaA0gt90/3BMEFaM0PqVK/a6MA2V/ypV5PO0v8QxN6gH5hBPY4YJ2lopXgA== +esbuild-darwin-arm64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.43.tgz#5f5823170b8d85b888957f0794e186caac447aca" + integrity sha512-1HyFUKs8DMCBOvw1Qxpr5Vv/ThNcVIFb5xgXWK3pyT40WPvgYIiRTwJCvNs4l8i5qWF8/CK5bQxJVDjQvtv0Yw== -esbuild-freebsd-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.42.tgz#ad1c5a564a7e473b8ce95ee7f76618d05d6daffc" - integrity sha512-75h1+22Ivy07+QvxHyhVqOdekupiTZVLN1PMwCDonAqyXd8TVNJfIRFrdL8QmSJrOJJ5h8H1I9ETyl2L8LQDaw== +esbuild-freebsd-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.43.tgz#e4a48b08181053837e6cd9bda19ae0af94d493b0" + integrity sha512-FNWc05TPHYgaXjbPZO5/rJKSBslfG6BeMSs8GhwnqAKP56eEhvmzwnIz1QcC9cRVyO+IKqWNfmHFkCa1WJTULA== -esbuild-freebsd-arm64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.42.tgz#4bdb480234144f944f1930829bace7561135ddc7" - integrity sha512-W6Jebeu5TTDQMJUJVarEzRU9LlKpNkPBbjqSu+GUPTHDCly5zZEQq9uHkmHHl7OKm+mQ2zFySN83nmfCeZCyNA== +esbuild-freebsd-arm64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.43.tgz#386e780d36c1dedf3a1cdab79e0bbacd873274e6" + integrity sha512-amrYopclz3VohqisOPR6hA3GOWA3LZC1WDLnp21RhNmoERmJ/vLnOpnrG2P/Zao+/erKTCUqmrCIPVtj58DRoA== -esbuild-linux-32@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.42.tgz#ef18fd19f067e9d2b5f677d6b82fa81519f5a8c2" - integrity sha512-Ooy/Bj+mJ1z4jlWcK5Dl6SlPlCgQB9zg1UrTCeY8XagvuWZ4qGPyYEWGkT94HUsRi2hKsXvcs6ThTOjBaJSMfg== +esbuild-linux-32@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.43.tgz#040ed6b9ebf06d73acdf2acce7f1cd0c12fbc6a5" + integrity sha512-KoxoEra+9O3AKVvgDFvDkiuddCds6q71owSQEYwjtqRV7RwbPzKxJa6+uyzUulHcyGVq0g15K0oKG5CFBcvYDw== -esbuild-linux-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.42.tgz#d84e7333b1c1b22cf8b5b9dbb5dd9b2ecb34b79f" - integrity sha512-2L0HbzQfbTuemUWfVqNIjOfaTRt9zsvjnme6lnr7/MO9toz/MJ5tZhjqrG6uDWDxhsaHI2/nsDgrv8uEEN2eoA== +esbuild-linux-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.43.tgz#8abbb7594ab6a008f2aae72d95d8a4fdc59d9000" + integrity sha512-EwINwGMyiJMgBby5/SbMqKcUhS5AYAZ2CpEBzSowsJPNBJEdhkCTtEjk757TN/wxgbu3QklqDM6KghY660QCUw== -esbuild-linux-arm64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.42.tgz#dc19e282f8c4ffbaa470c02a4d171e4ae0180cca" - integrity sha512-c3Ug3e9JpVr8jAcfbhirtpBauLxzYPpycjWulD71CF6ZSY26tvzmXMJYooQ2YKqDY4e/fPu5K8bm7MiXMnyxuA== +esbuild-linux-arm64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.43.tgz#4e8e9ce77cbf7efec65e79e512b3d2fbd2da398f" + integrity sha512-UlSpjMWllAc70zYbHxWuDS3FJytyuR/gHJYBr8BICcTNb/TSOYVBg6U7b3jZ3mILTrgzwJUHwhEwK18FZDouUQ== -esbuild-linux-arm@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.42.tgz#d49870e63e2242b8156bf473f2ee5154226be328" - integrity sha512-STq69yzCMhdRaWnh29UYrLSr/qaWMm/KqwaRF1pMEK7kDiagaXhSL1zQGXbYv94GuGY/zAwzK98+6idCMUOOCg== +esbuild-linux-arm@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.43.tgz#9e41ee5e099c0ffdfd150da154330c2c0226cc96" + integrity sha512-e6YzQUoDxxtyamuF12eVzzRC7bbEFSZohJ6igQB9tBqnNmIQY3fI6Cns3z2wxtbZ3f2o6idkD2fQnlvs2902Dg== -esbuild-linux-mips64le@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.42.tgz#f4e6ff9bf8a6f175470498826f48d093b054fc22" - integrity sha512-QuvpHGbYlkyXWf2cGm51LBCHx6eUakjaSrRpUqhPwjh/uvNUYvLmz2LgPTTPwCqaKt0iwL+OGVL0tXA5aDbAbg== +esbuild-linux-mips64le@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.43.tgz#4b41f465a787f91cc4fe7dffa0dcabf655935a1a" + integrity sha512-f+v8cInPEL1/SDP//CfSYzcDNgE4CY3xgDV81DWm3KAPWzhvxARrKxB1Pstf5mB56yAslJDxu7ryBUPX207EZA== -esbuild-linux-ppc64le@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.42.tgz#ac9c66fc80ba9f8fda15a4cc08f4e55f6c0aed63" - integrity sha512-8ohIVIWDbDT+i7lCx44YCyIRrOW1MYlks9fxTo0ME2LS/fxxdoJBwHWzaDYhjvf8kNpA+MInZvyOEAGoVDrMHg== +esbuild-linux-ppc64le@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.43.tgz#ca15934f5b46728dd9ac05270e783e7feaca9eaf" + integrity sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA== -esbuild-linux-riscv64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.42.tgz#21e0ae492a3a9bf4eecbfc916339a66e204256d0" - integrity sha512-DzDqK3TuoXktPyG1Lwx7vhaF49Onv3eR61KwQyxYo4y5UKTpL3NmuarHSIaSVlTFDDpcIajCDwz5/uwKLLgKiQ== +esbuild-linux-riscv64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.43.tgz#70fce2b5a0605a67e58b5a357b0e00be1029836d" + integrity sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw== -esbuild-linux-s390x@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.42.tgz#06d40b957250ffd9a2183bfdfc9a03d6fd21b3e8" - integrity sha512-YFRhPCxl8nb//Wn6SiS5pmtplBi4z9yC2gLrYoYI/tvwuB1jldir9r7JwAGy1Ck4D7sE7wBN9GFtUUX/DLdcEQ== +esbuild-linux-s390x@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.43.tgz#318d03b4f4ccc7fa44ac7562121cf4a4529e477a" + integrity sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ== esbuild-loader@^2.18.0: version "2.19.0" @@ -11942,61 +11944,61 @@ esbuild-loader@^2.18.0: tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.42.tgz#185664f05f10914f14ed43bd9e22b7de584267f7" - integrity sha512-QYSD2k+oT9dqB/4eEM9c+7KyNYsIPgzYOSrmfNGDIyJrbT1d+CFVKvnKahDKNJLfOYj8N4MgyFaU9/Ytc6w5Vw== +esbuild-netbsd-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.43.tgz#86130ce204ef0162a96e863b55851efecc92f423" + integrity sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ== -esbuild-openbsd-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.42.tgz#c29006f659eb4e55283044bbbd4eb4054fae8839" - integrity sha512-M2meNVIKWsm2HMY7+TU9AxM7ZVwI9havdsw6m/6EzdXysyCFFSoaTQ/Jg03izjCsK17FsVRHqRe26Llj6x0MNA== +esbuild-openbsd-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.43.tgz#0229dc2db2ded97b03bb93bba7646b30ffdf5d0d" + integrity sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg== -esbuild-sunos-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.42.tgz#aa9eec112cd1e7105e7bb37000eca7d460083f8f" - integrity sha512-uXV8TAZEw36DkgW8Ak3MpSJs1ofBb3Smkc/6pZ29sCAN1KzCAQzsje4sUwugf+FVicrHvlamCOlFZIXgct+iqQ== +esbuild-sunos-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.43.tgz#17e316216eb9f1de25d52a9000356ae5b869e736" + integrity sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q== -esbuild-windows-32@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.42.tgz#c3fc450853c61a74dacc5679de301db23b73e61e" - integrity sha512-4iw/8qWmRICWi9ZOnJJf9sYt6wmtp3hsN4TdI5NqgjfOkBVMxNdM9Vt3626G1Rda9ya2Q0hjQRD9W1o+m6Lz6g== +esbuild-windows-32@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.43.tgz#a173757bc6dfd0f2656ff40b64f7f9290745778e" + integrity sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw== -esbuild-windows-64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.42.tgz#b877aa37ff47d9fcf0ccb1ca6a24b31475a5e555" - integrity sha512-j3cdK+Y3+a5H0wHKmLGTJcq0+/2mMBHPWkItR3vytp/aUGD/ua/t2BLdfBIzbNN9nLCRL9sywCRpOpFMx3CxzA== +esbuild-windows-64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.43.tgz#c447b23126aad158c4fe6a394342cafd97926ed1" + integrity sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw== -esbuild-windows-arm64@0.14.42: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.42.tgz#79da8744626f24bc016dc40d016950b5a4a2bac5" - integrity sha512-+lRAARnF+hf8J0mN27ujO+VbhPbDqJ8rCcJKye4y7YZLV6C4n3pTRThAb388k/zqF5uM0lS5O201u0OqoWSicw== +esbuild-windows-arm64@0.14.43: + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.43.tgz#3caed1b430d394d7a7836407b9d36c4750246e76" + integrity sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: - version "0.14.42" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.42.tgz#98587df0b024d5f6341b12a1d735a2bff55e1836" - integrity sha512-V0uPZotCEHokJdNqyozH6qsaQXqmZEOiZWrXnds/zaH/0SyrIayRXWRB98CENO73MIZ9T3HBIOsmds5twWtmgw== + version "0.14.43" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.43.tgz#c227d585c512d3e0f23b88f50b8e16501147f647" + integrity sha512-Uf94+kQmy/5jsFwKWiQB4hfo/RkM9Dh7b79p8yqd1tshULdr25G2szLz631NoH3s2ujnKEKVD16RmOxvCNKRFA== optionalDependencies: - esbuild-android-64 "0.14.42" - esbuild-android-arm64 "0.14.42" - esbuild-darwin-64 "0.14.42" - esbuild-darwin-arm64 "0.14.42" - esbuild-freebsd-64 "0.14.42" - esbuild-freebsd-arm64 "0.14.42" - esbuild-linux-32 "0.14.42" - esbuild-linux-64 "0.14.42" - esbuild-linux-arm "0.14.42" - esbuild-linux-arm64 "0.14.42" - esbuild-linux-mips64le "0.14.42" - esbuild-linux-ppc64le "0.14.42" - esbuild-linux-riscv64 "0.14.42" - esbuild-linux-s390x "0.14.42" - esbuild-netbsd-64 "0.14.42" - esbuild-openbsd-64 "0.14.42" - esbuild-sunos-64 "0.14.42" - esbuild-windows-32 "0.14.42" - esbuild-windows-64 "0.14.42" - esbuild-windows-arm64 "0.14.42" + esbuild-android-64 "0.14.43" + esbuild-android-arm64 "0.14.43" + esbuild-darwin-64 "0.14.43" + esbuild-darwin-arm64 "0.14.43" + esbuild-freebsd-64 "0.14.43" + esbuild-freebsd-arm64 "0.14.43" + esbuild-linux-32 "0.14.43" + esbuild-linux-64 "0.14.43" + esbuild-linux-arm "0.14.43" + esbuild-linux-arm64 "0.14.43" + esbuild-linux-mips64le "0.14.43" + esbuild-linux-ppc64le "0.14.43" + esbuild-linux-riscv64 "0.14.43" + esbuild-linux-s390x "0.14.43" + esbuild-netbsd-64 "0.14.43" + esbuild-openbsd-64 "0.14.43" + esbuild-sunos-64 "0.14.43" + esbuild-windows-32 "0.14.43" + esbuild-windows-64 "0.14.43" + esbuild-windows-arm64 "0.14.43" escalade@^3.1.1: version "3.1.1" From 89d022ed8e5eddcc47deecb70cc1a700cc3cf1cd Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 03:52:08 +0000 Subject: [PATCH 238/550] fix(deps): update dependency @graphql-tools/schema to v8.3.14 Signed-off-by: Renovate Bot --- yarn.lock | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index 2e92880be0..6a418e91a5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6385,7 +6385,9 @@ "@types/node" "*" "@types/ldapjs@^2.2.0": - version "2.3.3" + version "2.2.2" + resolved "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.2.tgz#cf79510d8dc34e5579442c2743f8a228427eb99c" + integrity sha512-U5HdnwIZ5uZa+f3usxdqgyfNmOROxOxXvQdQtsu6sKo8fte5vej9br2csHxPvXreAbAO1bs8/rdEzvCLpi67nQ== dependencies: "@types/node" "*" From 69c5c2b2583f1c2a703ccb3931426a8fe0316d25 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 04:06:05 +0000 Subject: [PATCH 239/550] fix(deps): update dependency qs to v6.10.5 Signed-off-by: Renovate Bot --- yarn.lock | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index 2e92880be0..6a418e91a5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6385,7 +6385,9 @@ "@types/node" "*" "@types/ldapjs@^2.2.0": - version "2.3.3" + version "2.2.2" + resolved "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.2.tgz#cf79510d8dc34e5579442c2743f8a228427eb99c" + integrity sha512-U5HdnwIZ5uZa+f3usxdqgyfNmOROxOxXvQdQtsu6sKo8fte5vej9br2csHxPvXreAbAO1bs8/rdEzvCLpi67nQ== dependencies: "@types/node" "*" From ded1d71defac043351b5a44cb889653057f19b62 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 04:07:07 +0000 Subject: [PATCH 240/550] fix(deps): update dependency aws-sdk to v2.1150.0 Signed-off-by: Renovate Bot --- yarn.lock | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2e92880be0..c39890c100 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6385,7 +6385,9 @@ "@types/node" "*" "@types/ldapjs@^2.2.0": - version "2.3.3" + version "2.2.2" + resolved "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.2.tgz#cf79510d8dc34e5579442c2743f8a228427eb99c" + integrity sha512-U5HdnwIZ5uZa+f3usxdqgyfNmOROxOxXvQdQtsu6sKo8fte5vej9br2csHxPvXreAbAO1bs8/rdEzvCLpi67nQ== dependencies: "@types/node" "*" @@ -8193,9 +8195,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1148.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1148.0.tgz#028211e724aee5118223eb5fa65495eaae4b5083" - integrity sha512-FUYAyveKmS5eqIiGQgrGVsLZwwtI+K6S6Gz8oJf56pgypZCo9dV+cXO4aaS+vN0+LSmGh6dSKc6G8h8FYASIJg== + version "2.1150.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1150.0.tgz#6f43380837d9cd1b761b9dc51395067686a4a053" + integrity sha512-SNbVXNlFGNFVcztPk7iWnjtGL+Afm1nyidpvX2rEqYdap2Ow57njZJXvghQUici4Xhqe+BUuG+x1orlFjapo4g== dependencies: buffer "4.9.2" events "1.1.1" From de593ec78f897a13ac2b3ff6d078fe8e7ed726fd Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 05:05:31 +0000 Subject: [PATCH 241/550] fix(deps): update dependency react-text-truncate to ^0.19.0 Signed-off-by: Renovate Bot --- .changeset/renovate-1a41b78.md | 5 +++++ packages/core-components/package.json | 2 +- yarn.lock | 7 +++++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 .changeset/renovate-1a41b78.md diff --git a/.changeset/renovate-1a41b78.md b/.changeset/renovate-1a41b78.md new file mode 100644 index 0000000000..d1864ff3c3 --- /dev/null +++ b/.changeset/renovate-1a41b78.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-components': patch +--- + +Updated dependency `react-text-truncate` to `^0.19.0`. diff --git a/packages/core-components/package.json b/packages/core-components/package.json index bd9d6ec336..31640de0f4 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -64,7 +64,7 @@ "react-router-dom": "6.0.0-beta.0", "react-sparklines": "^1.7.0", "react-syntax-highlighter": "^15.4.5", - "react-text-truncate": "^0.18.0", + "react-text-truncate": "^0.19.0", "react-use": "^17.3.2", "@react-hookz/web": "^14.0.0", "react-virtualized-auto-sizer": "^1.0.6", diff --git a/yarn.lock b/yarn.lock index 7932ab2e28..5c66ac9879 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21718,6 +21718,13 @@ react-text-truncate@^0.18.0: dependencies: prop-types "^15.5.7" +react-text-truncate@^0.19.0: + version "0.19.0" + resolved "https://registry.npmjs.org/react-text-truncate/-/react-text-truncate-0.19.0.tgz#60bc5ecf29a03ebc256f31f90a2d8402176aac91" + integrity sha512-QxHpZABfGG0Z3WEYbRTZ+rXdZn50Zvp+sWZXgVAd7FCKAMzv/kcwctTpNmWgXDTpAoHhMjOVwmgRtX3x5yeF4w== + dependencies: + prop-types "^15.5.7" + react-transition-group@2.9.0, react-transition-group@^2.5.0: version "2.9.0" resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.9.0.tgz#df9cdb025796211151a436c69a8f3b97b5b07c8d" From 791862a9b4b153aac4018975ae6ca8e0df1460a7 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 08:12:37 +0000 Subject: [PATCH 242/550] fix(deps): update dependency @maxim_mazurok/gapi.client.calendar to v3.0.20220603 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 88d8e662b4..62641c0e75 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4277,9 +4277,9 @@ react-is "^16.8.0 || ^17.0.0" "@maxim_mazurok/gapi.client.calendar@^3.0.20220408": - version "3.0.20220527" - resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220527.tgz#0fab1e9c874037d5aa02fadff25590f436768265" - integrity sha512-Yx+zwL8TSUySr7e1iuvUlPdobAxFzstGYQQwEfS54dHIoAuorOj4CMxL4g47H+45Z0fpER8NfvGFEHLkA9ECsA== + version "3.0.20220603" + resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220603.tgz#0a6378497d1460058d847afd3c1f0aa83878c83d" + integrity sha512-sLB2ZCevNiGBHWCAg8NVT2+61IwLn9JxEvLgDcLno1GTwPVye3MC8H5bTYeFpL0Pgv58NPc2FIkG0w53Ojp7uw== dependencies: "@types/gapi.client" "*" From 0283b4840ae19ea1bdf5f4243304857e6d944c6a Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 08:13:26 +0000 Subject: [PATCH 243/550] fix(deps): update dependency octokit to v1.7.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 88d8e662b4..4f1416bb3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19429,9 +19429,9 @@ octokit-plugin-create-pull-request@^3.10.0: "@octokit/types" "^6.8.2" octokit@^1.7.1: - version "1.7.1" - resolved "https://registry.npmjs.org/octokit/-/octokit-1.7.1.tgz#d86e51c8e0cec65cb64822ca2c9ff1b052593799" - integrity sha512-1b7eRgU8uWetHOWr8f9ptnVo2EKbrkOfocMeQdpgCt7tl/LK67HptFsy2Xg4fMjsJ/+onoBJW0hy/fO0In3/uA== + version "1.7.2" + resolved "https://registry.npmjs.org/octokit/-/octokit-1.7.2.tgz#c5f11699c39ba5526ff170cbfcb7eaa291ddf11a" + integrity sha512-C+iwOeUMWwbvHxGbLX5rAde5WuEVGe/hNQniU1haZAPMHqUz1+ppffvkP4v/2R3dkSLJnzceUG+ir0klNmEoBA== dependencies: "@octokit/app" "^12.0.4" "@octokit/core" "^3.5.1" From 0e870fe0ac84dfaf715e69dd4ad547feec91ea16 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 8 Jun 2022 10:13:55 +0200 Subject: [PATCH 244/550] create-app: remove peer dependencies Signed-off-by: Patrik Oldsberg --- .changeset/famous-elephants-guess.md | 5 +++ packages/create-app/package.json | 48 ------------------------- packages/create-app/src/lib/versions.ts | 5 ++- 3 files changed, 7 insertions(+), 51 deletions(-) create mode 100644 .changeset/famous-elephants-guess.md diff --git a/.changeset/famous-elephants-guess.md b/.changeset/famous-elephants-guess.md new file mode 100644 index 0000000000..62f5159385 --- /dev/null +++ b/.changeset/famous-elephants-guess.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Removed peer dependencies, as they are no longer needed. diff --git a/packages/create-app/package.json b/packages/create-app/package.json index c235a90095..6a99bf5473 100644 --- a/packages/create-app/package.json +++ b/packages/create-app/package.json @@ -50,54 +50,6 @@ "mock-fs": "^5.1.1", "ts-node": "^10.0.0" }, - "peerDependencies": { - "@backstage/app-defaults": "", - "@backstage/backend-common": "", - "@backstage/backend-tasks": "", - "@backstage/catalog-client": "", - "@backstage/catalog-model": "", - "@backstage/cli": "", - "@backstage/config": "", - "@backstage/core-app-api": "", - "@backstage/core-components": "", - "@backstage/core-plugin-api": "", - "@backstage/errors": "", - "@backstage/integration-react": "", - "@backstage/plugin-api-docs": "", - "@backstage/plugin-app-backend": "", - "@backstage/plugin-auth-backend": "", - "@backstage/plugin-catalog": "", - "@backstage/plugin-catalog-backend": "", - "@backstage/plugin-catalog-common": "", - "@backstage/plugin-catalog-graph": "", - "@backstage/plugin-catalog-import": "", - "@backstage/plugin-catalog-react": "", - "@backstage/plugin-circleci": "", - "@backstage/plugin-explore": "", - "@backstage/plugin-github-actions": "", - "@backstage/plugin-lighthouse": "", - "@backstage/plugin-org": "", - "@backstage/plugin-permission-common": "", - "@backstage/plugin-permission-node": "", - "@backstage/plugin-permission-react": "", - "@backstage/plugin-proxy-backend": "", - "@backstage/plugin-rollbar-backend": "", - "@backstage/plugin-scaffolder": "", - "@backstage/plugin-scaffolder-backend": "", - "@backstage/plugin-search": "", - "@backstage/plugin-search-react": "", - "@backstage/plugin-search-backend": "", - "@backstage/plugin-search-backend-module-pg": "", - "@backstage/plugin-search-backend-node": "", - "@backstage/plugin-tech-radar": "", - "@backstage/plugin-techdocs": "", - "@backstage/plugin-techdocs-react": "", - "@backstage/plugin-techdocs-module-addons-contrib": "", - "@backstage/plugin-techdocs-backend": "", - "@backstage/plugin-user-settings": "", - "@backstage/test-utils": "", - "@backstage/theme": "" - }, "nodemonConfig": { "watch": "./src", "exec": "bin/backstage-create-app", diff --git a/packages/create-app/src/lib/versions.ts b/packages/create-app/src/lib/versions.ts index 25007d7535..78b28b5811 100644 --- a/packages/create-app/src/lib/versions.ts +++ b/packages/create-app/src/lib/versions.ts @@ -20,9 +20,8 @@ This is a list of all packages used by the template. If dependencies are added or removed, this list should be updated as well. -The list, and the accompanying peerDependencies entries, are here to ensure correct versioning -and bumping of this package. Without this list the version would not be bumped unless we -manually trigger a release. +There is a release step that ensures that this package is always bumped with every +release, meaning these version will always be up to date. This does not create an actual dependency on these packages and does not bring in any code. Relative imports are used rather than package imports to make sure the packages aren't externalized. From 811ff4bcf4ef7b1c5be91405ebe3ab06290d6ab4 Mon Sep 17 00:00:00 2001 From: Jan Socha <92743635+js0cha@users.noreply.github.com> Date: Thu, 2 Jun 2022 14:45:42 +0200 Subject: [PATCH 245/550] chore(deps): upgrade swagger-ui-react to 4.11.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mitigate the current XSS vulnerabilities (https://www.npmjs.com/advisories/1070339) Signed-off-by: Jan Socha Signed-off-by: Fredrik Adelöw --- .changeset/tender-weeks-help.md | 6 ++++++ plugins/api-docs/package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changeset/tender-weeks-help.md diff --git a/.changeset/tender-weeks-help.md b/.changeset/tender-weeks-help.md new file mode 100644 index 0000000000..7b70a3a925 --- /dev/null +++ b/.changeset/tender-weeks-help.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-api-docs': patch +--- + +Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS +vulnerability](https://github.com/advisories/GHSA-hqq7-2q2v-82xq) in `@braintree/sanitize-url` diff --git a/plugins/api-docs/package.json b/plugins/api-docs/package.json index e544c2812e..4878d4d7cd 100644 --- a/plugins/api-docs/package.json +++ b/plugins/api-docs/package.json @@ -50,7 +50,7 @@ "react-router": "6.0.0-beta.0", "react-router-dom": "6.0.0-beta.0", "react-use": "^17.2.4", - "swagger-ui-react": "^4.1.3" + "swagger-ui-react": "^4.11.1" }, "peerDependencies": { "@types/react": "^16.13.1 || ^17.0.0", From e9fd3bbbc366cf0b7f6df01dfca8f96e22ad3a1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 8 Jun 2022 10:15:52 +0200 Subject: [PATCH 246/550] fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/tender-weeks-help.md | 2 +- yarn.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.changeset/tender-weeks-help.md b/.changeset/tender-weeks-help.md index 7b70a3a925..c1e0e99945 100644 --- a/.changeset/tender-weeks-help.md +++ b/.changeset/tender-weeks-help.md @@ -2,5 +2,5 @@ '@backstage/plugin-api-docs': patch --- -Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS +Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS vulnerability](https://github.com/advisories/GHSA-hqq7-2q2v-82xq) in `@braintree/sanitize-url` diff --git a/yarn.lock b/yarn.lock index b198961d73..0c811b3394 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24157,7 +24157,7 @@ swagger-client@^3.18.5: traverse "~0.6.6" url "~0.11.0" -swagger-ui-react@^4.1.3: +swagger-ui-react@^4.11.1: version "4.12.0" resolved "https://registry.npmjs.org/swagger-ui-react/-/swagger-ui-react-4.12.0.tgz#bfdf67bd0679fdd62ec3fb98bd827afb81fb7fe6" integrity sha512-pkSkUe4WVb7omoScK8GG2qgD6LxwZEIA+fKcxeACC7PCW52vFEjle6WO6lFOLj1JmfWriL7Ngi0+wJtVjfhnWw== From ad472646daa016d40819f940ffbad0efb522f66d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 09:02:36 +0000 Subject: [PATCH 247/550] fix(deps): update dependency camelcase-keys to v8 Signed-off-by: Renovate Bot --- .changeset/renovate-18e8701.md | 5 ++++ plugins/rollbar-backend/package.json | 2 +- yarn.lock | 37 +++++++++++++++++++--------- 3 files changed, 32 insertions(+), 12 deletions(-) create mode 100644 .changeset/renovate-18e8701.md diff --git a/.changeset/renovate-18e8701.md b/.changeset/renovate-18e8701.md new file mode 100644 index 0000000000..687869fe9b --- /dev/null +++ b/.changeset/renovate-18e8701.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-rollbar-backend': patch +--- + +Updated dependency `camelcase-keys` to `^8.0.0`. diff --git a/plugins/rollbar-backend/package.json b/plugins/rollbar-backend/package.json index f4d5e3bdb4..cc07de718f 100644 --- a/plugins/rollbar-backend/package.json +++ b/plugins/rollbar-backend/package.json @@ -37,7 +37,7 @@ "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", - "camelcase-keys": "^7.0.1", + "camelcase-keys": "^8.0.0", "compression": "^1.7.4", "cors": "^2.8.5", "express": "^4.17.1", diff --git a/yarn.lock b/yarn.lock index 3f440702d8..5461ef687a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9100,15 +9100,15 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" -camelcase-keys@^7.0.1: - version "7.0.2" - resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz#d048d8c69448745bb0de6fc4c1c52a30dfbe7252" - integrity sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg== +camelcase-keys@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-8.0.0.tgz#c0ab26fcc5f6796af02aec7596c636af6f73e3d4" + integrity sha512-SKySgtaMjkouTJ/AIQdK1eit41Nq7+8uU/TQCU17sPSQwmAtAIPGrpDAey4oz0D7iiee3ylqt44KEBy+whyy+Q== dependencies: - camelcase "^6.3.0" - map-obj "^4.1.0" - quick-lru "^5.1.1" - type-fest "^1.2.1" + camelcase "^7.0.0" + map-obj "^4.3.0" + quick-lru "^6.1.1" + type-fest "^2.13.0" camelcase@5.0.0: version "5.0.0" @@ -9125,11 +9125,16 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0, camelcase@^6.3.0: +camelcase@^6.2.0: version "6.3.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +camelcase@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-7.0.0.tgz#fd112621b212126741f998d614cbc2a8623fd174" + integrity sha512-JToIvOmz6nhGsUhAYScbo2d6Py5wojjNfoxoc2mEVLUdJ70gJK2gnd+ABY1Tc3sVMyK7QDPtN0T/XdlCQWITyQ== + caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -17696,7 +17701,7 @@ map-obj@^1.0.0: resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= -map-obj@^4.0.0, map-obj@^4.1.0: +map-obj@^4.0.0, map-obj@^4.3.0: version "4.3.0" resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== @@ -21291,6 +21296,11 @@ quick-lru@^5.1.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== +quick-lru@^6.1.1: + version "6.1.1" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz#f8e5bf9010376c126c80c1a62827a526c0e60adf" + integrity sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q== + raf-schd@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.2.tgz#bd44c708188f2e84c810bf55fcea9231bcaed8a0" @@ -24911,11 +24921,16 @@ type-fest@^0.8.1: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^1.2.1, type-fest@^1.2.2: +type-fest@^1.2.2: version "1.4.0" resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== +type-fest@^2.13.0: + version "2.13.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.13.0.tgz#d1ecee38af29eb2e863b22299a3d68ef30d2abfb" + integrity sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw== + type-is@~1.6.18: version "1.6.18" resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" From bb31e5489cf7161b5805a07c42b7e67b188112e4 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 10:08:20 +0000 Subject: [PATCH 248/550] fix(deps): update dependency d3-force to v3 Signed-off-by: Renovate Bot --- .changeset/renovate-4696848.md | 6 +++++ plugins/tech-radar/package.json | 4 ++-- yarn.lock | 40 +++++++++++++-------------------- 3 files changed, 23 insertions(+), 27 deletions(-) create mode 100644 .changeset/renovate-4696848.md diff --git a/.changeset/renovate-4696848.md b/.changeset/renovate-4696848.md new file mode 100644 index 0000000000..5e2bca7c99 --- /dev/null +++ b/.changeset/renovate-4696848.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-tech-radar': patch +--- + +Updated dependency `d3-force` to `^3.0.0`. +Updated dependency `@types/d3-force` to `^3.0.0`. diff --git a/plugins/tech-radar/package.json b/plugins/tech-radar/package.json index 1a6c57cb9c..f5278d0710 100644 --- a/plugins/tech-radar/package.json +++ b/plugins/tech-radar/package.json @@ -41,7 +41,7 @@ "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "color": "^4.0.1", - "d3-force": "^2.0.1", + "d3-force": "^3.0.0", "prop-types": "^15.7.2", "react-use": "^17.2.4" }, @@ -57,7 +57,7 @@ "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", "@types/color": "^3.0.1", - "@types/d3-force": "^2.1.1", + "@types/d3-force": "^3.0.0", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "@types/react": "^16.13.1 || ^17.0.0", diff --git a/yarn.lock b/yarn.lock index 069500db2c..32bb88b8ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5954,10 +5954,10 @@ resolved "https://registry.npmjs.org/@types/d3-color/-/d3-color-2.0.3.tgz#8bc4589073c80e33d126345542f588056511fe82" integrity sha512-+0EtEjBfKEDtH9Rk3u3kLOUXM5F+iZK+WvASPb0MhIZl8J8NUvGeZRwKCXl+P3HkYx5TdU4YtcibpqHkSR9n7w== -"@types/d3-force@^2.1.1": - version "2.1.4" - resolved "https://registry.npmjs.org/@types/d3-force/-/d3-force-2.1.4.tgz#98919b87db8a0ca5011d189c598d69251d20344d" - integrity sha512-1XVRc2QbeUSL1FRVE53Irdz7jY+drTwESHIMVirCwkAAMB/yVC8ezAfx/1Alq0t0uOnphoyhRle1ht5CuPgSJQ== +"@types/d3-force@^3.0.0": + version "3.0.3" + resolved "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.3.tgz#76cb20d04ae798afede1ea6e41750763ff5a9c82" + integrity sha512-z8GteGVfkWJMKsx6hwC3SiTSLspL98VNpmvLpEFJQpZPq6xpA1I8HNBDNSpukfK0Vb0l64zGFhzunLgEAcBWSA== "@types/d3-interpolate@*": version "3.0.1" @@ -10695,11 +10695,6 @@ d3-color@1: resolved "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== -"d3-dispatch@1 - 2": - version "2.0.0" - resolved "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-2.0.0.tgz#8a18e16f76dd3fcaef42163c97b926aa9b55e7cf" - integrity sha512-S/m2VsXI7gAti2pBoLClFFTMOO1HTtT0j99AuXLoGFKO6deHDdnv6ZGTxSTTUTgO1zVcv82fCOtDjYK4EECmWA== - "d3-dispatch@1 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" @@ -10718,14 +10713,14 @@ d3-color@1: resolved "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== -d3-force@^2.0.1: - version "2.1.1" - resolved "https://registry.npmjs.org/d3-force/-/d3-force-2.1.1.tgz#f20ccbf1e6c9e80add1926f09b51f686a8bc0937" - integrity sha512-nAuHEzBqMvpFVMf9OX75d00OxvOXdxY+xECIXjW6Gv8BRrXu6gAWbv/9XKrvfJ5i5DCokDW7RYE50LRoK092ew== +d3-force@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz#3e2ba1a61e70888fe3d9194e30d6d14eece155c4" + integrity sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg== dependencies: - d3-dispatch "1 - 2" - d3-quadtree "1 - 2" - d3-timer "1 - 2" + d3-dispatch "1 - 3" + d3-quadtree "1 - 3" + d3-timer "1 - 3" d3-format@1: version "1.4.5" @@ -10773,10 +10768,10 @@ d3-path@1: resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.0.1.tgz#f09dec0aaffd770b7995f1a399152bf93052321e" integrity sha512-gq6gZom9AFZby0YLduxT1qmrp4xpBA1YZr19OI717WIdKE2OM5ETq5qrHLb301IgxhLwcuxvGZVLeeWc/k1I6w== -"d3-quadtree@1 - 2": - version "2.0.0" - resolved "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-2.0.0.tgz#edbad045cef88701f6fee3aee8e93fb332d30f9d" - integrity sha512-b0Ed2t1UUalJpc3qXzKi+cPGxeXRr4KU9YSlocN74aTzp6R/Ud43t79yLLqxHRWZfsvWXmbDWPpoENK1K539xw== +"d3-quadtree@1 - 3": + version "3.0.1" + resolved "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz#6dca3e8be2b393c9a9d514dabbd80a92deef1a4f" + integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== d3-scale@^2.1.0: version "2.2.2" @@ -10853,11 +10848,6 @@ d3-time@1: dependencies: d3-array "2" -"d3-timer@1 - 2": - version "2.0.0" - resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-2.0.0.tgz#055edb1d170cfe31ab2da8968deee940b56623e6" - integrity sha512-TO4VLh0/420Y/9dO3+f9abDEFYeCUr2WZRlxJvbp4HPTQcSylXNiL6yZa9FIUvV1yRiFufl1bszTCLDqv9PWNA== - "d3-timer@1 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" From 961b1ba24ffe38787a2d78db85a1537cf38cd18b Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 10:08:45 +0000 Subject: [PATCH 249/550] fix(deps): update dependency glob to v8 Signed-off-by: Renovate Bot --- .changeset/renovate-5618e69.md | 6 ++++++ packages/cli/package.json | 2 +- plugins/catalog-backend/package.json | 2 +- yarn.lock | 11 +++++++++++ 4 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 .changeset/renovate-5618e69.md diff --git a/.changeset/renovate-5618e69.md b/.changeset/renovate-5618e69.md new file mode 100644 index 0000000000..7745c5e157 --- /dev/null +++ b/.changeset/renovate-5618e69.md @@ -0,0 +1,6 @@ +--- +'@backstage/cli': patch +'@backstage/plugin-catalog-backend': patch +--- + +Updated dependency `glob` to `^8.0.0`. diff --git a/packages/cli/package.json b/packages/cli/package.json index df779d5526..12865bc326 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -82,7 +82,7 @@ "express": "^4.17.1", "fork-ts-checker-webpack-plugin": "^7.0.0-alpha.8", "fs-extra": "10.1.0", - "glob": "^7.1.7", + "glob": "^8.0.0", "global-agent": "^3.0.0", "handlebars": "^4.7.3", "html-webpack-plugin": "^5.3.1", diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index 92669e914d..c67ec135d6 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -54,7 +54,7 @@ "fast-json-stable-stringify": "^2.1.0", "fs-extra": "10.1.0", "git-url-parse": "^11.6.0", - "glob": "^7.1.6", + "glob": "^8.0.0", "knex": "^1.0.2", "lodash": "^4.17.21", "luxon": "^2.0.2", diff --git a/yarn.lock b/yarn.lock index 069500db2c..85ae635402 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13675,6 +13675,17 @@ glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, gl once "^1.3.0" path-is-absolute "^1.0.0" +glob@^8.0.0: + version "8.0.3" + resolved "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" + integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + glob@^8.0.1: version "8.0.1" resolved "https://registry.npmjs.org/glob/-/glob-8.0.1.tgz#00308f5c035aa0b2a447cd37ead267ddff1577d3" From 19781483a257f2938f9781513fb04aaeba25bc30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 8 Jun 2022 13:32:52 +0200 Subject: [PATCH 250/550] fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/tame-ears-pretend.md | 5 +++++ .../FetchApi/PluginProtocolResolverFetchMiddleware.ts | 9 ++++++++- plugins/techdocs-node/api-report.md | 10 ++++------ 3 files changed, 17 insertions(+), 7 deletions(-) create mode 100644 .changeset/tame-ears-pretend.md diff --git a/.changeset/tame-ears-pretend.md b/.changeset/tame-ears-pretend.md new file mode 100644 index 0000000000..63a81cbf06 --- /dev/null +++ b/.changeset/tame-ears-pretend.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-app-api': patch +--- + +Handle URLs as the first argument to `fetchApi`, when using the `plugin:` protocol diff --git a/packages/core-app-api/src/apis/implementations/FetchApi/PluginProtocolResolverFetchMiddleware.ts b/packages/core-app-api/src/apis/implementations/FetchApi/PluginProtocolResolverFetchMiddleware.ts index 6265e8d3d2..ff20b594b4 100644 --- a/packages/core-app-api/src/apis/implementations/FetchApi/PluginProtocolResolverFetchMiddleware.ts +++ b/packages/core-app-api/src/apis/implementations/FetchApi/PluginProtocolResolverFetchMiddleware.ts @@ -55,7 +55,14 @@ export class PluginProtocolResolverFetchMiddleware implements FetchMiddleware { } const target = `${join(base, pathname)}${search}${hash}`; - return next(target, typeof input === 'string' ? init : input); + return next( + target, + typeof input === 'string' || isUrl(input) ? init : input, + ); }; } } + +function isUrl(a: unknown): a is URL { + return typeof a === 'object' && a?.constructor === URL; +} diff --git a/plugins/techdocs-node/api-report.md b/plugins/techdocs-node/api-report.md index c584dec40c..cc9bc8eb51 100644 --- a/plugins/techdocs-node/api-report.md +++ b/plugins/techdocs-node/api-report.md @@ -73,12 +73,10 @@ export class Generators implements GeneratorBuilder { export const getDocFilesFromRepository: ( reader: UrlReader, entity: Entity, - opts?: - | { - etag?: string | undefined; - logger?: Logger | undefined; - } - | undefined, + opts?: { + etag?: string; + logger?: Logger; + }, ) => Promise; // @public From 4b4ba5ace168a5bfa73e6d7ad61e51d8dc72eed9 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 8 Jun 2022 15:23:56 +0200 Subject: [PATCH 251/550] docs: update sign-in page example in getting started docs Signed-off-by: Patrik Oldsberg --- docs/getting-started/configuration.md | 28 +++++++++++++-------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/docs/getting-started/configuration.md b/docs/getting-started/configuration.md index 1dc1ffc1b1..59780d2a01 100644 --- a/docs/getting-started/configuration.md +++ b/docs/getting-started/configuration.md @@ -164,27 +164,25 @@ Open `packages/app/src/App.tsx` and below the last `import` line, add: ```typescript import { githubAuthApiRef } from '@backstage/core-plugin-api'; import { SignInProviderConfig, SignInPage } from '@backstage/core-components'; - -const githubProvider: SignInProviderConfig = { - id: 'github-auth-provider', - title: 'GitHub', - message: 'Sign in using GitHub', - apiRef: githubAuthApiRef, -}; ``` Search for `const app = createApp({` in this file, and below `apis,` add: ```typescript components: { - SignInPage: props => ( - - ), - }, + SignInPage: props => ( + + ), +}, ``` > Since [v1.1.0](https://github.com/backstage/backstage/releases/tag/v1.1.0-next.3), you must provide an [explicit sign-in resolver](../auth/identity-resolver.md). From 985b1977245acdd73e81949cfd252186a22222b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 8 Jun 2022 16:09:10 +0200 Subject: [PATCH 252/550] fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- plugins/rollbar-backend/api-report.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/plugins/rollbar-backend/api-report.md b/plugins/rollbar-backend/api-report.md index 1c0800a393..873d9f819a 100644 --- a/plugins/rollbar-backend/api-report.md +++ b/plugins/rollbar-backend/api-report.md @@ -35,8 +35,8 @@ export class RollbarApi { }, ): Promise< { - count: number; timestamp: number; + count: number; }[] >; // (undocumented) @@ -44,8 +44,8 @@ export class RollbarApi { { id: number; name: string; - status: string; accountId: number; + status: string; }[] >; // (undocumented) @@ -57,21 +57,21 @@ export class RollbarApi { }, ): Promise< { - count: number; timestamp: number; + count: number; }[] >; // (undocumented) getProject(projectName: string): Promise<{ id: number; name: string; - status: string; accountId: number; + status: string; }>; // (undocumented) getProjectItems(projectName: string): Promise<{ - page: number; items: RollbarItem[]; + page: number; totalCount: number; }>; // (undocumented) @@ -114,6 +114,6 @@ export interface RouterOptions { // Warnings were encountered during analysis: // -// src/api/RollbarApi.d.ts:21:9 - (ae-forgotten-export) The symbol "RollbarItem" needs to be exported by the entry point index.d.ts +// src/api/RollbarApi.d.ts:20:9 - (ae-forgotten-export) The symbol "RollbarItem" needs to be exported by the entry point index.d.ts // src/api/RollbarApi.d.ts:32:13 - (ae-forgotten-export) The symbol "RollbarFrameworkId" needs to be exported by the entry point index.d.ts ``` From add0cd95b9ea476ad068ac2c6ece4dab9412c9dc Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 14:10:10 +0000 Subject: [PATCH 253/550] chore(deps): update dependency typescript to v4.7.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2b2c0a687f..c8f9330b5a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24965,9 +24965,9 @@ typescript@~4.6.0, typescript@~4.6.3: integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== typescript@~4.7.0: - version "4.7.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz#1f9aa2ceb9af87cca227813b4310fff0b51593c4" - integrity sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A== + version "4.7.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d" + integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA== ua-parser-js@^0.7.18: version "0.7.28" From b8970b89419f47bb44eed1012fd85d176faa5f64 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Wed, 8 Jun 2022 16:59:46 +0200 Subject: [PATCH 254/550] cli/create-github-app: Add members to permission selection list Signed-off-by: Johan Haals --- .changeset/green-parents-pay.md | 5 +++ .../GithubCreateAppServer.ts | 42 +++++++++---------- .../src/commands/create-github-app/index.ts | 39 ++++++++++++----- 3 files changed, 53 insertions(+), 33 deletions(-) create mode 100644 .changeset/green-parents-pay.md diff --git a/.changeset/green-parents-pay.md b/.changeset/green-parents-pay.md new file mode 100644 index 0000000000..15ceab937d --- /dev/null +++ b/.changeset/green-parents-pay.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Improved the `create-github-app` permissions selection prompt by converting it into a multi-select with clearer descriptions. The `members` permission is now also included in the list which is required for ingesting user data into the catalog. diff --git a/packages/cli/src/commands/create-github-app/GithubCreateAppServer.ts b/packages/cli/src/commands/create-github-app/GithubCreateAppServer.ts index 0fe321541e..70b8c0ca53 100644 --- a/packages/cli/src/commands/create-github-app/GithubCreateAppServer.ts +++ b/packages/cli/src/commands/create-github-app/GithubCreateAppServer.ts @@ -19,18 +19,6 @@ import openBrowser from 'react-dev-utils/openBrowser'; import { request } from '@octokit/request'; import express, { Express, Request, Response } from 'express'; -const MANIFEST_DATA = { - default_events: ['create', 'delete', 'push', 'repository'], - default_permissions: { - contents: 'read', - metadata: 'read', - }, - name: 'Backstage-', - url: 'https://backstage.io', - description: 'GitHub App for Backstage', - public: false, -}; - const FORM_PAGE = ` @@ -62,17 +50,17 @@ export class GithubCreateAppServer { static async run(options: { org: string; - readWrite: boolean; + permissions: string[]; }): Promise { const encodedOrg = encodeURIComponent(options.org); const actionUrl = `https://github.com/organizations/${encodedOrg}/settings/apps/new`; - const server = new GithubCreateAppServer(actionUrl, options.readWrite); + const server = new GithubCreateAppServer(actionUrl, options.permissions); return server.start(); } private constructor( private readonly actionUrl: string, - private readonly readWrite: boolean, + private readonly permissions: string[], ) { const webhookId = crypto .randomBytes(15) @@ -121,21 +109,29 @@ export class GithubCreateAppServer { if (!baseUrl) { throw new Error('baseUrl is not set'); } + const manifest = { - ...MANIFEST_DATA, + default_events: ['create', 'delete', 'push', 'repository'], + default_permissions: { + metadata: 'read', + ...(this.permissions.includes('members') && { members: 'read' }), + ...(this.permissions.includes('read') && { contents: 'read' }), + ...(this.permissions.includes('write') && { + contents: 'write', + actions: 'write', + }), + }, + name: 'Backstage-', + url: 'https://backstage.io', + description: 'GitHub App for Backstage', + public: false, redirect_url: `${baseUrl}/callback`, hook_attributes: { url: this.webhookUrl, active: false, }, - ...(this.readWrite && { - default_permissions: { - contents: 'write', - actions: 'write', - metadata: 'read', - }, - }), }; + const manifestJson = JSON.stringify(manifest).replace(/\"/g, '"'); let body = FORM_PAGE; diff --git a/packages/cli/src/commands/create-github-app/index.ts b/packages/cli/src/commands/create-github-app/index.ts index 175530402e..6b3e732f18 100644 --- a/packages/cli/src/commands/create-github-app/index.ts +++ b/packages/cli/src/commands/create-github-app/index.ts @@ -26,19 +26,38 @@ import openBrowser from 'react-dev-utils/openBrowser'; // due to lacking support for creating apps from manifests. // https://docs.github.com/en/free-pro-team@latest/developers/apps/creating-a-github-app-from-a-manifest export default async (org: string) => { - const answers: Answers = await inquirer.prompt([ - { - type: 'list', - name: 'appType', - message: chalk.blue('What will the app be used for [required]'), - choices: ['Read and Write (needed by Software Templates)', 'Read only'], - }, - ]); - const readWrite = answers.appType !== 'Read only'; + const answers: Answers = await inquirer.prompt({ + name: 'appType', + type: 'checkbox', + message: + 'Select permissions [required] (these can be changed later but then require approvals in all installations)', + choices: [ + { + name: 'Read access to content (required by Software Catalog to ingest data from repositories)', + value: 'read', + checked: true, + }, + { + name: 'Read access to members (required by Software Catalog to ingest GitHub teams)', + value: 'members', + checked: true, + }, + { + name: 'Read and Write to content and actions (required by Software Templates to create new repositories)', + value: 'write', + }, + ], + }); + + if (answers.appType.length === 0) { + console.log(chalk.red('You must select at least one permission')); + process.exit(1); + } + await verifyGithubOrg(org); const { slug, name, ...config } = await GithubCreateAppServer.run({ org, - readWrite, + permissions: answers.appType, }); const fileName = `github-app-${slug}-credentials.yaml`; From 32807d5a8e6d30ace8f9913138e14c9d839ee807 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 8 Jun 2022 17:09:48 +0200 Subject: [PATCH 255/550] fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .../src/GitLabDiscoveryProcessor.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts index 25240d2d14..b03c665ebc 100644 --- a/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts +++ b/plugins/catalog-backend-module-gitlab/src/GitLabDiscoveryProcessor.ts @@ -107,7 +107,7 @@ export class GitLabDiscoveryProcessor implements CatalogProcessor { // 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 }), - } + }; const projects = paginated(options => client.listProjects(options), opts); From 5c9e4c7b7a43f9cd1edca4ab772d73a598a661bd Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 15:10:20 +0000 Subject: [PATCH 256/550] fix(deps): update dependency @google-cloud/storage to v6.1.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 69683ace8d..fa90054426 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2246,9 +2246,9 @@ integrity sha512-91ArYvRgXWb73YvEOBMmOcJc0bDRs5yiVHnqkwoG0f3nm7nZuipllz6e7BvFESBvjkDTBC0zMD8QxedUwNLc1A== "@google-cloud/storage@^6.0.0": - version "6.0.1" - resolved "https://registry.npmjs.org/@google-cloud/storage/-/storage-6.0.1.tgz#57c367345431da1f9196513ca836796b11b39d95" - integrity sha512-52P3A8IpqISc2aeGxx/DQyqDmG0uP5wUW3dsns4ZPKZS5jbllFMy0V7qzY2vVv7GgpIULIKQ26yEWjSEA/pLng== + version "6.1.0" + resolved "https://registry.npmjs.org/@google-cloud/storage/-/storage-6.1.0.tgz#f882a969c5637ff445764d7b172f68fd0d9e63f8" + integrity sha512-zqZwzpRWCJuPne7x9Vc2H79zANl0uh9bNPGis0xAuC88ZEvBXfQqYCAVyiL1YIxi7rf51l8wy9vBr1pONMfxxA== dependencies: "@google-cloud/paginator" "^3.0.7" "@google-cloud/projectify" "^2.0.0" From 2931968cf73c9a9ab5796c8916720e5f79a25ff3 Mon Sep 17 00:00:00 2001 From: Raghunandan Date: Wed, 8 Jun 2022 17:11:59 +0200 Subject: [PATCH 257/550] reorder tab title Signed-off-by: Raghunandan --- .../TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx index 204ac835e4..c45a50d750 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageHeader/TechDocsReaderPageHeader.tsx @@ -91,7 +91,7 @@ export const TechDocsReaderPageHeader = ( }, [metadata, setTitle, setSubtitle]); const appTitle = configApi.getOptional('app.title') || 'Backstage'; - const tabTitle = [subtitle, title, appTitle].filter(Boolean).join(' | '); + const tabTitle = [title, subtitle, appTitle].filter(Boolean).join(' | '); const { locationMetadata, spec } = entityMetadata || {}; const lifecycle = spec?.lifecycle; From 859346bfbbdc68b71a70a448073f3bebcfbe5f80 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 15:11:15 +0000 Subject: [PATCH 258/550] fix(deps): update dependency google-auth-library to v8 Signed-off-by: Renovate Bot --- .changeset/renovate-9454dab.md | 5 +++++ plugins/auth-backend/package.json | 2 +- yarn.lock | 4 ++-- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 .changeset/renovate-9454dab.md diff --git a/.changeset/renovate-9454dab.md b/.changeset/renovate-9454dab.md new file mode 100644 index 0000000000..1f8401e10f --- /dev/null +++ b/.changeset/renovate-9454dab.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-auth-backend': patch +--- + +Updated dependency `google-auth-library` to `^8.0.0`. diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index 21260959ea..3d95d0c0c9 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -50,7 +50,7 @@ "express-promise-router": "^4.1.0", "express-session": "^1.17.1", "fs-extra": "10.1.0", - "google-auth-library": "^7.6.1", + "google-auth-library": "^8.0.0", "jose": "^4.6.0", "jwt-decode": "^3.1.0", "knex": "^1.0.2", diff --git a/yarn.lock b/yarn.lock index 69683ace8d..6aa81340c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13768,7 +13768,7 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -google-auth-library@^7.14.0, google-auth-library@^7.6.1: +google-auth-library@^7.14.0: version "7.14.1" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz#e3483034162f24cc71b95c8a55a210008826213c" integrity sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA== @@ -13783,7 +13783,7 @@ google-auth-library@^7.14.0, google-auth-library@^7.6.1: jws "^4.0.0" lru-cache "^6.0.0" -google-auth-library@^8.0.1, google-auth-library@^8.0.2: +google-auth-library@^8.0.0, google-auth-library@^8.0.1, google-auth-library@^8.0.2: version "8.0.2" resolved "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.0.2.tgz#5fa0f2d3795c3e4019d2bb315ade4454cc9c30b5" integrity sha512-HoG+nWFAThLovKpvcbYzxgn+nBJPTfAwtq0GxPN821nOO+21+8oP7MoEHfd1sbDulUFFGfcjJr2CnJ4YssHcyg== From e8073b218c1fe6ede0c4cbddb1b745779a4c0e76 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 19:43:26 +0000 Subject: [PATCH 259/550] chore(deps): update dependency lint-staged to v13.0.1 Signed-off-by: Renovate Bot --- yarn.lock | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index fa90054426..7286ba1b09 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9692,11 +9692,16 @@ colord@^2.9.1: resolved "https://registry.npmjs.org/colord/-/colord-2.9.1.tgz#c961ea0efeb57c9f0f4834458f26cb9cc4a3f90e" integrity sha512-4LBMSt09vR0uLnPVkOUBnmxgoaeN4ewRbx801wY/bXcltXfpR/G46OdWn96XpYmCWuYvO46aBZP4NgX8HpNAcw== -colorette@2.0.16, colorette@^2.0.10, colorette@^2.0.16: +colorette@2.0.16, colorette@^2.0.10: version "2.0.16" resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== +colorette@^2.0.16, colorette@^2.0.17: + version "2.0.17" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.17.tgz#5dd4c0d15e2984b7433cb4a9f2ead45063b80c47" + integrity sha512-hJo+3Bkn0NCHybn9Tu35fIeoOKGOk5OCC32y4Hz2It+qlCO2Q3DeQ1hRn/tDDMQKRYUEzqsl7jbF6dYKjlE60g== + colors@1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" @@ -16989,12 +16994,12 @@ linkify-it@^3.0.1: uc.micro "^1.0.1" lint-staged@^13.0.0: - version "13.0.0" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.0.tgz#ce3526a844e6328814a3261fbfedc610a18856fa" - integrity sha512-vWban5utFt78VZohbosUxNIa46KKJ+KOQTDWTQ8oSl1DLEEVl9zhUtaQbiiydAmx+h2wKJK2d0+iMaRmknuWRQ== + version "13.0.1" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.1.tgz#899e78065ab29b88fdd922482411121664ef66be" + integrity sha512-Ykaf4QTi0a02BF7cnq7JIPGOJxH4TkNMWhSlJdH9wOekd0X+gog47Jfh/0L31DqZe5AiydLGC7LkPqpaNm+Kvg== dependencies: cli-truncate "^3.1.0" - colorette "^2.0.16" + colorette "^2.0.17" commander "^9.3.0" debug "^4.3.4" execa "^6.1.0" @@ -17003,7 +17008,7 @@ lint-staged@^13.0.0: micromatch "^4.0.5" normalize-path "^3.0.0" object-inspect "^1.12.2" - pidtree "^0.5.0" + pidtree "^0.6.0" string-argv "^0.3.1" yaml "^2.1.1" @@ -20384,10 +20389,10 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatc resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pidtree@^0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1" - integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA== +pidtree@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" + integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== pify@^2.0.0, pify@^2.2.0, pify@^2.3.0: version "2.3.0" From c0673a05e92522c9a00a250d59e3fa968b638470 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 19:46:21 +0000 Subject: [PATCH 260/550] chore(deps): update storybook monorepo to v6.5.8 Signed-off-by: Renovate Bot --- storybook/yarn.lock | 591 ++++++++++++++++++++++---------------------- 1 file changed, 299 insertions(+), 292 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 829bc8dc35..91530cccf6 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -1273,18 +1273,18 @@ source-map "^0.7.3" "@storybook/addon-a11y@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.7.tgz#76edaf292b3d2c3ad0e3c48d8d007dcefdad5506" - integrity sha512-twez2iAnAZH3WTDCN7C7WNbhXP5JJNoev5umjNmmvjirihJH9sLgw35i6sqr1QKc3d0kn6cULw5RU9wDiU+7Bg== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.8.tgz#90ecf3490f0e7e2096ae04d6d6386bae5182fb94" + integrity sha512-nBP8t7wADsKoDLqeH4S4YbxuE+t9Xw9T+XpeG94xn9oJPE1Tj4A0x0X91sTIPbi/FF07lCiaUP+eq92Y1bAV+Q== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.7" + "@storybook/theming" "6.5.8" axe-core "^4.2.0" core-js "^3.8.2" global "^4.4.0" @@ -1295,17 +1295,17 @@ util-deprecate "^1.0.2" "@storybook/addon-actions@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.7.tgz#0280a994f42e80ae7e8b71ccf04cd0279cbce01d" - integrity sha512-gTkPr2FYX+vySZKEg5Wq7uHPkVUq3hJ7ZKvGls+/xjgaTwfu3iIly53FEFUl8A6kMQ+4gtTC+YRr3cSJgXMbAg== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.8.tgz#c1f544acc016a4a0d5dcb373535dc991b5737c5f" + integrity sha512-9ciR1iWBTzQNBDlq0iQs9+TV7gng+FbQxW5mHNxNvT9SxY1dt02wCPHZeVE/5la61wBXZs/zpEepZA93VzVBDw== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.7" + "@storybook/theming" "6.5.8" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1320,33 +1320,33 @@ uuid-browser "^3.1.0" "@storybook/addon-controls@^6.4.22": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.7.tgz#ec1f3c26b494c5eccb44e172d17e23a267e3b514" - integrity sha512-1JGphHk1gcLLpkft/D5BkygXwelSdWQqvXnfFc62BVqvzxv8hCF4zuUosKLWMlB/nzVbd6W4oEDV/Mqmt6h/7w== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.8.tgz#779407655d990f88e1d3bb734cf116bc419ab6ba" + integrity sha512-fB6p5DgVHUnJKUzOlT2mtvaSCincnO+vuYLyf++f+l4BlYK1Es9HNl/puaRoMgdW+LoGJjXPTIMcMByeHVIt6Q== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/core-common" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/core-common" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/node-logger" "6.5.7" - "@storybook/store" "6.5.7" - "@storybook/theming" "6.5.7" + "@storybook/node-logger" "6.5.8" + "@storybook/store" "6.5.8" + "@storybook/theming" "6.5.8" core-js "^3.8.2" lodash "^4.17.21" ts-dedent "^2.0.0" "@storybook/addon-links@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.7.tgz#b3a794b19c5c0277c3f20f86915c851f577dc45b" - integrity sha512-kiCzGLlCyhfBjwYfM/xACe5l6s2+8exQNOGoLzNeAhprgD7dzpsZ0ZaEgpF4ay9bG9H9gOeX4jc/TAvVW/v6nw== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.8.tgz#ec4b640bf89dbb653592e6f05968ba771bb10b4a" + integrity sha512-UxzEPnT1PLPsuy3tt+o3UJTbI4Kihec+/yzpzzGKreUnCC8EWTsOhtMQAVVit2t4BMl4vNrxKO0mKSc8saT3Gw== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.7" + "@storybook/router" "6.5.8" "@types/qs" "^6.9.5" core-js "^3.8.2" global "^4.4.0" @@ -1356,17 +1356,17 @@ ts-dedent "^2.0.0" "@storybook/addon-storysource@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.7.tgz#a60ed17c324caf92b0fbb67626a4bdf8253e86af" - integrity sha512-4cquq0Oqf9skPdIYkVtO5lAPS7+83TyY4vT52HQ5LSpSekZELQkRxN793jNMQdu2IGQ/l9WqvyzFGaN62bRg7Q== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.8.tgz#6754b19b714fc19e6601fe5385fcf05c648a8f36" + integrity sha512-BujH4Xdhvegi4WvI1foBfrnUGnyJ18sLn47xJ2D26kQQXgC3qiGaUiQuEfGeETYgDuIxoxTkv5N4Y1ocjoOSkA== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/router" "6.5.7" - "@storybook/source-loader" "6.5.7" - "@storybook/theming" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/router" "6.5.8" + "@storybook/source-loader" "6.5.8" + "@storybook/theming" "6.5.8" core-js "^3.8.2" estraverse "^5.2.0" loader-utils "^2.0.0" @@ -1374,35 +1374,35 @@ react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" -"@storybook/addons@6.5.7", "@storybook/addons@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.7.tgz#1c7256f696fb572f7c3c7ccbcb94988372b95cee" - integrity sha512-tUZ2c1uegUcwY31ztNQZGU/HUwAEEGIR8fEOvvO8S0TNQGoo6cwFtZmWBh3mTSRGcmzK2SNBjFHZua5Ee9TefA== +"@storybook/addons@6.5.8", "@storybook/addons@^6.4.21": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.8.tgz#c529a2989830a09d26308277a3e356228479053d" + integrity sha512-L3LmbsYP9tDHHvpr/yv8YuEkzym7SXp/jZ0km31tpG3EuZmgGu7MXPrZ2ymEw4PkAhQzztgRr23VTfKobGUojA== dependencies: - "@storybook/api" "6.5.7" - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/api" "6.5.8" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.7" - "@storybook/theming" "6.5.7" + "@storybook/router" "6.5.8" + "@storybook/theming" "6.5.8" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" global "^4.4.0" regenerator-runtime "^0.13.7" -"@storybook/api@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.7.tgz#1a5fc381fd417fd1c8ab6e246af09fdcd20f9df0" - integrity sha512-QCNypz4X+lYuFW7EzvRPXMf8uS3gfSIV8sqXtEe5XoMb0HQXhy6AGU7/4iAeuUimtETqLTxq+kOxaSg4uPowxg== +"@storybook/api@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.8.tgz#8bd400b8a5b18ec6bff5d35a898593d9c1c630f9" + integrity sha512-/MueV+wLCvy9gFA3ih4g7QYjDmn14i+D2ydonfaEC7R+agFGXxXwJGPKkz3yBNrRpNkBwcbY9mAmv8lE2AqgqQ== dependencies: - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.7" + "@storybook/router" "6.5.8" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.7" + "@storybook/theming" "6.5.8" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1414,28 +1414,28 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.7.tgz#043ad0625eedb39fcd07035cdb252973d3eb6ef9" - integrity sha512-8OB3mZ2L6kQBiAXlkhna/MHREXIPtqXi2AJLT3+bTzBlqkusH+PwMZxWHbcPl1vZrlNQBC40Elx9tdynGkVQ6g== +"@storybook/builder-webpack4@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.8.tgz#adfb4b91bd442c2f256d93649d50ca138c30663a" + integrity sha512-4/CVp/AlOxCeWZ/DF1TVS/TuzHao4l9KCq7DhL+utFEVl9c/dpgoZXc0Gy2FfHa2RXHKckrH/VUfV2KQk4TNSw== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/channel-postmessage" "6.5.7" - "@storybook/channels" "6.5.7" - "@storybook/client-api" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/core-common" "6.5.7" - "@storybook/core-events" "6.5.7" - "@storybook/node-logger" "6.5.7" - "@storybook/preview-web" "6.5.7" - "@storybook/router" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/channel-postmessage" "6.5.8" + "@storybook/channels" "6.5.8" + "@storybook/client-api" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/core-common" "6.5.8" + "@storybook/core-events" "6.5.8" + "@storybook/node-logger" "6.5.8" + "@storybook/preview-web" "6.5.8" + "@storybook/router" "6.5.8" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.7" - "@storybook/theming" "6.5.7" - "@storybook/ui" "6.5.7" + "@storybook/store" "6.5.8" + "@storybook/theming" "6.5.8" + "@storybook/ui" "6.5.8" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" @@ -1467,51 +1467,51 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.2.2" -"@storybook/channel-postmessage@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.7.tgz#7b4ab88e274a9584d5603f37ab7a985f08a3643e" - integrity sha512-X4UPgm4O0503CsSnqAM1ht/6R9ofnoMcqFZxYRu9PSvHlhaFR9V9AU4VjQhakH7alFzRsAhcAV2PFVTAdWhgtA== +"@storybook/channel-postmessage@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.8.tgz#989af9a55eba391b64487640f6b5b0cfd1fde2f9" + integrity sha512-6IkIKk+UMYKk05vN8gWHvvOV/EZNXpQG/5gesGDALjkCyvRmcktHak1a9tHpoihZ3L7/gDwXOZraCZmuy8vBcQ== dependencies: - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" telejson "^6.0.8" -"@storybook/channel-websocket@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.7.tgz#69e274319a995d1bd01b3783586cdefcb56277dc" - integrity sha512-C+l6t3ZgHzU8gL8GJ8c4GMttJglGJIwq1LtJJKnGzx2kJCD0HRMMqc/qFS2K2EwP99hLwwGIlCpom3UZ1aEanA== +"@storybook/channel-websocket@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.8.tgz#722743619f86ebc9325bbff026acf6eba13b21ca" + integrity sha512-lAtvgO0FWsyS3u7uFbsGIYp2aSWJfWU/LOtc3x1K5c84JJAd9fncYkyZMwP1gMbdNgYxJoxe8HXtVtfeNegPuQ== dependencies: - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" core-js "^3.8.2" global "^4.4.0" telejson "^6.0.8" -"@storybook/channels@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.7.tgz#765b02e949f58c4181998c676b155f5c1914bec1" - integrity sha512-v880fWBpWgiWrDmZesTIstNfMZhrPfgXAtLNcL5Z89NAPahsHskOSszc0BDxKN3gb+ZeTKUqHxY57dQdp+1rhg== +"@storybook/channels@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.8.tgz#e85ffd2076813b67336b1b9b274c37aa5f1b80e0" + integrity sha512-fNql1lEIvWlI1NiRtwFMWOOvfW6qxgeSP6xoqiAJ0b+QYegEFG9UxJDuEvVHq++S81FulgQ5U+p+5R9XSV19tQ== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.7.tgz#e5d7a5ca698138f4eba36e14d49138850163f252" - integrity sha512-na8NZhB6GnAGp3jRTV9wwue3WGwSZoi5jfxrKSYMPL/s/2n07/soixHggqueBDXuNBrPoJaXbY/nRHmSjLwxtQ== +"@storybook/client-api@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.8.tgz#cf1b3d4a71a3a156636a9b6b51acc4239b259d86" + integrity sha512-mdU+qQ4+T2OUbEnl+3MWRKxEPju/EOIUg66hMgmif8c5u7YFYBFulUMUYLICMjll8Jlu+37+g+qO3K2eEz6CEw== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/channel-postmessage" "6.5.7" - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/channel-postmessage" "6.5.8" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.7" + "@storybook/store" "6.5.8" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" @@ -1526,22 +1526,22 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.7.tgz#97a607b1d09d32a31091fe286510cf5d3995d2bf" - integrity sha512-ycDy1kXeXRg3djSTXRGMVxc0kvaWw/UhHDs2VGFmOPScsoeWpdbePHXJMFbsqippxuexpsofqTryBwH2b6BPhw== +"@storybook/client-logger@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.8.tgz#551f818c4448ef6e6adf9c3ad256e1ae61e2d75c" + integrity sha512-dH6HSaVuOIMHy1+rpsqcD3SJxVZEEbuEtsNpdUGwLJaIuduhUJJpM2xQfUW0siZDyrgwoa+znll+G0YNUbv7sg== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.7.tgz#28a509c0556f8df919c8c7f7076ca6785b22cb8d" - integrity sha512-xSOaOK8q6bXYkmN4LZKucvXU2HRHqKwwTafFDh5yzsCSEB2VQIJlyo4ePVyv/GJgBUX6+WdSA7c5r5ePXK6IYQ== +"@storybook/components@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.8.tgz#eb18cfcc4e88b7f4081b20b8a81b92d7ae9eaeac" + integrity sha512-YE+LZ1/GXoqertxodsf+L9ehcohbICRAxgE/iNqc7MZfk95SD3XRSUbxhCpGe8QTIZJpzs1tK4LFZ3Fg5w/+Lg== dependencies: - "@storybook/client-logger" "6.5.7" + "@storybook/client-logger" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.7" + "@storybook/theming" "6.5.8" "@types/react-syntax-highlighter" "11.0.5" core-js "^3.8.2" qs "^6.10.0" @@ -1549,21 +1549,21 @@ regenerator-runtime "^0.13.7" util-deprecate "^1.0.2" -"@storybook/core-client@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.7.tgz#556a38330c89adfacf5151cda0b5c32e24499737" - integrity sha512-GL7m33tpEyornhfnTddbvDuLkA9EMe1zKv9oZGsUYo78cWRTiEibYyHegIi9/ThplRXvpFR/5uHY4Zx5Z5rxJg== +"@storybook/core-client@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.8.tgz#4be4ce024a74b51c0650d346f1f3a11a0f921952" + integrity sha512-8x8qKQ2clvpfDcoWrNBmQ8Xt9z/i32TFIBp4PEZMcbB7eqo517nzfllLiXDipiJgO7BGxKtY5CRHQ9pAU9G27A== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/channel-postmessage" "6.5.7" - "@storybook/channel-websocket" "6.5.7" - "@storybook/client-api" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/channel-postmessage" "6.5.8" + "@storybook/channel-websocket" "6.5.8" + "@storybook/client-api" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/preview-web" "6.5.7" - "@storybook/store" "6.5.7" - "@storybook/ui" "6.5.7" + "@storybook/preview-web" "6.5.8" + "@storybook/store" "6.5.8" + "@storybook/ui" "6.5.8" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -1575,10 +1575,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.7.tgz#69519d02b48c719fba734b38bb6a4419abc77a4b" - integrity sha512-/b1oQlmhek8tKDu9ky2O1oEk9g2giAPpl192yRz4lIxap5CFJ7RCfgbkq+F3JBXnH2P84BufC0x3dj4jvBhxCw== +"@storybook/core-common@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.8.tgz#6972c7109477914f9ed72bedbe3769cec0eb8c56" + integrity sha512-ELGKLMx1d0oEA2LT+fsmo85X2RNE1EO+It7B1bw//g7jyf1hmZ7t3lXMZUCqt7eml1qy1N72LDkfmmU+H9H6ww== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -1602,7 +1602,7 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.5.7" + "@storybook/node-logger" "6.5.8" "@storybook/semver" "^7.3.2" "@types/node" "^14.0.10 || ^16.0.0" "@types/pretty-hrtime" "^1.0.0" @@ -1631,30 +1631,30 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.7.tgz#a533f3a57e495a1660c82c5d6164ca464bf4a2b2" - integrity sha512-epqYy67Ypry5QdCt7FpN57/X9uuS7R2+DLFORZIpL/SJG1dIdN4POQ1icWOhPzHl+eiSgaV7e2oPaUsN+LPhJQ== +"@storybook/core-events@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.8.tgz#bc405d37d0ed1a6eafa2682fc085b2a7a992233c" + integrity sha512-lzG4Lg65WFYvjs2k/E3CP4+eyPexEGrDyRMO9Pbj9H9x+eosYptauEbT/wXF83bmUWZKLWWVUAZX7hDcxBO8cw== dependencies: core-js "^3.8.2" -"@storybook/core-server@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.7.tgz#3e849045617a3bc0cfa0091fc3952c150114428e" - integrity sha512-CGwFZ5kmKaCS/+tcrAbqQu4Owq86wXkWRapJB55S8AlUsf3c9gEC8a3+Ed9tZUlmjSH56CnDDfmt7AleToaQ9w== +"@storybook/core-server@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.8.tgz#3ef53c4b0437e83c310f9e545607a0b1ce512ab6" + integrity sha512-ti7+MW1xzD9O0JLwgZTwulxhJx5YGPNu+hRpGhJSjKrqGX1h6K6ilmkBSHvyLqpiE+F4mxvqb5Rx3KBIEdEgbw== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.5.7" - "@storybook/core-client" "6.5.7" - "@storybook/core-common" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/builder-webpack4" "6.5.8" + "@storybook/core-client" "6.5.8" + "@storybook/core-common" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/csf-tools" "6.5.7" - "@storybook/manager-webpack4" "6.5.7" - "@storybook/node-logger" "6.5.7" + "@storybook/csf-tools" "6.5.8" + "@storybook/manager-webpack4" "6.5.8" + "@storybook/node-logger" "6.5.8" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.7" - "@storybook/telemetry" "6.5.7" + "@storybook/store" "6.5.8" + "@storybook/telemetry" "6.5.8" "@types/node" "^14.0.10 || ^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" @@ -1689,18 +1689,18 @@ ws "^8.2.3" x-default-browser "^0.4.0" -"@storybook/core@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.7.tgz#8db00f6af1c869574fa996c427faff74335c2325" - integrity sha512-YSu2qur1E5y9rjVspchtCfupPT3y1XyjBInhwzo8jC3rvm2WY0RS80VQU3dga4QBllO1M+cDmLzmOEPL82+Juw== +"@storybook/core@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.8.tgz#cbe6acaf587e9ef66963bb104a067c213aeea990" + integrity sha512-+Fv4n1E5N4Avty9GcRbz4vB2IWH//se2OUU+RTT3vneCOGjyus5bj0Or6GU5wef5UGuvHF78mHg/frhWpguzsw== dependencies: - "@storybook/core-client" "6.5.7" - "@storybook/core-server" "6.5.7" + "@storybook/core-client" "6.5.8" + "@storybook/core-server" "6.5.8" -"@storybook/csf-tools@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.7.tgz#93780a2eee892c1c92f33a0be1d3fd52cda770ce" - integrity sha512-/vBaknzD8c7H/Zsz0gwhmlNlMwe5slZwXadi6rAQXDkKLzaR1kmz4cQFs8yDR1wWpXaGjNvQxOUAGYjFoGQxzA== +"@storybook/csf-tools@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.8.tgz#5788aa1e862ee613d11d6528f27c8e267e4dd3a7" + integrity sha512-4VrjIMxKcp29OFSMDub52aQOMP4EvtZ5eWZkPeORRNQoJsnQaxhF9GGf71QdSaAQZhMoxdvmpA47ehrFk8Rnfw== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -1724,33 +1724,33 @@ dependencies: lodash "^4.17.15" -"@storybook/docs-tools@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.7.tgz#6ade71e90a84fbb92be708dc019adf7e7894724a" - integrity sha512-Aw9uUsqeuw0Z9fpiwxrstMNjNGB9s1Tm57SpMF8ibjLYBYFf5Apz5CwDX7bm6YFtCweaawx4MeQta8qnQMWCFw== +"@storybook/docs-tools@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.8.tgz#6189fd20fafa9eb2aa4a19e311d65295992dd105" + integrity sha512-CWMW+3LSstvQmHKV5ggPR1beQZTpwCXEhfysZ9u4Yp/4fcoDIuQ7DTOK5uNFynGCGl1FG3lATriEOhEZ3bZCvQ== dependencies: "@babel/core" "^7.12.10" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.7" + "@storybook/store" "6.5.8" core-js "^3.8.2" doctrine "^3.0.0" lodash "^4.17.21" regenerator-runtime "^0.13.7" -"@storybook/manager-webpack4@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.7.tgz#9e851022241f8b472da3c2b27d24b1f2c0085151" - integrity sha512-RmGsr/6PNsafaSm8aTD7e2VXSKT8BQ6Hkg6TAArLoS2TpIUvrNuM2hEqOHzm2POcApC+OE/HN1H0GiXBkH533Q== +"@storybook/manager-webpack4@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.8.tgz#9e4d3dcebac9bd0b07abd630632dc15130ae03f1" + integrity sha512-qW5/L3cJHvtNi5ylDxObALZWaAHMsWQlPP8GRxm95NHpff4CfRo/qs7puY9ZeLmJSic0KchoHEH/8AScflLOgA== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.7" - "@storybook/core-client" "6.5.7" - "@storybook/core-common" "6.5.7" - "@storybook/node-logger" "6.5.7" - "@storybook/theming" "6.5.7" - "@storybook/ui" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/core-client" "6.5.8" + "@storybook/core-common" "6.5.8" + "@storybook/node-logger" "6.5.8" + "@storybook/theming" "6.5.8" + "@storybook/ui" "6.5.8" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" babel-loader "^8.0.0" @@ -1795,10 +1795,10 @@ prettier ">=2.2.1 <=2.3.0" ts-dedent "^2.0.0" -"@storybook/node-logger@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.7.tgz#a31d91be3cd9d9f033d340b1dc2b8e1c0de61cb6" - integrity sha512-OrHu5p2E5i7P2v2hQAOtZw6Od1e2nrP6L7w5SxUPgccUnKUD9dRX5Y8qbAcPZO3XCkMLjpjAbC1xBXG0eFkn9g== +"@storybook/node-logger@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.8.tgz#d1244c846da5a296a7432444f8682f77853fb81e" + integrity sha512-BHdkSipgjnfsh4FRYbV2R0npM5gVx9JLRsDQ0KiTolRpN4SU98kT/6885zb9jZg6I0EY+UG9Qdr3fvL9VLpY1g== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -1806,17 +1806,17 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/preview-web@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.7.tgz#1eb8e11756896390345a17bafe411146c2066a48" - integrity sha512-EH8gdl334D8EDVL1VJjRURcUou5Sv6BwgismL4E6wjSFmWxL9egxYDnGJJEh3mjIkAtGb0zpksYn/VNWPA8c8A== +"@storybook/preview-web@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.8.tgz#b1c86d56e99032c02ba47bab628c36d76a0385b6" + integrity sha512-jEEAgvTVZfFA0B20mRJfLW6dPA5mG5PxUJtjMx6wH4Yw4+i3Sld/U63hTRt7ktpKdrcu4lX9E+PuaRLPq7S2kg== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/channel-postmessage" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/channel-postmessage" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.7" + "@storybook/store" "6.5.8" ansi-to-html "^0.6.11" core-js "^3.8.2" global "^4.4.0" @@ -1842,23 +1842,23 @@ tslib "^2.0.0" "@storybook/react@^6.4.21": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.7.tgz#70224ddd150f31fc1cb0e2f7bf9ba56657f38644" - integrity sha512-jMY1vk1WL1otEODl5BxD1kSh5Eqg+SvZW5CJ7sS6q53i3teOhaGhugvuSTuV9lnBzLOZu8atIdFL0ewdOkpwsg== + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.8.tgz#8a9e15416a18ceb5c11c89ffe9f38357d442efa9" + integrity sha512-LdObfhhPb9gAFBtRNb3awYJe1qMiYeda1ppkj0ZvccbV04YrmbW5bzYvfOCvU6D34ugbQJhJyWuvraO/0EJK6w== dependencies: "@babel/preset-flow" "^7.12.1" "@babel/preset-react" "^7.12.10" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" - "@storybook/addons" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core" "6.5.7" - "@storybook/core-common" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core" "6.5.8" + "@storybook/core-common" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.7" - "@storybook/node-logger" "6.5.7" + "@storybook/docs-tools" "6.5.8" + "@storybook/node-logger" "6.5.8" "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.7" + "@storybook/store" "6.5.8" "@types/estree" "^0.0.51" "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" @@ -1882,12 +1882,12 @@ util-deprecate "^1.0.2" webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.7.tgz#3d962cbf5d9e9779d8dbd33a20d0210feb982635" - integrity sha512-edWEdAb8O0rSgdXoBZDDuNlQg2cOmC/nJ6gXj9zBotzmXqsbxWyjKGooG1dU6dnKshUqE1RmWF7/N1WMluLf0A== +"@storybook/router@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.8.tgz#241e3842bdd174e0eeeb9d1de6adb2975615884d" + integrity sha512-tseNJpZ2ZzVYowjekUMpGJVVRMrwOkttieD9mRbHrhh+2n7b+SoMKnuLi3ow0xeOyPL8ZDng2FgRjQzQHXA5Sw== dependencies: - "@storybook/client-logger" "6.5.7" + "@storybook/client-logger" "6.5.8" core-js "^3.8.2" regenerator-runtime "^0.13.7" @@ -1899,13 +1899,13 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.7.tgz#c77ae805e02ce83975558973fe46b7366f810fb1" - integrity sha512-nj24TSGdF9J1gD5Fj9Z2hPRAQwqBJoBKD/fmTSFZop0qaJOOyeuxZR5022dQh8UWWoBa3WOQADMTNi5RqQZkiA== +"@storybook/source-loader@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.8.tgz#106694fe821f5e42abc4e8e653e5f268a043e470" + integrity sha512-3bVxXKE2o6lS4WGga/S7WwgITxPQ96qsY+pQ1I7A+e4/cKSmZxlVWM9qfMW2ScmHTVoZE0Ujsmn6DWftxzCyrQ== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/client-logger" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/client-logger" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" estraverse "^5.2.0" @@ -1915,14 +1915,14 @@ prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" -"@storybook/store@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.7.tgz#7f5220f76f72ed2ad38b3e0799ed51dc366ee496" - integrity sha512-d64towcdylC6TXNL2oJklCpwN3XcUGgZzQ9zgoV8BUlOlsj9tNq8eo95uzTURnLg1Q5uHoDDKWuXrrKj03HHxw== +"@storybook/store@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.8.tgz#528bf9a2decf5121045fb0a19b8caf795b4a5647" + integrity sha512-5rhGjN/O0oLebRv947B0vgapq48qBBBYYOgq4krRUYU2ecS6LUgtAHR/kTa324o9aBO8cnIXHH78jZcSvMiJlQ== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/core-events" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/core-events" "6.5.8" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -1936,13 +1936,13 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/telemetry@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.7.tgz#744050ec84b8d8effeab448b9b2e190951a2e070" - integrity sha512-RHrjAConMqGIsu1TgNXztWtWOXTvvCHDWyGoLagCgZYgjGJ4sukp+ZtrbkayNDkkWWD0lpMzsdDEYCJuru/Sig== +"@storybook/telemetry@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.8.tgz#2acf9734292d421f84f7f2ac6c17d887c2cb0df4" + integrity sha512-QnAhYF8CwcjC1bT2PK7Zqvo6E42TPl0MY6JS+H6qSZU/BmYeS0It8ZURNfPsA/OzVVLHUkQs96CisKh3N0WWaw== dependencies: - "@storybook/client-logger" "6.5.7" - "@storybook/core-common" "6.5.7" + "@storybook/client-logger" "6.5.8" + "@storybook/core-common" "6.5.8" chalk "^4.1.0" core-js "^3.8.2" detect-package-manager "^2.0.1" @@ -1954,29 +1954,29 @@ read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.7.tgz#63afa3838a9c1ba07d443ce6988f6ed99af62b75" - integrity sha512-6zp1V84DSBcS8BtFOCJlF2/nIonjQmr+dILPxaM3lCm/X003i2jAQrBKTfPlmzCeDn07PBhzHaRJ3wJskfmeNw== +"@storybook/theming@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.8.tgz#240a3c83ea53a9c7b1f3a2c47d6324f38ecb8771" + integrity sha512-1VaKHqj38Ls1bJwDpg3+aEOlvVib/DCFkP6WYrP/AQtNAzxiyw5WkaoRlTVJZvCdu5TxjpG4O6/Ai5TI9QftIg== dependencies: - "@storybook/client-logger" "6.5.7" + "@storybook/client-logger" "6.5.8" core-js "^3.8.2" regenerator-runtime "^0.13.7" -"@storybook/ui@6.5.7": - version "6.5.7" - resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.7.tgz#d4814c88bd1ca4781891611c2c1fbb23e221d95a" - integrity sha512-NOg44bc/w7FweuM2fa99PxsgI9qoG2p5vhTQ4MOI/7QnOUDn+EenlapsRos+/Sk2XTaB2QmM43boUkravMSouA== +"@storybook/ui@6.5.8": + version "6.5.8" + resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.8.tgz#acd8dadd221c68f65c4963c4ab86b4a757860591" + integrity sha512-rL09kxgY9pCVbxr/VUK4b5FL5VbALfciZR+50sNT1EcTDb9k0OPeqx7a4Ptc+KNkgyPdSTxUGvhzVqH5PYrhZQ== dependencies: - "@storybook/addons" "6.5.7" - "@storybook/api" "6.5.7" - "@storybook/channels" "6.5.7" - "@storybook/client-logger" "6.5.7" - "@storybook/components" "6.5.7" - "@storybook/core-events" "6.5.7" - "@storybook/router" "6.5.7" + "@storybook/addons" "6.5.8" + "@storybook/api" "6.5.8" + "@storybook/channels" "6.5.8" + "@storybook/client-logger" "6.5.8" + "@storybook/components" "6.5.8" + "@storybook/core-events" "6.5.8" + "@storybook/router" "6.5.8" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.7" + "@storybook/theming" "6.5.8" core-js "^3.8.2" regenerator-runtime "^0.13.7" resolve-from "^5.0.0" @@ -1997,9 +1997,9 @@ "@types/estree" "*" "@types/eslint@*": - version "8.4.2" - resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz#48f2ac58ab9c631cb68845c3d956b28f79fad575" - integrity sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA== + version "8.4.3" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.3.tgz#5c92815a3838b1985c90034cd85f26f59d9d0ece" + integrity sha512-YP1S7YJRMPs+7KZKDb9G63n8YejIwW9BALq7a5j2+H4yl6iOv9CB29edho+cuFRrvmJbbaH2yiVChKLJVysDGw== dependencies: "@types/estree" "*" "@types/json-schema" "*" @@ -2070,14 +2070,14 @@ form-data "^3.0.0" "@types/node@*": - version "17.0.40" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090" - integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg== + version "17.0.41" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.41.tgz#1607b2fd3da014ae5d4d1b31bc792a39348dfb9b" + integrity sha512-xA6drNNeqb5YyV5fO3OAEsnXLfO7uF0whiOfPTz5AeDo8KeZFmODKnvwPymMNO8qE/an8pVY/O50tig2SQCrGw== "@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": - version "16.11.38" - resolved "https://registry.npmjs.org/@types/node/-/node-16.11.38.tgz#be0edd097b23eace6c471c525a74b3f98803017f" - integrity sha512-hjO/0K140An3GWDw2HJfq7gko3wWeznbjXgg+rzPdVzhe198hp4x2i1dgveAOEiFKd8sOilAxzoSJiVv5P/CUg== + version "16.11.39" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.39.tgz#07223cd2bc332ad9d92135e3a522eebdee3b060e" + integrity sha512-K0MsdV42vPwm9L6UwhIxMAOmcvH/1OoVkZyCgEtVu4Wx7sElGloy/W7kMBNe/oJ7V/jW9BVt1F6RahH6e7tPXw== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -3129,14 +3129,14 @@ browserify-zlib@^0.2.0: pako "~1.0.5" browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.2, browserslist@^4.20.3: - version "4.20.3" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" - integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== + version "4.20.4" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz#98096c9042af689ee1e0271333dbc564b8ce4477" + integrity sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw== dependencies: - caniuse-lite "^1.0.30001332" - electron-to-chromium "^1.4.118" + caniuse-lite "^1.0.30001349" + electron-to-chromium "^1.4.147" escalade "^3.1.1" - node-releases "^2.0.3" + node-releases "^2.0.5" picocolors "^1.0.0" buffer-from@^1.0.0: @@ -3305,10 +3305,10 @@ camelcase@^6.2.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001332: - version "1.0.30001346" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001346.tgz#e895551b46b9cc9cc9de852facd42f04839a8fbe" - integrity sha512-q6ibZUO2t88QCIPayP/euuDREq+aMAxFE5S70PkrLh0iTDj/zEhgvJRKC2+CvXY6EWc6oQwUR48lL5vCW6jiXQ== +caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001349: + version "1.0.30001350" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001350.tgz#f0acc6472469d066a4357765eb73be5973eda918" + integrity sha512-NZBql38Pzd+rAu5SPXv+qmTWGQuFsRiemHCJCAPvkoDxWV19/xqL2YHF32fDJ9SDLdLqfax8+S0CO3ncDCp9Iw== case-sensitive-paths-webpack-plugin@^2.3.0: version "2.4.0" @@ -4082,10 +4082,10 @@ ee-first@1.1.1: resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.4.118: - version "1.4.146" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.146.tgz#fd20970c3def2f9e6b32ac13a2e7a6b64e1b0c48" - integrity sha512-4eWebzDLd+hYLm4csbyMU2EbBnqhwl8Oe9eF/7CBDPWcRxFmqzx4izxvHH+lofQxzieg8UbB8ZuzNTxeukzfTg== +electron-to-chromium@^1.4.147: + version "1.4.148" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.148.tgz#437430e03c58ccd1d05701f66980afe54d2253ec" + integrity sha512-8MJk1bcQUAYkuvCyWZxaldiwoDG0E0AMzBGA6cv3WfuvJySiPgfidEPBFCRRH3cZm6SVZwo/oRlK1ehi1QNEIQ== element-resize-detector@^1.2.2: version "1.2.4" @@ -4175,9 +4175,9 @@ error-ex@^1.2.0, error-ex@^1.3.1: is-arrayish "^0.2.1" error-stack-parser@^2.0.6: - version "2.1.3" - resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.3.tgz#ab877c676540507dbe6429974ea66833ae68b7cb" - integrity sha512-F9KypcaAvLzI4yXneZzOvzZoqakhbjuAGFK0aLy33tYaDqdu6v+lzrN/TTG/mM48Op624zZZ2RpXRx3wA0+zmg== + version "2.1.4" + resolved "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz#229cb01cdbfa84440bfa91876285b94680188286" + integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ== dependencies: stackframe "^1.3.4" @@ -4833,13 +4833,13 @@ get-caller-file@^2.0.5: integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + version "1.1.2" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" + integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== dependencies: function-bind "^1.1.1" has "^1.0.3" - has-symbols "^1.0.1" + has-symbols "^1.0.3" get-stdin@^4.0.1: version "4.0.1" @@ -6512,7 +6512,7 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-releases@^2.0.3: +node-releases@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" integrity sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q== @@ -7313,13 +7313,20 @@ punycode@^2.1.0: resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -qs@6.10.3, qs@^6.10.0: +qs@6.10.3: version "6.10.3" resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== dependencies: side-channel "^1.0.4" +qs@^6.10.0: + version "6.10.5" + resolved "https://registry.npmjs.org/qs/-/qs-6.10.5.tgz#974715920a80ff6a262264acd2c7e6c2a53282b4" + integrity sha512-O5RlPh0VFtR78y79rgcgKK4wbAI0C5zGVLztOIdpWX6ep368q5Hv6XRxDvXuZ9q3C6v+e3n8UfZZJw7IIG27eQ== + dependencies: + side-channel "^1.0.4" + querystring-es3@^0.2.0: version "0.2.1" resolved "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" @@ -7497,7 +7504,7 @@ react@^17.0.2: read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== dependencies: find-up "^1.0.0" read-pkg "^1.0.0" @@ -7514,7 +7521,7 @@ read-pkg-up@^7.0.1: read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== dependencies: load-json-file "^1.0.0" normalize-package-data "^2.3.2" @@ -7571,7 +7578,7 @@ readdirp@~3.6.0: redent@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + integrity sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g== dependencies: indent-string "^2.1.0" strip-indent "^1.0.1" @@ -7653,7 +7660,7 @@ regjsparser@^0.8.2: relateurl@^0.2.7: version "0.2.7" resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== remark-footnotes@2.0.0: version "2.0.0" @@ -7706,7 +7713,7 @@ remark-squeeze-paragraphs@4.0.0: remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== renderkid@^2.0.4: version "2.0.7" @@ -7727,19 +7734,19 @@ repeat-element@^1.1.2: repeat-string@^1.5.4, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== repeating@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== dependencies: is-finite "^1.0.0" require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== resolve-from@^4.0.0: version "4.0.0" @@ -7754,7 +7761,7 @@ resolve-from@^5.0.0: resolve-url@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.3.2: version "1.22.0" @@ -7807,7 +7814,7 @@ run-parallel@^1.1.9: run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= + integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg== dependencies: aproba "^1.1.1" @@ -7829,7 +7836,7 @@ safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, s safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" @@ -7947,7 +7954,7 @@ serialize-javascript@^6.0.0: serve-favicon@^2.5.0: version "2.5.0" resolved "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" - integrity sha1-k10kDN/g9YBTB/3+ln2IlCosvPA= + integrity sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA== dependencies: etag "~1.8.1" fresh "0.5.2" @@ -7968,7 +7975,7 @@ serve-static@1.15.0: set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" @@ -7983,7 +7990,7 @@ set-value@^2.0.0, set-value@^2.0.1: setimmediate@^1.0.4: version "1.0.5" resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== setprototypeof@1.2.0: version "1.2.0" From 310d3996d3e850feac4abba84420a1caead95e21 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 20:17:28 +0000 Subject: [PATCH 261/550] fix(deps): update dependency @yarnpkg/parsers to v3.0.0-rc.7 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index fa90054426..595b5560fe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7435,9 +7435,9 @@ integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== "@yarnpkg/parsers@^3.0.0-rc.4": - version "3.0.0-rc.6" - resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.6.tgz#3c93267fdae4470e4eaaf8c5f81d0d00ea177f76" - integrity sha512-YqtJ9VQqQixZsJJS4X83e6RMpgK1jmQJSIrCfd1wO3i/7vPk9QoLvvZS4bwZ2ha8QWqWlO/alAcXCGBezEI1Ig== + version "3.0.0-rc.7" + resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.7.tgz#2be47b765b36518c1148e2d4e86c919be4f2101d" + integrity sha512-MTEcH+5vmkspbMD53S6eHEfpRHer3pXOl0vCBYNTPivsxmTU14As5yoKyJvGjM/KN7/Madzz+WoDUvYNs7an+A== dependencies: js-yaml "^3.10.0" tslib "^1.13.0" From 176131defd4b3422b8eb11dad412c657a4583d93 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 8 Jun 2022 20:44:00 +0000 Subject: [PATCH 262/550] fix(deps): update dependency aws-sdk to v2.1151.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7286ba1b09..67a3f3bf3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8192,9 +8192,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1150.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1150.0.tgz#6f43380837d9cd1b761b9dc51395067686a4a053" - integrity sha512-SNbVXNlFGNFVcztPk7iWnjtGL+Afm1nyidpvX2rEqYdap2Ow57njZJXvghQUici4Xhqe+BUuG+x1orlFjapo4g== + version "2.1151.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1151.0.tgz#8fcb41c3b919842a7b4e5c4cd9e124f6439b5b67" + integrity sha512-VvyzXAmWrX+klvwzA+9gSTY7blDnZOTl0UTKrqmFL4K7tOLieGLYTUkpUegcPxCjYgEg7JwvYolYUnUKiHa4oA== dependencies: buffer "4.9.2" events "1.1.1" From 562bd4cfe4f37c3e0727d3346c6e323a9e9897d7 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 01:03:46 +0200 Subject: [PATCH 263/550] chore(gitlab MR action): remove projectId from template to because it is redundant Signed-off-by: djamaile --- .../builtin/publish/gitlabMergeRequest.ts | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index 7259336b23..ab11787f05 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -34,7 +34,6 @@ export const createPublishGitlabMergeRequestAction = (options: { const { integrations } = options; return createTemplateAction<{ - projectid: string; repoUrl: string; title: string; description: string; @@ -45,7 +44,7 @@ export const createPublishGitlabMergeRequestAction = (options: { id: 'publish:gitlab:merge-request', schema: { input: { - required: ['projectid', 'repoUrl', 'targetPath', 'branchName'], + required: ['repoUrl', 'targetPath', 'branchName'], type: 'object', properties: { repoUrl: { @@ -53,11 +52,6 @@ export const createPublishGitlabMergeRequestAction = (options: { title: 'Repository Location', description: `Accepts the format 'gitlab.com/group_name/project_name' where 'project_name' is the repository name and 'group_name' is a group or username`, }, - projectid: { - type: 'string', - title: 'projectid', - description: 'Project ID/Name(slug) of the Gitlab Project', - }, title: { type: 'string', title: 'Merge Request Name', @@ -88,8 +82,8 @@ export const createPublishGitlabMergeRequestAction = (options: { output: { type: 'object', properties: { - projectid: { - title: 'Gitlab Project id/Name(slug)', + projectPath: { + title: 'Gitlab Project path', type: 'string', }, mergeRequestURL: { @@ -102,7 +96,9 @@ export const createPublishGitlabMergeRequestAction = (options: { }, async handler(ctx) { const repoUrl = ctx.input.repoUrl; - const { host } = parseRepoUrl(repoUrl, integrations); + const { host, owner, repo } = parseRepoUrl(repoUrl, integrations); + const projectPath = `${owner}/${repo}`; + const integrationConfig = integrations.gitlab.byHost(host); const destinationBranch = ctx.input.branchName; @@ -140,14 +136,13 @@ export const createPublishGitlabMergeRequestAction = (options: { content: file.content.toString('base64'), execute_filemode: file.executable, })); - - const projects = await api.Projects.show(ctx.input.projectid); + const projects = await api.Projects.show(projectPath); const { default_branch: defaultBranch } = projects; try { await api.Branches.create( - ctx.input.projectid, + projectPath, destinationBranch, String(defaultBranch), ); @@ -157,7 +152,7 @@ export const createPublishGitlabMergeRequestAction = (options: { try { await api.Commits.create( - ctx.input.projectid, + projectPath, destinationBranch, ctx.input.title, actions, @@ -170,7 +165,7 @@ export const createPublishGitlabMergeRequestAction = (options: { try { const mergeRequestUrl = await api.MergeRequests.create( - ctx.input.projectid, + projectPath, destinationBranch, String(defaultBranch), ctx.input.title, @@ -178,7 +173,7 @@ export const createPublishGitlabMergeRequestAction = (options: { ).then((mergeRequest: { web_url: string }) => { return mergeRequest.web_url; }); - ctx.output('projectid', ctx.input.projectid); + ctx.output('project path: ', projectPath); ctx.output('mergeRequestUrl', mergeRequestUrl); } catch (e) { throw new InputError(`Merge request creation failed${e}`); From 35a26131b3a07f746c8173317ed5c31fd6920e32 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 01:17:05 +0200 Subject: [PATCH 264/550] chore: add changeset Signed-off-by: djamaile --- .changeset/forty-timers-cheer.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/forty-timers-cheer.md diff --git a/.changeset/forty-timers-cheer.md b/.changeset/forty-timers-cheer.md new file mode 100644 index 0000000000..29815fba67 --- /dev/null +++ b/.changeset/forty-timers-cheer.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': minor +--- + +refactored the gitlab publish merge request action to not use the `projectId` property. Instead use the `host` and `owner` property from the `RepoUrlPicker`. This decreases the amount of fields the user has to fill in. From 7f78d71537f8fb22fbee525ae9b4800c1f1c351f Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 01:31:28 +0200 Subject: [PATCH 265/550] chore: run api report command to prevent build from breaking Signed-off-by: djamaile --- plugins/scaffolder-backend/api-report.md | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index 308696d59b..51588054c0 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -338,7 +338,6 @@ export function createPublishGitlabAction(options: { export const createPublishGitlabMergeRequestAction: (options: { integrations: ScmIntegrationRegistry; }) => TemplateAction<{ - projectid: string; repoUrl: string; title: string; description: string; From fdaa8aaf5efee6f28808570105009bac6b8f5054 Mon Sep 17 00:00:00 2001 From: Kyle Smith Date: Wed, 8 Jun 2022 15:32:26 -0500 Subject: [PATCH 266/550] docs: add Twilio to Backstage Adopters list Signed-off-by: Kyle Smith --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index ab9b49bb8b..f78ffb3a2c 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -157,3 +157,4 @@ _If you're using Backstage in your organization, please try to add your company | [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. | [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. | [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. +| [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. From 3ab7c6626b7b3b474296d4354c745af4943afc71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Thu, 9 Jun 2022 11:03:15 +0200 Subject: [PATCH 267/550] Revert "fix(deps): update dependency camelcase-keys to v8" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/renovate-18e8701.md | 5 ---- plugins/rollbar-backend/api-report.md | 12 ++++----- plugins/rollbar-backend/package.json | 2 +- yarn.lock | 37 ++++++++------------------- 4 files changed, 18 insertions(+), 38 deletions(-) delete mode 100644 .changeset/renovate-18e8701.md diff --git a/.changeset/renovate-18e8701.md b/.changeset/renovate-18e8701.md deleted file mode 100644 index 687869fe9b..0000000000 --- a/.changeset/renovate-18e8701.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-rollbar-backend': patch ---- - -Updated dependency `camelcase-keys` to `^8.0.0`. diff --git a/plugins/rollbar-backend/api-report.md b/plugins/rollbar-backend/api-report.md index 873d9f819a..1c0800a393 100644 --- a/plugins/rollbar-backend/api-report.md +++ b/plugins/rollbar-backend/api-report.md @@ -35,8 +35,8 @@ export class RollbarApi { }, ): Promise< { - timestamp: number; count: number; + timestamp: number; }[] >; // (undocumented) @@ -44,8 +44,8 @@ export class RollbarApi { { id: number; name: string; - accountId: number; status: string; + accountId: number; }[] >; // (undocumented) @@ -57,21 +57,21 @@ export class RollbarApi { }, ): Promise< { - timestamp: number; count: number; + timestamp: number; }[] >; // (undocumented) getProject(projectName: string): Promise<{ id: number; name: string; - accountId: number; status: string; + accountId: number; }>; // (undocumented) getProjectItems(projectName: string): Promise<{ - items: RollbarItem[]; page: number; + items: RollbarItem[]; totalCount: number; }>; // (undocumented) @@ -114,6 +114,6 @@ export interface RouterOptions { // Warnings were encountered during analysis: // -// src/api/RollbarApi.d.ts:20:9 - (ae-forgotten-export) The symbol "RollbarItem" needs to be exported by the entry point index.d.ts +// src/api/RollbarApi.d.ts:21:9 - (ae-forgotten-export) The symbol "RollbarItem" needs to be exported by the entry point index.d.ts // src/api/RollbarApi.d.ts:32:13 - (ae-forgotten-export) The symbol "RollbarFrameworkId" needs to be exported by the entry point index.d.ts ``` diff --git a/plugins/rollbar-backend/package.json b/plugins/rollbar-backend/package.json index cc07de718f..f4d5e3bdb4 100644 --- a/plugins/rollbar-backend/package.json +++ b/plugins/rollbar-backend/package.json @@ -37,7 +37,7 @@ "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", - "camelcase-keys": "^8.0.0", + "camelcase-keys": "^7.0.1", "compression": "^1.7.4", "cors": "^2.8.5", "express": "^4.17.1", diff --git a/yarn.lock b/yarn.lock index 55ebca319c..c7795b8004 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9100,15 +9100,15 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" -camelcase-keys@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-8.0.0.tgz#c0ab26fcc5f6796af02aec7596c636af6f73e3d4" - integrity sha512-SKySgtaMjkouTJ/AIQdK1eit41Nq7+8uU/TQCU17sPSQwmAtAIPGrpDAey4oz0D7iiee3ylqt44KEBy+whyy+Q== +camelcase-keys@^7.0.1: + version "7.0.2" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz#d048d8c69448745bb0de6fc4c1c52a30dfbe7252" + integrity sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg== dependencies: - camelcase "^7.0.0" - map-obj "^4.3.0" - quick-lru "^6.1.1" - type-fest "^2.13.0" + camelcase "^6.3.0" + map-obj "^4.1.0" + quick-lru "^5.1.1" + type-fest "^1.2.1" camelcase@5.0.0: version "5.0.0" @@ -9125,16 +9125,11 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0: +camelcase@^6.2.0, camelcase@^6.3.0: version "6.3.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -camelcase@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/camelcase/-/camelcase-7.0.0.tgz#fd112621b212126741f998d614cbc2a8623fd174" - integrity sha512-JToIvOmz6nhGsUhAYScbo2d6Py5wojjNfoxoc2mEVLUdJ70gJK2gnd+ABY1Tc3sVMyK7QDPtN0T/XdlCQWITyQ== - caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -17696,7 +17691,7 @@ map-obj@^1.0.0: resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= -map-obj@^4.0.0, map-obj@^4.3.0: +map-obj@^4.0.0, map-obj@^4.1.0: version "4.3.0" resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== @@ -21291,11 +21286,6 @@ quick-lru@^5.1.1: resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -quick-lru@^6.1.1: - version "6.1.1" - resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-6.1.1.tgz#f8e5bf9010376c126c80c1a62827a526c0e60adf" - integrity sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q== - raf-schd@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/raf-schd/-/raf-schd-4.0.2.tgz#bd44c708188f2e84c810bf55fcea9231bcaed8a0" @@ -24916,16 +24906,11 @@ type-fest@^0.8.1: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-fest@^1.2.2: +type-fest@^1.2.1, type-fest@^1.2.2: version "1.4.0" resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== -type-fest@^2.13.0: - version "2.13.0" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-2.13.0.tgz#d1ecee38af29eb2e863b22299a3d68ef30d2abfb" - integrity sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw== - type-is@~1.6.18: version "1.6.18" resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" From bce96a79cac66ecc4cca6990822a041b4d3fb749 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Thu, 9 Jun 2022 11:34:02 +0200 Subject: [PATCH 268/550] docs: Remove helm from microsite Signed-off-by: Johan Haals --- microsite/sidebars.json | 1 - mkdocs.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/microsite/sidebars.json b/microsite/sidebars.json index 6f3359f708..6cbe079def 100644 --- a/microsite/sidebars.json +++ b/microsite/sidebars.json @@ -288,7 +288,6 @@ "deployment/index", "deployment/docker", "deployment/k8s", - "deployment/helm", "deployment/heroku" ], "Designing for Backstage": [ diff --git a/mkdocs.yml b/mkdocs.yml index 7200471326..3bd83832f7 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -167,7 +167,6 @@ nav: - Deploying Backstage: 'deployment/index.md' - Docker: 'deployment/docker.md' - Kubernetes: 'deployment/k8s.md' - - Helm: 'deployment/helm.md' - Heroku: 'deployment/heroku.md' - Designing for Backstage: - Design: 'dls/design.md' From 0d834f259e64732efb0cb40bf66f0b089b6b0980 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Thu, 9 Jun 2022 11:34:18 +0200 Subject: [PATCH 269/550] Remove helm docs Signed-off-by: Johan Haals --- docs/deployment/helm.md | 62 ----------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 docs/deployment/helm.md diff --git a/docs/deployment/helm.md b/docs/deployment/helm.md deleted file mode 100644 index cbfcb1bc57..0000000000 --- a/docs/deployment/helm.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -id: helm -title: Deploying with Helm -description: How to deploy Backstage with Helm and Kubernetes -sidebar_label: Helm ---- - -An example Backstage app can be deployed in Kubernetes using the -[Backstage Helm charts](https://github.com/backstage/backstage/tree/master/contrib/chart/backstage). - -First, choose a DNS name where Backstage will be hosted, and create a YAML file -for your custom configuration. - -```yaml -appConfig: - app: - baseUrl: https://backstage.mydomain.com - title: Backstage - backend: - baseUrl: https://backstage.mydomain.com - cors: - origin: https://backstage.mydomain.com - lighthouse: - baseUrl: https://backstage.mydomain.com/lighthouse-api - techdocs: - storageUrl: https://backstage.mydomain.com/api/techdocs/static/docs - requestUrl: https://backstage.mydomain.com/api/techdocs -``` - -Then use it to run: - -```bash -git clone https://github.com/backstage/backstage.git -cd backstage/contrib/chart/backstage -helm dependency update -helm install -f backstage-mydomain.yaml backstage . -``` - -This command will deploy the following pieces: - -- Backstage frontend -- Backstage backend with scaffolder and auth plugins -- (optional) a PostgreSQL instance -- lighthouse plugin -- ingress - -After a few minutes Backstage should be up and running in your cluster under the -DNS specified earlier. - -Make sure to create the appropriate DNS entry in your infrastructure. To find -the public IP address run: - -```bash -$ kubectl get ingress -NAME HOSTS ADDRESS PORTS AGE -backstage-ingress * 123.1.2.3 80 17m -``` - -> **NOTE**: this is not a production ready deployment. - -For more information on how to customize the deployment check the -[README](https://github.com/backstage/backstage/tree/master/contrib/chart/backstage/README.md). From 3ae9c3efb03168c3ef5ebf48910f0cc64d3e1c16 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Thu, 9 Jun 2022 11:36:58 +0200 Subject: [PATCH 270/550] remove helm from deployment index Signed-off-by: Johan Haals --- docs/deployment/index.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/deployment/index.md b/docs/deployment/index.md index 621870ea6f..da2c29ba23 100644 --- a/docs/deployment/index.md +++ b/docs/deployment/index.md @@ -29,9 +29,7 @@ This method is covered in [Building a Docker image](docker.md) and There is also an example of deploying on [Heroku](heroku.md), which only requires the first two steps. -An example of deploying Backstage with a [Helm chart](helm.md), a common pattern -in AWS, is also available. There is also a contrib guide to deploying Backstage -with +There is also a contrib guide to deploying Backstage with [AWS Fargate and Aurora PostgreSQL](https://github.com/backstage/backstage/blob/master/contrib/docs/tutorials/aws-fargate-deployment.md). Please consider contributing other deployment guides if you get Backstage set up From 34b84b4072fb3546e97319fc012d52557b4d3755 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 11:50:48 +0200 Subject: [PATCH 271/550] chore: make the changes backwards compatible to ease the migration Signed-off-by: djamaile --- .changeset/forty-timers-cheer.md | 5 +++-- .../actions/builtin/publish/gitlabMergeRequest.ts | 15 ++++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.changeset/forty-timers-cheer.md b/.changeset/forty-timers-cheer.md index 29815fba67..20ea9b90d4 100644 --- a/.changeset/forty-timers-cheer.md +++ b/.changeset/forty-timers-cheer.md @@ -1,5 +1,6 @@ --- -'@backstage/plugin-scaffolder-backend': minor +'@backstage/plugin-scaffolder-backend': major --- -refactored the gitlab publish merge request action to not use the `projectId` property. Instead use the `host` and `owner` property from the `RepoUrlPicker`. This decreases the amount of fields the user has to fill in. +**DEPRECATION**: The `projectid` input parameters to the `publish:gitlab:merge-request`, it's no longer required as it can be decoded from the `repoUrl` input parameter. +**DEPRECATION**: The `projectid` output of the action in favour of `projectPath` diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index ab11787f05..d163a52d26 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -40,6 +40,8 @@ export const createPublishGitlabMergeRequestAction = (options: { branchName: string; targetPath: string; token?: string; + /** @deprecated */ + projectid?: string; }>({ id: 'publish:gitlab:merge-request', schema: { @@ -52,6 +54,12 @@ export const createPublishGitlabMergeRequestAction = (options: { title: 'Repository Location', description: `Accepts the format 'gitlab.com/group_name/project_name' where 'project_name' is the repository name and 'group_name' is a group or username`, }, + /** @deprecated */ + projectid: { + type: 'string', + title: 'projectid', + description: 'Project ID/Name(slug) of the Gitlab Project', + }, title: { type: 'string', title: 'Merge Request Name', @@ -82,6 +90,10 @@ export const createPublishGitlabMergeRequestAction = (options: { output: { type: 'object', properties: { + projectid: { + title: 'Gitlab Project id/Name(slug)', + type: 'string', + }, projectPath: { title: 'Gitlab Project path', type: 'string', @@ -173,7 +185,8 @@ export const createPublishGitlabMergeRequestAction = (options: { ).then((mergeRequest: { web_url: string }) => { return mergeRequest.web_url; }); - ctx.output('project path: ', projectPath); + ctx.output('projectid', projectPath); + ctx.output('projectPath', projectPath); ctx.output('mergeRequestUrl', mergeRequestUrl); } catch (e) { throw new InputError(`Merge request creation failed${e}`); From c8af5ea7b3b64fec05fdf4ce19ad517278326351 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 12:09:39 +0200 Subject: [PATCH 272/550] chore: run api report command to prevent build from breaking Signed-off-by: djamaile --- plugins/scaffolder-backend/api-report.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index 51588054c0..fbb071cd51 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -344,6 +344,7 @@ export const createPublishGitlabMergeRequestAction: (options: { branchName: string; targetPath: string; token?: string | undefined; + projectid?: string | undefined; }>; // @public @@ -709,4 +710,8 @@ export class TemplateActionRegistry { // @public (undocumented) export type TemplateFilter = (...args: JsonValue[]) => JsonValue | undefined; + +// Warnings were encountered during analysis: +// +// src/scaffolder/actions/builtin/publish/gitlabMergeRequest.d.ts:16:9 - (tsdoc-missing-deprecation-message) The @deprecated block must include a deprecation message, e.g. describing the recommended alternative ``` From d507278a0c31422b7e33f99577a45690b8751fc0 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 12:40:21 +0200 Subject: [PATCH 273/550] chore: change major to minor because we haven't make any breaking changes Signed-off-by: djamaile --- .changeset/forty-timers-cheer.md | 2 +- .../scaffolder/actions/builtin/publish/gitlabMergeRequest.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.changeset/forty-timers-cheer.md b/.changeset/forty-timers-cheer.md index 20ea9b90d4..9fba60e6ed 100644 --- a/.changeset/forty-timers-cheer.md +++ b/.changeset/forty-timers-cheer.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-scaffolder-backend': major +'@backstage/plugin-scaffolder-backend': minor --- **DEPRECATION**: The `projectid` input parameters to the `publish:gitlab:merge-request`, it's no longer required as it can be decoded from the `repoUrl` input parameter. diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index d163a52d26..07c094cba9 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -185,6 +185,7 @@ export const createPublishGitlabMergeRequestAction = (options: { ).then((mergeRequest: { web_url: string }) => { return mergeRequest.web_url; }); + /** @deprecated */ ctx.output('projectid', projectPath); ctx.output('projectPath', projectPath); ctx.output('mergeRequestUrl', mergeRequestUrl); From 141a1caebe8652fc7434d251a29eac0fba3ee015 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 8 Jun 2022 19:08:02 +0200 Subject: [PATCH 274/550] create-app,docs: use guest resolver as default sign-in resolver in new apps Signed-off-by: Patrik Oldsberg --- .changeset/twenty-avocados-refuse.md | 5 +++ docs/auth/identity-resolver.md | 28 +++++++++++++++ .../packages/backend/src/plugins/auth.ts | 36 ++++++++++++++----- 3 files changed, 60 insertions(+), 9 deletions(-) create mode 100644 .changeset/twenty-avocados-refuse.md diff --git a/.changeset/twenty-avocados-refuse.md b/.changeset/twenty-avocados-refuse.md new file mode 100644 index 0000000000..dab68d5a10 --- /dev/null +++ b/.changeset/twenty-avocados-refuse.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Updated the auth backend setup in the template to include a guest sign-in resolver in order to make it quicker to get up and running with a basic sign-in setup. There is no need to update existing apps to match this change, but in case you want to use the guest sign-in resolver you can find it at https://backstage.io/docs/auth/identity-resolver#guest-sign-in-resolver diff --git a/docs/auth/identity-resolver.md b/docs/auth/identity-resolver.md index c7f90d0bbf..2a256ae8fd 100644 --- a/docs/auth/identity-resolver.md +++ b/docs/auth/identity-resolver.md @@ -12,6 +12,34 @@ If you want to use an auth provider to sign in users, you need to explicitly con it have sign-in enabled and also tell it how the external identities should be mapped to user identities within Backstage. +## Guest Sign-In Resolver + +Backstage projects created with `npx @backstage/create-app` come configured with a +sign-in resolver for GitHub guest access. This resolver makes all users share +a single "guest" identity and is only intended as a minimum requirement to quickly +get up and running. You can replace `github` for any of the other providers if you need. + +This resolver should not be used in production, as it uses a single shared identity, +and has no restrictions on who is able to sign-in. Be sure to read through the rest +of this page to understand the Backstage identity system once you need to install +a resolver for your production environment. + +The guest resolver can be useful for testing purposes too, and it looks like this: + +```ts +signIn: { + resolver(_, ctx) { + const userRef = 'user:default/guest' + return ctx.issueToken({ + claims: { + sub: userRef, + ent: [userRef], + }, + }), + }, +}, +``` + ## Backstage User Identity A user identity within Backstage is built up from two pieces of information, a diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/auth.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/auth.ts index 13f18c55e9..159116d7b8 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/auth.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/auth.ts @@ -18,18 +18,36 @@ export default async function createPlugin( providerFactories: { ...defaultAuthProviderFactories, - // This overrides the default GitHub auth provider with a custom one. - // Since the options are empty it will behave just like the default - // provider, but if you uncomment the `signIn` section you will enable - // sign-in via GitHub. This particular configuration uses a resolver - // that matches the username to the user entity name. See the auth - // documentation for more details on how to enable and customize sign-in: + // This replaces the default GitHub auth provider with a customized one. + // The `signIn` option enables sign-in for this provider, using the + // identity resolution logic that's provided in the `resolver` callback. + // + // This particular resolver makes all users share a single "guest" identity. + // It should only be used for testing and trying out Backstage. + // + // If you want to use a production ready resolver you can switch to the + // the one that is commented out below, it looks up a user entity in the + // catalog using the GitHub username of the authenticated user. + // That resolver requires you to have user entities populated in the catalog, + // for example using https://backstage.io/docs/integrations/github/org + // + // There are other resolvers to choose from, and you can also create + // your own, see the auth documentation for more details: // // https://backstage.io/docs/auth/identity-resolver github: providers.github.create({ - // signIn: { - // resolver: providers.github.resolvers.usernameMatchingUserEntityName(), - // }, + signIn: { + resolver(_, ctx) { + const userRef = 'user:default/guest'; // Must be a full entity reference + return ctx.issueToken({ + claims: { + sub: userRef, // The user's own identity + ent: [userRef], // A list of identities that the user claims ownership through + }, + }); + }, + // resolver: providers.github.resolvers.usernameMatchingUserEntityName(), + }, }), }, }); From 890dfe614af5d28af2119ac23264dc7372a0a209 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 14:46:01 +0200 Subject: [PATCH 275/550] chore: give alternative to deprecated projectId Signed-off-by: djamaile --- plugins/scaffolder-backend/api-report.md | 4 ---- .../actions/builtin/publish/gitlabMergeRequest.ts | 6 +++--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/plugins/scaffolder-backend/api-report.md b/plugins/scaffolder-backend/api-report.md index fbb071cd51..707b8e62ba 100644 --- a/plugins/scaffolder-backend/api-report.md +++ b/plugins/scaffolder-backend/api-report.md @@ -710,8 +710,4 @@ export class TemplateActionRegistry { // @public (undocumented) export type TemplateFilter = (...args: JsonValue[]) => JsonValue | undefined; - -// Warnings were encountered during analysis: -// -// src/scaffolder/actions/builtin/publish/gitlabMergeRequest.d.ts:16:9 - (tsdoc-missing-deprecation-message) The @deprecated block must include a deprecation message, e.g. describing the recommended alternative ``` diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index 07c094cba9..c5dd41f807 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -40,7 +40,7 @@ export const createPublishGitlabMergeRequestAction = (options: { branchName: string; targetPath: string; token?: string; - /** @deprecated */ + /** @deprecated Use projectPath instead */ projectid?: string; }>({ id: 'publish:gitlab:merge-request', @@ -54,7 +54,7 @@ export const createPublishGitlabMergeRequestAction = (options: { title: 'Repository Location', description: `Accepts the format 'gitlab.com/group_name/project_name' where 'project_name' is the repository name and 'group_name' is a group or username`, }, - /** @deprecated */ + /** @deprecated Use projectPath instead */ projectid: { type: 'string', title: 'projectid', @@ -185,7 +185,7 @@ export const createPublishGitlabMergeRequestAction = (options: { ).then((mergeRequest: { web_url: string }) => { return mergeRequest.web_url; }); - /** @deprecated */ + /** @deprecated Use projectPath instead */ ctx.output('projectid', projectPath); ctx.output('projectPath', projectPath); ctx.output('mergeRequestUrl', mergeRequestUrl); From eea8126171135c356f7e6bf30f0434e9634a7f57 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 08:24:40 +0200 Subject: [PATCH 276/550] Gitlab entity provider Signed-off-by: ivgo --- .changeset/lazy-zoos-move.md | 5 + .changeset/perfect-mangos-allow.md | 5 + docs/integrations/gitlab/discovery.md | 59 ++++- .../catalog-backend-module-gitlab/config.d.ts | 57 +++++ .../package.json | 11 +- .../src/index.ts | 1 + .../src/lib/client.test.ts | 45 ++++ .../src/lib/client.ts | 8 + .../src/lib/index.ts | 7 +- .../src/lib/types.ts | 15 ++ .../GitlabDiscoveryEntityProvider.test.ts | 230 ++++++++++++++++++ .../GitlabDiscoveryEntityProvider.ts | 190 +++++++++++++++ .../src/providers/config.test.ts | 106 ++++++++ .../src/providers/config.ts | 50 ++++ .../src/providers/index.ts | 17 ++ .../src/ingestion/CatalogRules.ts | 45 ++++ 16 files changed, 840 insertions(+), 11 deletions(-) create mode 100644 .changeset/lazy-zoos-move.md create mode 100644 .changeset/perfect-mangos-allow.md create mode 100644 plugins/catalog-backend-module-gitlab/config.d.ts create mode 100644 plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts create mode 100644 plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts create mode 100644 plugins/catalog-backend-module-gitlab/src/providers/config.test.ts create mode 100644 plugins/catalog-backend-module-gitlab/src/providers/config.ts create mode 100644 plugins/catalog-backend-module-gitlab/src/providers/index.ts diff --git a/.changeset/lazy-zoos-move.md b/.changeset/lazy-zoos-move.md new file mode 100644 index 0000000000..1e94ec798f --- /dev/null +++ b/.changeset/lazy-zoos-move.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend-module-gitlab': patch +--- + +Add a new provider `GitlabDiscoveryEntityProvider` as replacement for `GitlabDiscoveryProcessor` diff --git a/.changeset/perfect-mangos-allow.md b/.changeset/perfect-mangos-allow.md new file mode 100644 index 0000000000..0fe75e009c --- /dev/null +++ b/.changeset/perfect-mangos-allow.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend': patch +--- + +Add support to custom rules for `GitlabDiscoveryEntityProvider` diff --git a/docs/integrations/gitlab/discovery.md b/docs/integrations/gitlab/discovery.md index 3715b89920..986c2aec15 100644 --- a/docs/integrations/gitlab/discovery.md +++ b/docs/integrations/gitlab/discovery.md @@ -6,14 +6,58 @@ sidebar_label: Discovery description: Automatically discovering catalog entities from repositories in GitLab --- -The GitLab integration has a special discovery processor for discovering catalog -entities from GitLab. The processor will crawl the GitLab instance and register -entities matching the configured path. This can be useful as an alternative to +The GitLab integration has a special entity provider for discovering catalog +entities from GitLab. The entity provider will crawl the GitLab instance and register +entities matching the configured paths. This can be useful as an alternative to static locations or manually adding things to the catalog. -To use the discovery processor, you'll need a GitLab integration -[set up](locations.md) with a `token`. Then you can add a location target to the -catalog configuration: +To use the discovery provider, you'll need a GitLab integration +[set up](locations.md) with a `token`. Then you can add a provider config per group +to the catalog configuration: + +```yaml +catalog: + providers: + gitlab: + yourProviderId: + host: gitlab-host # Identifies one of the hosts set up in the integrations + branch: main # Optional. Uses `master` as default + group: example-group # Group and subgroup (if needed) to look for repositories + entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` + rules: + - repository: example-repo + allow: [Component, System, Location, Template] +``` + +As this provider is not one of the default providers, you will first need to install +the gitlab catalog plugin: + +```bash +# From the Backstage root directory +yarn add --cwd packages/backend @backstage/plugin-catalog-backend-module-gitlab +``` + +Once you've done that, you'll also need to add the segment below to `packages/backend/src/plugins/catalog.ts`: + +```ts +/* packages/backend/src/plugins/catalog.ts */ + +import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-aws'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors and/or providers ... */ +builder.addEntityProvider( + ...GitlabDiscoveryEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), +); +``` + +## Alternative processor ```yaml catalog: @@ -22,6 +66,9 @@ catalog: target: https://gitlab.com/group/subgroup/blob/main/catalog-info.yaml ``` +As alternative to the entity provider `GitlabDiscoveryEntityProvider` +you can still use the `GitLabDiscoveryProcessor`. + Note the `gitlab-discovery` type, as this is not a regular `url` processor. The target is composed of three parts: diff --git a/plugins/catalog-backend-module-gitlab/config.d.ts b/plugins/catalog-backend-module-gitlab/config.d.ts new file mode 100644 index 0000000000..11c6830e63 --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/config.d.ts @@ -0,0 +1,57 @@ +/* + * Copyright 2020 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 interface Config { + catalog?: { + /** + * List of provider-specific options and attributes + */ + providers?: { + /** + * GitlabDiscoveryEntityProvider configuration + * + * Uses "default" as default id for the single config variant. + */ + gitlab?: Record< + string, + { + /** + * (Required) Gitlab's host name. + * @visibility backend + */ + host: string; + /** + * (Required) Gitlab's group[/subgroup] where the discovery is done. + * @visibility backend + */ + group: string; + /** + * (Optional) Default branch to read the catalog-info.yaml file. + * If not set, 'master' will be used. + * @visibility backend + */ + branch?: string; + /** + * (Optional) The name used for the catalog file. + * If not set, 'catalog-info.yaml' will be used. + * @visibility backend + */ + entityFilename?: string; + } + >; + }; + }; +} diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index d7909bf3b3..74615e83fe 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -35,6 +35,7 @@ "dependencies": { "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-tasks": "^0.3.1", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.2", @@ -43,12 +44,14 @@ "lodash": "^4.17.21", "msw": "^0.42.0", "node-fetch": "^2.6.7", - "winston": "^3.2.1" + "winston": "^3.2.1", + "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", - "@types/lodash": "^4.14.151" + "@backstage/backend-test-utils": "^0.1.25-next.1", + "@backstage/cli": "^0.17.2-next.1", + "@types/lodash": "^4.14.151", + "@types/uuid": "^8.0.0" }, "files": [ "dist" diff --git a/plugins/catalog-backend-module-gitlab/src/index.ts b/plugins/catalog-backend-module-gitlab/src/index.ts index e2a08509fb..3182210c81 100644 --- a/plugins/catalog-backend-module-gitlab/src/index.ts +++ b/plugins/catalog-backend-module-gitlab/src/index.ts @@ -21,3 +21,4 @@ */ export { GitLabDiscoveryProcessor } from './GitLabDiscoveryProcessor'; +export { GitlabDiscoveryEntityProvider } from './providers'; 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 e50ad34734..132dd0bc34 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.test.ts @@ -103,6 +103,21 @@ function setupFakeInstanceProjectsEndpoint( ); } +function setupFakeHasFileEndpoint(srv: SetupServerApi, apiBaseUrl: string) { + srv.use( + rest.head( + `${apiBaseUrl}/projects/group%2Frepo/repository/files/catalog-info.yaml`, + (req, res, ctx) => { + const branch = req.url.searchParams.get('ref'); + if (branch === 'master') { + return res(ctx.status(200)); + } + return res(ctx.status(404, 'Not Found')); + }, + ), + ); +} + describe('GitLabClient', () => { describe('isSelfManaged', () => { it('returns true if self managed instance', () => { @@ -266,3 +281,33 @@ describe('paginated', () => { expect(allItems).toHaveLength(4); }); }); + +describe('hasFile', () => { + let client: GitLabClient; + + beforeEach(() => { + setupFakeHasFileEndpoint(server, MOCK_CONFIG.apiBaseUrl); + client = new GitLabClient({ + config: MOCK_CONFIG, + logger: getVoidLogger(), + }); + }); + + it('should not find catalog file', async () => { + const hasFile = await client.hasFile( + 'group/repo', + 'master', + 'catalog-info.yaml', + ); + expect(hasFile).toBe(true); + }); + + it('should find catalog file', async () => { + const hasFile = await client.hasFile( + 'group/repo', + 'unknown', + 'catalog-info.yaml', + ); + expect(hasFile).toBe(false); + }); +}); diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.ts index 27214f3be8..25384f3dd6 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.ts @@ -63,6 +63,14 @@ export class GitLabClient { return this.pagedRequest(`/projects`, options); } + /** + * Checks if the catalog file is present in the repository or not. + * + * @param projectPath The path to the project + * @param branch The branch used to injest entities to the catalog + * @param filePath The path to the catalog file + * @returns `true` if the file exists, `false` otherwise + */ async hasFile( projectPath: string, branch: string, diff --git a/plugins/catalog-backend-module-gitlab/src/lib/index.ts b/plugins/catalog-backend-module-gitlab/src/lib/index.ts index 1df3d2cb84..53fad07994 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/index.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/index.ts @@ -15,4 +15,9 @@ */ export { GitLabClient, paginated } from './client'; -export type { GitLabProject } from './types'; +export type { + GitLabProject, + GitlabProviderConfig, + GitlabGroupDescription, +} from './types'; +export { readGitlabConfigs } from '../providers/config'; diff --git a/plugins/catalog-backend-module-gitlab/src/lib/types.ts b/plugins/catalog-backend-module-gitlab/src/lib/types.ts index d41ed73aac..fa2350487f 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/types.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/types.ts @@ -14,10 +14,25 @@ * limitations under the License. */ +export type GitlabGroupDescription = { + id: number; + web_url: string; + projects: GitLabProject[]; +}; + export type GitLabProject = { id: number; default_branch?: string; archived: boolean; last_activity_at: string; web_url: string; + path_with_namespace: string; +}; + +export type GitlabProviderConfig = { + host: string; + group: string; + id: string; + branch: string; + catalogFile: string; }; diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts new file mode 100644 index 0000000000..dc70772d3d --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.test.ts @@ -0,0 +1,230 @@ +/* + * Copyright 2022 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 { getVoidLogger } from '@backstage/backend-common'; +import { TaskInvocationDefinition, TaskRunner } from '@backstage/backend-tasks'; +import { ConfigReader } from '@backstage/config'; +import { EntityProviderConnection } from '@backstage/plugin-catalog-backend'; +import { setupRequestMockHandlers } from '@backstage/backend-test-utils'; +import { GitlabDiscoveryEntityProvider } from './GitlabDiscoveryEntityProvider'; +import { rest } from 'msw'; +import { setupServer } from 'msw/node'; + +class PersistingTaskRunner implements TaskRunner { + private tasks: TaskInvocationDefinition[] = []; + + getTasks() { + return this.tasks; + } + + run(task: TaskInvocationDefinition): Promise { + this.tasks.push(task); + return Promise.resolve(undefined); + } +} + +const logger = getVoidLogger(); + +const server = setupServer(); + +describe('GitlabDiscoveryEntityProvider', () => { + setupRequestMockHandlers(server); + afterEach(() => jest.resetAllMocks()); + + it('no provider config', () => { + const schedule = new PersistingTaskRunner(); + const config = new ConfigReader({}); + const providers = GitlabDiscoveryEntityProvider.fromConfig(config, { + logger, + schedule, + }); + + expect(providers).toHaveLength(0); + }); + + it('single simple discovery config', () => { + const schedule = new PersistingTaskRunner(); + const config = new ConfigReader({ + integrations: { + gitlab: [ + { + host: 'test-gitlab', + apiBaseUrl: 'https://api.gitlab.example/api/v4', + token: '1234', + }, + ], + }, + catalog: { + providers: { + gitlab: { + 'test-id': { + host: 'test-gitlab', + group: 'test-group', + }, + }, + }, + }, + }); + const providers = GitlabDiscoveryEntityProvider.fromConfig(config, { + logger, + schedule, + }); + + expect(providers).toHaveLength(1); + expect(providers[0].getProviderName()).toEqual( + 'GitlabDiscoveryEntityProvider:test-id', + ); + }); + + it('multiple discovery configs', () => { + const schedule = new PersistingTaskRunner(); + const config = new ConfigReader({ + integrations: { + gitlab: [ + { + host: 'test-gitlab', + apiBaseUrl: 'https://api.gitlab.example/api/v4', + token: '1234', + }, + ], + }, + catalog: { + providers: { + gitlab: { + 'test-id': { + host: 'test-gitlab', + group: 'test-group', + }, + 'second-test': { + host: 'test-gitlab', + group: 'second-group', + }, + }, + }, + }, + }); + const providers = GitlabDiscoveryEntityProvider.fromConfig(config, { + logger, + schedule, + }); + + expect(providers).toHaveLength(2); + expect(providers[0].getProviderName()).toEqual( + 'GitlabDiscoveryEntityProvider:test-id', + ); + expect(providers[1].getProviderName()).toEqual( + 'GitlabDiscoveryEntityProvider:second-test', + ); + }); + + it('apply full update on scheduled execution', async () => { + const config = new ConfigReader({ + integrations: { + gitlab: [ + { + host: 'test-gitlab', + apiBaseUrl: 'https://api.gitlab.example/api/v4', + token: '1234', + }, + ], + }, + catalog: { + providers: { + gitlab: { + 'test-id': { + host: 'test-gitlab', + group: 'test-group', + }, + }, + }, + }, + }); + const schedule = new PersistingTaskRunner(); + const entityProviderConnection: EntityProviderConnection = { + applyMutation: jest.fn(), + }; + const provider = GitlabDiscoveryEntityProvider.fromConfig(config, { + logger, + schedule, + })[0]; + expect(provider.getProviderName()).toEqual( + 'GitlabDiscoveryEntityProvider:test-id', + ); + + server.use( + rest.get( + `https://api.gitlab.example/api/v4/groups/test-group/projects`, + (_req, res, ctx) => { + const response = [ + { + id: 123, + default_branch: 'master', + archived: false, + last_activity_at: new Date().toString(), + web_url: 'https://api.gitlab.example/test-group/test-repo', + path_with_namespace: 'test-group/test-repo', + }, + ]; + return res(ctx.json(response)); + }, + ), + rest.head( + 'https://api.gitlab.example/api/v4/projects/test-group%2Ftest-repo/repository/files/catalog-info.yaml', + (req, res, ctx) => { + if (req.url.searchParams.get('ref') === 'master') { + return res(ctx.status(200)); + } + return res(ctx.status(404, 'Not Found')); + }, + ), + ); + + await provider.connect(entityProviderConnection); + + const taskDef = schedule.getTasks()[0]; + expect(taskDef.id).toEqual('GitlabDiscoveryEntityProvider:test-id:refresh'); + await (taskDef.fn as () => Promise)(); + + const url = `https://api.gitlab.example/test-group/test-repo/-/blob/master/catalog-info.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}`, + }, + name: 'generated-cd37bf72a2fe92603f4255d9f49c6c1ead746a48', + }, + spec: { + presence: 'optional', + target: `${url}`, + type: 'url', + }, + }, + locationKey: 'GitlabDiscoveryEntityProvider:test-id', + }, + ]; + + expect(entityProviderConnection.applyMutation).toBeCalledTimes(1); + expect(entityProviderConnection.applyMutation).toBeCalledWith({ + type: 'full', + entities: expectedEntities, + }); + }); +}); diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts new file mode 100644 index 0000000000..7a30aa83da --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts @@ -0,0 +1,190 @@ +/* + * Copyright 2021 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 { TaskRunner } from '@backstage/backend-tasks'; +import { Config } from '@backstage/config'; +import { GitLabIntegration, ScmIntegrations } from '@backstage/integration'; +import { + EntityProvider, + EntityProviderConnection, +} from '@backstage/plugin-catalog-backend'; +import { LocationSpec } from '@backstage/plugin-catalog-backend'; +import { Logger } from 'winston'; +import { + GitLabClient, + GitLabProject, + GitlabProviderConfig, + paginated, + readGitlabConfigs, +} from '../lib'; +import * as uuid from 'uuid'; +import { locationSpecToLocationEntity } from '@backstage/plugin-catalog-backend'; + +type Result = { + scanned: number; + matches: GitLabProject[]; +}; + +/** + * Extracts repositories out of an GitLab instance. + * @public + */ +export class GitlabDiscoveryEntityProvider implements EntityProvider { + private readonly config: GitlabProviderConfig; + private readonly integration: GitLabIntegration; + private readonly logger: Logger; + private readonly scheduleFn: () => Promise; + private connection?: EntityProviderConnection; + + static fromConfig( + config: Config, + options: { logger: Logger; schedule: TaskRunner }, + ): GitlabDiscoveryEntityProvider[] { + const providerConfigs = readGitlabConfigs(config); + const integrations = ScmIntegrations.fromConfig(config).gitlab; + const providers: GitlabDiscoveryEntityProvider[] = []; + + providerConfigs.forEach(providerConfig => { + const integration = integrations.byHost(providerConfig.host); + if (!integration) { + throw new Error( + `No gitlab integration found that matches host ${providerConfig.host}`, + ); + } + providers.push( + new GitlabDiscoveryEntityProvider({ + ...options, + config: providerConfig, + integration, + }), + ); + }); + return providers; + } + + private constructor(options: { + config: GitlabProviderConfig; + integration: GitLabIntegration; + logger: Logger; + schedule: TaskRunner; + }) { + this.config = options.config; + this.integration = options.integration; + this.logger = options.logger.child({ + target: this.getProviderName(), + }); + this.scheduleFn = this.createScheduleFn(options.schedule); + } + + getProviderName(): string { + return `GitlabDiscoveryEntityProvider:${this.config.id}`; + } + + async connect(connection: EntityProviderConnection): Promise { + this.connection = connection; + await this.scheduleFn(); + } + + private createScheduleFn(schedule: TaskRunner): () => Promise { + return async () => { + const taskId = `${this.getProviderName()}:refresh`; + return schedule.run({ + id: taskId, + fn: async () => { + const logger = this.logger.child({ + class: GitlabDiscoveryEntityProvider.prototype.constructor.name, + taskId, + taskInstanceId: uuid.v4(), + }); + + try { + await this.refresh(logger); + } catch (error) { + logger.error(error); + } + }, + }); + }; + } + + async refresh(logger: Logger): Promise { + if (!this.connection) { + throw new Error( + `Gitlab discovery connection not initialized for ${this.getProviderName()}`, + ); + } + + const client = new GitLabClient({ + config: this.integration.config, + logger: logger, + }); + + const projects = paginated( + options => client.listProjects(options), + { + group: this.config.group, + page: 1, + per_page: 50, + }, + ); + + const res: Result = { + scanned: 0, + matches: [], + }; + + for await (const project of projects) { + res.scanned++; + + if (project.archived) { + continue; + } + + if (this.config.branch === '*' && project.default_branch === undefined) { + continue; + } + + const project_branch = project.default_branch ?? this.config.branch; + + const projectHasFile: boolean = await client.hasFile( + project.path_with_namespace, + project_branch, + this.config.catalogFile, + ); + if (projectHasFile) { + res.matches.push(project); + } + } + + const locations = res.matches.map(p => this.createLocationSpec(p)); + await this.connection.applyMutation({ + type: 'full', + entities: locations.map(location => ({ + locationKey: this.getProviderName(), + entity: locationSpecToLocationEntity({ location }), + })), + }); + } + + private createLocationSpec(project: GitLabProject): LocationSpec { + const project_branch = project.default_branch ?? this.config.branch; + return { + type: 'url', + target: `${project.web_url}/-/blob/${project_branch}/${this.config.catalogFile}`, + presence: 'optional', + }; + } +} diff --git a/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts b/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts new file mode 100644 index 0000000000..d28930b151 --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/src/providers/config.test.ts @@ -0,0 +1,106 @@ +/* + * Copyright 2020 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/config'; +import { readGitlabConfigs } from './config'; + +describe('config', () => { + it('empty gitlab config', () => { + const config = new ConfigReader({ + catalog: { + providers: {}, + }, + }); + + const result = readGitlabConfigs(config); + expect(result).toHaveLength(0); + }); + + it('valid config with default optional params', () => { + const config = new ConfigReader({ + catalog: { + providers: { + gitlab: { + test: { + group: 'group', + host: 'host', + }, + }, + }, + }, + }); + + const result = readGitlabConfigs(config); + expect(result).toHaveLength(1); + result.forEach(r => + expect(r).toStrictEqual({ + id: 'test', + group: 'group', + branch: 'master', + host: 'host', + catalogFile: 'catalog-info.yaml', + }), + ); + }); + + it('valid config with custom optional params', () => { + const config = new ConfigReader({ + catalog: { + providers: { + gitlab: { + test: { + group: 'group', + host: 'host', + branch: 'not-master', + entityFilename: 'custom-file.yaml', + }, + }, + }, + }, + }); + + const result = readGitlabConfigs(config); + expect(result).toHaveLength(1); + result.forEach(r => + expect(r).toStrictEqual({ + id: 'test', + group: 'group', + branch: 'not-master', + host: 'host', + catalogFile: 'custom-file.yaml', + }), + ); + }); + + it('missing params', () => { + const config = new ConfigReader({ + catalog: { + providers: { + gitlab: { + test: { + branch: 'not-master', + entityFilename: 'custom-file.yaml', + }, + }, + }, + }, + }); + + expect(() => readGitlabConfigs(config)).toThrow( + "Missing required config value at 'catalog.providers.gitlab.test.group'", + ); + }); +}); diff --git a/plugins/catalog-backend-module-gitlab/src/providers/config.ts b/plugins/catalog-backend-module-gitlab/src/providers/config.ts new file mode 100644 index 0000000000..8af3d576a7 --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/src/providers/config.ts @@ -0,0 +1,50 @@ +/* + * Copyright 2022 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 { Config } from '@backstage/config'; +import { GitlabProviderConfig } from '../lib/types'; + +function readGitlabConfig(id: string, config: Config): GitlabProviderConfig { + const group = config.getString('group'); + const host = config.getString('host'); + const branch = config.getOptionalString('branch') ?? 'master'; + const catalogFile = + config.getOptionalString('entityFilename') ?? 'catalog-info.yaml'; + + return { + id, + group, + branch, + host, + catalogFile, + }; +} + +export function readGitlabConfigs(config: Config): GitlabProviderConfig[] { + const configs: GitlabProviderConfig[] = []; + + const providerConfigs = config.getOptionalConfig('catalog.providers.gitlab'); + + if (!providerConfigs) { + return configs; + } + + for (const id of providerConfigs.keys()) { + configs.push(readGitlabConfig(id, providerConfigs.getConfig(id))); + } + + return configs; +} diff --git a/plugins/catalog-backend-module-gitlab/src/providers/index.ts b/plugins/catalog-backend-module-gitlab/src/providers/index.ts new file mode 100644 index 0000000000..e7cb00a73f --- /dev/null +++ b/plugins/catalog-backend-module-gitlab/src/providers/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 { GitlabDiscoveryEntityProvider } from './GitlabDiscoveryEntityProvider'; diff --git a/plugins/catalog-backend/src/ingestion/CatalogRules.ts b/plugins/catalog-backend/src/ingestion/CatalogRules.ts index 587a0bd7d5..72eae22b11 100644 --- a/plugins/catalog-backend/src/ingestion/CatalogRules.ts +++ b/plugins/catalog-backend/src/ingestion/CatalogRules.ts @@ -18,6 +18,7 @@ import { Config } from '@backstage/config'; import { Entity } from '@backstage/catalog-model'; import path from 'path'; import { LocationSpec } from '../api'; +import { ScmIntegrations } from '@backstage/integration'; /** * Rules to apply to catalog entities. @@ -119,6 +120,18 @@ export class DefaultCatalogRulesEnforcer implements CatalogRulesEnforcer { rules.push(...locationRules); } + if (config.has('catalog.providers')) { + const providersConf = config.getConfig('catalog.providers'); + const providerList = providersConf.keys(); + providerList.forEach(provider => { + if (provider === 'gitlab') { + rules.push( + ...getGitlabRules(config, providersConf.getConfig(provider)), + ); + } + }); + } + return new DefaultCatalogRulesEnforcer(rules); } @@ -187,3 +200,35 @@ function resolveTarget(type: string, target: string): string { return path.resolve(target); } + +function getGitlabRules(initialConfig: Config, config: Config): CatalogRule[] { + return config.keys().flatMap(id => { + const gitlabConf = config.getConfig(id); + if (!gitlabConf.has('rules')) { + return []; + } + + const integrations = ScmIntegrations.fromConfig(initialConfig).gitlab; + const gitlabHost = gitlabConf.getString('host'); + const integration = integrations.byHost(gitlabHost); + if (!integration) { + throw new Error( + `No gitlab integration found that matches host ${gitlabHost}`, + ); + } + + const type = `url`; + const branch = gitlabConf.getOptionalString('branch') ?? 'master'; + const entityFilename = + gitlabConf.getOptionalString('entityFilename') ?? 'catalog-info.yaml'; + + return gitlabConf.getConfigArray('rules').map(ruleConf => { + const repoName = ruleConf.getString('repository'); + const target = `${integration.config.baseUrl}/${id}/${repoName}/-/blob/${branch}/${entityFilename}`; + return { + allow: ruleConf.getStringArray('allow').map(kind => ({ kind })), + locations: [{ type, target }], + }; + }); + }); +} From 459efebf87bdce2ae17e269608b6af7c227169a0 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 08:48:49 +0200 Subject: [PATCH 277/550] Update api-report Signed-off-by: ivgo --- .../api-report.md | 21 ++++ .../src/providers/config.ts | 14 +++ yarn.lock | 100 ++++++++++++++++++ 3 files changed, 135 insertions(+) diff --git a/plugins/catalog-backend-module-gitlab/api-report.md b/plugins/catalog-backend-module-gitlab/api-report.md index 63e6fe7ccb..1009da8209 100644 --- a/plugins/catalog-backend-module-gitlab/api-report.md +++ b/plugins/catalog-backend-module-gitlab/api-report.md @@ -6,8 +6,29 @@ import { CatalogProcessor } from '@backstage/plugin-catalog-backend'; import { CatalogProcessorEmit } from '@backstage/plugin-catalog-backend'; import { Config } from '@backstage/config'; +import { EntityProvider } from '@backstage/plugin-catalog-backend'; +import { EntityProviderConnection } from '@backstage/plugin-catalog-backend'; import { LocationSpec } from '@backstage/plugin-catalog-backend'; import { Logger } from 'winston'; +import { TaskRunner } from '@backstage/backend-tasks'; + +// @public +export class GitlabDiscoveryEntityProvider implements EntityProvider { + // (undocumented) + connect(connection: EntityProviderConnection): Promise; + // (undocumented) + static fromConfig( + config: Config, + options: { + logger: Logger; + schedule: TaskRunner; + }, + ): GitlabDiscoveryEntityProvider[]; + // (undocumented) + getProviderName(): string; + // (undocumented) + refresh(logger: Logger): Promise; +} // @public export class GitLabDiscoveryProcessor implements CatalogProcessor { diff --git a/plugins/catalog-backend-module-gitlab/src/providers/config.ts b/plugins/catalog-backend-module-gitlab/src/providers/config.ts index 8af3d576a7..f7eb316997 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/config.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/config.ts @@ -17,6 +17,13 @@ import { Config } from '@backstage/config'; import { GitlabProviderConfig } from '../lib/types'; +/** + * Extracts the gitlab config from a config object + * + * @public + * + * @param config - The config object to extract from + */ function readGitlabConfig(id: string, config: Config): GitlabProviderConfig { const group = config.getString('group'); const host = config.getString('host'); @@ -33,6 +40,13 @@ function readGitlabConfig(id: string, config: Config): GitlabProviderConfig { }; } +/** + * Extracts the gitlab config from a config object array + * + * @public + * + * @param config - The config object to extract from + */ export function readGitlabConfigs(config: Config): GitlabProviderConfig[] { const configs: GitlabProviderConfig[] = []; diff --git a/yarn.lock b/yarn.lock index c7795b8004..fb4b8f867c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1465,6 +1465,78 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" +"@backstage/backend-common@^0.13.3": + version "0.13.5" + resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.5.tgz#9ff55e1da2a9cf65d0c4782cb360f9b6abd0754c" + integrity sha512-37kLw1BolfstantREuawbyRKXD+xKHUta3A63j0868JZPxRSCfiysBzF3uAorH/3WIh0p2lswutmunbVQFsXDA== + dependencies: + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/config-loader" "^1.1.1" + "@backstage/errors" "^1.0.0" + "@backstage/integration" "^1.2.0" + "@backstage/types" "^1.0.0" + "@google-cloud/storage" "^5.8.0" + "@keyv/redis" "^2.2.3" + "@manypkg/get-packages" "^1.1.3" + "@octokit/rest" "^18.5.3" + "@types/cors" "^2.8.6" + "@types/dockerode" "^3.3.0" + "@types/express" "^4.17.6" + "@types/luxon" "^2.0.4" + "@types/webpack-env" "^1.15.2" + archiver "^5.0.2" + aws-sdk "^2.840.0" + base64-stream "^1.0.0" + compression "^1.7.4" + concat-stream "^2.0.0" + cors "^2.8.5" + dockerode "^3.3.1" + express "^4.17.1" + express-promise-router "^4.1.0" + fs-extra "10.1.0" + git-url-parse "^11.6.0" + helmet "^5.0.2" + isomorphic-git "^1.8.0" + jose "^4.6.0" + keyv "^4.0.3" + keyv-memcache "^1.2.5" + knex "^1.0.2" + lodash "^4.17.21" + logform "^2.3.2" + luxon "^2.3.1" + minimatch "^5.0.0" + minimist "^1.2.5" + morgan "^1.10.0" + node-abort-controller "^3.0.1" + node-fetch "^2.6.7" + raw-body "^2.4.1" + selfsigned "^2.0.0" + stoppable "^1.1.0" + tar "^6.1.2" + unzipper "^0.10.11" + winston "^3.2.1" + yn "^4.0.0" + +"@backstage/backend-tasks@^0.3.1": + version "0.3.1" + resolved "https://registry.npmjs.org/@backstage/backend-tasks/-/backend-tasks-0.3.1.tgz#551ff2f5eb41ea1af21c166f957a24512f87909b" + integrity sha512-aCUJl2E0lrmIyzSLKP8kKSZVBA8Wb6cOiHVmoYVrOe9VOvPDx4DZtnvL2iDF+bKfuQlWsvKoAQOcBlgJfyeLeg== + dependencies: + "@backstage/backend-common" "^0.13.3" + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/luxon" "^2.0.4" + cron "^1.8.2" + knex "^1.0.2" + lodash "^4.17.21" + luxon "^2.0.2" + node-abort-controller "^3.0.1" + uuid "^8.0.0" + winston "^3.2.1" + zod "^3.9.5" + "@backstage/catalog-client@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" @@ -1487,6 +1559,27 @@ lodash "^4.17.21" uuid "^8.0.0" +"@backstage/config-loader@^1.1.1": + version "1.1.1" + resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" + integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== + dependencies: + "@backstage/cli-common" "^0.1.9" + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + "@types/json-schema" "^7.0.6" + ajv "^8.10.0" + chokidar "^3.5.2" + fs-extra "10.1.0" + json-schema "^0.4.0" + json-schema-merge-allof "^0.8.1" + json-schema-traverse "^1.0.0" + node-fetch "^2.6.7" + typescript-json-schema "^0.53.0" + yaml "^1.9.2" + yup "^0.32.9" + "@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": version "0.9.4" resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" @@ -10283,6 +10376,13 @@ crelt@^1.0.5: resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz#57c0d52af8c859e354bace1883eb2e1eb182bb94" integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== +cron@^1.8.2: + version "1.8.3" + resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" + integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== + dependencies: + luxon "^1.23.x" + cron@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/cron/-/cron-2.0.0.tgz#15c6bf37c1cebf6da1d7a688b9ba1c68338bfe6b" From 58927c37841f3024b1c66ec675018aff0f1a0527 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 09:18:40 +0200 Subject: [PATCH 278/550] Fix local dependency Signed-off-by: ivgo --- plugins/catalog-backend-module-gitlab/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index 74615e83fe..048ce85cb8 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -35,7 +35,7 @@ "dependencies": { "@backstage/backend-common": "^0.14.0-next.2", "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/backend-tasks": "^0.3.1", + "@backstage/backend-tasks": "^0.3.2-next.1", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/integration": "^1.2.1-next.2", From f96cdcb9f0b1f993ef72e8f46a7d3913589bb470 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 11:49:09 +0200 Subject: [PATCH 279/550] Fix typo and add more explanation in the changeset Signed-off-by: ivgo --- .changeset/lazy-zoos-move.md | 62 +++++++++++++++++++++++++++ docs/integrations/gitlab/discovery.md | 4 +- 2 files changed, 64 insertions(+), 2 deletions(-) diff --git a/.changeset/lazy-zoos-move.md b/.changeset/lazy-zoos-move.md index 1e94ec798f..4bd78cee1d 100644 --- a/.changeset/lazy-zoos-move.md +++ b/.changeset/lazy-zoos-move.md @@ -3,3 +3,65 @@ --- Add a new provider `GitlabDiscoveryEntityProvider` as replacement for `GitlabDiscoveryProcessor` + +In order to migrate from the `GitlabDiscoveryProcessor` you need to apply +the following changes: + +**Before:** + +```yaml +# app-config.yaml + +catalog: + locations: + - type: gitlab-discovery + target: https://company.gitlab.com/prefix/*/catalog-info.yaml +``` + +```ts +/* packages/backend/src/plugins/catalog.ts */ + +import { GitlabDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-gitlab'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors ... */ +builder.addProcessor( + GitLabDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), +); +``` + +**After:** + +```yaml +# app-config.yaml + +catalog: + providers: + gitlab: + yourProviderId: # identifies your dataset / provider independent of config changes + host: gitlab-host # Identifies one of the hosts set up in the integrations + branch: main # Optional. Uses `master` as default + group: example-group # Group and subgroup (if needed) to look for repositories + entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` + rules: # Optional. Uses the default rules if not present + - repository: example-repo + allow: [Component, System, Location, Template] +``` + +```ts +/* packages/backend/src/plugins/catalog.ts */ + +import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-gitlab'; + +const builder = await CatalogBuilder.create(env); +/** ... other processors and/or providers ... */ +builder.addEntityProvider( + ...GitlabDiscoveryEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), +); +``` diff --git a/docs/integrations/gitlab/discovery.md b/docs/integrations/gitlab/discovery.md index 986c2aec15..6383e70e64 100644 --- a/docs/integrations/gitlab/discovery.md +++ b/docs/integrations/gitlab/discovery.md @@ -24,7 +24,7 @@ catalog: branch: main # Optional. Uses `master` as default group: example-group # Group and subgroup (if needed) to look for repositories entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` - rules: + rules: # Optional. Uses the default rules if not present - repository: example-repo allow: [Component, System, Location, Template] ``` @@ -42,7 +42,7 @@ Once you've done that, you'll also need to add the segment below to `packages/ba ```ts /* packages/backend/src/plugins/catalog.ts */ -import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-aws'; +import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-gitlab'; const builder = await CatalogBuilder.create(env); /** ... other processors and/or providers ... */ From 90450c925b18a14705abf8545b60e3c3776c83a8 Mon Sep 17 00:00:00 2001 From: ivgo Date: Tue, 7 Jun 2022 17:34:23 +0200 Subject: [PATCH 280/550] Fix some typos & update yarn.lock after release Signed-off-by: ivgo --- .../catalog-backend-module-gitlab/config.d.ts | 2 - .../src/lib/client.ts | 9 +- .../GitlabDiscoveryEntityProvider.ts | 2 +- yarn.lock | 100 ------------------ 4 files changed, 5 insertions(+), 108 deletions(-) diff --git a/plugins/catalog-backend-module-gitlab/config.d.ts b/plugins/catalog-backend-module-gitlab/config.d.ts index 11c6830e63..5b0d42c81d 100644 --- a/plugins/catalog-backend-module-gitlab/config.d.ts +++ b/plugins/catalog-backend-module-gitlab/config.d.ts @@ -22,8 +22,6 @@ export interface Config { providers?: { /** * GitlabDiscoveryEntityProvider configuration - * - * Uses "default" as default id for the single config variant. */ gitlab?: Record< string, diff --git a/plugins/catalog-backend-module-gitlab/src/lib/client.ts b/plugins/catalog-backend-module-gitlab/src/lib/client.ts index 25384f3dd6..adf0a78e8f 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/client.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/client.ts @@ -64,12 +64,11 @@ export class GitLabClient { } /** - * Checks if the catalog file is present in the repository or not. + * General existence check. * - * @param projectPath The path to the project - * @param branch The branch used to injest entities to the catalog - * @param filePath The path to the catalog file - * @returns `true` if the file exists, `false` otherwise + * @param projectPath - The path to the project + * @param branch - The branch used to search + * @param filePath - The path to the file */ async hasFile( projectPath: string, diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts index 7a30aa83da..1ecf274c3b 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts @@ -39,7 +39,7 @@ type Result = { }; /** - * Extracts repositories out of an GitLab instance. + * Discovers entity definition files in the groups of a Gitlab instance. * @public */ export class GitlabDiscoveryEntityProvider implements EntityProvider { diff --git a/yarn.lock b/yarn.lock index fb4b8f867c..c7795b8004 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1465,78 +1465,6 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/backend-common@^0.13.3": - version "0.13.5" - resolved "https://registry.npmjs.org/@backstage/backend-common/-/backend-common-0.13.5.tgz#9ff55e1da2a9cf65d0c4782cb360f9b6abd0754c" - integrity sha512-37kLw1BolfstantREuawbyRKXD+xKHUta3A63j0868JZPxRSCfiysBzF3uAorH/3WIh0p2lswutmunbVQFsXDA== - dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/config-loader" "^1.1.1" - "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.2.0" - "@backstage/types" "^1.0.0" - "@google-cloud/storage" "^5.8.0" - "@keyv/redis" "^2.2.3" - "@manypkg/get-packages" "^1.1.3" - "@octokit/rest" "^18.5.3" - "@types/cors" "^2.8.6" - "@types/dockerode" "^3.3.0" - "@types/express" "^4.17.6" - "@types/luxon" "^2.0.4" - "@types/webpack-env" "^1.15.2" - archiver "^5.0.2" - aws-sdk "^2.840.0" - base64-stream "^1.0.0" - compression "^1.7.4" - concat-stream "^2.0.0" - cors "^2.8.5" - dockerode "^3.3.1" - express "^4.17.1" - express-promise-router "^4.1.0" - fs-extra "10.1.0" - git-url-parse "^11.6.0" - helmet "^5.0.2" - isomorphic-git "^1.8.0" - jose "^4.6.0" - keyv "^4.0.3" - keyv-memcache "^1.2.5" - knex "^1.0.2" - lodash "^4.17.21" - logform "^2.3.2" - luxon "^2.3.1" - minimatch "^5.0.0" - minimist "^1.2.5" - morgan "^1.10.0" - node-abort-controller "^3.0.1" - node-fetch "^2.6.7" - raw-body "^2.4.1" - selfsigned "^2.0.0" - stoppable "^1.1.0" - tar "^6.1.2" - unzipper "^0.10.11" - winston "^3.2.1" - yn "^4.0.0" - -"@backstage/backend-tasks@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@backstage/backend-tasks/-/backend-tasks-0.3.1.tgz#551ff2f5eb41ea1af21c166f957a24512f87909b" - integrity sha512-aCUJl2E0lrmIyzSLKP8kKSZVBA8Wb6cOiHVmoYVrOe9VOvPDx4DZtnvL2iDF+bKfuQlWsvKoAQOcBlgJfyeLeg== - dependencies: - "@backstage/backend-common" "^0.13.3" - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - "@types/luxon" "^2.0.4" - cron "^1.8.2" - knex "^1.0.2" - lodash "^4.17.21" - luxon "^2.0.2" - node-abort-controller "^3.0.1" - uuid "^8.0.0" - winston "^3.2.1" - zod "^3.9.5" - "@backstage/catalog-client@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" @@ -1559,27 +1487,6 @@ lodash "^4.17.21" uuid "^8.0.0" -"@backstage/config-loader@^1.1.1": - version "1.1.1" - resolved "https://registry.npmjs.org/@backstage/config-loader/-/config-loader-1.1.1.tgz#552bbf331acdee19247f158e62b20649cf07f427" - integrity sha512-LYmX+BPMn74Pyi/tDiELNNDCyKkJIsQL/PKbNw15CEd6LDJI5jOXY9pMxBPlbpg1fYyA46AeF0Yu6V5s/GXa7Q== - dependencies: - "@backstage/cli-common" "^0.1.9" - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - "@types/json-schema" "^7.0.6" - ajv "^8.10.0" - chokidar "^3.5.2" - fs-extra "10.1.0" - json-schema "^0.4.0" - json-schema-merge-allof "^0.8.1" - json-schema-traverse "^1.0.0" - node-fetch "^2.6.7" - typescript-json-schema "^0.53.0" - yaml "^1.9.2" - yup "^0.32.9" - "@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": version "0.9.4" resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" @@ -10376,13 +10283,6 @@ crelt@^1.0.5: resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz#57c0d52af8c859e354bace1883eb2e1eb182bb94" integrity sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA== -cron@^1.8.2: - version "1.8.3" - resolved "https://registry.npmjs.org/cron/-/cron-1.8.3.tgz#2a61d7b15848716885834ec56ac072f4b9744ebd" - integrity sha512-JYR/QZFklJCIPndBLfd/2nU1nSlCMrUdtQ2mGLXSVM/qqqEK7DOrFR0gsEiyeqs0PdWrs0ve1ggH4V7XksDwXg== - dependencies: - luxon "^1.23.x" - cron@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/cron/-/cron-2.0.0.tgz#15c6bf37c1cebf6da1d7a688b9ba1c68338bfe6b" From 6424c0ad6fd7be5af38af30fa9680fbbfe54d58d Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 14:51:07 +0200 Subject: [PATCH 281/550] chore: give alternative to deprecated projectId Signed-off-by: djamaile --- .../scaffolder/actions/builtin/publish/gitlabMergeRequest.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index c5dd41f807..8c2e9efeb2 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -185,7 +185,7 @@ export const createPublishGitlabMergeRequestAction = (options: { ).then((mergeRequest: { web_url: string }) => { return mergeRequest.web_url; }); - /** @deprecated Use projectPath instead */ + /** @deprecated */ ctx.output('projectid', projectPath); ctx.output('projectPath', projectPath); ctx.output('mergeRequestUrl', mergeRequestUrl); From 6b1ed2292d4d01fcb13a99faccc522de1be370bc Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 9 Jun 2022 14:50:01 +0200 Subject: [PATCH 282/550] Remove rules & update some tsc errors Signed-off-by: ivgo --- .changeset/lazy-zoos-move.md | 3 -- .changeset/perfect-mangos-allow.md | 5 --- docs/integrations/gitlab/discovery.md | 3 -- .../src/lib/types.ts | 2 +- .../GitlabDiscoveryEntityProvider.ts | 2 +- .../src/ingestion/CatalogRules.ts | 45 ------------------- 6 files changed, 2 insertions(+), 58 deletions(-) delete mode 100644 .changeset/perfect-mangos-allow.md diff --git a/.changeset/lazy-zoos-move.md b/.changeset/lazy-zoos-move.md index 4bd78cee1d..69bd517438 100644 --- a/.changeset/lazy-zoos-move.md +++ b/.changeset/lazy-zoos-move.md @@ -43,9 +43,6 @@ catalog: branch: main # Optional. Uses `master` as default group: example-group # Group and subgroup (if needed) to look for repositories entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` - rules: # Optional. Uses the default rules if not present - - repository: example-repo - allow: [Component, System, Location, Template] ``` ```ts diff --git a/.changeset/perfect-mangos-allow.md b/.changeset/perfect-mangos-allow.md deleted file mode 100644 index 0fe75e009c..0000000000 --- a/.changeset/perfect-mangos-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend': patch ---- - -Add support to custom rules for `GitlabDiscoveryEntityProvider` diff --git a/docs/integrations/gitlab/discovery.md b/docs/integrations/gitlab/discovery.md index 6383e70e64..ea151e9415 100644 --- a/docs/integrations/gitlab/discovery.md +++ b/docs/integrations/gitlab/discovery.md @@ -24,9 +24,6 @@ catalog: branch: main # Optional. Uses `master` as default group: example-group # Group and subgroup (if needed) to look for repositories entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` - rules: # Optional. Uses the default rules if not present - - repository: example-repo - allow: [Component, System, Location, Template] ``` As this provider is not one of the default providers, you will first need to install diff --git a/plugins/catalog-backend-module-gitlab/src/lib/types.ts b/plugins/catalog-backend-module-gitlab/src/lib/types.ts index fa2350487f..69de9d28c7 100644 --- a/plugins/catalog-backend-module-gitlab/src/lib/types.ts +++ b/plugins/catalog-backend-module-gitlab/src/lib/types.ts @@ -26,7 +26,7 @@ export type GitLabProject = { archived: boolean; last_activity_at: string; web_url: string; - path_with_namespace: string; + path_with_namespace?: string; }; export type GitlabProviderConfig = { diff --git a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts index 1ecf274c3b..36c3ee90be 100644 --- a/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts +++ b/plugins/catalog-backend-module-gitlab/src/providers/GitlabDiscoveryEntityProvider.ts @@ -160,7 +160,7 @@ export class GitlabDiscoveryEntityProvider implements EntityProvider { const project_branch = project.default_branch ?? this.config.branch; const projectHasFile: boolean = await client.hasFile( - project.path_with_namespace, + project.path_with_namespace ?? '', project_branch, this.config.catalogFile, ); diff --git a/plugins/catalog-backend/src/ingestion/CatalogRules.ts b/plugins/catalog-backend/src/ingestion/CatalogRules.ts index 72eae22b11..587a0bd7d5 100644 --- a/plugins/catalog-backend/src/ingestion/CatalogRules.ts +++ b/plugins/catalog-backend/src/ingestion/CatalogRules.ts @@ -18,7 +18,6 @@ import { Config } from '@backstage/config'; import { Entity } from '@backstage/catalog-model'; import path from 'path'; import { LocationSpec } from '../api'; -import { ScmIntegrations } from '@backstage/integration'; /** * Rules to apply to catalog entities. @@ -120,18 +119,6 @@ export class DefaultCatalogRulesEnforcer implements CatalogRulesEnforcer { rules.push(...locationRules); } - if (config.has('catalog.providers')) { - const providersConf = config.getConfig('catalog.providers'); - const providerList = providersConf.keys(); - providerList.forEach(provider => { - if (provider === 'gitlab') { - rules.push( - ...getGitlabRules(config, providersConf.getConfig(provider)), - ); - } - }); - } - return new DefaultCatalogRulesEnforcer(rules); } @@ -200,35 +187,3 @@ function resolveTarget(type: string, target: string): string { return path.resolve(target); } - -function getGitlabRules(initialConfig: Config, config: Config): CatalogRule[] { - return config.keys().flatMap(id => { - const gitlabConf = config.getConfig(id); - if (!gitlabConf.has('rules')) { - return []; - } - - const integrations = ScmIntegrations.fromConfig(initialConfig).gitlab; - const gitlabHost = gitlabConf.getString('host'); - const integration = integrations.byHost(gitlabHost); - if (!integration) { - throw new Error( - `No gitlab integration found that matches host ${gitlabHost}`, - ); - } - - const type = `url`; - const branch = gitlabConf.getOptionalString('branch') ?? 'master'; - const entityFilename = - gitlabConf.getOptionalString('entityFilename') ?? 'catalog-info.yaml'; - - return gitlabConf.getConfigArray('rules').map(ruleConf => { - const repoName = ruleConf.getString('repository'); - const target = `${integration.config.baseUrl}/${id}/${repoName}/-/blob/${branch}/${entityFilename}`; - return { - allow: ruleConf.getStringArray('allow').map(kind => ({ kind })), - locations: [{ type, target }], - }; - }); - }); -} From f780859eb0691fc254e8547eb68cddb51ceb7dbb Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 9 Jun 2022 16:12:16 +0200 Subject: [PATCH 283/550] feat: added the ability to run namespaced templates Signed-off-by: blam --- plugins/scaffolder-backend/src/service/helpers.ts | 5 ----- plugins/scaffolder/src/components/Router.tsx | 14 ++++++++++++-- .../src/components/TaskPage/TaskPage.tsx | 4 ++-- .../src/components/TemplateCard/TemplateCard.tsx | 10 ++++++++-- .../src/components/TemplatePage/TemplatePage.tsx | 15 ++++++++------- .../scaffolder/src/next/Router/Router.test.tsx | 6 ++++-- .../TemplateCard/TemplateCard.test.tsx | 2 +- .../TemplateCard/TemplateCard.tsx | 9 +++++++-- plugins/scaffolder/src/routes.ts | 8 +++++++- 9 files changed, 49 insertions(+), 24 deletions(-) diff --git a/plugins/scaffolder-backend/src/service/helpers.ts b/plugins/scaffolder-backend/src/service/helpers.ts index 23200d6aac..13197861a8 100644 --- a/plugins/scaffolder-backend/src/service/helpers.ts +++ b/plugins/scaffolder-backend/src/service/helpers.ts @@ -95,11 +95,6 @@ export async function findTemplate(options: { }): Promise { const { entityRef, token, catalogApi } = options; - if (entityRef.namespace.toLocaleLowerCase('en-US') !== DEFAULT_NAMESPACE) { - throw new InputError( - `Invalid namespace, only '${DEFAULT_NAMESPACE}' namespace is supported`, - ); - } if (entityRef.kind.toLocaleLowerCase('en-US') !== 'template') { throw new InputError(`Invalid kind, only 'Template' kind is supported`); } diff --git a/plugins/scaffolder/src/components/Router.tsx b/plugins/scaffolder/src/components/Router.tsx index 6beaa3419a..172a21234a 100644 --- a/plugins/scaffolder/src/components/Router.tsx +++ b/plugins/scaffolder/src/components/Router.tsx @@ -15,7 +15,7 @@ */ import React, { ComponentType } from 'react'; -import { Routes, Route, useOutlet, Navigate } from 'react-router'; +import { Routes, Route, useOutlet, Navigate, useParams } from 'react-router'; import { Entity } from '@backstage/catalog-model'; import { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common'; import { ScaffolderPage } from './ScaffolderPage'; @@ -31,10 +31,11 @@ import { FIELD_EXTENSION_KEY, DEFAULT_SCAFFOLDER_FIELD_EXTENSIONS, } from '../extensions'; -import { useElementFilter } from '@backstage/core-plugin-api'; +import { useElementFilter, useRouteRef } from '@backstage/core-plugin-api'; import { actionsRouteRef, editRouteRef, + legacySelectedTemplateRouteRef, scaffolderListTaskRouteRef, scaffolderTaskRouteRef, selectedTemplateRouteRef, @@ -101,6 +102,12 @@ export const Router = (props: RouterProps) => { ), ]; + const RedirectingComponent = () => { + const { templateName } = useParams(); + const newLink = useRouteRef(selectedTemplateRouteRef); + return ; + }; + return ( { /> } /> + + + { const formData = taskStream.task!.spec.parameters; - const { name } = parseEntityRef( + const { name, namespace } = parseEntityRef( taskStream.task!.spec.templateInfo?.entityRef, ); navigate( - `${templateRoute({ templateName: name })}?${qs.stringify({ + `${templateRoute({ templateName: name, namespace })}?${qs.stringify({ formData: JSON.stringify(formData), })}`, ); diff --git a/plugins/scaffolder/src/components/TemplateCard/TemplateCard.tsx b/plugins/scaffolder/src/components/TemplateCard/TemplateCard.tsx index 6f7e375cce..df46a119f2 100644 --- a/plugins/scaffolder/src/components/TemplateCard/TemplateCard.tsx +++ b/plugins/scaffolder/src/components/TemplateCard/TemplateCard.tsx @@ -13,7 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Entity, RELATION_OWNED_BY } from '@backstage/catalog-model'; +import { + Entity, + parseEntityRef, + RELATION_OWNED_BY, + stringifyEntityRef, +} from '@backstage/catalog-model'; import { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common'; import { ScmIntegrationIcon, @@ -162,7 +167,8 @@ export const TemplateCard = ({ template, deprecated }: TemplateCardProps) => { : 'other'; const theme = backstageTheme.getPageTheme({ themeId }); const classes = useStyles({ backgroundImage: theme.backgroundImage }); - const href = templateRoute({ templateName: templateProps.name }); + const { name, namespace } = parseEntityRef(stringifyEntityRef(template)); + const href = templateRoute({ templateName: name, namespace }); const scmIntegrationsApi = useApi(scmIntegrationsApiRef); const sourceLocation = getEntitySourceLocation(template, scmIntegrationsApi); diff --git a/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx b/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx index 22f995eae4..f694688801 100644 --- a/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx +++ b/plugins/scaffolder/src/components/TemplatePage/TemplatePage.tsx @@ -54,11 +54,16 @@ export const TemplatePage = ({ const secretsContext = useContext(SecretsContext); const errorApi = useApi(errorApiRef); const scaffolderApi = useApi(scaffolderApiRef); - const { templateName } = useParams(); + const { templateName, namespace } = useParams(); + const templateRef = stringifyEntityRef({ + name: templateName, + kind: 'template', + namespace, + }); const navigate = useNavigate(); const scaffolderTaskRoute = useRouteRef(scaffolderTaskRouteRef); const rootRoute = useRouteRef(rootRouteRef); - const { schema, loading, error } = useTemplateParameterSchema(templateName); + const { schema, loading, error } = useTemplateParameterSchema(templateRef); const [formState, setFormState] = useState>(() => { const query = qs.parse(window.location.search, { ignoreQueryPrefix: true, @@ -78,11 +83,7 @@ export const TemplatePage = ({ const handleCreate = async () => { const { taskId } = await scaffolderApi.scaffold({ - templateRef: stringifyEntityRef({ - name: templateName, - kind: 'template', - namespace: 'default', - }), + templateRef, values: formState, secrets: secretsContext?.secrets, }); diff --git a/plugins/scaffolder/src/next/Router/Router.test.tsx b/plugins/scaffolder/src/next/Router/Router.test.tsx index 5094c786e0..1aaca1a94b 100644 --- a/plugins/scaffolder/src/next/Router/Router.test.tsx +++ b/plugins/scaffolder/src/next/Router/Router.test.tsx @@ -47,7 +47,9 @@ describe('Router', () => { describe('/templates/:templateName', () => { it('should render the TemplateWizard page', async () => { - await renderInTestApp(, { routeEntries: ['/templates/foo'] }); + await renderInTestApp(, { + routeEntries: ['/templates/default/foo'], + }); expect(TemplateWizardPage).toHaveBeenCalled(); }); @@ -67,7 +69,7 @@ describe('Router', () => { , - { routeEntries: ['/templates/foo'] }, + { routeEntries: ['/templates/default/foo'] }, ); const mock = TemplateWizardPage as jest.Mock; diff --git a/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.test.tsx b/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.test.tsx index 45f4dc6317..44e3a0bbbf 100644 --- a/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.test.tsx +++ b/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.test.tsx @@ -233,7 +233,7 @@ describe('TemplateCard', () => { expect(getByRole('button', { name: 'Choose' })).toBeInTheDocument(); expect(getByRole('button', { name: 'Choose' })).toHaveAttribute( 'href', - '/templates/bob', + '/templates/default/bob', ); }); }); diff --git a/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.tsx b/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.tsx index 0e67ecd82a..874c20a9ac 100644 --- a/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.tsx +++ b/plugins/scaffolder/src/next/TemplateListPage/TemplateCard/TemplateCard.tsx @@ -26,7 +26,11 @@ import { } from '@material-ui/core'; import { CardHeader } from './CardHeader'; import { MarkdownContent, UserIcon, Button } from '@backstage/core-components'; -import { RELATION_OWNED_BY } from '@backstage/catalog-model'; +import { + parseEntityRef, + RELATION_OWNED_BY, + stringifyEntityRef, +} from '@backstage/catalog-model'; import { EntityRefLinks, getEntityRelations, @@ -91,7 +95,8 @@ export const TemplateCard = (props: TemplateCardProps) => { const styles = useStyles(); const ownedByRelations = getEntityRelations(template, RELATION_OWNED_BY); const templateRoute = useRouteRef(selectedTemplateRouteRef); - const href = templateRoute({ templateName: template.metadata.name }); + const { name, namespace } = parseEntityRef(stringifyEntityRef(template)); + const href = templateRoute({ templateName: name, namespace: namespace }); return ( diff --git a/plugins/scaffolder/src/routes.ts b/plugins/scaffolder/src/routes.ts index be0d69135a..dbc54bb22c 100644 --- a/plugins/scaffolder/src/routes.ts +++ b/plugins/scaffolder/src/routes.ts @@ -28,10 +28,16 @@ export const rootRouteRef = createRouteRef({ id: 'scaffolder', }); +export const legacySelectedTemplateRouteRef = createSubRouteRef({ + id: 'scaffolder/legacy/selected-template', + parent: rootRouteRef, + path: '/templates/:templateName', +}); + export const selectedTemplateRouteRef = createSubRouteRef({ id: 'scaffolder/selected-template', parent: rootRouteRef, - path: '/templates/:templateName', + path: '/templates/:namespace/:templateName', }); export const scaffolderTaskRouteRef = createSubRouteRef({ From f93af969cd9c04dac54061cc1bc12e2ebeb488db Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 9 Jun 2022 16:15:13 +0200 Subject: [PATCH 284/550] chore: tidying up a little bit and added changeset Signed-off-by: blam --- .changeset/tender-carpets-cry.md | 6 ++++++ plugins/scaffolder/src/components/Router.tsx | 14 ++++++++++++-- plugins/scaffolder/src/routes.ts | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 .changeset/tender-carpets-cry.md diff --git a/.changeset/tender-carpets-cry.md b/.changeset/tender-carpets-cry.md new file mode 100644 index 0000000000..a3d275fe33 --- /dev/null +++ b/.changeset/tender-carpets-cry.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-scaffolder': minor +'@backstage/plugin-scaffolder-backend': minor +--- + +Added the ability to support running of templates that are not in the `default` namespace diff --git a/plugins/scaffolder/src/components/Router.tsx b/plugins/scaffolder/src/components/Router.tsx index 172a21234a..60dc5ed474 100644 --- a/plugins/scaffolder/src/components/Router.tsx +++ b/plugins/scaffolder/src/components/Router.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import React, { ComponentType } from 'react'; +import React, { ComponentType, useEffect } from 'react'; import { Routes, Route, useOutlet, Navigate, useParams } from 'react-router'; import { Entity } from '@backstage/catalog-model'; import { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common'; @@ -101,10 +101,20 @@ export const Router = (props: RouterProps) => { ), ), ]; - + /** + * This component can be deleted once the older routes have been deprecated. + */ const RedirectingComponent = () => { const { templateName } = useParams(); const newLink = useRouteRef(selectedTemplateRouteRef); + // eslint-disable-next-line no-console + useEffect( + () => + console.warn( + 'The route /template/:templateName is deprecated, please use the new /template/:namespace/:templateName route instead', + ), + [], + ); return ; }; diff --git a/plugins/scaffolder/src/routes.ts b/plugins/scaffolder/src/routes.ts index dbc54bb22c..8d6875e351 100644 --- a/plugins/scaffolder/src/routes.ts +++ b/plugins/scaffolder/src/routes.ts @@ -28,6 +28,9 @@ export const rootRouteRef = createRouteRef({ id: 'scaffolder', }); +/** + * @deprecated This is the old template route, can be deleted before next major release + */ export const legacySelectedTemplateRouteRef = createSubRouteRef({ id: 'scaffolder/legacy/selected-template', parent: rootRouteRef, From 0a8b21216535dd0a7e42c1dca6277c81ec387f44 Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 9 Jun 2022 16:22:08 +0200 Subject: [PATCH 285/550] chore: wrong line Signed-off-by: blam --- plugins/scaffolder/src/components/Router.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/scaffolder/src/components/Router.tsx b/plugins/scaffolder/src/components/Router.tsx index 60dc5ed474..ac35c4dcd7 100644 --- a/plugins/scaffolder/src/components/Router.tsx +++ b/plugins/scaffolder/src/components/Router.tsx @@ -107,9 +107,9 @@ export const Router = (props: RouterProps) => { const RedirectingComponent = () => { const { templateName } = useParams(); const newLink = useRouteRef(selectedTemplateRouteRef); - // eslint-disable-next-line no-console useEffect( () => + // eslint-disable-next-line no-console console.warn( 'The route /template/:templateName is deprecated, please use the new /template/:namespace/:templateName route instead', ), From 216172b0153120ad67c0e03c3b1c7fea39177f66 Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 9 Jun 2022 16:41:54 +0200 Subject: [PATCH 286/550] chore: fix typescript error Signed-off-by: blam --- plugins/scaffolder-backend/src/service/helpers.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/scaffolder-backend/src/service/helpers.ts b/plugins/scaffolder-backend/src/service/helpers.ts index 13197861a8..3412fec2d3 100644 --- a/plugins/scaffolder-backend/src/service/helpers.ts +++ b/plugins/scaffolder-backend/src/service/helpers.ts @@ -21,7 +21,6 @@ import { parseLocationRef, ANNOTATION_SOURCE_LOCATION, CompoundEntityRef, - DEFAULT_NAMESPACE, stringifyEntityRef, } from '@backstage/catalog-model'; import { Config } from '@backstage/config'; From 0701b2d71d7e7d9e12f04885121fb992461a1f93 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 9 Jun 2022 17:19:24 +0200 Subject: [PATCH 287/550] changesets: exit prerelease Signed-off-by: Patrik Oldsberg --- .changeset/pre.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index cb5047cf20..1fce147888 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -1,5 +1,5 @@ { - "mode": "pre", + "mode": "exit", "tag": "next", "initialVersions": { "example-app": "0.2.71", From a035463bb87b47a07a5965a821545842586e7180 Mon Sep 17 00:00:00 2001 From: Christopher Klewin Date: Thu, 9 Jun 2022 13:50:31 -0400 Subject: [PATCH 288/550] Format ADOPTERS.md Signed-off-by: Christopher Klewin --- ADOPTERS.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index f78ffb3a2c..6dc930d6fd 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -135,7 +135,7 @@ _If you're using Backstage in your organization, please try to add your company | [Laybuy](https://www.laybuy.com) | [Chris Simmons](https://github.com/contrarianchris) | Backstage is the heart of Laybuy’s new centralised Development Platform, bringing disparate development tools and experiences into a single easy-to-use portal. It simplifies software and API discovery, project scaffolding, and technical documentation, enabling us to embrace golden path development and automate software standards. | | [Sendinblue](https://engineering.sendinblue.com/) | [Tanguy Antoine](mailto:antoine.tanguy@sendinblue.com) | Helps us drive the change at scale. Puts light on services, resources, and dependencies. One tool that rules them all through plugins we created for that purpose. We are aiming to put Backstage at the center of every developer's work (Actionable items, Debugging, Monitoring, Provisioning, etc...) to improve their happiness | | [SafetyCulture](https://safetyculture.com/) | [@R-cen](https://github.com/R-cen), [@lachlancooper](https://github.com/lachlancooper), [@hkf57](https://github.com/hkf57) | Internal developer portal to provide a centralized place for engineers to see an overview of their team's services and information related to the service from other systems. Initially focused on the software catalog, techdocs and search. | -| [Sana Life Science](https://sanalifescience.com) | [Joe Hillyard](mailto:joe@sanalifescience.com) | API Catalog, Tools Management & Control Hub | +| [Sana Life Science](https://sanalifescience.com) | [Joe Hillyard](mailto:joe@sanalifescience.com) | API Catalog, Tools Management & Control Hub | | [Ndustrial](https://ndustrial.io) | [Jonathan Skubic](mailto:jonathan@ndustrial.io) | Software Project Catalog | | [TUI Musement](https://www.musement.com/uk/) | [Simone Fumagalli](mailto:simone.fumagalli@musement.com) | We are importing our catalog into it to keep it under control. The next step is start using templates | | [Kambi AB](https://www.kambi.com) | [Martin Norum](mailto:martin.norum@kambi.com) | We want to kick ass at speed, so we're currently building up a catalog of our existing software, and looking into how Backstage can support us in our journey towards autonomous product teams. Both to improve speed to market and operational awareness. | @@ -147,14 +147,14 @@ _If you're using Backstage in your organization, please try to add your company | [Yatra.com](https://www.yatra.com) | [Matiur Rahman Maitur](mailto:arifrahman4u@gmail.com) | Easy to find out Project details, ownership, dependent services, Documentation, it is very useful for developer. | | [Yotpo](https://www.yotpo.com) | [Liran Yogev](mailto:lyogev@yotpo.com) | Services exploration, documentation and project generator | | [Mainsail Industries](https://www.mainsailindustries.com) | [Brad Sollar](mailto:brad@mainsailindustries.com) | Internal tool management and docs | -| [Prisma](https://prismamp.com) | [Sebastian Gravina](mailto:sgravina@prismamp.com) | Is part of our IDP | -| [Syndetic](https://syndetic.io) | [John Feminella](mailto:robots+swag@syndetic.io) | We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. | +| [Prisma](https://prismamp.com) | [Sebastian Gravina](mailto:sgravina@prismamp.com) | Is part of our IDP | +| [Syndetic](https://syndetic.io) | [John Feminella](mailto:robots+swag@syndetic.io) | We're working with multiple F100 clients for digital transformation and Backstage is a key part of our landing and acceleration strategy. | | [Imagine Learning](https://www.imaginelearning.com/en/us) | [Jared Stehler](mailto:jared.stehler@imaginelearning.com) | Software catalog, product dependency visualization | | [Alef Education](https://www.alefeducation.com) | [Belal Juma](mailto:belal.juma@alefeducation.com) | We use backstage as a Service Catalog and rely on the TechDocs feature | | [Zego](https://www.zego.com) | [Sean Kenny](mailto:sean.kenny@zego.com) | Single pane of glass for organisational and operational information for all services across our systems. | | [Absa Group Limited](https://www.absa.africa/absaafrica/) | [Chris Kieser](mailto:chris.kieser@absa.africa) | Developer portal for all development needs - security, AWS, k8s, build and deployment pipelines and more | | [Nutrien Ag Solutions](https://www.nutrienagsolutions.com.au) | [Jan Quijano](mailto:jan.quijano@nutrien.com.au) | Software Project Catalog | -| [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. -| [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. -| [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. -| [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. +| [Lendingkart](https://www.lendingkart.com/) | [Dinesh Rajpoot](mailto:dinesh.rajpoot@lendingkart.com) | Service catalog, Software templates to enforce best practices and tech insights to track mandates & migrations. | +| [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. | +| [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. | +| [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. | From fd9f3694cfdb2831039f89d482392f2752715aae Mon Sep 17 00:00:00 2001 From: Christopher Klewin Date: Thu, 9 Jun 2022 14:02:18 -0400 Subject: [PATCH 289/550] Add SANS Institute to adopters Signed-off-by: Christopher Klewin --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 6dc930d6fd..755c4b0aa2 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -158,3 +158,4 @@ _If you're using Backstage in your organization, please try to add your company | [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. | | [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. | | [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. | +| [SANS Institute](https://www.sans.org) | [Christopher Klewin](mailto:cklewin@sans.org) | Developer portal for centralized visibility, reporting, and tooling across multiple organizations. | From 5179b8d80516604175e638e57f2feacdef1b4db6 Mon Sep 17 00:00:00 2001 From: djamaile Date: Thu, 9 Jun 2022 22:48:11 +0200 Subject: [PATCH 290/550] chore: add warning to notify user that projectid is deprecated Signed-off-by: djamaile --- .../actions/builtin/publish/gitlabMergeRequest.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts index 8c2e9efeb2..f717a7a0c6 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/publish/gitlabMergeRequest.ts @@ -111,6 +111,12 @@ export const createPublishGitlabMergeRequestAction = (options: { const { host, owner, repo } = parseRepoUrl(repoUrl, integrations); const projectPath = `${owner}/${repo}`; + if (ctx.input.projectid) { + const deprecationWarning = `Property "projectid" is deprecated and no longer to needed to create a MR`; + ctx.logger.warn(deprecationWarning); + console.warn(deprecationWarning); + } + const integrationConfig = integrations.gitlab.byHost(host); const destinationBranch = ctx.input.branchName; From 6f475edfb6b97747f9a54efe91a4333b0c10698f Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 9 Jun 2022 15:41:37 -0700 Subject: [PATCH 291/550] fix: address PR review comments from @freben Signed-off-by: Isaiah Thiessen --- app-config.yaml | 2 +- plugins/dynatrace/config.d.ts | 2 +- plugins/dynatrace/package.json | 10 ++++++---- plugins/dynatrace/src/api/DynatraceClient.ts | 6 ++++-- .../components/DynatraceTab/DynatraceTab.tsx | 8 +++++--- plugins/dynatrace/src/plugin.ts | 8 +++----- plugins/dynatrace/src/routes.ts | 20 ------------------- yarn.lock | 7 ------- 8 files changed, 20 insertions(+), 43 deletions(-) delete mode 100644 plugins/dynatrace/src/routes.ts diff --git a/app-config.yaml b/app-config.yaml index d95553f12d..5919deb1ee 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -137,7 +137,7 @@ techdocs: type: 'local' # Alternatives - 'googleGcs' or 'awsS3' or 'azureBlobStorage' or 'openStackSwift'. Read documentation for using alternatives. dynatrace: - baseUrl: https://your-dynatrace-instance-here.dynatrace.com + baseUrl: https://your.dynatrace.instance.com sentry: organization: my-company diff --git a/plugins/dynatrace/config.d.ts b/plugins/dynatrace/config.d.ts index 2b9573e88b..b06d0c7362 100644 --- a/plugins/dynatrace/config.d.ts +++ b/plugins/dynatrace/config.d.ts @@ -23,6 +23,6 @@ export interface Config { * base url for links * @visibility frontend */ - baseUrl?: string; + baseUrl: string; }; } diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index c9c2180a53..267db810ce 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -43,14 +43,16 @@ "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", - "@testing-library/user-event": "^13.1.8", + "@testing-library/user-event": "^14.0.0", "@types/jest": "*", "@types/node": "*", "cross-fetch": "^3.1.5", "express": "^4.18.1", - "msw": "^0.35.0" + "msw": "^0.42.0" }, "files": [ - "dist" - ] + "dist", + "config.d.ts" + ], + "configSchema": "config.d.ts" } diff --git a/plugins/dynatrace/src/api/DynatraceClient.ts b/plugins/dynatrace/src/api/DynatraceClient.ts index 015ad4bc44..27476ddbac 100644 --- a/plugins/dynatrace/src/api/DynatraceClient.ts +++ b/plugins/dynatrace/src/api/DynatraceClient.ts @@ -47,14 +47,16 @@ export class DynatraceClient implements DynatraceApi { if (response.status === 200) { return (await response.json()) as T; } - return undefined; + throw new Error( + `Dynatrace API call failed: ${response.status}:${response.statusText}`, + ); } async getDynatraceProblems( dynatraceEntityId: string, ): Promise { if (!dynatraceEntityId) { - return undefined; + throw new Error('Dynatrace entity ID is required'); } return this.callApi('problems', { diff --git a/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx b/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx index 8068ad7ad9..c284eaba0f 100644 --- a/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx +++ b/plugins/dynatrace/src/components/DynatraceTab/DynatraceTab.tsx @@ -29,12 +29,14 @@ import { DYNATRACE_ID_ANNOTATION } from '../../constants'; export const DynatraceTab = () => { const { entity } = useEntity(); - const dynatraceEntityId: string = - entity?.metadata.annotations?.[DYNATRACE_ID_ANNOTATION] ?? ''; if (!isDynatraceAvailable(entity)) { return ; } + + const dynatraceEntityId: string = + entity?.metadata.annotations?.[DYNATRACE_ID_ANNOTATION]!; + return ( @@ -45,7 +47,7 @@ export const DynatraceTab = () => { - + diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts index 7ba3bef3a1..2c3fa0e936 100644 --- a/plugins/dynatrace/src/plugin.ts +++ b/plugins/dynatrace/src/plugin.ts @@ -25,13 +25,9 @@ import { import { Entity } from '@backstage/catalog-model'; import { DYNATRACE_ID_ANNOTATION } from './constants'; -import { rootRouteRef } from './routes'; - +// @public export const dynatracePlugin = createPlugin({ id: 'dynatrace', - routes: { - root: rootRouteRef, - }, apis: [ createApiFactory({ api: dynatraceApiRef, @@ -48,9 +44,11 @@ export const dynatracePlugin = createPlugin({ ], }); +// @public export const isDynatraceAvailable = (entity: Entity) => Boolean(entity.metadata.annotations?.[DYNATRACE_ID_ANNOTATION]); +// @public export const DynatraceTab = dynatracePlugin.provide( createRoutableExtension({ name: 'DynatraceTab', diff --git a/plugins/dynatrace/src/routes.ts b/plugins/dynatrace/src/routes.ts deleted file mode 100644 index 73f7b573b7..0000000000 --- a/plugins/dynatrace/src/routes.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2022 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 { createRouteRef } from '@backstage/core-plugin-api'; - -export const rootRouteRef = createRouteRef({ - id: 'dynatrace', -}); diff --git a/yarn.lock b/yarn.lock index 8246a73ebb..630140b98c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5639,13 +5639,6 @@ "@testing-library/dom" "^8.0.0" "@types/react-dom" "<18.0.0" -"@testing-library/user-event@^13.1.8": - version "13.5.0" - resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz#69d77007f1e124d55314a2b73fd204b333b13295" - integrity sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg== - dependencies: - "@babel/runtime" "^7.12.5" - "@testing-library/user-event@^14.0.0": version "14.2.0" resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.2.0.tgz#8293560f8f80a00383d6c755ec3e0b918acb1683" From 65e7a42701116fc28be38fda71b4129cbba43b55 Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 9 Jun 2022 15:57:44 -0700 Subject: [PATCH 292/550] fix: revert removing routeRef Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/src/plugin.ts | 8 +++++--- plugins/dynatrace/src/routes.ts | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 plugins/dynatrace/src/routes.ts diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts index 2c3fa0e936..a9335bcb52 100644 --- a/plugins/dynatrace/src/plugin.ts +++ b/plugins/dynatrace/src/plugin.ts @@ -25,7 +25,9 @@ import { import { Entity } from '@backstage/catalog-model'; import { DYNATRACE_ID_ANNOTATION } from './constants'; -// @public +import { rootRouteRef } from './routes'; + +// @public (undocumented) export const dynatracePlugin = createPlugin({ id: 'dynatrace', apis: [ @@ -44,11 +46,11 @@ export const dynatracePlugin = createPlugin({ ], }); -// @public +// @public (undocumented) export const isDynatraceAvailable = (entity: Entity) => Boolean(entity.metadata.annotations?.[DYNATRACE_ID_ANNOTATION]); -// @public +// @public (undocumented) export const DynatraceTab = dynatracePlugin.provide( createRoutableExtension({ name: 'DynatraceTab', diff --git a/plugins/dynatrace/src/routes.ts b/plugins/dynatrace/src/routes.ts new file mode 100644 index 0000000000..73f7b573b7 --- /dev/null +++ b/plugins/dynatrace/src/routes.ts @@ -0,0 +1,20 @@ +/* + * Copyright 2022 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 { createRouteRef } from '@backstage/core-plugin-api'; + +export const rootRouteRef = createRouteRef({ + id: 'dynatrace', +}); From 03681264a43bc543d2aebabe12f735f4542fbc9c Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Thu, 9 Jun 2022 16:03:03 -0700 Subject: [PATCH 293/550] fix: resolve warnings from api-report.md, add jsDoc comments Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/api-report.md | 14 +------------- plugins/dynatrace/src/plugin.ts | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/plugins/dynatrace/api-report.md b/plugins/dynatrace/api-report.md index c1647650f8..26716108b7 100644 --- a/plugins/dynatrace/api-report.md +++ b/plugins/dynatrace/api-report.md @@ -7,25 +7,13 @@ import { BackstagePlugin } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; -import { RouteRef } from '@backstage/core-plugin-api'; -// Warning: (ae-missing-release-tag) "dynatracePlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) -export const dynatracePlugin: BackstagePlugin< - { - root: RouteRef; - }, - {} ->; +export const dynatracePlugin: BackstagePlugin<{}, {}>; -// Warning: (ae-missing-release-tag) "DynatraceTab" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const DynatraceTab: () => JSX.Element; -// Warning: (ae-missing-release-tag) "isDynatraceAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const isDynatraceAvailable: (entity: Entity) => boolean; diff --git a/plugins/dynatrace/src/plugin.ts b/plugins/dynatrace/src/plugin.ts index a9335bcb52..fc1778b45c 100644 --- a/plugins/dynatrace/src/plugin.ts +++ b/plugins/dynatrace/src/plugin.ts @@ -27,7 +27,10 @@ import { DYNATRACE_ID_ANNOTATION } from './constants'; import { rootRouteRef } from './routes'; -// @public (undocumented) +/** + * Create the Dynatrace plugin. + * @public + */ export const dynatracePlugin = createPlugin({ id: 'dynatrace', apis: [ @@ -46,11 +49,18 @@ export const dynatracePlugin = createPlugin({ ], }); -// @public (undocumented) +/** + * Checks if the entity has a dynatrace id annotation. + * @public + * @param entity {Entity} - The entity to check for the dynatrace id annotation. + */ export const isDynatraceAvailable = (entity: Entity) => Boolean(entity.metadata.annotations?.[DYNATRACE_ID_ANNOTATION]); -// @public (undocumented) +/** + * Creates a routable extension for the dynatrace plugin tab. + * @public + */ export const DynatraceTab = dynatracePlugin.provide( createRoutableExtension({ name: 'DynatraceTab', From 3bc59fa19f416e5186904b8454f71502a058daf4 Mon Sep 17 00:00:00 2001 From: Tate Date: Thu, 9 Jun 2022 23:27:48 -0400 Subject: [PATCH 294/550] Remove undefined container className property the `container` property is not defined in the example snippet and causes an error when the home page renders as the snippet was written. I removed the className property to fix the issue. Signed-off-by: Tate Hanawalt --- docs/getting-started/homepage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/homepage.md b/docs/getting-started/homepage.md index 2f86380b13..eac76b5fdc 100644 --- a/docs/getting-started/homepage.md +++ b/docs/getting-started/homepage.md @@ -157,7 +157,7 @@ export const HomePage = () => { return ( - + ); From aa15229ec39f7170b9abef67e14d6d3f8037ec77 Mon Sep 17 00:00:00 2001 From: Jussi Hallila Date: Fri, 10 Jun 2022 08:36:53 +0200 Subject: [PATCH 295/550] Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. resolves #11595 Signed-off-by: Jussi Hallila --- .changeset/warm-lions-retire.md | 8 +++++ ...2022060100821_facts_timestamp_precision.js | 36 +++++++++++++++++++ plugins/tech-insights-node/package.json | 1 + plugins/tech-insights-node/src/facts.ts | 13 +++++-- 4 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 .changeset/warm-lions-retire.md create mode 100644 plugins/tech-insights-backend/migrations/2022060100821_facts_timestamp_precision.js diff --git a/.changeset/warm-lions-retire.md b/.changeset/warm-lions-retire.md new file mode 100644 index 0000000000..23cbf9d78b --- /dev/null +++ b/.changeset/warm-lions-retire.md @@ -0,0 +1,8 @@ +--- +'@backstage/plugin-tech-insights-backend': patch +'@backstage/plugin-tech-insights-node': patch +--- + +Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks + +Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. diff --git a/plugins/tech-insights-backend/migrations/2022060100821_facts_timestamp_precision.js b/plugins/tech-insights-backend/migrations/2022060100821_facts_timestamp_precision.js new file mode 100644 index 0000000000..ea889d3928 --- /dev/null +++ b/plugins/tech-insights-backend/migrations/2022060100821_facts_timestamp_precision.js @@ -0,0 +1,36 @@ +/* + * Copyright 2021 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. + */ + +// @ts-check + +/** + * @param {import('knex').Knex} knex + */ +exports.up = async function up(knex) { + await knex.schema.alterTable('facts', table => { + table + .dateTime('timestamp', { precision: 0 }) + .defaultTo(knex.fn.now()) + .notNullable() + .comment('The timestamp when this entry was created') + .alter(); + }); +}; + +/** + * @param {import('knex').Knex} _knex + */ +exports.down = async function down(_knex) {}; diff --git a/plugins/tech-insights-node/package.json b/plugins/tech-insights-node/package.json index b17c635a8a..0312b1d91f 100644 --- a/plugins/tech-insights-node/package.json +++ b/plugins/tech-insights-node/package.json @@ -36,6 +36,7 @@ "@backstage/backend-common": "^0.14.0-next.2", "@backstage/config": "^1.0.1", "@backstage/plugin-tech-insights-common": "^0.2.4", + "@backstage/types": "^1.0.0", "@types/luxon": "^2.0.5", "luxon": "^2.0.2", "winston": "^3.2.1" diff --git a/plugins/tech-insights-node/src/facts.ts b/plugins/tech-insights-node/src/facts.ts index ffd3549bd5..bcc2aa42e1 100644 --- a/plugins/tech-insights-node/src/facts.ts +++ b/plugins/tech-insights-node/src/facts.ts @@ -15,6 +15,7 @@ */ import { DateTime, Duration, DurationLike } from 'luxon'; import { Config } from '@backstage/config'; +import { JsonValue } from '@backstage/types'; import { PluginEndpointDiscovery, TokenManager, @@ -55,6 +56,7 @@ export type TechInsightFact = { | string[] | boolean[] | DateTime[] + | JsonValue >; /** @@ -94,9 +96,16 @@ export type FactSchema = { * Type of the individual fact value * * Numbers are split into integers and floating point values. - * `set` indicates a collection of values + * `set` indicates a collection of values, `object` indicates JSON serializable value */ - type: 'integer' | 'float' | 'string' | 'boolean' | 'datetime' | 'set'; + type: + | 'integer' + | 'float' + | 'string' + | 'boolean' + | 'datetime' + | 'set' + | 'object'; /** * A description of this individual fact value From 989761315a98adbcea29f68ae4f0bcbd9756ebce Mon Sep 17 00:00:00 2001 From: Jussi Hallila Date: Fri, 10 Jun 2022 09:04:46 +0200 Subject: [PATCH 296/550] Update API report. Signed-off-by: Jussi Hallila --- .github/vale/Vocab/Backstage/accept.txt | 1 + plugins/tech-insights-node/api-report.md | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/vale/Vocab/Backstage/accept.txt b/.github/vale/Vocab/Backstage/accept.txt index 7631640199..f2946e8b6f 100644 --- a/.github/vale/Vocab/Backstage/accept.txt +++ b/.github/vale/Vocab/Backstage/accept.txt @@ -301,6 +301,7 @@ superfences Superfences superset supertype +storable talkdesk Talkdesk tasklist diff --git a/plugins/tech-insights-node/api-report.md b/plugins/tech-insights-node/api-report.md index bcccec65b5..09d409fecd 100644 --- a/plugins/tech-insights-node/api-report.md +++ b/plugins/tech-insights-node/api-report.md @@ -8,6 +8,7 @@ import { Config } from '@backstage/config'; import { DateTime } from 'luxon'; import { Duration } from 'luxon'; import { DurationLike } from 'luxon'; +import { JsonValue } from '@backstage/types'; import { Logger } from 'winston'; import { PluginEndpointDiscovery } from '@backstage/backend-common'; import { TokenManager } from '@backstage/backend-common'; @@ -76,7 +77,14 @@ export type FactRetrieverRegistration = { // @public export type FactSchema = { [name: string]: { - type: 'integer' | 'float' | 'string' | 'boolean' | 'datetime' | 'set'; + type: + | 'integer' + | 'float' + | 'string' + | 'boolean' + | 'datetime' + | 'set' + | 'object'; description: string; since?: string; metadata?: Record; @@ -136,6 +144,7 @@ export type TechInsightFact = { | string[] | boolean[] | DateTime[] + | JsonValue >; timestamp?: DateTime; }; From 1b59892019bf4073cbe8251450742f6e33a64d27 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 10:03:25 +0200 Subject: [PATCH 297/550] implement possibilities to set custom template on elastic search engine Signed-off-by: Emma Indal --- .../engines/ElasticSearchSearchEngine.test.ts | 64 +++++++++++++++++++ .../src/engines/ElasticSearchSearchEngine.ts | 38 +++++++++++ 2 files changed, 102 insertions(+) diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts index 9867920c6e..c1c8ed9c86 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts @@ -32,6 +32,9 @@ class ElasticSearchSearchEngineForTranslatorTests extends ElasticSearchSearchEng getTranslator() { return this.translator; } + getIndexTemplate() { + return this.indexTemplate; + } } const mock = new Mock(); @@ -50,6 +53,23 @@ jest.mock('./ElasticSearchSearchEngineIndexer', () => ({ .mockImplementation(() => indexerMock), })); +const customIndexTemplate = { + name: 'custom-index-template', + body: { + index_patterns: ['*'], + template: { + settings: { + number_of_shards: 1, + }, + mappings: { + _source: { + enabled: false, + }, + }, + }, + }, +}; + describe('ElasticSearchSearchEngine', () => { let testSearchEngine: ElasticSearchSearchEngine; let inspectableSearchEngine: ElasticSearchSearchEngineForTranslatorTests; @@ -72,6 +92,20 @@ describe('ElasticSearchSearchEngine', () => { client = testSearchEngine['elasticSearchClient']; }); + describe('custom index template', () => { + it('should not have custom template set as default', async () => { + expect(inspectableSearchEngine.getIndexTemplate()).toBeUndefined(); + }); + + it('should set custom index template', async () => { + await inspectableSearchEngine.setIndexTemplate(customIndexTemplate); + + expect(inspectableSearchEngine.getIndexTemplate()).toMatchObject( + customIndexTemplate, + ); + }); + }); + describe('queryTranslator', () => { beforeAll(() => { mock.clearAll(); @@ -760,6 +794,10 @@ describe('ElasticSearchSearchEngine', () => { }); describe('indexer', () => { + beforeEach(async () => { + await testSearchEngine.setIndexTemplate(customIndexTemplate); + }); + it('should get indexer', async () => { const indexer = await testSearchEngine.getIndexer('test-index'); @@ -773,12 +811,38 @@ describe('ElasticSearchSearchEngine', () => { elasticSearchClient: client, }), ); + expect(indexerMock.on).toHaveBeenCalledWith( + 'finish', + expect.any(Function), + ); expect(indexerMock.on).toHaveBeenCalledWith( 'error', expect.any(Function), ); }); + describe('onFinish', () => { + let callback: Function; + + beforeEach(async () => { + mock.clearAll(); + await testSearchEngine.getIndexer('test-index'); + callback = indexerMock.on.mock.calls[1][1]; + }); + + it('should set provided index template on finish', async () => { + const indexTemplateSpy = jest.fn().mockReturnValue(customIndexTemplate); + mock.add( + { method: 'PUT', path: '/_index_template/custom-index-template' }, + indexTemplateSpy, + ); + + await callback(); + + expect(indexTemplateSpy).toHaveBeenCalled(); + }); + }); + describe('onError', () => { let errorHandler: Function; const error = new Error('some error'); diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index 6541d2ed80..025a9fe1fc 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -36,6 +36,24 @@ import { ElasticSearchSearchEngineIndexer } from './ElasticSearchSearchEngineInd export type { ElasticSearchClientOptions }; +/** + * Elasticsearch specific index template + * @public + */ +export type ElasticSearchCustomIndexTemplate = { + name: string; + body: ElasticSearchIndexTemplateBody; +}; + +/** + * Elasticsearch specific index template body + * @public + */ +export type ElasticSearchIndexTemplateBody = { + index_patterns: string[]; + template: Record; +}; + /** * Search query that the elasticsearch engine understands. * @public @@ -114,6 +132,7 @@ function isBlank(str: string) { export class ElasticSearchSearchEngine implements SearchEngine { private readonly elasticSearchClient: Client; private readonly highlightOptions: ElasticSearchHighlightConfig; + protected indexTemplate?: ElasticSearchCustomIndexTemplate; constructor( private readonly elasticSearchClientOptions: ElasticSearchClientOptions, @@ -236,8 +255,13 @@ export class ElasticSearchSearchEngine implements SearchEngine { this.translator = translator; } + setIndexTemplate(template: ElasticSearchCustomIndexTemplate) { + this.indexTemplate = template; + } + async getIndexer(type: string) { const alias = this.constructSearchAlias(type); + const indexer = new ElasticSearchSearchEngineIndexer({ type, indexPrefix: this.indexPrefix, @@ -266,6 +290,20 @@ export class ElasticSearchSearchEngine implements SearchEngine { } }); + indexer.on('finish', async () => { + // Set custom index template if set + if (this.indexTemplate) { + try { + await this.elasticSearchClient.indices.putIndexTemplate( + this.indexTemplate, + ); + this.logger.info('Custom index template set'); + } catch (error) { + this.logger.error(`Unable to set custom index template: ${error}`); + } + } + }); + return indexer; } From 535847cf14d521e694177ae01464c39fa2548243 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 10:08:48 +0200 Subject: [PATCH 298/550] changeset and api report updates Signed-off-by: Emma Indal --- .changeset/wet-icons-shout.md | 5 +++++ .../api-report.md | 16 ++++++++++++++++ .../src/engines/ElasticSearchSearchEngine.ts | 6 ++++-- .../src/engines/index.ts | 2 ++ .../src/index.ts | 2 ++ 5 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 .changeset/wet-icons-shout.md diff --git a/.changeset/wet-icons-shout.md b/.changeset/wet-icons-shout.md new file mode 100644 index 0000000000..de105cbde9 --- /dev/null +++ b/.changeset/wet-icons-shout.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-backend-module-elasticsearch': patch +--- + +Now possible to set a custom index template on the elasticsearch search engine. diff --git a/plugins/search-backend-module-elasticsearch/api-report.md b/plugins/search-backend-module-elasticsearch/api-report.md index 143d3ab3e8..a6be34dcb1 100644 --- a/plugins/search-backend-module-elasticsearch/api-report.md +++ b/plugins/search-backend-module-elasticsearch/api-report.md @@ -137,6 +137,18 @@ export interface ElasticSearchConnectionConstructor { }; } +// @public +export type ElasticSearchCustomIndexTemplate = { + name: string; + body: ElasticSearchCustomIndexTemplateBody; +}; + +// @public +export type ElasticSearchCustomIndexTemplateBody = { + index_patterns: string[]; + template: Record; +}; + // @public (undocumented) export type ElasticSearchHighlightConfig = { fragmentDelimiter: string; @@ -211,10 +223,14 @@ export class ElasticSearchSearchEngine implements SearchEngine { }: ElasticSearchOptions): Promise; // (undocumented) getIndexer(type: string): Promise; + // (undocumented) + protected indexTemplate?: ElasticSearchCustomIndexTemplate; newClient(create: (options: ElasticSearchClientOptions) => T): T; // (undocumented) query(query: SearchQuery): Promise; // (undocumented) + setIndexTemplate(template: ElasticSearchCustomIndexTemplate): void; + // (undocumented) setTranslator(translator: ElasticSearchQueryTranslator): void; // (undocumented) protected translator( diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index 025a9fe1fc..a4b3be6eec 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -42,15 +42,17 @@ export type { ElasticSearchClientOptions }; */ export type ElasticSearchCustomIndexTemplate = { name: string; - body: ElasticSearchIndexTemplateBody; + body: ElasticSearchCustomIndexTemplateBody; }; /** * Elasticsearch specific index template body * @public */ -export type ElasticSearchIndexTemplateBody = { +export type ElasticSearchCustomIndexTemplateBody = { index_patterns: string[]; + // See available properties of template + // https://www.elastic.co/guide/en/elasticsearch/reference/7.15/indices-put-template.html#put-index-template-api-request-body template: Record; }; diff --git a/plugins/search-backend-module-elasticsearch/src/engines/index.ts b/plugins/search-backend-module-elasticsearch/src/engines/index.ts index d99f96ef72..8ac86970a1 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/index.ts @@ -30,6 +30,8 @@ export type { ElasticSearchQueryTranslator, ElasticSearchQueryTranslatorOptions, ElasticSearchOptions, + ElasticSearchCustomIndexTemplate, + ElasticSearchCustomIndexTemplateBody, } from './ElasticSearchSearchEngine'; export type { ElasticSearchSearchEngineIndexer, diff --git a/plugins/search-backend-module-elasticsearch/src/index.ts b/plugins/search-backend-module-elasticsearch/src/index.ts index 772c7d3689..adf7fa43f2 100644 --- a/plugins/search-backend-module-elasticsearch/src/index.ts +++ b/plugins/search-backend-module-elasticsearch/src/index.ts @@ -36,4 +36,6 @@ export type { ElasticSearchAuth, ElasticSearchSearchEngineIndexer, ElasticSearchSearchEngineIndexerOptions, + ElasticSearchCustomIndexTemplate, + ElasticSearchCustomIndexTemplateBody, } from './engines'; From d7044784f0398298ceeb98fdddf44a0a8e062308 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Wed, 1 Jun 2022 14:55:10 +0200 Subject: [PATCH 299/550] Move SearchFilter from @backstage/plugin-search to @backstage/plugin-search-react and deprecate it in @backstage/plugin-search, and also remove SearchFilterNext MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 82 ++++ plugins/search-react/package.json | 6 +- .../SearchFilter.Autocomplete.test.tsx | 361 +++++++++++++++ .../SearchFilter.Autocomplete.tsx | 120 +++++ .../SearchFilter/SearchFilter.stories.tsx | 13 +- .../SearchFilter/SearchFilter.test.tsx | 410 ++++++++++++++++++ .../components/SearchFilter/SearchFilter.tsx | 237 ++++++++++ .../components/SearchFilter/hooks.test.tsx | 8 +- .../src/components/SearchFilter/hooks.ts | 9 +- .../src/components/SearchFilter/index.ts | 24 + plugins/search-react/src/components/index.ts | 1 + plugins/search/api-report.md | 28 +- .../SearchFilter.Autocomplete.tsx | 15 +- .../components/SearchFilter/SearchFilter.tsx | 179 +------- .../src/components/SearchFilter/index.ts | 2 +- plugins/search/src/index.ts | 2 +- 16 files changed, 1296 insertions(+), 201 deletions(-) create mode 100644 plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.test.tsx create mode 100644 plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.tsx rename plugins/{search => search-react}/src/components/SearchFilter/SearchFilter.stories.tsx (95%) create mode 100644 plugins/search-react/src/components/SearchFilter/SearchFilter.test.tsx create mode 100644 plugins/search-react/src/components/SearchFilter/SearchFilter.tsx rename plugins/{search => search-react}/src/components/SearchFilter/hooks.test.tsx (98%) rename plugins/{search => search-react}/src/components/SearchFilter/hooks.ts (96%) create mode 100644 plugins/search-react/src/components/SearchFilter/index.ts diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 9f61070854..00325d6f64 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -10,9 +10,18 @@ import { AsyncState } from 'react-use/lib/useAsync'; import { JsonObject } from '@backstage/types'; import { PropsWithChildren } from 'react'; import { default as React_2 } from 'react'; +import { ReactElement } from 'react'; import { SearchQuery } from '@backstage/plugin-search-common'; import { SearchResultSet } from '@backstage/plugin-search-common'; +// @public (undocumented) +export const AutocompleteFilter: ( + props: SearchAutocompleteFilterProps, +) => JSX.Element; + +// @public (undocumented) +export const CheckboxFilter: (props: SearchFilterComponentProps) => JSX.Element; + // @public (undocumented) export const HighlightedSearchResultText: ({ text, @@ -45,6 +54,13 @@ export interface SearchApi { // @public (undocumented) export const searchApiRef: ApiRef; +// @public (undocumented) +export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { + filterSelectedOptions?: boolean; + limitTags?: number; + multiple?: boolean; +}; + // @public export const SearchContextProvider: ( props: SearchContextProviderProps, @@ -74,6 +90,72 @@ export type SearchContextValue = { fetchPreviousPage?: React_2.DispatchWithoutAction; } & SearchContextState; +// @public (undocumented) +export const SearchFilter: { + ({ component: Element, ...props }: SearchFilterWrapperProps): JSX.Element; + Checkbox( + props: Omit & + SearchFilterComponentProps, + ): JSX.Element; + Select( + props: Omit & + SearchFilterComponentProps, + ): JSX.Element; + Autocomplete(props: SearchAutocompleteFilterProps): JSX.Element; +}; + +// @public (undocumented) +export type SearchFilterComponentProps = { + className?: string; + name: string; + label?: string; + values?: string[] | ((partial: string) => Promise); + defaultValue?: string[] | string | null; + valuesDebounceMs?: number; +}; + +// @public (undocumented) +export type SearchFilterWrapperProps = SearchFilterComponentProps & { + component: (props: SearchFilterComponentProps) => ReactElement; + debug?: boolean; +}; + +// @public (undocumented) +export const SelectFilter: (props: SearchFilterComponentProps) => JSX.Element; + +// @public +export const useAsyncFilterValues: ( + fn: ((partial: string) => Promise) | undefined, + inputValue: string, + defaultValues?: string[], + debounce?: number, +) => + | { + loading: boolean; + error?: undefined; + value?: undefined; + } + | { + loading: false; + error: Error; + value?: undefined; + } + | { + loading: true; + error?: Error | undefined; + value?: string[] | undefined; + } + | { + loading: boolean; + value: string[]; + }; + +// @public +export const useDefaultFilterValue: ( + name: string, + defaultValue?: string | string[] | null | undefined, +) => void; + // @public export const useSearch: () => SearchContextValue; diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index 5646ce9ee1..ac8a43dee4 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -36,7 +36,8 @@ "@backstage/version-bridge": "^1.0.1", "react-use": "^17.3.2", "@backstage/types": "^1.0.0", - "@material-ui/core": "^4.12.2" + "@material-ui/core": "^4.12.2", + "@material-ui/lab": "4.0.0-alpha.57" }, "peerDependencies": { "@types/react": "^16.13.1 || ^17.0.0", @@ -47,7 +48,8 @@ "@backstage/test-utils": "^1.1.1-next.0", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", - "@testing-library/jest-dom": "^5.10.1" + "@testing-library/jest-dom": "^5.10.1", + "@testing-library/user-event": "^14.0.0" }, "files": [ "dist" diff --git a/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.test.tsx b/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.test.tsx new file mode 100644 index 0000000000..14c8967b57 --- /dev/null +++ b/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.test.tsx @@ -0,0 +1,361 @@ +/* + * Copyright 2021 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 { TestApiProvider } from '@backstage/test-utils'; +import { screen, render, waitFor, within } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import React from 'react'; + +import { searchApiRef } from '../../api'; +import { SearchContextProvider, useSearch } from '../../context'; +import { SearchFilter } from './SearchFilter'; + +const SearchContextFilterSpy = ({ name }: { name: string }) => { + const { filters } = useSearch(); + const value = filters[name]; + return ( + + {Array.isArray(value) ? value.join(',') : value} + + ); +}; + +describe('SearchFilter.Autocomplete', () => { + const query = jest.fn().mockResolvedValue({}); + const emptySearchContext = { + term: '', + types: [], + filters: {}, + }; + + const name = 'field'; + const values = ['value1', 'value2']; + + it('renders as expected', async () => { + render( + + + + + , + ); + + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + await userEvent.click(input); + + await waitFor(() => { + screen.getByRole('listbox'); + }); + + expect(screen.getByRole('option', { name: values[0] })).toBeInTheDocument(); + expect(screen.getByRole('option', { name: values[1] })).toBeInTheDocument(); + }); + + it('renders as expected with async values', async () => { + render( + + + values} /> + + , + ); + + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + await userEvent.click(input); + + await waitFor(() => { + screen.getByRole('listbox'); + }); + + expect(screen.getByRole('option', { name: values[0] })).toBeInTheDocument(); + expect(screen.getByRole('option', { name: values[1] })).toBeInTheDocument(); + }); + + it('does not affect unrelated filter state', async () => { + render( + + + + + + + , + ); + + // The spy should show the initial value. + expect(screen.getByTestId('unrelated-filter-spy')).toHaveTextContent( + 'value', + ); + + // Select a value from the autocomplete filter. + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[1] })); + + // Wait for the autocomplete filter's value to change. + await waitFor(() => { + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values[1], + ); + }); + + // Unrelated filter spy should maintain the same value. + expect(screen.getByTestId('unrelated-filter-spy')).toHaveTextContent( + 'value', + ); + }); + + describe('single', () => { + it('renders as expected with defaultValue', async () => { + render( + + + + + + , + ); + + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + + await waitFor(() => { + expect(input).toHaveValue(values[1]); + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values[1], + ); + }); + }); + + it('renders as expected with initial context', async () => { + render( + + + + + + , + ); + + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + + await waitFor(() => { + expect(input).toHaveValue(values[0]); + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values[0], + ); + }); + }); + + it('sets filter state when selecting a value', async () => { + render( + + + + + + , + ); + + // Select the first option in the autocomplete. + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[0] })); + + // The value should be present in the context. + await waitFor(() => { + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values[0], + ); + }); + + // Click the "Clear" button to remove the value. + const clearButton = within(autocomplete).getByLabelText('Clear'); + await userEvent.click(clearButton); + + // That value should have been unset from the context. + await waitFor(() => { + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent(''); + }); + }); + }); + + describe('multiple', () => { + it('renders as expected with defaultValue', async () => { + render( + + + + + + , + ); + + await waitFor(() => { + expect(screen.getByText(values[0])).toBeInTheDocument(); + expect(screen.getByText(values[1])).toBeInTheDocument(); + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values.join(','), + ); + }); + }); + + it('renders as expected with initial context', async () => { + render( + + + + + + , + ); + + await waitFor(() => { + expect(screen.getByText(values[0])).toBeInTheDocument(); + expect(screen.getByText(values[1])).toBeInTheDocument(); + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values.join(','), + ); + }); + }); + + it('respects tag limit configuration', async () => { + render( + + + + + , + ); + + const autocomplete = screen.getByRole('combobox'); + const input = within(autocomplete).getByRole('textbox'); + + // Select the second value. + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[1] })); + await waitFor(() => { + expect( + screen.getByRole('button', { name: values[1] }), + ).toBeInTheDocument(); + }); + + // Select the first value. + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[0] })); + await waitFor(() => { + expect( + screen.getByRole('button', { name: values[0] }), + ).toBeInTheDocument(); + }); + + // Blur the field and only one tag should be shown with a +1. + input.blur(); + expect( + screen.queryByRole('button', { name: values[0] }), + ).not.toBeInTheDocument(); + expect(screen.getByText('+1')).toBeInTheDocument(); + }); + + it('sets filter state when selecting a value', async () => { + render( + + + + + + , + ); + + const autocomplete = screen.getByRole('combobox'); + + // Select both values in the autocomplete. + const input = within(autocomplete).getByRole('textbox'); + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[0] })); + await userEvent.click(input); + await waitFor(() => { + screen.getByRole('listbox'); + }); + await userEvent.click(screen.getByRole('option', { name: values[1] })); + + // Both options should be present in the context. + await waitFor(() => { + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent( + values.join(','), + ); + }); + + // Click the "Clear" button to remove the value. + const clearButton = within(autocomplete).getByLabelText('Clear'); + await userEvent.click(clearButton); + + // There should be no content in the filter context. + await waitFor(() => { + expect(screen.getByTestId(`${name}-filter-spy`)).toHaveTextContent(''); + }); + }); + }); +}); diff --git a/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.tsx b/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.tsx new file mode 100644 index 0000000000..35d1f376e5 --- /dev/null +++ b/plugins/search-react/src/components/SearchFilter/SearchFilter.Autocomplete.tsx @@ -0,0 +1,120 @@ +/* + * Copyright 2022 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, { ChangeEvent, useState } from 'react'; +import { Chip, TextField } from '@material-ui/core'; +import { + Autocomplete, + AutocompleteGetTagProps, + AutocompleteRenderInputParams, +} from '@material-ui/lab'; + +import { useSearch } from '../../context'; +import { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; +import { SearchFilterComponentProps } from './SearchFilter'; + +/** + * @public + */ +export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { + filterSelectedOptions?: boolean; + limitTags?: number; + multiple?: boolean; +}; + +/** + * @public + */ +export const AutocompleteFilter = (props: SearchAutocompleteFilterProps) => { + const { + className, + defaultValue, + name, + values: givenValues, + valuesDebounceMs, + label, + filterSelectedOptions, + limitTags, + multiple, + } = props; + const [inputValue, setInputValue] = useState(''); + useDefaultFilterValue(name, defaultValue); + const asyncValues = + typeof givenValues === 'function' ? givenValues : undefined; + const defaultValues = + typeof givenValues === 'function' ? undefined : givenValues; + const { value: values, loading } = useAsyncFilterValues( + asyncValues, + inputValue, + defaultValues, + valuesDebounceMs, + ); + const { filters, setFilters } = useSearch(); + const filterValue = + (filters[name] as string | string[] | undefined) || (multiple ? [] : null); + + // Set new filter values on input change. + const handleChange = ( + _: ChangeEvent<{}>, + newValue: string | string[] | null, + ) => { + setFilters(prevState => { + const { [name]: filter, ...others } = prevState; + + if (newValue) { + return { ...others, [name]: newValue }; + } + return { ...others }; + }); + }; + + // Provide the input field. + const renderInput = (params: AutocompleteRenderInputParams) => ( + + ); + + // Render tags as primary-colored chips. + const renderTags = ( + tagValue: string[], + getTagProps: AutocompleteGetTagProps, + ) => + tagValue.map((option: string, index: number) => ( + + )); + + return ( + setInputValue(newValue)} + renderInput={renderInput} + renderTags={renderTags} + /> + ); +}; diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.stories.tsx b/plugins/search-react/src/components/SearchFilter/SearchFilter.stories.tsx similarity index 95% rename from plugins/search/src/components/SearchFilter/SearchFilter.stories.tsx rename to plugins/search-react/src/components/SearchFilter/SearchFilter.stories.tsx index 7e8a7d585a..2c8a629f01 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.stories.tsx +++ b/plugins/search-react/src/components/SearchFilter/SearchFilter.stories.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -14,14 +14,13 @@ * limitations under the License. */ -import { Grid, Paper } from '@material-ui/core'; import React, { ComponentType } from 'react'; -import { - searchApiRef, - MockSearchApi, - SearchContextProvider, -} from '@backstage/plugin-search-react'; +import { Grid, Paper } from '@material-ui/core'; + import { TestApiProvider } from '@backstage/test-utils'; + +import { searchApiRef, MockSearchApi } from '../../api'; +import { SearchContextProvider } from '../../context'; import { SearchFilter } from './SearchFilter'; export default { diff --git a/plugins/search-react/src/components/SearchFilter/SearchFilter.test.tsx b/plugins/search-react/src/components/SearchFilter/SearchFilter.test.tsx new file mode 100644 index 0000000000..89a1818e8d --- /dev/null +++ b/plugins/search-react/src/components/SearchFilter/SearchFilter.test.tsx @@ -0,0 +1,410 @@ +/* + * Copyright 2022 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 from 'react'; +import { screen, render, waitFor } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; + +import { useApi } from '@backstage/core-plugin-api'; + +import { SearchContextProvider } from '../../context'; +import { SearchFilter } from './SearchFilter'; + +jest.mock('@backstage/core-plugin-api', () => ({ + ...jest.requireActual('@backstage/core-plugin-api'), + useApi: jest.fn().mockReturnValue({}), +})); + +describe('SearchFilter', () => { + const initialState = { + term: '', + filters: {}, + types: [], + }; + + const label = 'Field'; + const name = 'field'; + const values = ['value1', 'value2']; + const filters = { unrelated: 'unrelated' }; + + const query = jest.fn().mockResolvedValue({}); + (useApi as jest.Mock).mockReturnValue({ query: query }); + + afterAll(() => { + jest.resetAllMocks(); + }); + + it('Check that element was rendered and received props', async () => { + const CustomFilter = (props: { name: string }) =>
{props.name}
; + + render(); + + expect(screen.getByRole('heading', { name })).toBeInTheDocument(); + }); + + describe('Checkbox', () => { + it('Renders field name and values when provided as props', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + expect( + screen.getByRole('checkbox', { name: values[0] }), + ).toBeInTheDocument(); + expect( + screen.getByRole('checkbox', { name: values[1] }), + ).toBeInTheDocument(); + }); + + it('Renders correctly based on filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + expect( + screen.getByRole('checkbox', { name: values[0] }), + ).not.toBeChecked(); + expect(screen.getByRole('checkbox', { name: values[1] })).toBeChecked(); + }); + + it('Renders correctly based on defaultValue', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + expect(screen.getByRole('checkbox', { name: values[0] })).toBeChecked(); + expect( + screen.getByRole('checkbox', { name: values[1] }), + ).not.toBeChecked(); + }); + + it('Checking / unchecking a value sets filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + const checkBox = screen.getByRole('checkbox', { name: values[0] }); + + // Check the box. + await userEvent.click(checkBox); + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ filters: { field: [values[0]] } }), + ); + }); + + // Uncheck the box. + await userEvent.click(checkBox); + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ filters: {} }), + ); + }); + }); + + it('Checking / unchecking a value maintains unrelated filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + const checkBox = screen.getByRole('checkbox', { name: values[0] }); + + // Check the box. + await userEvent.click(checkBox); + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ + filters: { ...filters, field: [values[0]] }, + }), + ); + }); + + // Uncheck the box. + await userEvent.click(checkBox); + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ filters }), + ); + }); + }); + }); + + describe('Select', () => { + it('Renders field name and values when provided as props', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('button')); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + expect( + screen.getByRole('option', { name: values[0] }), + ).toBeInTheDocument(); + expect( + screen.getByRole('option', { name: values[1] }), + ).toBeInTheDocument(); + }); + + it('Renders values when provided asynchronously', async () => { + render( + + values} + /> + , + ); + + await waitFor(() => { + expect(screen.getByRole('button')).toBeInTheDocument(); + expect( + screen.getByRole('button').getAttribute('aria-disabled'), + ).not.toBe('true'); + }); + + await userEvent.click(screen.getByRole('button')); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + expect( + screen.getByRole('option', { name: values[0] }), + ).toBeInTheDocument(); + expect( + screen.getByRole('option', { name: values[1] }), + ).toBeInTheDocument(); + }); + + it('Renders correctly based on filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('button')); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + expect(screen.getByRole('option', { name: values[0] })).toHaveAttribute( + 'aria-selected', + 'true', + ); + expect( + screen.getByRole('option', { name: values[1] }), + ).not.toHaveAttribute('aria-selected'); + expect(screen.getByRole('option', { name: 'All' })).not.toHaveAttribute( + 'aria-selected', + ); + }); + + it('Renders correctly based on defaultValue', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('button')); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + expect(screen.getByRole('option', { name: values[0] })).toHaveAttribute( + 'aria-selected', + 'true', + ); + expect( + screen.getByRole('option', { name: values[1] }), + ).not.toHaveAttribute('aria-selected'); + expect(screen.getByRole('option', { name: 'All' })).not.toHaveAttribute( + 'aria-selected', + ); + }); + + it('Selecting a value sets filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + const button = screen.getByRole('button'); + + await userEvent.click(button); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('option', { name: values[0] })); + + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ + filters: { [name]: values[0] }, + }), + ); + }); + + await userEvent.click(button); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('option', { name: 'All' })); + + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ + filters: {}, + }), + ); + }); + }); + + it('Selecting a value maintains unrelated filter state', async () => { + render( + + + , + ); + + await waitFor(() => { + expect(screen.getByText(label)).toBeInTheDocument(); + }); + + const button = screen.getByRole('button'); + + await userEvent.click(button); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('option', { name: values[0] })); + + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ + filters: { ...filters, [name]: values[0] }, + }), + ); + }); + + await userEvent.click(button); + + await waitFor(() => { + expect(screen.getByRole('listbox')).toBeInTheDocument(); + }); + + await userEvent.click(screen.getByRole('option', { name: 'All' })); + + await waitFor(() => { + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ filters }), + ); + }); + }); + }); +}); diff --git a/plugins/search-react/src/components/SearchFilter/SearchFilter.tsx b/plugins/search-react/src/components/SearchFilter/SearchFilter.tsx new file mode 100644 index 0000000000..2a6d7baafa --- /dev/null +++ b/plugins/search-react/src/components/SearchFilter/SearchFilter.tsx @@ -0,0 +1,237 @@ +/* + * Copyright 2022 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, { ReactElement, ChangeEvent } from 'react'; +import { + makeStyles, + FormControl, + FormControlLabel, + InputLabel, + Checkbox, + Select, + MenuItem, + FormLabel, +} from '@material-ui/core'; + +import { useSearch } from '../../context'; +import { + AutocompleteFilter, + SearchAutocompleteFilterProps, +} from './SearchFilter.Autocomplete'; +import { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; + +const useStyles = makeStyles({ + label: { + textTransform: 'capitalize', + }, +}); + +/** + * @public + */ +export type SearchFilterComponentProps = { + className?: string; + name: string; + label?: string; + /** + * Either an array of values directly, or an async function to return a list + * of values to be used in the filter. In the autocomplete filter, the last + * input value is provided as an input to allow values to be filtered. This + * function is debounced and values cached. + */ + values?: string[] | ((partial: string) => Promise); + defaultValue?: string[] | string | null; + /** + * Debounce time in milliseconds, used when values is an async callback. + * Defaults to 250ms. + */ + valuesDebounceMs?: number; +}; + +/** + * @public + */ +export type SearchFilterWrapperProps = SearchFilterComponentProps & { + component: (props: SearchFilterComponentProps) => ReactElement; + debug?: boolean; +}; + +/** + * @public + */ +export const CheckboxFilter = (props: SearchFilterComponentProps) => { + const { + className, + defaultValue, + label, + name, + values: givenValues = [], + valuesDebounceMs, + } = props; + const classes = useStyles(); + const { filters, setFilters } = useSearch(); + useDefaultFilterValue(name, defaultValue); + const asyncValues = + typeof givenValues === 'function' ? givenValues : undefined; + const defaultValues = + typeof givenValues === 'function' ? undefined : givenValues; + const { value: values = [], loading } = useAsyncFilterValues( + asyncValues, + '', + defaultValues, + valuesDebounceMs, + ); + + const handleChange = (e: ChangeEvent) => { + const { + target: { value, checked }, + } = e; + + setFilters(prevFilters => { + const { [name]: filter, ...others } = prevFilters; + const rest = ((filter as string[]) || []).filter(i => i !== value); + const items = checked ? [...rest, value] : rest; + return items.length ? { ...others, [name]: items } : others; + }); + }; + + return ( + + {label ? {label} : null} + {values.map((value: string) => ( + + } + label={value} + /> + ))} + + ); +}; + +/** + * @public + */ +export const SelectFilter = (props: SearchFilterComponentProps) => { + const { + className, + defaultValue, + label, + name, + values: givenValues, + valuesDebounceMs, + } = props; + const classes = useStyles(); + useDefaultFilterValue(name, defaultValue); + const asyncValues = + typeof givenValues === 'function' ? givenValues : undefined; + const defaultValues = + typeof givenValues === 'function' ? undefined : givenValues; + const { value: values = [], loading } = useAsyncFilterValues( + asyncValues, + '', + defaultValues, + valuesDebounceMs, + ); + const { filters, setFilters } = useSearch(); + + const handleChange = (e: ChangeEvent<{ value: unknown }>) => { + const { + target: { value }, + } = e; + + setFilters(prevFilters => { + const { [name]: filter, ...others } = prevFilters; + return value ? { ...others, [name]: value as string } : others; + }); + }; + + return ( + + {label ? ( + + {label} + + ) : null} + + + ); +}; + +/** + * @public + */ +const SearchFilter = ({ + component: Element, + ...props +}: SearchFilterWrapperProps) => ; + +SearchFilter.Checkbox = ( + props: Omit & + SearchFilterComponentProps, +) => ; + +SearchFilter.Select = ( + props: Omit & + SearchFilterComponentProps, +) => ; + +/** + * A control surface for a given filter field name, rendered as an autocomplete + * textfield. A hard-coded list of values may be provided, or an async function + * which returns values may be provided instead. + * + * @public + */ +SearchFilter.Autocomplete = (props: SearchAutocompleteFilterProps) => ( + +); + +export { SearchFilter }; diff --git a/plugins/search/src/components/SearchFilter/hooks.test.tsx b/plugins/search-react/src/components/SearchFilter/hooks.test.tsx similarity index 98% rename from plugins/search/src/components/SearchFilter/hooks.test.tsx rename to plugins/search-react/src/components/SearchFilter/hooks.test.tsx index 14346a29eb..80c4a3a3a2 100644 --- a/plugins/search/src/components/SearchFilter/hooks.test.tsx +++ b/plugins/search-react/src/components/SearchFilter/hooks.test.tsx @@ -17,11 +17,9 @@ import React from 'react'; import { ApiProvider } from '@backstage/core-app-api'; import { TestApiRegistry } from '@backstage/test-utils'; import { renderHook } from '@testing-library/react-hooks'; -import { - SearchContextProvider, - useSearch, - searchApiRef, -} from '@backstage/plugin-search-react'; + +import { searchApiRef } from '../../api'; +import { SearchContextProvider, useSearch } from '../../context'; import { useDefaultFilterValue, useAsyncFilterValues } from './hooks'; jest.useFakeTimers(); diff --git a/plugins/search/src/components/SearchFilter/hooks.ts b/plugins/search-react/src/components/SearchFilter/hooks.ts similarity index 96% rename from plugins/search/src/components/SearchFilter/hooks.ts rename to plugins/search-react/src/components/SearchFilter/hooks.ts index da30466522..5771cc5288 100644 --- a/plugins/search/src/components/SearchFilter/hooks.ts +++ b/plugins/search-react/src/components/SearchFilter/hooks.ts @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -17,11 +17,14 @@ import { useEffect, useRef } from 'react'; import useAsyncFn from 'react-use/lib/useAsyncFn'; import useDebounce from 'react-use/lib/useDebounce'; -import { useSearch } from '@backstage/plugin-search-react'; + +import { useSearch } from '../../context'; /** * Utility hook for either asynchronously loading filter values from a given * function or synchronously providing a given list of default values. + * + * @public */ export const useAsyncFilterValues = ( fn: ((partial: string) => Promise) | undefined, @@ -75,6 +78,8 @@ export const useAsyncFilterValues = ( /** * Utility hook for applying a given default value to the search context. + * + * @public */ export const useDefaultFilterValue = ( name: string, diff --git a/plugins/search-react/src/components/SearchFilter/index.ts b/plugins/search-react/src/components/SearchFilter/index.ts new file mode 100644 index 0000000000..e159cff93d --- /dev/null +++ b/plugins/search-react/src/components/SearchFilter/index.ts @@ -0,0 +1,24 @@ +/* + * Copyright 2022 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 { CheckboxFilter, SearchFilter, SelectFilter } from './SearchFilter'; +export { AutocompleteFilter } from './SearchFilter.Autocomplete'; +export { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; +export type { + SearchFilterComponentProps, + SearchFilterWrapperProps, +} from './SearchFilter'; +export type { SearchAutocompleteFilterProps } from './SearchFilter.Autocomplete'; diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index 679a254827..8e45c66fce 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -15,3 +15,4 @@ */ export * from './HighlightedSearchResultText'; +export * from './SearchFilter'; diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 21b9df5dda..ec60569af4 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -12,7 +12,9 @@ import { ReactElement } from 'react'; import { ReactNode } from 'react'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { RouteRef } from '@backstage/core-plugin-api'; +import { SearchAutocompleteFilterProps as SearchAutocompleteFilterProps_2 } from '@backstage/plugin-search-react'; import { SearchDocument } from '@backstage/plugin-search-common'; +import { SearchFilterComponentProps as SearchFilterComponentProps_2 } from '@backstage/plugin-search-react'; import { SearchResult as SearchResult_2 } from '@backstage/plugin-search-common'; // Warning: (ae-missing-release-tag) "DefaultResultListItem" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -78,8 +80,8 @@ export type HomePageSearchBarProps = Partial< // @public (undocumented) export const Router: () => JSX.Element; -// @public (undocumented) -export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { +// @public @deprecated (undocumented) +export type SearchAutocompleteFilterProps = SearchFilterComponentProps_2 & { filterSelectedOptions?: boolean; limitTags?: number; multiple?: boolean; @@ -124,7 +126,7 @@ export type SearchBarProps = Partial; // Warning: (ae-missing-release-tag) "SearchFilter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // -// @public (undocumented) +// @public @deprecated (undocumented) export const SearchFilter: { ({ component: Element, ...props }: SearchFilterWrapperProps): JSX.Element; Checkbox( @@ -135,10 +137,10 @@ export const SearchFilter: { props: Omit & SearchFilterComponentProps, ): JSX.Element; - Autocomplete(props: SearchAutocompleteFilterProps): JSX.Element; + Autocomplete(props: SearchAutocompleteFilterProps_2): JSX.Element; }; -// @public (undocumented) +// @public @deprecated (undocumented) export type SearchFilterComponentProps = { className?: string; name: string; @@ -148,23 +150,7 @@ export type SearchFilterComponentProps = { valuesDebounceMs?: number; }; -// Warning: (ae-missing-release-tag) "SearchFilterNext" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public @deprecated (undocumented) -export const SearchFilterNext: { - ({ component: Element, ...props }: SearchFilterWrapperProps): JSX.Element; - Checkbox( - props: Omit & - SearchFilterComponentProps, - ): JSX.Element; - Select( - props: Omit & - SearchFilterComponentProps, - ): JSX.Element; - Autocomplete(props: SearchAutocompleteFilterProps): JSX.Element; -}; - -// @public (undocumented) export type SearchFilterWrapperProps = SearchFilterComponentProps & { component: (props: SearchFilterComponentProps) => ReactElement; debug?: boolean; diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx index 03f4f28943..1a74decd31 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx @@ -21,11 +21,16 @@ import { AutocompleteGetTagProps, AutocompleteRenderInputParams, } from '@material-ui/lab'; -import { useSearch } from '@backstage/plugin-search-react'; -import { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; -import { SearchFilterComponentProps } from './SearchFilter'; +import { + SearchFilterComponentProps, + useSearch, + useAsyncFilterValues, + useDefaultFilterValue, +} from '@backstage/plugin-search-react'; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * @public */ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { @@ -34,6 +39,10 @@ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { multiple?: boolean; }; +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + * + */ export const AutocompleteFilter = (props: SearchAutocompleteFilterProps) => { const { className, diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.tsx index bfbab8531c..b88160f363 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.tsx @@ -14,32 +14,18 @@ * limitations under the License. */ -import React, { ReactElement, ChangeEvent } from 'react'; -import { - makeStyles, - FormControl, - FormControlLabel, - InputLabel, - Checkbox, - Select, - MenuItem, - FormLabel, -} from '@material-ui/core'; +import React, { ReactElement } from 'react'; import { AutocompleteFilter, + CheckboxFilter, SearchAutocompleteFilterProps, -} from './SearchFilter.Autocomplete'; -import { useSearch } from '@backstage/plugin-search-react'; -import { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; - -const useStyles = makeStyles({ - label: { - textTransform: 'capitalize', - }, -}); + SelectFilter, +} from '@backstage/plugin-search-react'; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * @public */ export type SearchFilterComponentProps = { @@ -62,6 +48,8 @@ export type SearchFilterComponentProps = { }; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * @public */ export type SearchFilterWrapperProps = SearchFilterComponentProps & { @@ -69,152 +57,33 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { debug?: boolean; }; -const CheckboxFilter = (props: SearchFilterComponentProps) => { - const { - className, - defaultValue, - label, - name, - values: givenValues = [], - valuesDebounceMs, - } = props; - const classes = useStyles(); - const { filters, setFilters } = useSearch(); - useDefaultFilterValue(name, defaultValue); - const asyncValues = - typeof givenValues === 'function' ? givenValues : undefined; - const defaultValues = - typeof givenValues === 'function' ? undefined : givenValues; - const { value: values = [], loading } = useAsyncFilterValues( - asyncValues, - '', - defaultValues, - valuesDebounceMs, - ); - - const handleChange = (e: ChangeEvent) => { - const { - target: { value, checked }, - } = e; - - setFilters(prevFilters => { - const { [name]: filter, ...others } = prevFilters; - const rest = ((filter as string[]) || []).filter(i => i !== value); - const items = checked ? [...rest, value] : rest; - return items.length ? { ...others, [name]: items } : others; - }); - }; - - return ( - - {label ? {label} : null} - {values.map((value: string) => ( - - } - label={value} - /> - ))} - - ); -}; - -const SelectFilter = (props: SearchFilterComponentProps) => { - const { - className, - defaultValue, - label, - name, - values: givenValues, - valuesDebounceMs, - } = props; - const classes = useStyles(); - useDefaultFilterValue(name, defaultValue); - const asyncValues = - typeof givenValues === 'function' ? givenValues : undefined; - const defaultValues = - typeof givenValues === 'function' ? undefined : givenValues; - const { value: values = [], loading } = useAsyncFilterValues( - asyncValues, - '', - defaultValues, - valuesDebounceMs, - ); - const { filters, setFilters } = useSearch(); - - const handleChange = (e: ChangeEvent<{ value: unknown }>) => { - const { - target: { value }, - } = e; - - setFilters(prevFilters => { - const { [name]: filter, ...others } = prevFilters; - return value ? { ...others, [name]: value as string } : others; - }); - }; - - return ( - - {label ? ( - - {label} - - ) : null} - - - ); -}; - +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + */ const SearchFilter = ({ component: Element, ...props }: SearchFilterWrapperProps) => ; +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + */ SearchFilter.Checkbox = ( props: Omit & SearchFilterComponentProps, ) => ; +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + */ SearchFilter.Select = ( props: Omit & SearchFilterComponentProps, ) => ; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * A control surface for a given filter field name, rendered as an autocomplete * textfield. A hard-coded list of values may be provided, or an async function * which returns values may be provided instead. @@ -224,12 +93,4 @@ SearchFilter.Autocomplete = (props: SearchAutocompleteFilterProps) => ( ); -/** - * @deprecated This component was used for rapid prototyping of the Backstage - * Search platform. Now that the API has stabilized, you should use the - * component instead. This component will be removed in an - * upcoming release. - */ -const SearchFilterNext = SearchFilter; - -export { SearchFilter, SearchFilterNext }; +export { SearchFilter }; diff --git a/plugins/search/src/components/SearchFilter/index.ts b/plugins/search/src/components/SearchFilter/index.ts index 86cd66ff6b..3050330038 100644 --- a/plugins/search/src/components/SearchFilter/index.ts +++ b/plugins/search/src/components/SearchFilter/index.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -export { SearchFilter, SearchFilterNext } from './SearchFilter'; +export { SearchFilter } from './SearchFilter'; export type { SearchFilterComponentProps, SearchFilterWrapperProps, diff --git a/plugins/search/src/index.ts b/plugins/search/src/index.ts index 1457ac781d..2eb2ed277b 100644 --- a/plugins/search/src/index.ts +++ b/plugins/search/src/index.ts @@ -28,7 +28,7 @@ export type { SearchBarBaseProps, SearchBarProps, } from './components/SearchBar'; -export { SearchFilter, SearchFilterNext } from './components/SearchFilter'; +export { SearchFilter } from './components/SearchFilter'; export type { SearchAutocompleteFilterProps, SearchFilterComponentProps, From 01abb3bc7e4ee0a7d1b806fc63662a1ad6106688 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Wed, 1 Jun 2022 16:37:19 +0200 Subject: [PATCH 300/550] Move SearchResult from @backstage/plugin-search to @backstage/plugin-search-react and deprecate it in @backstage/plugin-search MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 9 ++ plugins/search-react/package.json | 7 +- .../SearchResult/SearchResult.stories.tsx | 11 +- .../SearchResult/SearchResult.test.tsx | 125 ++++++++++++++++++ .../components/SearchResult/SearchResult.tsx | 60 +++++++++ .../src/components/SearchResult/index.tsx | 18 +++ plugins/search-react/src/components/index.ts | 1 + .../components/SearchResult/SearchResult.tsx | 3 + 8 files changed, 225 insertions(+), 9 deletions(-) rename plugins/{search => search-react}/src/components/SearchResult/SearchResult.stories.tsx (92%) create mode 100644 plugins/search-react/src/components/SearchResult/SearchResult.test.tsx create mode 100644 plugins/search-react/src/components/SearchResult/SearchResult.tsx create mode 100644 plugins/search-react/src/components/SearchResult/index.tsx diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 00325d6f64..09dd3d77a8 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -12,6 +12,7 @@ import { PropsWithChildren } from 'react'; import { default as React_2 } from 'react'; import { ReactElement } from 'react'; import { SearchQuery } from '@backstage/plugin-search-common'; +import { SearchResult as SearchResult_2 } from '@backstage/plugin-search-common'; import { SearchResultSet } from '@backstage/plugin-search-common'; // @public (undocumented) @@ -120,6 +121,14 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { debug?: boolean; }; +// @public (undocumented) +export const SearchResult: ({ children }: SearchResultProps) => JSX.Element; + +// @public (undocumented) +export type SearchResultProps = { + children: (results: { results: SearchResult_2[] }) => JSX.Element; +}; + // @public (undocumented) export const SelectFilter: (props: SearchFilterComponentProps) => JSX.Element; diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index ac8a43dee4..04932bd5ea 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -31,13 +31,16 @@ "start": "backstage-cli package start" }, "dependencies": { + "@backstage/plugin-search": "0.8.2-next.1", "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/core-components": "^0.9.5-next.1", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/version-bridge": "^1.0.1", - "react-use": "^17.3.2", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", - "@material-ui/lab": "4.0.0-alpha.57" + "@material-ui/lab": "4.0.0-alpha.57", + "react-router": "6.0.0-beta.0", + "react-use": "^17.3.2" }, "peerDependencies": { "@types/react": "^16.13.1 || ^17.0.0", diff --git a/plugins/search/src/components/SearchResult/SearchResult.stories.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx similarity index 92% rename from plugins/search/src/components/SearchResult/SearchResult.stories.tsx rename to plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx index 207f1ae1d7..38be586f97 100644 --- a/plugins/search/src/components/SearchResult/SearchResult.stories.tsx +++ b/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -18,13 +18,10 @@ import { Link } from '@backstage/core-components'; import { List, ListItem } from '@material-ui/core'; import React, { ComponentType } from 'react'; import { MemoryRouter } from 'react-router'; -import { DefaultResultListItem } from '../DefaultResultListItem'; +import { DefaultResultListItem } from '@backstage/plugin-search'; -import { - searchApiRef, - MockSearchApi, - SearchContextProvider, -} from '@backstage/plugin-search-react'; +import { searchApiRef, MockSearchApi } from '../../api'; +import { SearchContextProvider } from '../../context'; import { SearchResult } from './SearchResult'; import { TestApiProvider } from '@backstage/test-utils'; diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx new file mode 100644 index 0000000000..10437b3af7 --- /dev/null +++ b/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx @@ -0,0 +1,125 @@ +/* + * Copyright 2022 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 { renderInTestApp } from '@backstage/test-utils'; +import { waitFor } from '@testing-library/react'; +import React from 'react'; +import { useSearch } from '../../context'; +import { SearchResult } from './SearchResult'; + +jest.mock('../../context', () => ({ + ...jest.requireActual('../../context'), + useSearch: jest.fn().mockReturnValue({ + result: {}, + }), +})); + +describe('SearchResult', () => { + it('Progress rendered on Loading state', async () => { + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { loading: true }, + }); + + const { getByRole } = await renderInTestApp( + {() => <>}, + ); + + await waitFor(() => { + expect(getByRole('progressbar')).toBeInTheDocument(); + }); + }); + + it('Alert rendered on Error state', async () => { + const error = new Error('some error'); + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { loading: false, error }, + }); + + const { getByRole } = await renderInTestApp( + {() => <>}, + ); + + await waitFor(() => { + expect(getByRole('alert')).toHaveTextContent( + new RegExp(`Error encountered while fetching search results.*${error}`), + ); + }); + }); + + it('On no result value state', async () => { + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { loading: false, error: '', value: undefined }, + }); + + const { getByRole } = await renderInTestApp( + {() => <>}, + ); + + await waitFor(() => { + expect( + getByRole('heading', { name: 'Sorry, no results were found' }), + ).toBeInTheDocument(); + }); + }); + + it('On empty result value state', async () => { + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { loading: false, error: '', value: { results: [] } }, + }); + + const { getByRole } = await renderInTestApp( + {() => <>}, + ); + + await waitFor(() => { + expect( + getByRole('heading', { name: 'Sorry, no results were found' }), + ).toBeInTheDocument(); + }); + }); + + it('Calls children with results set to result.value', async () => { + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { + loading: false, + error: '', + value: { + totalCount: 1, + results: [ + { + type: 'some-type', + document: { + title: 'some-title', + text: 'some-text', + location: 'some-location', + }, + }, + ], + }, + }, + }); + + const { getByText } = await renderInTestApp( + + {({ results }) => { + return <>Results {results.length}; + }} + , + ); + + expect(getByText('Results 1')).toBeInTheDocument(); + }); +}); diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.tsx new file mode 100644 index 0000000000..a1ce3cea25 --- /dev/null +++ b/plugins/search-react/src/components/SearchResult/SearchResult.tsx @@ -0,0 +1,60 @@ +/* + * Copyright 2022 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 { + EmptyState, + Progress, + ResponseErrorPanel, +} from '@backstage/core-components'; +import { SearchResult } from '@backstage/plugin-search-common'; +import React from 'react'; +import { useSearch } from '../../context'; + +/** + * @public + */ +export type SearchResultProps = { + children: (results: { results: SearchResult[] }) => JSX.Element; +}; + +/** + * @public + */ +export const SearchResultComponent = ({ children }: SearchResultProps) => { + const { + result: { loading, error, value }, + } = useSearch(); + + if (loading) { + return ; + } + if (error) { + return ( + + ); + } + + if (!value?.results.length) { + return ; + } + + return <>{children({ results: value.results })}; +}; + +export { SearchResultComponent as SearchResult }; diff --git a/plugins/search-react/src/components/SearchResult/index.tsx b/plugins/search-react/src/components/SearchResult/index.tsx new file mode 100644 index 0000000000..2032fbbed9 --- /dev/null +++ b/plugins/search-react/src/components/SearchResult/index.tsx @@ -0,0 +1,18 @@ +/* + * Copyright 2022 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 { SearchResult } from './SearchResult'; +export type { SearchResultProps } from './SearchResult'; diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index 8e45c66fce..db9214d299 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -16,3 +16,4 @@ export * from './HighlightedSearchResultText'; export * from './SearchFilter'; +export * from './SearchResult'; diff --git a/plugins/search/src/components/SearchResult/SearchResult.tsx b/plugins/search/src/components/SearchResult/SearchResult.tsx index a62dddb924..77ee883164 100644 --- a/plugins/search/src/components/SearchResult/SearchResult.tsx +++ b/plugins/search/src/components/SearchResult/SearchResult.tsx @@ -27,6 +27,9 @@ type Props = { children: (results: { results: SearchResult[] }) => JSX.Element; }; +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + */ export const SearchResultComponent = ({ children }: Props) => { const { result: { loading, error, value }, From 193ae37f15760d95ea2e45bdd0c830e4551aac61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Wed, 1 Jun 2022 16:50:03 +0200 Subject: [PATCH 301/550] Move SearchResultPager from @backstage/plugin-search to @backstage/plugin-search-react and deprecate it in @backstage/plugin-search MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 3 + plugins/search-react/package.json | 1 + .../SearchResultPager.test.tsx | 58 ++++++++++++++++ .../SearchResultPager/SearchResultPager.tsx | 66 +++++++++++++++++++ .../src/components/SearchResultPager/index.ts | 17 +++++ plugins/search-react/src/components/index.ts | 1 + plugins/search/api-report.md | 2 +- .../SearchResultPager/SearchResultPager.tsx | 3 + 8 files changed, 150 insertions(+), 1 deletion(-) create mode 100644 plugins/search-react/src/components/SearchResultPager/SearchResultPager.test.tsx create mode 100644 plugins/search-react/src/components/SearchResultPager/SearchResultPager.tsx create mode 100644 plugins/search-react/src/components/SearchResultPager/index.ts diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 09dd3d77a8..5558fd3257 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -124,6 +124,9 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { // @public (undocumented) export const SearchResult: ({ children }: SearchResultProps) => JSX.Element; +// @public (undocumented) +export const SearchResultPager: () => JSX.Element; + // @public (undocumented) export type SearchResultProps = { children: (results: { results: SearchResult_2[] }) => JSX.Element; diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index 04932bd5ea..95507e64b7 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -38,6 +38,7 @@ "@backstage/version-bridge": "^1.0.1", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", + "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "react-router": "6.0.0-beta.0", "react-use": "^17.3.2" diff --git a/plugins/search-react/src/components/SearchResultPager/SearchResultPager.test.tsx b/plugins/search-react/src/components/SearchResultPager/SearchResultPager.test.tsx new file mode 100644 index 0000000000..24d9a76e51 --- /dev/null +++ b/plugins/search-react/src/components/SearchResultPager/SearchResultPager.test.tsx @@ -0,0 +1,58 @@ +/* + * Copyright 2022 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 from 'react'; + +import { renderInTestApp } from '@backstage/test-utils'; +import { waitFor } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; + +import { useSearch } from '../../context'; +import { SearchResultPager } from './SearchResultPager'; + +jest.mock('../../context', () => ({ + ...jest.requireActual('../../context'), + useSearch: jest.fn().mockReturnValue({ + result: {}, + }), +})); + +describe('SearchResultPager', () => { + it('renders pager buttons', async () => { + const fetchNextPage = jest.fn(); + const fetchPreviousPage = jest.fn(); + (useSearch as jest.Mock).mockReturnValueOnce({ + result: { loading: false, value: [] }, + fetchNextPage, + fetchPreviousPage, + }); + + const { getByLabelText } = await renderInTestApp(); + + await waitFor(() => { + expect(getByLabelText('previous page')).toBeInTheDocument(); + }); + await userEvent.click(getByLabelText('previous page')); + expect(fetchPreviousPage).toBeCalled(); + + await waitFor(() => { + expect(getByLabelText('next page')).toBeInTheDocument(); + }); + await userEvent.click(getByLabelText('next page')); + + expect(fetchNextPage).toBeCalled(); + }); +}); diff --git a/plugins/search-react/src/components/SearchResultPager/SearchResultPager.tsx b/plugins/search-react/src/components/SearchResultPager/SearchResultPager.tsx new file mode 100644 index 0000000000..68f8223ca0 --- /dev/null +++ b/plugins/search-react/src/components/SearchResultPager/SearchResultPager.tsx @@ -0,0 +1,66 @@ +/* + * Copyright 2022 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 from 'react'; + +import { Button, makeStyles } from '@material-ui/core'; +import ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos'; +import ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos'; + +import { useSearch } from '../../context'; + +const useStyles = makeStyles(theme => ({ + root: { + display: 'flex', + justifyContent: 'space-between', + gap: theme.spacing(2), + margin: theme.spacing(2, 0), + }, +})); + +/** + * @public + */ +export const SearchResultPager = () => { + const { fetchNextPage, fetchPreviousPage } = useSearch(); + const classes = useStyles(); + + if (!fetchNextPage && !fetchPreviousPage) { + return <>; + } + + return ( + + ); +}; diff --git a/plugins/search-react/src/components/SearchResultPager/index.ts b/plugins/search-react/src/components/SearchResultPager/index.ts new file mode 100644 index 0000000000..5ff203b15d --- /dev/null +++ b/plugins/search-react/src/components/SearchResultPager/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 { SearchResultPager } from './SearchResultPager'; diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index db9214d299..bfd65d471f 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -17,3 +17,4 @@ export * from './HighlightedSearchResultText'; export * from './SearchFilter'; export * from './SearchResult'; +export * from './SearchResultPager'; diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index ec60569af4..25a7f40394 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -237,7 +237,7 @@ export const SearchResult: ({ // Warning: (ae-missing-release-tag) "SearchResultPager" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // -// @public (undocumented) +// @public @deprecated (undocumented) export const SearchResultPager: () => JSX.Element; // Warning: (ae-missing-release-tag) "SearchType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) diff --git a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx index 6f4c8628a6..0e8d59a694 100644 --- a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx +++ b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx @@ -29,6 +29,9 @@ const useStyles = makeStyles(theme => ({ }, })); +/** + * @deprecated Moved to `@backstage/plugin-search-react`. + */ export const SearchResultPager = () => { const { fetchNextPage, fetchPreviousPage } = useSearch(); const classes = useStyles(); From ccbabfd4bdaea8319a911d2c4f718a8af153473b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Thu, 2 Jun 2022 10:49:09 +0200 Subject: [PATCH 302/550] Move SearchBar, SearchBarBase, and SearchTracker from @backstage/plugin-search to @backstage/plugin-search-react and deprecate SearchBar and SearchbarBase in @backstage/plugin-search MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 37 ++ .../SearchBar/SearchBar.stories.tsx | 14 +- .../components/SearchBar/SearchBar.test.tsx | 352 ++++++++++++++++++ .../src/components/SearchBar/SearchBar.tsx | 179 +++++++++ .../src/components/SearchBar/index.tsx | 18 + .../SearchTracker/SearchTracker.tsx | 6 +- .../src/components/SearchTracker/index.ts | 2 +- plugins/search-react/src/components/index.ts | 2 + plugins/search/api-report.md | 8 +- .../src/components/SearchBar/SearchBar.tsx | 10 +- 10 files changed, 613 insertions(+), 15 deletions(-) rename plugins/{search => search-react}/src/components/SearchBar/SearchBar.stories.tsx (93%) create mode 100644 plugins/search-react/src/components/SearchBar/SearchBar.test.tsx create mode 100644 plugins/search-react/src/components/SearchBar/SearchBar.tsx create mode 100644 plugins/search-react/src/components/SearchBar/index.tsx rename plugins/{search => search-react}/src/components/SearchTracker/SearchTracker.tsx (91%) rename plugins/{search => search-react}/src/components/SearchTracker/index.ts (93%) diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 5558fd3257..27279e09a9 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -7,6 +7,7 @@ import { ApiRef } from '@backstage/core-plugin-api'; import { AsyncState } from 'react-use/lib/useAsync'; +import { InputBaseProps } from '@material-ui/core'; import { JsonObject } from '@backstage/types'; import { PropsWithChildren } from 'react'; import { default as React_2 } from 'react'; @@ -62,6 +63,35 @@ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { multiple?: boolean; }; +// @public +export const SearchBar: ({ onChange, ...props }: SearchBarProps) => JSX.Element; + +// @public +export const SearchBarBase: ({ + onChange, + onKeyDown, + onSubmit, + debounceTime, + clearButton, + fullWidth, + value: defaultValue, + inputProps: defaultInputProps, + endAdornment: defaultEndAdornment, + ...props +}: SearchBarBaseProps) => JSX.Element; + +// @public +export type SearchBarBaseProps = Omit & { + debounceTime?: number; + clearButton?: boolean; + onClear?: () => void; + onSubmit?: () => void; + onChange: (value: string) => void; +}; + +// @public +export type SearchBarProps = Partial; + // @public export const SearchContextProvider: ( props: SearchContextProviderProps, @@ -135,6 +165,13 @@ export type SearchResultProps = { // @public (undocumented) export const SelectFilter: (props: SearchFilterComponentProps) => JSX.Element; +// @public +export const TrackSearch: ({ + children, +}: { + children: React_2.ReactChild; +}) => JSX.Element; + // @public export const useAsyncFilterValues: ( fn: ((partial: string) => Promise) | undefined, diff --git a/plugins/search/src/components/SearchBar/SearchBar.stories.tsx b/plugins/search-react/src/components/SearchBar/SearchBar.stories.tsx similarity index 93% rename from plugins/search/src/components/SearchBar/SearchBar.stories.tsx rename to plugins/search-react/src/components/SearchBar/SearchBar.stories.tsx index 9728101e97..88aed35f8d 100644 --- a/plugins/search/src/components/SearchBar/SearchBar.stories.tsx +++ b/plugins/search-react/src/components/SearchBar/SearchBar.stories.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -14,14 +14,14 @@ * limitations under the License. */ -import { Grid, makeStyles, Paper } from '@material-ui/core'; import React, { ComponentType } from 'react'; -import { - searchApiRef, - MockSearchApi, - SearchContextProvider, -} from '@backstage/plugin-search-react'; +import { Grid, makeStyles, Paper } from '@material-ui/core'; + import { TestApiProvider } from '@backstage/test-utils'; + +import { searchApiRef, MockSearchApi } from '../../api'; +import { SearchContextProvider } from '../../context'; + import { SearchBar } from './SearchBar'; export default { diff --git a/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx b/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx new file mode 100644 index 0000000000..4e2c4d7a5c --- /dev/null +++ b/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx @@ -0,0 +1,352 @@ +/* + * Copyright 2022 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 from 'react'; +import { screen, render, waitFor, act } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; + +import { configApiRef, analyticsApiRef } from '@backstage/core-plugin-api'; +import { ApiProvider, ConfigReader } from '@backstage/core-app-api'; +import { MockAnalyticsApi, TestApiRegistry } from '@backstage/test-utils'; + +import { searchApiRef } from '../../api'; +import { SearchContextProvider } from '../../context'; +import { SearchBar } from './SearchBar'; + +jest.mock('@backstage/core-plugin-api', () => ({ + ...jest.requireActual('@backstage/core-plugin-api'), +})); + +describe('SearchBar', () => { + const initialState = { + term: '', + filters: {}, + types: ['*'], + pageCursor: '', + }; + + const query = jest.fn().mockResolvedValue({}); + const analyticsApiSpy = new MockAnalyticsApi(); + let apiRegistry: TestApiRegistry; + + apiRegistry = TestApiRegistry.from( + [ + configApiRef, + new ConfigReader({ + app: { title: 'Mock title' }, + }), + ], + [searchApiRef, { query }], + ); + + const name = 'Search'; + const term = 'term'; + + afterAll(() => { + jest.resetAllMocks(); + }); + + it('Renders without exploding', async () => { + render( + + + + + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toBeInTheDocument(); + expect( + screen.getByPlaceholderText('Search in Mock title'), + ).toBeInTheDocument(); + }); + }); + + it('Renders with custom placeholder', async () => { + render( + + + + + , + , + ); + + await waitFor(() => { + expect( + screen.getByPlaceholderText('This is a custom placeholder'), + ).toBeInTheDocument(); + }); + }); + + it('Renders based on initial search', async () => { + render( + + + + + , + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toHaveValue(term); + }); + }); + + it('Updates term state when text is entered', async () => { + const user = userEvent.setup({ delay: null }); + jest.useFakeTimers(); + const defaultDebounceTime = 200; + + render( + + + + + , + , + ); + + const textbox = screen.getByRole('textbox', { name }); + + const value = 'value'; + + await user.type(textbox, value); + + act(() => { + jest.advanceTimersByTime(defaultDebounceTime); + }); + + await waitFor(() => { + expect(textbox).toHaveValue(value); + }); + + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ term: value }), + ); + jest.useRealTimers(); + }); + + it('Clear button clears term state', async () => { + render( + + + + + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toHaveValue(term); + }); + + await userEvent.click(screen.getByRole('button', { name: 'Clear' })); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toHaveValue(''); + }); + + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ term: '' }), + ); + }); + + it('Should not show clear button', async () => { + render( + + + + + , + ); + + await waitFor(() => { + expect( + screen.queryByRole('button', { name: 'Clear' }), + ).not.toBeInTheDocument(); + }); + }); + + it('Adheres to provided debounceTime', async () => { + const user = userEvent.setup({ delay: null }); + jest.useFakeTimers(); + + const debounceTime = 600; + + render( + + + + + , + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toBeInTheDocument(); + }); + + const textbox = screen.getByRole('textbox', { name }); + + const value = 'value'; + + await user.type(textbox, value); + + expect(query).not.toHaveBeenLastCalledWith( + expect.objectContaining({ term: value }), + ); + + act(() => { + jest.advanceTimersByTime(debounceTime); + }); + expect(textbox).toHaveValue(value); + + expect(query).toHaveBeenLastCalledWith( + expect.objectContaining({ term: value }), + ); + jest.useRealTimers(); + }); + + it('does not capture analytics event if not enabled in app', async () => { + const user = userEvent.setup({ delay: null }); + jest.useFakeTimers(); + + const debounceTime = 600; + + render( + + + + + , + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toBeInTheDocument(); + }); + + const textbox = screen.getByRole('textbox', { name }); + + const value = 'value'; + + await user.type(textbox, value); + + act(() => { + jest.advanceTimersByTime(debounceTime); + }); + + await waitFor(() => expect(textbox).toHaveValue(value)); + + expect(analyticsApiSpy.getEvents()).toHaveLength(0); + jest.useRealTimers(); + }); + + it('captures analytics events if enabled in app', async () => { + const user = userEvent.setup({ delay: null }); + jest.useFakeTimers(); + + const debounceTime = 600; + + apiRegistry = TestApiRegistry.from( + [analyticsApiRef, analyticsApiSpy], + [ + configApiRef, + new ConfigReader({ + app: { + title: 'Mock title', + analytics: { + ga: { + trackingId: 'xyz123', + }, + }, + }, + }), + ], + [searchApiRef, { query }], + ); + + render( + + + + + , + ); + + await waitFor(() => { + expect(screen.getByRole('textbox', { name })).toBeInTheDocument(); + }); + + const textbox = screen.getByRole('textbox', { name }); + + const value = 'value'; + + await user.type(textbox, value); + + expect(analyticsApiSpy.getEvents()).toHaveLength(0); + + act(() => { + jest.advanceTimersByTime(debounceTime); + }); + + await waitFor(() => expect(textbox).toHaveValue(value)); + + expect(analyticsApiSpy.getEvents()).toHaveLength(1); + expect(analyticsApiSpy.getEvents()[0]).toEqual({ + action: 'search', + context: { + extension: 'App', + pluginId: 'root', + routeRef: 'unknown', + searchTypes: 'software-catalog,techdocs', + }, + subject: 'value', + }); + + await user.clear(textbox); + + // make sure new term is captured + await user.type(textbox, 'new value'); + + act(() => { + jest.advanceTimersByTime(debounceTime); + }); + + await waitFor(() => expect(textbox).toHaveValue('new value')); + + expect(analyticsApiSpy.getEvents()).toHaveLength(2); + expect(analyticsApiSpy.getEvents()[1]).toEqual({ + action: 'search', + context: { + extension: 'App', + pluginId: 'root', + routeRef: 'unknown', + searchTypes: 'software-catalog,techdocs', + }, + subject: 'new value', + }); + jest.useRealTimers(); + }); +}); diff --git a/plugins/search-react/src/components/SearchBar/SearchBar.tsx b/plugins/search-react/src/components/SearchBar/SearchBar.tsx new file mode 100644 index 0000000000..b3c8ec9fa5 --- /dev/null +++ b/plugins/search-react/src/components/SearchBar/SearchBar.tsx @@ -0,0 +1,179 @@ +/* + * Copyright 2022 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, { + ChangeEvent, + KeyboardEvent, + useState, + useEffect, + useCallback, +} from 'react'; +import useDebounce from 'react-use/lib/useDebounce'; +import { + InputBase, + InputBaseProps, + InputAdornment, + IconButton, +} from '@material-ui/core'; +import SearchIcon from '@material-ui/icons/Search'; +import ClearButton from '@material-ui/icons/Clear'; + +import { configApiRef, useApi } from '@backstage/core-plugin-api'; + +import { + SearchContextProvider, + useSearch, + useSearchContextCheck, +} from '../../context'; +import { TrackSearch } from '../SearchTracker'; + +/** + * Props for {@link SearchBarBase}. + * + * @public + */ +export type SearchBarBaseProps = Omit & { + debounceTime?: number; + clearButton?: boolean; + onClear?: () => void; + onSubmit?: () => void; + onChange: (value: string) => void; +}; + +/** + * All search boxes exported by the search plugin are based on the , + * and this one is based on the component from Material UI. + * Recommended if you don't use Search Provider or Search Context. + * + * @public + */ +export const SearchBarBase = ({ + onChange, + onKeyDown, + onSubmit, + debounceTime = 200, + clearButton = true, + fullWidth = true, + value: defaultValue, + inputProps: defaultInputProps = {}, + endAdornment: defaultEndAdornment, + ...props +}: SearchBarBaseProps) => { + const configApi = useApi(configApiRef); + const [value, setValue] = useState(defaultValue as string); + const hasSearchContext = useSearchContextCheck(); + + useEffect(() => { + setValue(prevValue => + prevValue !== defaultValue ? (defaultValue as string) : prevValue, + ); + }, [defaultValue]); + + useDebounce(() => onChange(value), debounceTime, [value]); + + const handleChange = useCallback( + (e: ChangeEvent) => { + setValue(e.target.value); + }, + [setValue], + ); + + const handleKeyDown = useCallback( + (e: KeyboardEvent) => { + if (onKeyDown) onKeyDown(e); + if (onSubmit && e.key === 'Enter') { + onSubmit(); + } + }, + [onKeyDown, onSubmit], + ); + + const handleClear = useCallback(() => { + onChange(''); + }, [onChange]); + + const placeholder = `Search in ${ + configApi.getOptionalString('app.title') || 'Backstage' + }`; + + const startAdornment = ( + + + + + + ); + + const endAdornment = ( + + + + + + ); + + const searchBar = ( + + + + ); + + return hasSearchContext ? ( + searchBar + ) : ( + {searchBar} + ); +}; + +/** + * Props for {@link SearchBar}. + * + * @public + */ +export type SearchBarProps = Partial; + +/** + * Recommended search bar when you use the Search Provider or Search Context. + * + * @public + */ +export const SearchBar = ({ onChange, ...props }: SearchBarProps) => { + const { term, setTerm } = useSearch(); + + const handleChange = useCallback( + (newValue: string) => { + if (onChange) { + onChange(newValue); + } else { + setTerm(newValue); + } + }, + [onChange, setTerm], + ); + + return ; +}; diff --git a/plugins/search-react/src/components/SearchBar/index.tsx b/plugins/search-react/src/components/SearchBar/index.tsx new file mode 100644 index 0000000000..075a0c7dc2 --- /dev/null +++ b/plugins/search-react/src/components/SearchBar/index.tsx @@ -0,0 +1,18 @@ +/* + * Copyright 2022 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 { SearchBar, SearchBarBase } from './SearchBar'; +export type { SearchBarProps, SearchBarBaseProps } from './SearchBar'; diff --git a/plugins/search/src/components/SearchTracker/SearchTracker.tsx b/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx similarity index 91% rename from plugins/search/src/components/SearchTracker/SearchTracker.tsx rename to plugins/search-react/src/components/SearchTracker/SearchTracker.tsx index 35cfa1ec38..8ca7373298 100644 --- a/plugins/search/src/components/SearchTracker/SearchTracker.tsx +++ b/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -16,10 +16,12 @@ import React, { useEffect } from 'react'; import { useAnalytics } from '@backstage/core-plugin-api'; -import { useSearch } from '@backstage/plugin-search-react'; +import { useSearch } from '../../context'; /** * Capture search event on term change. + * + * @public */ export const TrackSearch = ({ children }: { children: React.ReactChild }) => { const analytics = useAnalytics(); diff --git a/plugins/search/src/components/SearchTracker/index.ts b/plugins/search-react/src/components/SearchTracker/index.ts similarity index 93% rename from plugins/search/src/components/SearchTracker/index.ts rename to plugins/search-react/src/components/SearchTracker/index.ts index 5e6a75aa25..9932f2eaec 100644 --- a/plugins/search/src/components/SearchTracker/index.ts +++ b/plugins/search-react/src/components/SearchTracker/index.ts @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index bfd65d471f..5b7767859e 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -18,3 +18,5 @@ export * from './HighlightedSearchResultText'; export * from './SearchFilter'; export * from './SearchResult'; export * from './SearchResultPager'; +export * from './SearchBar'; +export * from './SearchTracker'; diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 25a7f40394..ea5f0b4d0d 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -87,10 +87,10 @@ export type SearchAutocompleteFilterProps = SearchFilterComponentProps_2 & { multiple?: boolean; }; -// @public +// @public @deprecated (undocumented) export const SearchBar: ({ onChange, ...props }: SearchBarProps) => JSX.Element; -// @public +// @public @deprecated (undocumented) export const SearchBarBase: ({ onChange, onKeyDown, @@ -104,7 +104,7 @@ export const SearchBarBase: ({ ...props }: SearchBarBaseProps) => JSX.Element; -// @public +// @public @deprecated (undocumented) export type SearchBarBaseProps = Omit & { debounceTime?: number; clearButton?: boolean; @@ -121,7 +121,7 @@ export const SearchBarNext: ({ ...props }: Partial) => JSX.Element; -// @public +// @public @deprecated (undocumented) export type SearchBarProps = Partial; // Warning: (ae-missing-release-tag) "SearchFilter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) diff --git a/plugins/search/src/components/SearchBar/SearchBar.tsx b/plugins/search/src/components/SearchBar/SearchBar.tsx index b5d55fed8e..cb61089eb6 100644 --- a/plugins/search/src/components/SearchBar/SearchBar.tsx +++ b/plugins/search/src/components/SearchBar/SearchBar.tsx @@ -36,10 +36,12 @@ import { SearchContextProvider, useSearch, useSearchContextCheck, + TrackSearch, } from '@backstage/plugin-search-react'; -import { TrackSearch } from '../SearchTracker'; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * Props for {@link SearchBarBase}. * * @public @@ -53,6 +55,8 @@ export type SearchBarBaseProps = Omit & { }; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * All search boxes exported by the search plugin are based on the , * and this one is based on the component from Material UI. * Recommended if you don't use Search Provider or Search Context. @@ -149,6 +153,8 @@ export const SearchBarBase = ({ }; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * Props for {@link SearchBar}. * * @public @@ -156,6 +162,8 @@ export const SearchBarBase = ({ export type SearchBarProps = Partial; /** + * @deprecated Moved to `@backstage/plugin-search-react`. + * * Recommended search bar when you use the Search Provider or Search Context. * * @public From b3389f1eeef23a8d025370b849f63b0be6856963 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Thu, 2 Jun 2022 13:15:29 +0200 Subject: [PATCH 303/550] remove Search*Next components MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search/api-report.md | 14 ----------- plugins/search/src/index.ts | 2 -- plugins/search/src/plugin.ts | 49 ------------------------------------ 3 files changed, 65 deletions(-) diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index ea5f0b4d0d..0527c46fe8 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -113,14 +113,6 @@ export type SearchBarBaseProps = Omit & { onChange: (value: string) => void; }; -// Warning: (ae-missing-release-tag) "SearchBarNext" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public @deprecated (undocumented) -export const SearchBarNext: ({ - onChange, - ...props -}: Partial) => JSX.Element; - // @public @deprecated (undocumented) export type SearchBarProps = Partial; @@ -208,18 +200,12 @@ export type SearchModalValue = { // @public (undocumented) export const SearchPage: () => JSX.Element; -// Warning: (ae-missing-release-tag) "SearchPageNext" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public @deprecated (undocumented) -export const SearchPageNext: () => JSX.Element; - // Warning: (ae-missing-release-tag) "searchPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) const searchPlugin: BackstagePlugin< { root: RouteRef; - nextRoot: RouteRef; }, {} >; diff --git a/plugins/search/src/index.ts b/plugins/search/src/index.ts index 2eb2ed277b..bcb8f40506 100644 --- a/plugins/search/src/index.ts +++ b/plugins/search/src/index.ts @@ -60,9 +60,7 @@ export type { SidebarSearchModalProps } from './components/SidebarSearchModal'; export { DefaultResultListItem, HomePageSearchBar, - SearchBarNext, SearchPage, - SearchPageNext, searchPlugin as plugin, searchPlugin, SearchResult, diff --git a/plugins/search/src/plugin.ts b/plugins/search/src/plugin.ts index 96e7bc1eed..e535295604 100644 --- a/plugins/search/src/plugin.ts +++ b/plugins/search/src/plugin.ts @@ -30,10 +30,6 @@ export const rootRouteRef = createRouteRef({ id: 'search', }); -export const rootNextRouteRef = createRouteRef({ - id: 'search:next', -}); - export const searchPlugin = createPlugin({ id: 'search', apis: [ @@ -47,7 +43,6 @@ export const searchPlugin = createPlugin({ ], routes: { root: rootRouteRef, - nextRoot: rootNextRouteRef, }, }); @@ -59,20 +54,6 @@ export const SearchPage = searchPlugin.provide( }), ); -/** - * @deprecated This component was used for rapid prototyping of the Backstage - * Search platform. Now that the API has stabilized, you should use the - * component instead. This component will be removed in an - * upcoming release. - */ -export const SearchPageNext = searchPlugin.provide( - createRoutableExtension({ - name: 'SearchPageNext', - component: () => import('./components/SearchPage').then(m => m.SearchPage), - mountPoint: rootNextRouteRef, - }), -); - export const SearchBar = searchPlugin.provide( createComponentExtension({ name: 'SearchBar', @@ -82,21 +63,6 @@ export const SearchBar = searchPlugin.provide( }), ); -/** - * @deprecated This component was used for rapid prototyping of the Backstage - * Search platform. Now that the API has stabilized, you should use the - * component instead. This component will be removed in an - * upcoming release. - */ -export const SearchBarNext = searchPlugin.provide( - createComponentExtension({ - name: 'SearchBarNext', - component: { - lazy: () => import('./components/SearchBar').then(m => m.SearchBar), - }, - }), -); - export const SearchResult = searchPlugin.provide( createComponentExtension({ name: 'SearchResult', @@ -106,21 +72,6 @@ export const SearchResult = searchPlugin.provide( }), ); -/** - * @deprecated This component was used for rapid prototyping of the Backstage - * Search platform. Now that the API has stabilized, you should use the - * component instead. This component will be removed in an - * upcoming release. - */ -export const SearchResultNext = searchPlugin.provide( - createComponentExtension({ - name: 'SearchResultNext', - component: { - lazy: () => import('./components/SearchResult').then(m => m.SearchResult), - }, - }), -); - export const SidebarSearchModal = searchPlugin.provide( createComponentExtension({ name: 'SidebarSearchModal', From bc6ce63e7bf5794cddf976e9e7eb8897d71a6f74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 09:41:14 +0200 Subject: [PATCH 304/550] Move DefaultResultListItem from @backstage/plugin-search to @backstage/plugin-search-react and deprecate it in @backstage/plugin-search, and properly deprecate SearchResult in @backstage/plugin-search MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 28 +++- plugins/search-react/package.json | 2 +- .../DefaultResultListItem.stories.tsx | 2 +- .../DefaultResultListItem.test.tsx | 2 +- .../DefaultResultListItem.tsx | 43 +++++- .../components/DefaultResultListItem/index.ts | 3 +- .../SearchResult/SearchResult.stories.tsx | 9 +- .../SearchResult/SearchResult.test.tsx | 6 +- .../components/SearchResult/SearchResult.tsx | 29 +++- .../src/components/SearchResult/index.tsx | 2 +- plugins/search-react/src/components/index.ts | 1 + plugins/search/api-report.md | 31 ++--- .../SearchModal/SearchModal.stories.tsx | 4 +- .../components/SearchModal/SearchModal.tsx | 4 +- .../SearchResult/SearchResult.test.tsx | 125 ------------------ .../components/SearchResult/SearchResult.tsx | 57 -------- .../src/components/SearchResult/index.tsx | 17 --- plugins/search/src/plugin.ts | 33 ++--- 18 files changed, 131 insertions(+), 267 deletions(-) rename plugins/{search => search-react}/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx (98%) rename plugins/{search => search-react}/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx (98%) rename plugins/{search => search-react}/src/components/DefaultResultListItem/DefaultResultListItem.tsx (71%) rename plugins/{search => search-react}/src/components/DefaultResultListItem/index.ts (84%) delete mode 100644 plugins/search/src/components/SearchResult/SearchResult.test.tsx delete mode 100644 plugins/search/src/components/SearchResult/SearchResult.tsx delete mode 100644 plugins/search/src/components/SearchResult/index.tsx diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 27279e09a9..c36e7c67fe 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -12,6 +12,9 @@ import { JsonObject } from '@backstage/types'; import { PropsWithChildren } from 'react'; import { default as React_2 } from 'react'; import { ReactElement } from 'react'; +import { ReactNode } from 'react'; +import { ResultHighlight } from '@backstage/plugin-search-common'; +import { SearchDocument } from '@backstage/plugin-search-common'; import { SearchQuery } from '@backstage/plugin-search-common'; import { SearchResult as SearchResult_2 } from '@backstage/plugin-search-common'; import { SearchResultSet } from '@backstage/plugin-search-common'; @@ -24,6 +27,20 @@ export const AutocompleteFilter: ( // @public (undocumented) export const CheckboxFilter: (props: SearchFilterComponentProps) => JSX.Element; +// @public +export const DefaultResultListItem: ( + props: DefaultResultListItemProps, +) => JSX.Element; + +// @public +export type DefaultResultListItemProps = { + icon?: ReactNode; + secondaryAction?: ReactNode; + result: SearchDocument; + highlight?: ResultHighlight; + lineClamp?: number; +}; + // @public (undocumented) export const HighlightedSearchResultText: ({ text, @@ -151,13 +168,18 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { debug?: boolean; }; -// @public (undocumented) -export const SearchResult: ({ children }: SearchResultProps) => JSX.Element; +// @public +export const SearchResult: (props: SearchResultProps) => JSX.Element; + +// @public +export const SearchResultComponent: ({ + children, +}: SearchResultProps) => JSX.Element; // @public (undocumented) export const SearchResultPager: () => JSX.Element; -// @public (undocumented) +// @public export type SearchResultProps = { children: (results: { results: SearchResult_2[] }) => JSX.Element; }; diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index 95507e64b7..60cdc479bb 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -31,11 +31,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/plugin-search": "0.8.2-next.1", "@backstage/plugin-search-common": "^0.3.5-next.0", "@backstage/core-components": "^0.9.5-next.1", "@backstage/core-plugin-api": "^1.0.3-next.0", "@backstage/version-bridge": "^1.0.1", + "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", diff --git a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx similarity index 98% rename from plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx rename to plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx index fb56d1ecdb..3b54e69a19 100644 --- a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx +++ b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.stories.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. diff --git a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx similarity index 98% rename from plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx rename to plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx index 26d081b3b6..e94d394639 100644 --- a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx +++ b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.test.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. diff --git a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.tsx b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx similarity index 71% rename from plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.tsx rename to plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx index 5ce2d0744a..48f12213e4 100644 --- a/plugins/search/src/components/DefaultResultListItem/DefaultResultListItem.tsx +++ b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -15,11 +15,12 @@ */ import React, { ReactNode } from 'react'; +import { AnalyticsContext } from '@backstage/core-plugin-api'; import { ResultHighlight, SearchDocument, } from '@backstage/plugin-search-common'; -import { HighlightedSearchResultText } from '@backstage/plugin-search-react'; +import { HighlightedSearchResultText } from '../HighlightedSearchResultText'; import { ListItem, ListItemIcon, @@ -29,7 +30,12 @@ import { } from '@material-ui/core'; import { Link } from '@backstage/core-components'; -type Props = { +/** + * Props for {@link DefaultResultListItem} + * + * @public + */ +export type DefaultResultListItemProps = { icon?: ReactNode; secondaryAction?: ReactNode; result: SearchDocument; @@ -37,13 +43,18 @@ type Props = { lineClamp?: number; }; -export const DefaultResultListItem = ({ +/** + * A default result list item. + * + * @public + */ +export const DefaultResultListItemComponent = ({ result, highlight, icon, secondaryAction, lineClamp = 5, -}: Props) => { +}: DefaultResultListItemProps) => { return ( @@ -88,3 +99,25 @@ export const DefaultResultListItem = ({ ); }; + +/** + * A higher order function providing AnalyticsContext to the DefaultResultListItemComponent. + * + * @public + */ +const HigherOrderDefaultResultListItem = ( + props: DefaultResultListItemProps, +) => { + return ( + + + + ); +}; + +export { HigherOrderDefaultResultListItem as DefaultResultListItem }; diff --git a/plugins/search/src/components/DefaultResultListItem/index.ts b/plugins/search-react/src/components/DefaultResultListItem/index.ts similarity index 84% rename from plugins/search/src/components/DefaultResultListItem/index.ts rename to plugins/search-react/src/components/DefaultResultListItem/index.ts index 77f975a9ef..a555f25c02 100644 --- a/plugins/search/src/components/DefaultResultListItem/index.ts +++ b/plugins/search-react/src/components/DefaultResultListItem/index.ts @@ -1,5 +1,5 @@ /* - * Copyright 2021 The Backstage Authors + * Copyright 2022 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. @@ -15,3 +15,4 @@ */ export { DefaultResultListItem } from './DefaultResultListItem'; +export type { DefaultResultListItemProps } from './DefaultResultListItem'; diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx index 38be586f97..32f9a19a07 100644 --- a/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx +++ b/plugins/search-react/src/components/SearchResult/SearchResult.stories.tsx @@ -14,16 +14,17 @@ * limitations under the License. */ -import { Link } from '@backstage/core-components'; -import { List, ListItem } from '@material-ui/core'; import React, { ComponentType } from 'react'; +import { List, ListItem } from '@material-ui/core'; import { MemoryRouter } from 'react-router'; -import { DefaultResultListItem } from '@backstage/plugin-search'; + +import { Link } from '@backstage/core-components'; +import { TestApiProvider } from '@backstage/test-utils'; import { searchApiRef, MockSearchApi } from '../../api'; import { SearchContextProvider } from '../../context'; +import { DefaultResultListItem } from '../DefaultResultListItem'; import { SearchResult } from './SearchResult'; -import { TestApiProvider } from '@backstage/test-utils'; const mockResults = { results: [ diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx index 10437b3af7..988d59d7cf 100644 --- a/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx +++ b/plugins/search-react/src/components/SearchResult/SearchResult.test.tsx @@ -14,9 +14,11 @@ * limitations under the License. */ -import { renderInTestApp } from '@backstage/test-utils'; -import { waitFor } from '@testing-library/react'; import React from 'react'; +import { waitFor } from '@testing-library/react'; + +import { renderInTestApp } from '@backstage/test-utils'; + import { useSearch } from '../../context'; import { SearchResult } from './SearchResult'; diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.tsx index a1ce3cea25..54024d546a 100644 --- a/plugins/search-react/src/components/SearchResult/SearchResult.tsx +++ b/plugins/search-react/src/components/SearchResult/SearchResult.tsx @@ -14,16 +14,21 @@ * limitations under the License. */ +import React from 'react'; + import { EmptyState, Progress, ResponseErrorPanel, } from '@backstage/core-components'; +import { AnalyticsContext } from '@backstage/core-plugin-api'; import { SearchResult } from '@backstage/plugin-search-common'; -import React from 'react'; + import { useSearch } from '../../context'; /** + * Props for {@link SearchResultComponent} + * * @public */ export type SearchResultProps = { @@ -31,6 +36,8 @@ export type SearchResultProps = { }; /** + * A component returning the search result. + * * @public */ export const SearchResultComponent = ({ children }: SearchResultProps) => { @@ -57,4 +64,22 @@ export const SearchResultComponent = ({ children }: SearchResultProps) => { return <>{children({ results: value.results })}; }; -export { SearchResultComponent as SearchResult }; +/** + * A higher order function providing AnalyticsContext to the SearchResultComponent. + * + * @public + */ +const HigherOrderSearchResult = (props: SearchResultProps) => { + return ( + + + + ); +}; + +export { HigherOrderSearchResult as SearchResult }; diff --git a/plugins/search-react/src/components/SearchResult/index.tsx b/plugins/search-react/src/components/SearchResult/index.tsx index 2032fbbed9..503ac47bbd 100644 --- a/plugins/search-react/src/components/SearchResult/index.tsx +++ b/plugins/search-react/src/components/SearchResult/index.tsx @@ -14,5 +14,5 @@ * limitations under the License. */ -export { SearchResult } from './SearchResult'; +export { SearchResult, SearchResultComponent } from './SearchResult'; export type { SearchResultProps } from './SearchResult'; diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index 5b7767859e..155a4c3b12 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -20,3 +20,4 @@ export * from './SearchResult'; export * from './SearchResultPager'; export * from './SearchBar'; export * from './SearchTracker'; +export * from './DefaultResultListItem'; diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 0527c46fe8..746e23e880 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -6,33 +6,22 @@ /// import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { DefaultResultListItemProps } from '@backstage/plugin-search-react/src/components/DefaultResultListItem/DefaultResultListItem'; import { IconComponent } from '@backstage/core-plugin-api'; import { InputBaseProps } from '@material-ui/core'; import { ReactElement } from 'react'; import { ReactNode } from 'react'; -import { ResultHighlight } from '@backstage/plugin-search-common'; import { RouteRef } from '@backstage/core-plugin-api'; import { SearchAutocompleteFilterProps as SearchAutocompleteFilterProps_2 } from '@backstage/plugin-search-react'; -import { SearchDocument } from '@backstage/plugin-search-common'; import { SearchFilterComponentProps as SearchFilterComponentProps_2 } from '@backstage/plugin-search-react'; -import { SearchResult as SearchResult_2 } from '@backstage/plugin-search-common'; +import { SearchResultProps } from '@backstage/plugin-search-react'; // Warning: (ae-missing-release-tag) "DefaultResultListItem" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // -// @public (undocumented) -export const DefaultResultListItem: ({ - result, - highlight, - icon, - secondaryAction, - lineClamp, -}: { - icon?: ReactNode; - secondaryAction?: ReactNode; - result: SearchDocument; - highlight?: ResultHighlight | undefined; - lineClamp?: number | undefined; -}) => JSX.Element; +// @public @deprecated (undocumented) +export const DefaultResultListItem: ( + props: DefaultResultListItemProps, +) => JSX.Element; // Warning: (ae-forgotten-export) The symbol "FiltersProps" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "Filters" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -214,12 +203,8 @@ export { searchPlugin }; // Warning: (ae-missing-release-tag) "SearchResult" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // -// @public (undocumented) -export const SearchResult: ({ - children, -}: { - children: (results: { results: SearchResult_2[] }) => JSX.Element; -}) => JSX.Element; +// @public @deprecated (undocumented) +export const SearchResult: (props: SearchResultProps) => JSX.Element; // Warning: (ae-missing-release-tag) "SearchResultPager" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // diff --git a/plugins/search/src/components/SearchModal/SearchModal.stories.tsx b/plugins/search/src/components/SearchModal/SearchModal.stories.tsx index a4e92f53ec..870f73e472 100644 --- a/plugins/search/src/components/SearchModal/SearchModal.stories.tsx +++ b/plugins/search/src/components/SearchModal/SearchModal.stories.tsx @@ -27,16 +27,16 @@ import { import { makeStyles } from '@material-ui/core/styles'; import React, { ComponentType } from 'react'; import { rootRouteRef } from '../../plugin'; -import { DefaultResultListItem } from '../DefaultResultListItem'; import { SearchBar } from '../SearchBar'; import { + DefaultResultListItem, searchApiRef, MockSearchApi, SearchContextProvider, + SearchResult, } from '@backstage/plugin-search-react'; import { TestApiProvider } from '@backstage/test-utils'; import { SearchModal } from './SearchModal'; -import { SearchResult } from '../SearchResult'; import { SearchResultPager } from '../SearchResultPager'; import { SearchType } from '../SearchType'; import { useSearchModal } from './useSearchModal'; diff --git a/plugins/search/src/components/SearchModal/SearchModal.tsx b/plugins/search/src/components/SearchModal/SearchModal.tsx index b3df52d42e..18776d444d 100644 --- a/plugins/search/src/components/SearchModal/SearchModal.tsx +++ b/plugins/search/src/components/SearchModal/SearchModal.tsx @@ -29,10 +29,10 @@ import { import LaunchIcon from '@material-ui/icons/Launch'; import { makeStyles } from '@material-ui/core/styles'; import { SearchBar } from '../SearchBar'; -import { DefaultResultListItem } from '../DefaultResultListItem'; -import { SearchResult } from '../SearchResult'; import { + DefaultResultListItem, SearchContextProvider, + SearchResult, useSearch, } from '@backstage/plugin-search-react'; import { SearchResultPager } from '../SearchResultPager'; diff --git a/plugins/search/src/components/SearchResult/SearchResult.test.tsx b/plugins/search/src/components/SearchResult/SearchResult.test.tsx deleted file mode 100644 index d93eacaef0..0000000000 --- a/plugins/search/src/components/SearchResult/SearchResult.test.tsx +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Copyright 2021 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 { renderInTestApp } from '@backstage/test-utils'; -import { waitFor } from '@testing-library/react'; -import React from 'react'; -import { useSearch } from '@backstage/plugin-search-react'; -import { SearchResult } from './SearchResult'; - -jest.mock('@backstage/plugin-search-react', () => ({ - ...jest.requireActual('@backstage/plugin-search-react'), - useSearch: jest.fn().mockReturnValue({ - result: {}, - }), -})); - -describe('SearchResult', () => { - it('Progress rendered on Loading state', async () => { - (useSearch as jest.Mock).mockReturnValueOnce({ - result: { loading: true }, - }); - - const { getByRole } = await renderInTestApp( - {() => <>}, - ); - - await waitFor(() => { - expect(getByRole('progressbar')).toBeInTheDocument(); - }); - }); - - it('Alert rendered on Error state', async () => { - const error = new Error('some error'); - (useSearch as jest.Mock).mockReturnValueOnce({ - result: { loading: false, error }, - }); - - const { getByRole } = await renderInTestApp( - {() => <>}, - ); - - await waitFor(() => { - expect(getByRole('alert')).toHaveTextContent( - new RegExp(`Error encountered while fetching search results.*${error}`), - ); - }); - }); - - it('On no result value state', async () => { - (useSearch as jest.Mock).mockReturnValueOnce({ - result: { loading: false, error: '', value: undefined }, - }); - - const { getByRole } = await renderInTestApp( - {() => <>}, - ); - - await waitFor(() => { - expect( - getByRole('heading', { name: 'Sorry, no results were found' }), - ).toBeInTheDocument(); - }); - }); - - it('On empty result value state', async () => { - (useSearch as jest.Mock).mockReturnValueOnce({ - result: { loading: false, error: '', value: { results: [] } }, - }); - - const { getByRole } = await renderInTestApp( - {() => <>}, - ); - - await waitFor(() => { - expect( - getByRole('heading', { name: 'Sorry, no results were found' }), - ).toBeInTheDocument(); - }); - }); - - it('Calls children with results set to result.value', async () => { - (useSearch as jest.Mock).mockReturnValueOnce({ - result: { - loading: false, - error: '', - value: { - totalCount: 1, - results: [ - { - type: 'some-type', - document: { - title: 'some-title', - text: 'some-text', - location: 'some-location', - }, - }, - ], - }, - }, - }); - - const { getByText } = await renderInTestApp( - - {({ results }) => { - return <>Results {results.length}; - }} - , - ); - - expect(getByText('Results 1')).toBeInTheDocument(); - }); -}); diff --git a/plugins/search/src/components/SearchResult/SearchResult.tsx b/plugins/search/src/components/SearchResult/SearchResult.tsx deleted file mode 100644 index 77ee883164..0000000000 --- a/plugins/search/src/components/SearchResult/SearchResult.tsx +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright 2021 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 { - EmptyState, - Progress, - ResponseErrorPanel, -} from '@backstage/core-components'; -import { SearchResult } from '@backstage/plugin-search-common'; -import React from 'react'; -import { useSearch } from '@backstage/plugin-search-react'; - -type Props = { - children: (results: { results: SearchResult[] }) => JSX.Element; -}; - -/** - * @deprecated Moved to `@backstage/plugin-search-react`. - */ -export const SearchResultComponent = ({ children }: Props) => { - const { - result: { loading, error, value }, - } = useSearch(); - - if (loading) { - return ; - } - if (error) { - return ( - - ); - } - - if (!value?.results.length) { - return ; - } - - return <>{children({ results: value.results })}; -}; - -export { SearchResultComponent as SearchResult }; diff --git a/plugins/search/src/components/SearchResult/index.tsx b/plugins/search/src/components/SearchResult/index.tsx deleted file mode 100644 index e7d088f286..0000000000 --- a/plugins/search/src/components/SearchResult/index.tsx +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright 2021 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 { SearchResult } from './SearchResult'; diff --git a/plugins/search/src/plugin.ts b/plugins/search/src/plugin.ts index e535295604..fdfa2f59d0 100644 --- a/plugins/search/src/plugin.ts +++ b/plugins/search/src/plugin.ts @@ -15,7 +15,11 @@ */ import { SearchClient } from './apis'; -import { searchApiRef } from '@backstage/plugin-search-react'; +import { + searchApiRef, + SearchResult as RealSearchResult, + DefaultResultListItem as RealDefaultResultListItem, +} from '@backstage/plugin-search-react'; import { createApiFactory, createPlugin, @@ -63,14 +67,10 @@ export const SearchBar = searchPlugin.provide( }), ); -export const SearchResult = searchPlugin.provide( - createComponentExtension({ - name: 'SearchResult', - component: { - lazy: () => import('./components/SearchResult').then(m => m.SearchResult), - }, - }), -); +/** + * @deprecated Import from `@backstage/plugin-search-react` instead. + */ +export const SearchResult = RealSearchResult; export const SidebarSearchModal = searchPlugin.provide( createComponentExtension({ @@ -84,17 +84,10 @@ export const SidebarSearchModal = searchPlugin.provide( }), ); -export const DefaultResultListItem = searchPlugin.provide( - createComponentExtension({ - name: 'DefaultResultListItem', - component: { - lazy: () => - import('./components/DefaultResultListItem').then( - m => m.DefaultResultListItem, - ), - }, - }), -); +/** + * @deprecated Import from `@backstage/plugin-search-react` instead. + */ +export const DefaultResultListItem = RealDefaultResultListItem; export const HomePageSearchBar = searchPlugin.provide( createComponentExtension({ From a7a0e2520ae5ccc0b699ea64a37d7d3817db661d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 09:44:22 +0200 Subject: [PATCH 305/550] cleanup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search/api-report.md | 2 +- plugins/search/src/plugin.ts | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 746e23e880..3cbbf8072c 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -6,7 +6,7 @@ /// import { BackstagePlugin } from '@backstage/core-plugin-api'; -import { DefaultResultListItemProps } from '@backstage/plugin-search-react/src/components/DefaultResultListItem/DefaultResultListItem'; +import { DefaultResultListItemProps } from '@backstage/plugin-search-react'; import { IconComponent } from '@backstage/core-plugin-api'; import { InputBaseProps } from '@material-ui/core'; import { ReactElement } from 'react'; diff --git a/plugins/search/src/plugin.ts b/plugins/search/src/plugin.ts index fdfa2f59d0..103d67b81a 100644 --- a/plugins/search/src/plugin.ts +++ b/plugins/search/src/plugin.ts @@ -58,15 +58,6 @@ export const SearchPage = searchPlugin.provide( }), ); -export const SearchBar = searchPlugin.provide( - createComponentExtension({ - name: 'SearchBar', - component: { - lazy: () => import('./components/SearchBar').then(m => m.SearchBar), - }, - }), -); - /** * @deprecated Import from `@backstage/plugin-search-react` instead. */ From b3d64b448ec9f9f9e82ac52c4335f684dcb041e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 11:35:52 +0200 Subject: [PATCH 306/550] api-report cleanup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search-react/api-report.md | 2 +- .../HighlightedSearchResultText.tsx | 2 + plugins/search/api-report.md | 73 +++++++------------ .../search/src/components/Filters/Filters.tsx | 16 +++- .../src/components/Filters/FiltersButton.tsx | 10 ++- .../search/src/components/Filters/index.tsx | 3 +- .../HomePageComponent/HomePageSearchBar.tsx | 4 +- .../src/components/SearchBar/SearchBar.tsx | 12 +-- .../SearchFilter.Autocomplete.tsx | 4 +- .../components/SearchFilter/SearchFilter.tsx | 11 ++- .../components/SearchModal/SearchModal.tsx | 6 ++ .../src/components/SearchPage/SearchPage.tsx | 3 + .../SearchResultPager/SearchResultPager.tsx | 1 + .../src/components/SearchType/SearchType.tsx | 5 ++ .../SidebarSearch/SidebarSearch.tsx | 8 ++ .../SidebarSearchModal/SidebarSearchModal.tsx | 5 ++ plugins/search/src/index.ts | 7 +- plugins/search/src/plugin.ts | 14 ++++ 18 files changed, 116 insertions(+), 70 deletions(-) diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index c36e7c67fe..93ed657d85 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -48,7 +48,7 @@ export const HighlightedSearchResultText: ({ postTag, }: HighlightedSearchResultTextProps) => JSX.Element; -// @public (undocumented) +// @public export type HighlightedSearchResultTextProps = { text: string; preTag: string; diff --git a/plugins/search-react/src/components/HighlightedSearchResultText/HighlightedSearchResultText.tsx b/plugins/search-react/src/components/HighlightedSearchResultText/HighlightedSearchResultText.tsx index a749f184fe..bd6ef2d09c 100644 --- a/plugins/search-react/src/components/HighlightedSearchResultText/HighlightedSearchResultText.tsx +++ b/plugins/search-react/src/components/HighlightedSearchResultText/HighlightedSearchResultText.tsx @@ -25,6 +25,8 @@ const useStyles = makeStyles( ); /** + * Props for {@link HighlightedSearchResultText}. + * * @public */ export type HighlightedSearchResultTextProps = { diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 3cbbf8072c..c2f1e93bff 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -16,16 +16,17 @@ import { SearchAutocompleteFilterProps as SearchAutocompleteFilterProps_2 } from import { SearchFilterComponentProps as SearchFilterComponentProps_2 } from '@backstage/plugin-search-react'; import { SearchResultProps } from '@backstage/plugin-search-react'; -// Warning: (ae-missing-release-tag) "DefaultResultListItem" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public @deprecated (undocumented) export const DefaultResultListItem: ( props: DefaultResultListItemProps, ) => JSX.Element; -// Warning: (ae-forgotten-export) The symbol "FiltersProps" needs to be exported by the entry point index.d.ts -// Warning: (ae-missing-release-tag) "Filters" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// +// @public (undocumented) +export type FilterOptions = { + kind: Array; + lifecycle: Array; +}; + // @public (undocumented) export const Filters: ({ filters, @@ -35,25 +36,33 @@ export const Filters: ({ updateChecked, }: FiltersProps) => JSX.Element; -// Warning: (ae-forgotten-export) The symbol "FiltersButtonProps" needs to be exported by the entry point index.d.ts -// Warning: (ae-missing-release-tag) "FiltersButton" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const FiltersButton: ({ numberOfSelectedFilters, handleToggleFilters, }: FiltersButtonProps) => JSX.Element; -// Warning: (ae-missing-release-tag) "FiltersState" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// +// @public +export type FiltersButtonProps = { + numberOfSelectedFilters: number; + handleToggleFilters: () => void; +}; + +// @public +export type FiltersProps = { + filters: FiltersState; + filterOptions: FilterOptions; + resetFilters: () => void; + updateSelected: (filter: string) => void; + updateChecked: (filter: string) => void; +}; + // @public (undocumented) export type FiltersState = { selected: string; checked: Array; }; -// Warning: (ae-missing-release-tag) "HomePageSearchBar" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const HomePageSearchBar: ({ ...props @@ -64,8 +73,6 @@ export type HomePageSearchBarProps = Partial< Omit >; -// Warning: (ae-missing-release-tag) "SearchPage" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const Router: () => JSX.Element; @@ -76,10 +83,10 @@ export type SearchAutocompleteFilterProps = SearchFilterComponentProps_2 & { multiple?: boolean; }; -// @public @deprecated (undocumented) +// @public @deprecated export const SearchBar: ({ onChange, ...props }: SearchBarProps) => JSX.Element; -// @public @deprecated (undocumented) +// @public @deprecated export const SearchBarBase: ({ onChange, onKeyDown, @@ -93,7 +100,7 @@ export const SearchBarBase: ({ ...props }: SearchBarBaseProps) => JSX.Element; -// @public @deprecated (undocumented) +// @public @deprecated export type SearchBarBaseProps = Omit & { debounceTime?: number; clearButton?: boolean; @@ -102,11 +109,9 @@ export type SearchBarBaseProps = Omit & { onChange: (value: string) => void; }; -// @public @deprecated (undocumented) +// @public @deprecated export type SearchBarProps = Partial; -// Warning: (ae-missing-release-tag) "SearchFilter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public @deprecated (undocumented) export const SearchFilter: { ({ component: Element, ...props }: SearchFilterWrapperProps): JSX.Element; @@ -137,8 +142,6 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { debug?: boolean; }; -// Warning: (ae-missing-release-tag) "SearchModal" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const SearchModal: ({ open, @@ -152,8 +155,6 @@ export interface SearchModalChildrenProps { toggleModal: () => void; } -// Warning: (ae-missing-release-tag) "SearchModalProps" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export interface SearchModalProps { children?: (props: SearchModalChildrenProps) => JSX.Element; @@ -184,13 +185,9 @@ export type SearchModalValue = { setOpen: (open: boolean) => void; }; -// Warning: (ae-missing-release-tag) "SearchPage" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const SearchPage: () => JSX.Element; -// Warning: (ae-missing-release-tag) "searchPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) const searchPlugin: BackstagePlugin< { @@ -201,18 +198,12 @@ const searchPlugin: BackstagePlugin< export { searchPlugin as plugin }; export { searchPlugin }; -// Warning: (ae-missing-release-tag) "SearchResult" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public @deprecated (undocumented) export const SearchResult: (props: SearchResultProps) => JSX.Element; -// Warning: (ae-missing-release-tag) "SearchResultPager" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public @deprecated (undocumented) export const SearchResultPager: () => JSX.Element; -// Warning: (ae-missing-release-tag) "SearchType" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const SearchType: { (props: SearchTypeProps): JSX.Element; @@ -231,7 +222,7 @@ export type SearchTypeAccordionProps = { defaultValue?: string; }; -// @public (undocumented) +// @public export type SearchTypeProps = { className?: string; name: string; @@ -248,29 +239,21 @@ export type SearchTypeTabsProps = { defaultValue?: string; }; -// Warning: (ae-missing-release-tag) "SidebarSearch" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const SidebarSearch: (props: SidebarSearchProps) => JSX.Element; -// Warning: (ae-missing-release-tag) "SidebarSearchModal" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const SidebarSearchModal: ( props: SidebarSearchModalProps, ) => JSX.Element; -// Warning: (ae-missing-release-tag) "SidebarSearchModalProps" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export type SidebarSearchModalProps = { icon?: IconComponent; children?: (props: SearchModalChildrenProps) => JSX.Element; }; -// Warning: (ae-missing-release-tag) "SidebarSearchProps" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export type SidebarSearchProps = { icon?: IconComponent; }; diff --git a/plugins/search/src/components/Filters/Filters.tsx b/plugins/search/src/components/Filters/Filters.tsx index a0ca4914a2..9bbe90d32f 100644 --- a/plugins/search/src/components/Filters/Filters.tsx +++ b/plugins/search/src/components/Filters/Filters.tsx @@ -44,17 +44,28 @@ const useStyles = makeStyles(theme => ({ }, })); +/** + * @public + */ export type FiltersState = { selected: string; checked: Array; }; +/** + * @public + */ export type FilterOptions = { kind: Array; lifecycle: Array; }; -type FiltersProps = { +/** + * Props for {@link Filters}. + * + * @public + */ +export type FiltersProps = { filters: FiltersState; filterOptions: FilterOptions; resetFilters: () => void; @@ -62,6 +73,9 @@ type FiltersProps = { updateChecked: (filter: string) => void; }; +/** + * @public + */ export const Filters = ({ filters, filterOptions, diff --git a/plugins/search/src/components/Filters/FiltersButton.tsx b/plugins/search/src/components/Filters/FiltersButton.tsx index 1c2829defe..8d896bbf30 100644 --- a/plugins/search/src/components/Filters/FiltersButton.tsx +++ b/plugins/search/src/components/Filters/FiltersButton.tsx @@ -28,11 +28,19 @@ const useStyles = makeStyles(theme => ({ }, })); -type FiltersButtonProps = { +/** + * Props for {@link FiltersButton}. + * + * @public + */ +export type FiltersButtonProps = { numberOfSelectedFilters: number; handleToggleFilters: () => void; }; +/** + * @public + */ export const FiltersButton = ({ numberOfSelectedFilters, handleToggleFilters, diff --git a/plugins/search/src/components/Filters/index.tsx b/plugins/search/src/components/Filters/index.tsx index de890e0eaf..dc4d811dbd 100644 --- a/plugins/search/src/components/Filters/index.tsx +++ b/plugins/search/src/components/Filters/index.tsx @@ -15,5 +15,6 @@ */ export { FiltersButton } from './FiltersButton'; +export type { FiltersButtonProps } from './FiltersButton'; export { Filters } from './Filters'; -export type { FiltersState } from './Filters'; +export type { FilterOptions, FiltersProps, FiltersState } from './Filters'; diff --git a/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx b/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx index bc4b409d57..b4e661b916 100644 --- a/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx +++ b/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx @@ -37,9 +37,7 @@ export type HomePageSearchBarProps = Partial< >; /** - * The search bar created specifically for the composable home page - * - * @public + * The search bar created specifically for the composable home page. */ export const HomePageSearchBar = ({ ...props }: HomePageSearchBarProps) => { const classes = useStyles(props); diff --git a/plugins/search/src/components/SearchBar/SearchBar.tsx b/plugins/search/src/components/SearchBar/SearchBar.tsx index cb61089eb6..587478ed46 100644 --- a/plugins/search/src/components/SearchBar/SearchBar.tsx +++ b/plugins/search/src/components/SearchBar/SearchBar.tsx @@ -40,11 +40,10 @@ import { } from '@backstage/plugin-search-react'; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * Props for {@link SearchBarBase}. * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export type SearchBarBaseProps = Omit & { debounceTime?: number; @@ -55,13 +54,12 @@ export type SearchBarBaseProps = Omit & { }; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * All search boxes exported by the search plugin are based on the , * and this one is based on the component from Material UI. * Recommended if you don't use Search Provider or Search Context. * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export const SearchBarBase = ({ onChange, @@ -153,20 +151,18 @@ export const SearchBarBase = ({ }; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * Props for {@link SearchBar}. * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export type SearchBarProps = Partial; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * Recommended search bar when you use the Search Provider or Search Context. * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export const SearchBar = ({ onChange, ...props }: SearchBarProps) => { const { term, setTerm } = useSearch(); diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx index 1a74decd31..ac37e3bd2c 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx @@ -29,9 +29,8 @@ import { } from '@backstage/plugin-search-react'; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { filterSelectedOptions?: boolean; @@ -41,7 +40,6 @@ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { /** * @deprecated Moved to `@backstage/plugin-search-react`. - * */ export const AutocompleteFilter = (props: SearchAutocompleteFilterProps) => { const { diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.tsx index b88160f363..e7982ca5c4 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.tsx @@ -24,9 +24,8 @@ import { } from '@backstage/plugin-search-react'; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export type SearchFilterComponentProps = { className?: string; @@ -48,9 +47,8 @@ export type SearchFilterComponentProps = { }; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ export type SearchFilterWrapperProps = SearchFilterComponentProps & { component: (props: SearchFilterComponentProps) => ReactElement; @@ -58,6 +56,7 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { }; /** + * @public * @deprecated Moved to `@backstage/plugin-search-react`. */ const SearchFilter = ({ @@ -82,12 +81,12 @@ SearchFilter.Select = ( ) => ; /** - * @deprecated Moved to `@backstage/plugin-search-react`. - * * A control surface for a given filter field name, rendered as an autocomplete * textfield. A hard-coded list of values may be provided, or an async function * which returns values may be provided instead. + * * @public + * @deprecated Moved to `@backstage/plugin-search-react`. */ SearchFilter.Autocomplete = (props: SearchAutocompleteFilterProps) => ( diff --git a/plugins/search/src/components/SearchModal/SearchModal.tsx b/plugins/search/src/components/SearchModal/SearchModal.tsx index 18776d444d..ebc2979acc 100644 --- a/plugins/search/src/components/SearchModal/SearchModal.tsx +++ b/plugins/search/src/components/SearchModal/SearchModal.tsx @@ -50,6 +50,9 @@ export interface SearchModalChildrenProps { toggleModal: () => void; } +/** + * @public + **/ export interface SearchModalProps { /** * If true, it renders the modal. @@ -167,6 +170,9 @@ export const Modal = ({ toggleModal }: SearchModalProps) => { ); }; +/** + * @public + */ export const SearchModal = ({ open = true, hidden, diff --git a/plugins/search/src/components/SearchPage/SearchPage.tsx b/plugins/search/src/components/SearchPage/SearchPage.tsx index 29a22a6f5c..7145c7a5ef 100644 --- a/plugins/search/src/components/SearchPage/SearchPage.tsx +++ b/plugins/search/src/components/SearchPage/SearchPage.tsx @@ -87,6 +87,9 @@ export const UrlUpdater = () => { return null; }; +/** + * @public + */ export const SearchPage = () => { const outlet = useOutlet(); diff --git a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx index 0e8d59a694..f99b6cf29f 100644 --- a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx +++ b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx @@ -30,6 +30,7 @@ const useStyles = makeStyles(theme => ({ })); /** + * @public * @deprecated Moved to `@backstage/plugin-search-react`. */ export const SearchResultPager = () => { diff --git a/plugins/search/src/components/SearchType/SearchType.tsx b/plugins/search/src/components/SearchType/SearchType.tsx index 79c3dda2b9..b20e8b5fba 100644 --- a/plugins/search/src/components/SearchType/SearchType.tsx +++ b/plugins/search/src/components/SearchType/SearchType.tsx @@ -47,6 +47,8 @@ const useStyles = makeStyles(theme => ({ })); /** + * Props for {@link SearchType}. + * * @public */ export type SearchTypeProps = { @@ -56,6 +58,9 @@ export type SearchTypeProps = { defaultValue?: string[] | string | null; }; +/** + * @public + */ const SearchType = (props: SearchTypeProps) => { const { className, defaultValue, name, values = [] } = props; const classes = useStyles(); diff --git a/plugins/search/src/components/SidebarSearch/SidebarSearch.tsx b/plugins/search/src/components/SidebarSearch/SidebarSearch.tsx index 25d41fa10f..36ead2ab15 100644 --- a/plugins/search/src/components/SidebarSearch/SidebarSearch.tsx +++ b/plugins/search/src/components/SidebarSearch/SidebarSearch.tsx @@ -21,10 +21,18 @@ import { rootRouteRef } from '../../plugin'; import { useRouteRef, IconComponent } from '@backstage/core-plugin-api'; import { SidebarSearchField, useContent } from '@backstage/core-components'; +/** + * Props for {@link SidebarSearch}. + * + * @public + */ export type SidebarSearchProps = { icon?: IconComponent; }; +/** + * @public + */ export const SidebarSearch = (props: SidebarSearchProps) => { const searchRoute = useRouteRef(rootRouteRef); const { focusContent } = useContent(); diff --git a/plugins/search/src/components/SidebarSearchModal/SidebarSearchModal.tsx b/plugins/search/src/components/SidebarSearchModal/SidebarSearchModal.tsx index 191a09395c..fb4afc75fd 100644 --- a/plugins/search/src/components/SidebarSearchModal/SidebarSearchModal.tsx +++ b/plugins/search/src/components/SidebarSearchModal/SidebarSearchModal.tsx @@ -24,6 +24,11 @@ import { useSearchModal, } from '../SearchModal'; +/** + * Props for {@link SidebarSearchModal}. + * + * @public + */ export type SidebarSearchModalProps = { icon?: IconComponent; children?: (props: SearchModalChildrenProps) => JSX.Element; diff --git a/plugins/search/src/index.ts b/plugins/search/src/index.ts index bcb8f40506..fd0e70c61a 100644 --- a/plugins/search/src/index.ts +++ b/plugins/search/src/index.ts @@ -21,7 +21,12 @@ */ export { Filters, FiltersButton } from './components/Filters'; -export type { FiltersState } from './components/Filters'; +export type { + FilterOptions, + FiltersState, + FiltersProps, + FiltersButtonProps, +} from './components/Filters'; export type { HomePageSearchBarProps } from './components/HomePageComponent'; export { SearchBar, SearchBarBase } from './components/SearchBar'; export type { diff --git a/plugins/search/src/plugin.ts b/plugins/search/src/plugin.ts index 103d67b81a..19fd501129 100644 --- a/plugins/search/src/plugin.ts +++ b/plugins/search/src/plugin.ts @@ -34,6 +34,9 @@ export const rootRouteRef = createRouteRef({ id: 'search', }); +/** + * @public + */ export const searchPlugin = createPlugin({ id: 'search', apis: [ @@ -50,6 +53,9 @@ export const searchPlugin = createPlugin({ }, }); +/** + * @public + */ export const SearchPage = searchPlugin.provide( createRoutableExtension({ name: 'SearchPage', @@ -59,10 +65,14 @@ export const SearchPage = searchPlugin.provide( ); /** + * @public * @deprecated Import from `@backstage/plugin-search-react` instead. */ export const SearchResult = RealSearchResult; +/** + * @public + */ export const SidebarSearchModal = searchPlugin.provide( createComponentExtension({ name: 'SidebarSearchModal', @@ -76,10 +86,14 @@ export const SidebarSearchModal = searchPlugin.provide( ); /** + * @public * @deprecated Import from `@backstage/plugin-search-react` instead. */ export const DefaultResultListItem = RealDefaultResultListItem; +/** + * @public + */ export const HomePageSearchBar = searchPlugin.provide( createComponentExtension({ name: 'HomePageSearchBar', From 1b1c47f4a774ec9b6f116d6de7e8bfcbffb94f70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 12:01:12 +0200 Subject: [PATCH 307/550] update imports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- packages/app/src/components/search/SearchModal.tsx | 9 ++++----- packages/app/src/components/search/SearchPage.tsx | 6 +++--- .../packages/app/src/components/search/SearchPage.tsx | 8 ++++---- .../components/HomePageComponent/HomePageSearchBar.tsx | 5 ++++- .../src/components/SearchModal/SearchModal.stories.tsx | 2 +- .../search/src/components/SearchModal/SearchModal.tsx | 4 ++-- 6 files changed, 18 insertions(+), 16 deletions(-) diff --git a/packages/app/src/components/search/SearchModal.tsx b/packages/app/src/components/search/SearchModal.tsx index 4af5511443..f5f4204302 100644 --- a/packages/app/src/components/search/SearchModal.tsx +++ b/packages/app/src/components/search/SearchModal.tsx @@ -38,16 +38,15 @@ import { catalogApiRef, CATALOG_FILTER_EXISTS, } from '@backstage/plugin-catalog-react'; +import { searchPlugin, SearchType } from '@backstage/plugin-search'; import { DefaultResultListItem, - SearchBar, SearchFilter, - searchPlugin, + SearchBar, SearchResult, SearchResultPager, - SearchType, -} from '@backstage/plugin-search'; -import { useSearch } from '@backstage/plugin-search-react'; + useSearch, +} from '@backstage/plugin-search-react'; import { TechDocsSearchResultListItem } from '@backstage/plugin-techdocs'; const useStyles = makeStyles(theme => ({ diff --git a/packages/app/src/components/search/SearchPage.tsx b/packages/app/src/components/search/SearchPage.tsx index ee144b2cde..9a2e85bd8c 100644 --- a/packages/app/src/components/search/SearchPage.tsx +++ b/packages/app/src/components/search/SearchPage.tsx @@ -29,15 +29,15 @@ import { catalogApiRef, CATALOG_FILTER_EXISTS, } from '@backstage/plugin-catalog-react'; +import { SearchType } from '@backstage/plugin-search'; import { DefaultResultListItem, SearchBar, SearchFilter, SearchResult, SearchResultPager, - SearchType, -} from '@backstage/plugin-search'; -import { useSearch } from '@backstage/plugin-search-react'; + useSearch, +} from '@backstage/plugin-search-react'; import { TechDocsSearchResultListItem } from '@backstage/plugin-techdocs'; import { Grid, List, makeStyles, Paper, Theme } from '@material-ui/core'; import React from 'react'; diff --git a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx index d4c7c92346..08166bb308 100644 --- a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx @@ -8,14 +8,14 @@ import { } from '@backstage/plugin-catalog-react'; import { TechDocsSearchResultListItem } from '@backstage/plugin-techdocs'; +import { SearchType } from '@backstage/plugin-search'; import { + DefaultResultListItem, SearchBar, SearchFilter, SearchResult, - SearchType, - DefaultResultListItem, -} from '@backstage/plugin-search'; -import { useSearch } from '@backstage/plugin-search-react'; + useSearch +} from '@backstage/plugin-search-react'; import { CatalogIcon, Content, diff --git a/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx b/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx index b4e661b916..6e9787c2e0 100644 --- a/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx +++ b/plugins/search/src/components/HomePageComponent/HomePageSearchBar.tsx @@ -16,7 +16,10 @@ import React, { useCallback, useState } from 'react'; import { makeStyles } from '@material-ui/core/styles'; -import { SearchBarBase, SearchBarBaseProps } from '../SearchBar'; +import { + SearchBarBase, + SearchBarBaseProps, +} from '@backstage/plugin-search-react'; import { useNavigateToQuery } from '../util'; const useStyles = makeStyles({ diff --git a/plugins/search/src/components/SearchModal/SearchModal.stories.tsx b/plugins/search/src/components/SearchModal/SearchModal.stories.tsx index 870f73e472..aad018c334 100644 --- a/plugins/search/src/components/SearchModal/SearchModal.stories.tsx +++ b/plugins/search/src/components/SearchModal/SearchModal.stories.tsx @@ -34,10 +34,10 @@ import { MockSearchApi, SearchContextProvider, SearchResult, + SearchResultPager, } from '@backstage/plugin-search-react'; import { TestApiProvider } from '@backstage/test-utils'; import { SearchModal } from './SearchModal'; -import { SearchResultPager } from '../SearchResultPager'; import { SearchType } from '../SearchType'; import { useSearchModal } from './useSearchModal'; diff --git a/plugins/search/src/components/SearchModal/SearchModal.tsx b/plugins/search/src/components/SearchModal/SearchModal.tsx index ebc2979acc..6c37f20001 100644 --- a/plugins/search/src/components/SearchModal/SearchModal.tsx +++ b/plugins/search/src/components/SearchModal/SearchModal.tsx @@ -28,14 +28,14 @@ import { } from '@material-ui/core'; import LaunchIcon from '@material-ui/icons/Launch'; import { makeStyles } from '@material-ui/core/styles'; -import { SearchBar } from '../SearchBar'; import { DefaultResultListItem, SearchContextProvider, + SearchBar, SearchResult, + SearchResultPager, useSearch, } from '@backstage/plugin-search-react'; -import { SearchResultPager } from '../SearchResultPager'; import { useRouteRef } from '@backstage/core-plugin-api'; import { Link, useContent } from '@backstage/core-components'; import { rootRouteRef } from '../../plugin'; From f28bc288341a79f620149475e998df69da7a739a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 13:09:59 +0200 Subject: [PATCH 308/550] update docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- docs/assets/search/architecture.drawio.svg | 148 ++++++++++++++++----- docs/features/search/getting-started.md | 8 +- plugins/search/README.md | 13 +- 3 files changed, 127 insertions(+), 42 deletions(-) diff --git a/docs/assets/search/architecture.drawio.svg b/docs/assets/search/architecture.drawio.svg index 709a008b43..5c7c98ebbf 100644 --- a/docs/assets/search/architecture.drawio.svg +++ b/docs/assets/search/architecture.drawio.svg @@ -1,17 +1,36 @@ - + + + + + +
+
+
+
+ +
+
+
+
+
+
+
+ +
+
- + -
+
@@ -21,7 +40,7 @@
- + @@ -103,11 +122,11 @@ - + -
+
@backstage/plugin-xyz @@ -115,7 +134,7 @@
- + @backstage/plugin-xyz @@ -251,10 +270,7 @@ - - - - + @@ -274,11 +290,14 @@ - + + + + -
+
@@ -288,18 +307,18 @@
- + Search API - - + + -
+
@@ -309,7 +328,7 @@
- + Components @@ -824,11 +843,11 @@ - + -
+
@@ -844,16 +863,19 @@
- + Individual frontend... - + + + + -
+
@@ -863,20 +885,80 @@
- + Search Cont... - - - - - - - - - + + + + + + + + + + + + + +
+
+
+ @backstage/plugin-search-react +
+
+
+
+ + @backstage/plugin-search-react + +
+
+ + + + + + + + +
+
+
+ + Components + +
+
+
+
+ + Components + +
+
+ + + + + +
+
+
+ + Search Client + +
+
+
+
+ + Search Client + +
+
diff --git a/docs/features/search/getting-started.md b/docs/features/search/getting-started.md index 14ad523740..d0e13eda55 100644 --- a/docs/features/search/getting-started.md +++ b/docs/features/search/getting-started.md @@ -18,7 +18,7 @@ If you haven't setup Backstage already, start ```bash # From your Backstage root directory -yarn add --cwd packages/app @backstage/plugin-search +yarn add --cwd packages/app @backstage/plugin-search @backstage/plugin-search-react ``` Create a new `packages/app/src/components/search/SearchPage.tsx` file in your @@ -33,7 +33,7 @@ import { SearchResult, DefaultResultListItem, SearchFilter, -} from '@backstage/plugin-search'; +} from '@backstage/plugin-search-react'; import { CatalogResultListItem } from '@backstage/plugin-catalog'; export const searchPage = ( @@ -213,7 +213,7 @@ apiRouter.use('/search', await search(searchEnv)); ### Frontend -The Search Plugin exposes several default filter types as static properties, +The Search Plugin web library (`@backstage/plugin-search-react`) exposes several default filter types as static properties, including `` and ``. These allow you to provide values relevant to your Backstage instance that, when selected, get passed to the backend. @@ -237,7 +237,7 @@ If you have advanced filter needs, you can specify your own filter component like this (although new core filter contributions are welcome): ```tsx -import { useSearch, SearchFilter } from '@backstage/plugin-search'; +import { useSearch, SearchFilter } from '@backstage/plugin-search-react'; const MyCustomFilter = () => { // Note: filters contain filter data from other filter components. Be sure diff --git a/plugins/search/README.md b/plugins/search/README.md index f4a32c9597..3803b71e43 100644 --- a/plugins/search/README.md +++ b/plugins/search/README.md @@ -13,14 +13,17 @@ Run `yarn dev` in the root directory, and then navigate to [/search](http://loca This search plugin is primarily responsible for the following: - Providing a `` routable extension. -- Exposing various search-related components (like ``, - ``, etc), which can be composed by a Backstage App or by +- Exposing various search-related components (like ``, + ``, etc), which can be composed by a Backstage App or by other Backstage Plugins to power search experiences of all kinds. -- Exposing a ``, which manages search state and API - communication with the Backstage backend. -Don't forget, a lot of functionality is available in backend plugins: +Don't forget, a lot of functionality is available in web libraries and backend plugins: +- `@backstage/plugin-search-react`, which is responsible for: + - Exposing a ``, which manages search state and API + communication with the Backstage backend. + - Exposing the `SearchApi` and its corresponding ref. + - Exposing reusable components, such as `` and ``, etc. - `@backstage/plugin-search-backend-node`, which is responsible for the search index management - `@backstage/plugin-search-backend`, which is responsible for query processing From 88091591482ddc17044d0a84700acb7457a72a8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 13:31:00 +0200 Subject: [PATCH 309/550] changeset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- .changeset/famous-walls-visit.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/famous-walls-visit.md diff --git a/.changeset/famous-walls-visit.md b/.changeset/famous-walls-visit.md new file mode 100644 index 0000000000..8fcaed4ab0 --- /dev/null +++ b/.changeset/famous-walls-visit.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-search': minor +'@backstage/plugin-search-react': minor +--- + +Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. From 8c2b28708ffeeeed041073407f08764d441e6767 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 13:58:06 +0200 Subject: [PATCH 310/550] update api-report MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- plugins/search/api-report.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index c2f1e93bff..9e418dd08e 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -13,6 +13,7 @@ import { ReactElement } from 'react'; import { ReactNode } from 'react'; import { RouteRef } from '@backstage/core-plugin-api'; import { SearchAutocompleteFilterProps as SearchAutocompleteFilterProps_2 } from '@backstage/plugin-search-react'; +import { SearchBarBaseProps as SearchBarBaseProps_2 } from '@backstage/plugin-search-react'; import { SearchFilterComponentProps as SearchFilterComponentProps_2 } from '@backstage/plugin-search-react'; import { SearchResultProps } from '@backstage/plugin-search-react'; @@ -66,11 +67,11 @@ export type FiltersState = { // @public (undocumented) export const HomePageSearchBar: ({ ...props -}: Partial>) => JSX.Element; +}: Partial>) => JSX.Element; // @public export type HomePageSearchBarProps = Partial< - Omit + Omit >; // @public (undocumented) From 93089a9d063cc2c497904883e34a89e0a0009321 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Fri, 3 Jun 2022 15:29:29 +0200 Subject: [PATCH 311/550] prettier? MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- .../packages/app/src/components/search/SearchPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx index 08166bb308..1b3bf5b77d 100644 --- a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx @@ -14,7 +14,7 @@ import { SearchBar, SearchFilter, SearchResult, - useSearch + useSearch, } from '@backstage/plugin-search-react'; import { CatalogIcon, From 30f04d14972fa3375a0675cc3be287d21ebc39fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Tue, 7 Jun 2022 10:16:46 +0200 Subject: [PATCH 312/550] changeset for create-app MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- .changeset/red-apes-tell.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .changeset/red-apes-tell.md diff --git a/.changeset/red-apes-tell.md b/.changeset/red-apes-tell.md new file mode 100644 index 0000000000..61c4a5077e --- /dev/null +++ b/.changeset/red-apes-tell.md @@ -0,0 +1,24 @@ +--- +'@backstage/create-app': patch +--- + +Components ``, ``, ``, and `` are now deprecated in `@backstage/plugin-search` and should be imported from `@backstage/plugin-search-react` instead. + +To upgrade your App, update the following in `packages/app/src/components/search/SearchPage.tsx`: + +```diff +import { +- SearchBar +- SearchFilter +- SearchResult +SearchType, +- DefaultResultListItem +} from `@backstage/plugin-search`; +import { ++ DefaultResultListItem ++ SearchBar ++ SearchFilter ++ SearchResult +useSearch, +} from `@backstage/plugin-search-react`; +``` From a33399ed59fc863bb789658cdd100bd2266dc1cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Tue, 7 Jun 2022 10:31:01 +0200 Subject: [PATCH 313/550] fixup to arch diagram MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- docs/assets/search/architecture.drawio.svg | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/assets/search/architecture.drawio.svg b/docs/assets/search/architecture.drawio.svg index 5c7c98ebbf..b85541b804 100644 --- a/docs/assets/search/architecture.drawio.svg +++ b/docs/assets/search/architecture.drawio.svg @@ -1,4 +1,4 @@ - + @@ -939,7 +939,6 @@
- From 295eb30778b7892197050f8409001c3d836664e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Tue, 7 Jun 2022 16:28:08 +0200 Subject: [PATCH 314/550] remove unnecessary deprecation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- .../SearchFilter.Autocomplete.tsx | 100 +----------------- 1 file changed, 2 insertions(+), 98 deletions(-) diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx index ac37e3bd2c..3db5112b88 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.Autocomplete.tsx @@ -14,110 +14,14 @@ * limitations under the License. */ -import React, { ChangeEvent, useState } from 'react'; -import { Chip, TextField } from '@material-ui/core'; -import { - Autocomplete, - AutocompleteGetTagProps, - AutocompleteRenderInputParams, -} from '@material-ui/lab'; -import { - SearchFilterComponentProps, - useSearch, - useAsyncFilterValues, - useDefaultFilterValue, -} from '@backstage/plugin-search-react'; +import { SearchFilterComponentProps } from '@backstage/plugin-search-react'; /** * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export type SearchAutocompleteFilterProps = SearchFilterComponentProps & { filterSelectedOptions?: boolean; limitTags?: number; multiple?: boolean; }; - -/** - * @deprecated Moved to `@backstage/plugin-search-react`. - */ -export const AutocompleteFilter = (props: SearchAutocompleteFilterProps) => { - const { - className, - defaultValue, - name, - values: givenValues, - valuesDebounceMs, - label, - filterSelectedOptions, - limitTags, - multiple, - } = props; - const [inputValue, setInputValue] = useState(''); - useDefaultFilterValue(name, defaultValue); - const asyncValues = - typeof givenValues === 'function' ? givenValues : undefined; - const defaultValues = - typeof givenValues === 'function' ? undefined : givenValues; - const { value: values, loading } = useAsyncFilterValues( - asyncValues, - inputValue, - defaultValues, - valuesDebounceMs, - ); - const { filters, setFilters } = useSearch(); - const filterValue = - (filters[name] as string | string[] | undefined) || (multiple ? [] : null); - - // Set new filter values on input change. - const handleChange = ( - _: ChangeEvent<{}>, - newValue: string | string[] | null, - ) => { - setFilters(prevState => { - const { [name]: filter, ...others } = prevState; - - if (newValue) { - return { ...others, [name]: newValue }; - } - return { ...others }; - }); - }; - - // Provide the input field. - const renderInput = (params: AutocompleteRenderInputParams) => ( - - ); - - // Render tags as primary-colored chips. - const renderTags = ( - tagValue: string[], - getTagProps: AutocompleteGetTagProps, - ) => - tagValue.map((option: string, index: number) => ( - - )); - - return ( - setInputValue(newValue)} - renderInput={renderInput} - renderTags={renderTags} - /> - ); -}; From 2dc4818541f83cabb855d3d160e6691fff1a2f8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20N=C3=A4sman?= Date: Tue, 7 Jun 2022 16:30:04 +0200 Subject: [PATCH 315/550] apply review feedback MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Anders Näsman --- .changeset/famous-walls-visit.md | 6 +- .changeset/red-apes-tell.md | 19 +-- .changeset/strange-flies-march.md | 5 + plugins/search-react/api-report.md | 7 - .../DefaultResultListItem.tsx | 2 - .../components/SearchResult/SearchResult.tsx | 2 - .../SearchTracker/SearchTracker.tsx | 2 - plugins/search-react/src/components/index.ts | 1 - plugins/search/api-report.md | 2 +- .../src/components/SearchBar/SearchBar.tsx | 121 ++---------------- .../components/SearchFilter/SearchFilter.tsx | 12 +- .../SearchResultPager/SearchResultPager.tsx | 2 +- scripts/api-extractor.ts | 1 + 13 files changed, 32 insertions(+), 150 deletions(-) create mode 100644 .changeset/strange-flies-march.md diff --git a/.changeset/famous-walls-visit.md b/.changeset/famous-walls-visit.md index 8fcaed4ab0..b57702a392 100644 --- a/.changeset/famous-walls-visit.md +++ b/.changeset/famous-walls-visit.md @@ -1,6 +1,6 @@ --- -'@backstage/plugin-search': minor -'@backstage/plugin-search-react': minor +'@backstage/plugin-search': patch +'@backstage/plugin-search-react': patch --- -Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. +Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. diff --git a/.changeset/red-apes-tell.md b/.changeset/red-apes-tell.md index 61c4a5077e..ee0ace6a4c 100644 --- a/.changeset/red-apes-tell.md +++ b/.changeset/red-apes-tell.md @@ -8,17 +8,10 @@ To upgrade your App, update the following in `packages/app/src/components/search ```diff import { -- SearchBar -- SearchFilter -- SearchResult -SearchType, -- DefaultResultListItem -} from `@backstage/plugin-search`; -import { -+ DefaultResultListItem -+ SearchBar -+ SearchFilter -+ SearchResult -useSearch, -} from `@backstage/plugin-search-react`; + DefaultResultListItem + SearchBar + SearchFilter + SearchResult +- } from `@backstage/plugin-search`; ++ } from `@backstage/plugin-search-react`; ``` diff --git a/.changeset/strange-flies-march.md b/.changeset/strange-flies-march.md new file mode 100644 index 0000000000..70a15b41d9 --- /dev/null +++ b/.changeset/strange-flies-march.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search': minor +--- + +The pre-alpha ``, ``, `etc...` components have been removed. In the unlikely event you were still using/referencing them, please update to using their non-`*Next` equivalents from either `@backstage/plugin-search-react` or `@backstage/plugin-search`. diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index 93ed657d85..ce1fa53bb4 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -187,13 +187,6 @@ export type SearchResultProps = { // @public (undocumented) export const SelectFilter: (props: SearchFilterComponentProps) => JSX.Element; -// @public -export const TrackSearch: ({ - children, -}: { - children: React_2.ReactChild; -}) => JSX.Element; - // @public export const useAsyncFilterValues: ( fn: ((partial: string) => Promise) | undefined, diff --git a/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx index 48f12213e4..ff6f3d7fe1 100644 --- a/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx +++ b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx @@ -101,8 +101,6 @@ export const DefaultResultListItemComponent = ({ }; /** - * A higher order function providing AnalyticsContext to the DefaultResultListItemComponent. - * * @public */ const HigherOrderDefaultResultListItem = ( diff --git a/plugins/search-react/src/components/SearchResult/SearchResult.tsx b/plugins/search-react/src/components/SearchResult/SearchResult.tsx index 54024d546a..46a2dde305 100644 --- a/plugins/search-react/src/components/SearchResult/SearchResult.tsx +++ b/plugins/search-react/src/components/SearchResult/SearchResult.tsx @@ -65,8 +65,6 @@ export const SearchResultComponent = ({ children }: SearchResultProps) => { }; /** - * A higher order function providing AnalyticsContext to the SearchResultComponent. - * * @public */ const HigherOrderSearchResult = (props: SearchResultProps) => { diff --git a/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx b/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx index 8ca7373298..f900e45d45 100644 --- a/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx +++ b/plugins/search-react/src/components/SearchTracker/SearchTracker.tsx @@ -20,8 +20,6 @@ import { useSearch } from '../../context'; /** * Capture search event on term change. - * - * @public */ export const TrackSearch = ({ children }: { children: React.ReactChild }) => { const analytics = useAnalytics(); diff --git a/plugins/search-react/src/components/index.ts b/plugins/search-react/src/components/index.ts index 155a4c3b12..263ca4ad59 100644 --- a/plugins/search-react/src/components/index.ts +++ b/plugins/search-react/src/components/index.ts @@ -19,5 +19,4 @@ export * from './SearchFilter'; export * from './SearchResult'; export * from './SearchResultPager'; export * from './SearchBar'; -export * from './SearchTracker'; export * from './DefaultResultListItem'; diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 9e418dd08e..85d4b783e5 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -99,7 +99,7 @@ export const SearchBarBase: ({ inputProps: defaultInputProps, endAdornment: defaultEndAdornment, ...props -}: SearchBarBaseProps) => JSX.Element; +}: SearchBarBaseProps_2) => JSX.Element; // @public @deprecated export type SearchBarBaseProps = Omit & { diff --git a/plugins/search/src/components/SearchBar/SearchBar.tsx b/plugins/search/src/components/SearchBar/SearchBar.tsx index 587478ed46..a854869976 100644 --- a/plugins/search/src/components/SearchBar/SearchBar.tsx +++ b/plugins/search/src/components/SearchBar/SearchBar.tsx @@ -14,36 +14,20 @@ * limitations under the License. */ -import React, { - ChangeEvent, - KeyboardEvent, - useState, - useEffect, - useCallback, -} from 'react'; -import useDebounce from 'react-use/lib/useDebounce'; -import { configApiRef, useApi } from '@backstage/core-plugin-api'; -import { - InputBase, - InputBaseProps, - InputAdornment, - IconButton, -} from '@material-ui/core'; -import SearchIcon from '@material-ui/icons/Search'; -import ClearButton from '@material-ui/icons/Clear'; +import React, { useCallback } from 'react'; + +import { InputBaseProps } from '@material-ui/core'; import { - SearchContextProvider, + SearchBarBase as RealSearchBarBase, useSearch, - useSearchContextCheck, - TrackSearch, } from '@backstage/plugin-search-react'; /** * Props for {@link SearchBarBase}. * * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export type SearchBarBaseProps = Omit & { debounceTime?: number; @@ -59,102 +43,15 @@ export type SearchBarBaseProps = Omit & { * Recommended if you don't use Search Provider or Search Context. * * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ -export const SearchBarBase = ({ - onChange, - onKeyDown, - onSubmit, - debounceTime = 200, - clearButton = true, - fullWidth = true, - value: defaultValue, - inputProps: defaultInputProps = {}, - endAdornment: defaultEndAdornment, - ...props -}: SearchBarBaseProps) => { - const configApi = useApi(configApiRef); - const [value, setValue] = useState(defaultValue as string); - const hasSearchContext = useSearchContextCheck(); - - useEffect(() => { - setValue(prevValue => - prevValue !== defaultValue ? (defaultValue as string) : prevValue, - ); - }, [defaultValue]); - - useDebounce(() => onChange(value), debounceTime, [value]); - - const handleChange = useCallback( - (e: ChangeEvent) => { - setValue(e.target.value); - }, - [setValue], - ); - - const handleKeyDown = useCallback( - (e: KeyboardEvent) => { - if (onKeyDown) onKeyDown(e); - if (onSubmit && e.key === 'Enter') { - onSubmit(); - } - }, - [onKeyDown, onSubmit], - ); - - const handleClear = useCallback(() => { - onChange(''); - }, [onChange]); - - const placeholder = `Search in ${ - configApi.getOptionalString('app.title') || 'Backstage' - }`; - - const startAdornment = ( - - - - - - ); - - const endAdornment = ( - - - - - - ); - - const searchBar = ( - - - - ); - - return hasSearchContext ? ( - searchBar - ) : ( - {searchBar} - ); -}; +export const SearchBarBase = RealSearchBarBase; /** * Props for {@link SearchBar}. * * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export type SearchBarProps = Partial; @@ -162,7 +59,7 @@ export type SearchBarProps = Partial; * Recommended search bar when you use the Search Provider or Search Context. * * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export const SearchBar = ({ onChange, ...props }: SearchBarProps) => { const { term, setTerm } = useSearch(); diff --git a/plugins/search/src/components/SearchFilter/SearchFilter.tsx b/plugins/search/src/components/SearchFilter/SearchFilter.tsx index e7982ca5c4..e58bbd5c14 100644 --- a/plugins/search/src/components/SearchFilter/SearchFilter.tsx +++ b/plugins/search/src/components/SearchFilter/SearchFilter.tsx @@ -25,7 +25,7 @@ import { /** * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export type SearchFilterComponentProps = { className?: string; @@ -48,7 +48,7 @@ export type SearchFilterComponentProps = { /** * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export type SearchFilterWrapperProps = SearchFilterComponentProps & { component: (props: SearchFilterComponentProps) => ReactElement; @@ -57,7 +57,7 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { /** * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ const SearchFilter = ({ component: Element, @@ -65,7 +65,7 @@ const SearchFilter = ({ }: SearchFilterWrapperProps) => ; /** - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ SearchFilter.Checkbox = ( props: Omit & @@ -73,7 +73,7 @@ SearchFilter.Checkbox = ( ) => ; /** - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ SearchFilter.Select = ( props: Omit & @@ -86,7 +86,7 @@ SearchFilter.Select = ( * which returns values may be provided instead. * * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ SearchFilter.Autocomplete = (props: SearchAutocompleteFilterProps) => ( diff --git a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx index f99b6cf29f..287e485dd1 100644 --- a/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx +++ b/plugins/search/src/components/SearchResultPager/SearchResultPager.tsx @@ -31,7 +31,7 @@ const useStyles = makeStyles(theme => ({ /** * @public - * @deprecated Moved to `@backstage/plugin-search-react`. + * @deprecated Import from `@backstage/plugin-search-react` instead. */ export const SearchResultPager = () => { const { fetchNextPage, fetchPreviousPage } = useSearch(); diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index 15e43fb02d..619dafabd4 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -256,6 +256,7 @@ const NO_WARNING_PACKAGES = [ 'plugins/scaffolder-backend-module-rails', 'plugins/scaffolder-backend-module-yeoman', 'plugins/scaffolder-common', + 'plugins/search', 'plugins/search-backend', 'plugins/search-backend-node', 'plugins/search-backend-module-elasticsearch', From 7c26e81120cd6918116496f30664e0cc87d6d6ac Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 10:33:29 +0200 Subject: [PATCH 316/550] add some more docs to the template body type as well as optional composed_of Signed-off-by: Emma Indal --- .../api-report.md | 3 ++- .../src/engines/ElasticSearchSearchEngine.ts | 17 ++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/plugins/search-backend-module-elasticsearch/api-report.md b/plugins/search-backend-module-elasticsearch/api-report.md index a6be34dcb1..dfbb7e493f 100644 --- a/plugins/search-backend-module-elasticsearch/api-report.md +++ b/plugins/search-backend-module-elasticsearch/api-report.md @@ -146,7 +146,8 @@ export type ElasticSearchCustomIndexTemplate = { // @public export type ElasticSearchCustomIndexTemplateBody = { index_patterns: string[]; - template: Record; + composed_of?: string[]; + template?: Record; }; // @public (undocumented) diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index a4b3be6eec..01bffdfff2 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -50,10 +50,21 @@ export type ElasticSearchCustomIndexTemplate = { * @public */ export type ElasticSearchCustomIndexTemplateBody = { + /** + * Array of wildcard (*) expressions used to match the names of data streams and indices during creation. + */ index_patterns: string[]; - // See available properties of template - // https://www.elastic.co/guide/en/elasticsearch/reference/7.15/indices-put-template.html#put-index-template-api-request-body - template: Record; + /** + * An ordered list of component template names. + * Component templates are merged in the order specified, + * meaning that the last component template specified has the highest precedence. + */ + composed_of?: string[]; + /** + * See available properties of template + * https://www.elastic.co/guide/en/elasticsearch/reference/7.15/indices-put-template.html#put-index-template-api-request-body + */ + template?: Record; }; /** From 935fa5d5d14a182aa150cf3e5acf6cb81303f7d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Thu, 9 Jun 2022 16:41:12 +0200 Subject: [PATCH 317/550] remove some yarn.lock impurity in master by adjusting msw dep MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- plugins/vault-backend/package.json | 2 +- plugins/vault/dev/index.tsx | 67 ++++++++++++++++++- plugins/vault/package.json | 2 +- plugins/vault/src/api.test.ts | 4 +- .../EntityVaultTable.test.tsx | 6 +- 5 files changed, 73 insertions(+), 8 deletions(-) diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 15e5be42a8..3ec616aa12 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -53,7 +53,7 @@ "@backstage/cli": "^0.17.2-next.1", "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", - "msw": "^0.35.0", + "msw": "^0.42.0", "supertest": "^4.0.2" }, "files": [ diff --git a/plugins/vault/dev/index.tsx b/plugins/vault/dev/index.tsx index fd89e65889..f5056cd057 100644 --- a/plugins/vault/dev/index.tsx +++ b/plugins/vault/dev/index.tsx @@ -13,7 +13,72 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + +import { Entity } from '@backstage/catalog-model'; +import { Content, Header, HeaderLabel, Page } from '@backstage/core-components'; import { createDevApp } from '@backstage/dev-utils'; +import { EntityProvider } from '@backstage/plugin-catalog-react'; +import { TestApiProvider } from '@backstage/test-utils'; +import { Box, Typography } from '@material-ui/core'; +import SomeIcon from '@material-ui/icons/Storage'; +import React from 'react'; +import { VaultApi, vaultApiRef } from '../src/api'; +import { EntityVaultCard } from '../src/components/EntityVaultCard'; +import { EntityVaultTable } from '../src/components/EntityVaultTable'; +import { VAULT_SECRET_PATH_ANNOTATION } from '../src/constants'; import { vaultPlugin } from '../src/plugin'; -createDevApp().registerPlugin(vaultPlugin).render(); +const entity: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'backstage', + annotations: { [VAULT_SECRET_PATH_ANNOTATION]: 'a/b' }, + }, + spec: { + type: 'service', + }, +}; + +const mockedApi: VaultApi = { + async listSecrets() { + return [ + { + name: 'a::b', + editUrl: 'https://example.com', + showUrl: 'https://example.com', + }, + { + name: 'c::d', + editUrl: 'https://example.com', + showUrl: 'https://example.com', + }, + ]; + }, +}; + +createDevApp() + .registerPlugin(vaultPlugin) + .addPage({ + element: ( + + + +
+ +
+ + As a card + + + As a table + + +
+
+
+ ), + title: 'Vault', + icon: SomeIcon, + }) + .render(); diff --git a/plugins/vault/package.json b/plugins/vault/package.json index 05b8da1df4..35f441e65e 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -58,7 +58,7 @@ "@types/jest": "*", "@types/node": "*", "cross-fetch": "^3.1.5", - "msw": "^0.35.0" + "msw": "^0.42.0" }, "files": [ "dist" diff --git a/plugins/vault/src/api.test.ts b/plugins/vault/src/api.test.ts index 3452cbad38..70c6a553df 100644 --- a/plugins/vault/src/api.test.ts +++ b/plugins/vault/src/api.test.ts @@ -44,9 +44,9 @@ describe('api', () => { server.use( rest.get(`${mockBaseUrl}/v1/secrets/:path`, (req, res, ctx) => { const { path } = req.params; - if (path === 'test%2Fsuccess') { + if (path === 'test/success') { return res(ctx.json(mockSecretsResult)); - } else if (path === 'test%2Ferror') { + } else if (path === 'test/error') { return res(ctx.json([])); } return res(ctx.status(400)); diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx index 3538d2e0ae..f2b181562a 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx @@ -27,7 +27,7 @@ import { ApiProvider, UrlPatternDiscovery } from '@backstage/core-app-api'; import { VaultSecret, vaultApiRef, VaultClient } from '../../api'; import { rest } from 'msw'; -describe('EntityVautTable', () => { +describe('EntityVaultTable', () => { const server = setupServer(); setupRequestMockHandlers(server); let apis: TestApiRegistry; @@ -85,9 +85,9 @@ describe('EntityVautTable', () => { server.use( rest.get(`${mockBaseUrl}/v1/secrets/:path`, (req, res, ctx) => { const { path } = req.params; - if (path === 'test%2Fsuccess') { + if (path === 'test/success') { return res(ctx.json(mockSecretsResult)); - } else if (path === 'test%2Ferror') { + } else if (path === 'test/error') { return res(ctx.json([])); } return res(ctx.status(400)); From 2fa88266783ae8da838ddb83c81899ef98150ad2 Mon Sep 17 00:00:00 2001 From: Pit Wegner Date: Fri, 10 Jun 2022 02:21:53 -0700 Subject: [PATCH 318/550] add component dependency in text and diagram Signed-off-by: pitwegner --- .../software-catalog/software-model-core-entities.drawio.svg | 3 ++- .../software-catalog/software-model-entities.drawio.svg | 3 ++- docs/features/software-catalog/system-model.md | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) mode change 100644 => 100755 docs/assets/software-catalog/software-model-core-entities.drawio.svg mode change 100644 => 100755 docs/assets/software-catalog/software-model-entities.drawio.svg diff --git a/docs/assets/software-catalog/software-model-core-entities.drawio.svg b/docs/assets/software-catalog/software-model-core-entities.drawio.svg old mode 100644 new mode 100755 index 2260e5502e..1a8f63f9b2 --- a/docs/assets/software-catalog/software-model-core-entities.drawio.svg +++ b/docs/assets/software-catalog/software-model-core-entities.drawio.svg @@ -1,3 +1,4 @@ + -
dependsOn
dependsOn
Resource
(e.g. SQL Database, S3 bucket, ...)
Resource...
consumesAPI
consumesAPI
API
(e.g. OpenAPI, gRPC API, Avro, Dataset, ...)
API...
providesAPI
providesAPI
Component
(e.g. backend service, data pipeline ...)
Component...
Viewer does not support full SVG 1.1
\ No newline at end of file +
dependsOn
dependsOn
Resource
(e.g. SQL Database, S3 bucket, ...)
Resource...
consumesAPI
consumesAPI
API
(e.g. OpenAPI, gRPC API, Avro, Dataset, ...)
API...
providesAPI
providesAPI
Component
(e.g. backend service, data pipeline ...)
Component...
dependsOn
dependsOn
Text is not SVG - cannot display
\ No newline at end of file diff --git a/docs/assets/software-catalog/software-model-entities.drawio.svg b/docs/assets/software-catalog/software-model-entities.drawio.svg old mode 100644 new mode 100755 index 7b8b88f224..e14cc93e62 --- a/docs/assets/software-catalog/software-model-entities.drawio.svg +++ b/docs/assets/software-catalog/software-model-entities.drawio.svg @@ -1,3 +1,4 @@ + -
Domain
Domain
partOf
partOf
System
System
dependsOn
dependsOn
partOf
partOf
Resource
(e.g. SQL Database, S3 bucket, ...)
Resource...
consumesAPI
consumesAPI
API
(e.g. OpenAPI, gRPC API, Avro, Dataset, ...)
API...
providesAPI
providesAPI
partOf
partOf
Component
(e.g. backend service, data pipeline ...)
Component...
partOf
partOf
Viewer does not support full SVG 1.1
\ No newline at end of file +
Domain
Domain
partOf
partOf
System
System
dependsOn
dependsOn
partOf
partOf
Resource
(e.g. SQL Database, S3 bucket, ...)
Resource...
consumesAPI
consumesAPI
API
(e.g. OpenAPI, gRPC API, Avro, Dataset, ...)
API...
providesAPI
providesAPI
partOf
partOf
Component
(e.g. backend service, data pipeline ...)
Component...
partOf
partOf
dependsOn
dependsOn
Text is not SVG - cannot display
\ No newline at end of file diff --git a/docs/features/software-catalog/system-model.md b/docs/features/software-catalog/system-model.md index eedb94d02e..8a7e0cd30a 100644 --- a/docs/features/software-catalog/system-model.md +++ b/docs/features/software-catalog/system-model.md @@ -33,8 +33,8 @@ tracked in source control, or use some existing open source or commercial software. A component can implement APIs for other components to consume. In turn it might -depend on APIs implemented by other components, or resources that are attached -to it at runtime. +consume APIs implemented by other components, or directly depend on components or +resources that are attached to it at runtime. ### API From effb3b27a40931ea317b0fe2f426d6e4799563d7 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Fri, 10 Jun 2022 11:05:41 +0200 Subject: [PATCH 319/550] Further review feedback. Signed-off-by: Eric Peterson --- plugins/search-react/api-report.md | 37 +------------------ .../components/SearchBar/SearchBar.test.tsx | 8 ++-- .../src/components/SearchBar/SearchBar.tsx | 14 ++++++- .../src/components/SearchFilter/index.ts | 1 - plugins/search/api-report.md | 12 +++--- .../search/src/components/Filters/Filters.tsx | 8 ++++ .../src/components/Filters/FiltersButton.tsx | 3 ++ 7 files changed, 35 insertions(+), 48 deletions(-) diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index ce1fa53bb4..f9bb993fd6 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -27,7 +27,7 @@ export const AutocompleteFilter: ( // @public (undocumented) export const CheckboxFilter: (props: SearchFilterComponentProps) => JSX.Element; -// @public +// @public (undocumented) export const DefaultResultListItem: ( props: DefaultResultListItemProps, ) => JSX.Element; @@ -168,7 +168,7 @@ export type SearchFilterWrapperProps = SearchFilterComponentProps & { debug?: boolean; }; -// @public +// @public (undocumented) export const SearchResult: (props: SearchResultProps) => JSX.Element; // @public @@ -187,39 +187,6 @@ export type SearchResultProps = { // @public (undocumented) export const SelectFilter: (props: SearchFilterComponentProps) => JSX.Element; -// @public -export const useAsyncFilterValues: ( - fn: ((partial: string) => Promise) | undefined, - inputValue: string, - defaultValues?: string[], - debounce?: number, -) => - | { - loading: boolean; - error?: undefined; - value?: undefined; - } - | { - loading: false; - error: Error; - value?: undefined; - } - | { - loading: true; - error?: Error | undefined; - value?: string[] | undefined; - } - | { - loading: boolean; - value: string[]; - }; - -// @public -export const useDefaultFilterValue: ( - name: string, - defaultValue?: string | string[] | null | undefined, -) => void; - // @public export const useSearch: () => SearchContextValue; diff --git a/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx b/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx index 4e2c4d7a5c..d65278f7ec 100644 --- a/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx +++ b/plugins/search-react/src/components/SearchBar/SearchBar.test.tsx @@ -317,8 +317,8 @@ describe('SearchBar', () => { expect(analyticsApiSpy.getEvents()[0]).toEqual({ action: 'search', context: { - extension: 'App', - pluginId: 'root', + extension: 'SearchBar', + pluginId: 'search', routeRef: 'unknown', searchTypes: 'software-catalog,techdocs', }, @@ -340,8 +340,8 @@ describe('SearchBar', () => { expect(analyticsApiSpy.getEvents()[1]).toEqual({ action: 'search', context: { - extension: 'App', - pluginId: 'root', + extension: 'SearchBar', + pluginId: 'search', routeRef: 'unknown', searchTypes: 'software-catalog,techdocs', }, diff --git a/plugins/search-react/src/components/SearchBar/SearchBar.tsx b/plugins/search-react/src/components/SearchBar/SearchBar.tsx index b3c8ec9fa5..d3d25455ce 100644 --- a/plugins/search-react/src/components/SearchBar/SearchBar.tsx +++ b/plugins/search-react/src/components/SearchBar/SearchBar.tsx @@ -31,7 +31,11 @@ import { import SearchIcon from '@material-ui/icons/Search'; import ClearButton from '@material-ui/icons/Clear'; -import { configApiRef, useApi } from '@backstage/core-plugin-api'; +import { + AnalyticsContext, + configApiRef, + useApi, +} from '@backstage/core-plugin-api'; import { SearchContextProvider, @@ -175,5 +179,11 @@ export const SearchBar = ({ onChange, ...props }: SearchBarProps) => { [onChange, setTerm], ); - return ; + return ( + + + + ); }; diff --git a/plugins/search-react/src/components/SearchFilter/index.ts b/plugins/search-react/src/components/SearchFilter/index.ts index e159cff93d..9f92c7c8e2 100644 --- a/plugins/search-react/src/components/SearchFilter/index.ts +++ b/plugins/search-react/src/components/SearchFilter/index.ts @@ -16,7 +16,6 @@ export { CheckboxFilter, SearchFilter, SelectFilter } from './SearchFilter'; export { AutocompleteFilter } from './SearchFilter.Autocomplete'; -export { useAsyncFilterValues, useDefaultFilterValue } from './hooks'; export type { SearchFilterComponentProps, SearchFilterWrapperProps, diff --git a/plugins/search/api-report.md b/plugins/search/api-report.md index 85d4b783e5..800fa7e7fc 100644 --- a/plugins/search/api-report.md +++ b/plugins/search/api-report.md @@ -22,13 +22,13 @@ export const DefaultResultListItem: ( props: DefaultResultListItemProps, ) => JSX.Element; -// @public (undocumented) +// @public @deprecated (undocumented) export type FilterOptions = { kind: Array; lifecycle: Array; }; -// @public (undocumented) +// @public @deprecated (undocumented) export const Filters: ({ filters, filterOptions, @@ -37,19 +37,19 @@ export const Filters: ({ updateChecked, }: FiltersProps) => JSX.Element; -// @public (undocumented) +// @public @deprecated (undocumented) export const FiltersButton: ({ numberOfSelectedFilters, handleToggleFilters, }: FiltersButtonProps) => JSX.Element; -// @public +// @public @deprecated export type FiltersButtonProps = { numberOfSelectedFilters: number; handleToggleFilters: () => void; }; -// @public +// @public @deprecated export type FiltersProps = { filters: FiltersState; filterOptions: FilterOptions; @@ -58,7 +58,7 @@ export type FiltersProps = { updateChecked: (filter: string) => void; }; -// @public (undocumented) +// @public @deprecated (undocumented) export type FiltersState = { selected: string; checked: Array; diff --git a/plugins/search/src/components/Filters/Filters.tsx b/plugins/search/src/components/Filters/Filters.tsx index 9bbe90d32f..9170961e18 100644 --- a/plugins/search/src/components/Filters/Filters.tsx +++ b/plugins/search/src/components/Filters/Filters.tsx @@ -46,6 +46,8 @@ const useStyles = makeStyles(theme => ({ /** * @public + * @deprecated This type and corresponding component will be removed in a + * future release. */ export type FiltersState = { selected: string; @@ -54,6 +56,8 @@ export type FiltersState = { /** * @public + * @deprecated This type and corresponding component will be removed in a + * future release. */ export type FilterOptions = { kind: Array; @@ -64,6 +68,8 @@ export type FilterOptions = { * Props for {@link Filters}. * * @public + * @deprecated This type and corresponding component will be removed in a + * future release. */ export type FiltersProps = { filters: FiltersState; @@ -75,6 +81,8 @@ export type FiltersProps = { /** * @public + * @deprecated This component will be removed in a future release. Use + * `SearchFilter` from `@backstage/plugin-search-react` instead. */ export const Filters = ({ filters, diff --git a/plugins/search/src/components/Filters/FiltersButton.tsx b/plugins/search/src/components/Filters/FiltersButton.tsx index 8d896bbf30..890c787689 100644 --- a/plugins/search/src/components/Filters/FiltersButton.tsx +++ b/plugins/search/src/components/Filters/FiltersButton.tsx @@ -32,6 +32,8 @@ const useStyles = makeStyles(theme => ({ * Props for {@link FiltersButton}. * * @public + * @deprecated This type and corresponding component will be removed in a + * future release. */ export type FiltersButtonProps = { numberOfSelectedFilters: number; @@ -40,6 +42,7 @@ export type FiltersButtonProps = { /** * @public + * @deprecated See `SearchFilter` in `@backstage/plugin-search-react` instead. */ export const FiltersButton = ({ numberOfSelectedFilters, From ddce23d080673bb9d5b715e3467e29bb2586e2b4 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 11:38:46 +0200 Subject: [PATCH 320/550] prefix changeset with search-* Signed-off-by: Emma Indal --- .changeset/{wet-icons-shout.md => search-wet-icons-shout.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .changeset/{wet-icons-shout.md => search-wet-icons-shout.md} (100%) diff --git a/.changeset/wet-icons-shout.md b/.changeset/search-wet-icons-shout.md similarity index 100% rename from .changeset/wet-icons-shout.md rename to .changeset/search-wet-icons-shout.md From a1d5de54124697b7d3f84f15e78f0c50134ca08c Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 10:14:45 +0000 Subject: [PATCH 321/550] chore(deps): update dependency @types/react-syntax-highlighter to v15.5.2 Signed-off-by: Renovate Bot --- yarn.lock | 89 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 79 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index 73b604becb..92bad383fd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4340,6 +4340,14 @@ resolved "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.1.tgz#155ef21065427901994e765da8a0ba0eaae8b8bd" integrity sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw== +"@mswjs/cookies@^0.1.6": + version "0.1.7" + resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.1.7.tgz#d334081b2c51057a61c1dd7b76ca3cac02251651" + integrity sha512-bDg1ReMBx+PYDB4Pk7y1Q07Zz1iKIEUWQpkEXiA2lEWg9gvOZ8UBmGXilCEUvyYoRFlmr/9iXTRR69TrgSwX/Q== + dependencies: + "@types/set-cookie-parser" "^2.4.0" + set-cookie-parser "^2.4.6" + "@mswjs/cookies@^0.2.0": version "0.2.0" resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.2.0.tgz#7ef2b5d7e444498bb27cf57720e61f76a4ce9f23" @@ -4348,6 +4356,18 @@ "@types/set-cookie-parser" "^2.4.0" set-cookie-parser "^2.4.6" +"@mswjs/interceptors@^0.12.6": + version "0.12.7" + resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.12.7.tgz#0d1cd4cd31a0f663e0455993951201faa09d0909" + integrity sha512-eGjZ3JRAt0Fzi5FgXiV/P3bJGj0NqsN7vBS0J0FO2AQRQ0jCKQS4lEFm4wvlSgKQNfeuc/Vz6d81VtU3Gkx/zg== + dependencies: + "@open-draft/until" "^1.0.3" + "@xmldom/xmldom" "^0.7.2" + debug "^4.3.2" + headers-utils "^3.0.2" + outvariant "^1.2.0" + strict-event-emitter "^0.2.0" + "@mswjs/interceptors@^0.15.1": version "0.15.3" resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.15.3.tgz#bcd17b5d7558d4f598007a4bb383b42dc9264f8d" @@ -6239,6 +6259,14 @@ resolved "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz#f14740d1f585a0a8e3f46359b62fda8b0eaa31e7" integrity sha512-K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w== +"@types/inquirer@^7.3.3": + version "7.3.3" + resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-7.3.3.tgz#92e6676efb67fa6925c69a2ee638f67a822952ac" + integrity sha512-HhxyLejTHMfohAuhRun4csWigAMjXTmRyiJTU1Y/I1xmggikFMkOUoMQRlFm+zQcPEGHSs3io/0FAmNZf8EymQ== + dependencies: + "@types/through" "*" + rxjs "^6.4.0" + "@types/inquirer@^8.1.3": version "8.2.1" resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.1.tgz#28a139be3105a1175e205537e8ac10830e38dbf4" @@ -6315,7 +6343,7 @@ resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -6680,9 +6708,9 @@ "@types/react" "*" "@types/react-syntax-highlighter@^15.0.0": - version "15.5.1" - resolved "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-15.5.1.tgz#0c459cdd94a882df05778e93a1514430cc641043" - integrity sha512-+yD6D8y21JqLf89cRFEyRfptVMqo2ROHyAlysRvFwT28gT5gDo3KOiXHwGilHcq9y/OKTjlWK0f/hZUicrBFPQ== + version "15.5.2" + resolved "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-15.5.2.tgz#b3450851c11b8526a27edf51d00769b69d8fbf20" + integrity sha512-cJJvwU8lQv/efGSo/LmPoaOqWi/B0AG4CNKKCn7HPUL25SqiPn1Vl+fV1JiUigJv97ruTZ8mo08+b8/0zoYufA== dependencies: "@types/react" "*" @@ -7409,7 +7437,7 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.5": +"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.2", "@xmldom/xmldom@^0.7.5": version "0.7.5" resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A== @@ -10127,7 +10155,7 @@ cookie@0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== -cookie@0.4.2, cookie@^0.4.2, cookie@~0.4.1: +cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: version "0.4.2" resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== @@ -13988,6 +14016,11 @@ graphql-ws@^5.4.1: resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== +graphql@^15.5.1: + version "15.8.0" + resolved "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" + integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== + graphql@^16.0.0, graphql@^16.3.0: version "16.5.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.5.0.tgz#41b5c1182eaac7f3d47164fb247f61e4dfb69c85" @@ -14235,6 +14268,11 @@ headers-polyfill@^3.0.4: resolved "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.0.7.tgz#725c4f591e6748f46b036197eae102c92b959ff4" integrity sha512-JoLCAdCEab58+2/yEmSnOlficyHFpIl0XJqwu3l+Unkm1gXpFUYsThz6Yha3D6tNhocWkCPfyW0YVIGWFqTi7w== +headers-utils@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz#dfc65feae4b0e34357308aefbcafa99c895e59ef" + integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== + helmet@^5.0.2: version "5.1.0" resolved "https://registry.npmjs.org/helmet/-/helmet-5.1.0.tgz#e98a5d4bf89ab8119c856018a3bcc82addadcd47" @@ -14826,7 +14864,7 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@^8.0.0, inquirer@^8.2.0: +inquirer@^8.0.0, inquirer@^8.1.1, inquirer@^8.2.0: version "8.2.4" resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== @@ -18662,6 +18700,32 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +msw@^0.35.0: + version "0.35.0" + resolved "https://registry.npmjs.org/msw/-/msw-0.35.0.tgz#18a4ceb6c822ef226a30421d434413bc45030d38" + integrity sha512-V7A6PqaS31F1k//fPS0OnO7vllfaqBUFsMEu3IpYixyWpiUInfyglodnbXhhtDyytkQikpkPZv8TZi/CvZzv/w== + dependencies: + "@mswjs/cookies" "^0.1.6" + "@mswjs/interceptors" "^0.12.6" + "@open-draft/until" "^1.0.3" + "@types/cookie" "^0.4.1" + "@types/inquirer" "^7.3.3" + "@types/js-levenshtein" "^1.1.0" + chalk "^4.1.1" + chokidar "^3.4.2" + cookie "^0.4.1" + graphql "^15.5.1" + headers-utils "^3.0.2" + inquirer "^8.1.1" + is-node-process "^1.0.1" + js-levenshtein "^1.1.6" + node-fetch "^2.6.1" + node-match-path "^0.6.3" + statuses "^2.0.0" + strict-event-emitter "^0.2.0" + type-fest "^1.2.2" + yargs "^17.0.1" + msw@^0.39.2: version "0.39.2" resolved "https://registry.npmjs.org/msw/-/msw-0.39.2.tgz#832e9274db62c43cb79854d5a69dce031c700de8" @@ -18973,6 +19037,11 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" +node-match-path@^0.6.3: + version "0.6.3" + resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" + integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== + node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -19612,7 +19681,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.1, outvariant@^1.3.0: +outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -22680,7 +22749,7 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" -rxjs@^6.3.3, rxjs@^6.6.0, rxjs@^6.6.3: +rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -26356,7 +26425,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -yargs@^17.3.1: +yargs@^17.0.1, yargs@^17.3.1: version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From 58426f9c0fbea6ec5c028781431dc7b8d9f3f7e2 Mon Sep 17 00:00:00 2001 From: Joon Park Date: Fri, 10 Jun 2022 11:32:28 +0100 Subject: [PATCH 322/550] Create permission aggregation endpoints (#11695) * Create permission aggregation endpoints Signed-off-by: Joon Park * Spelling Signed-off-by: Joon Park * Refactor permission metadata aggregation into one endpoint Signed-off-by: Joe Porpeglia * Change parameter field shape Signed-off-by: Joon Park Co-authored-by: Joe Porpeglia --- .changeset/giant-birds-wink.md | 7 +++ .github/vale/Vocab/Backstage/accept.txt | 1 + plugins/permission-node/api-report.md | 1 + .../createPermissionIntegrationRouter.test.ts | 49 ++++++++++++++++--- .../createPermissionIntegrationRouter.ts | 22 +++++++-- 5 files changed, 69 insertions(+), 11 deletions(-) create mode 100644 .changeset/giant-birds-wink.md diff --git a/.changeset/giant-birds-wink.md b/.changeset/giant-birds-wink.md new file mode 100644 index 0000000000..c3dc2446b2 --- /dev/null +++ b/.changeset/giant-birds-wink.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-permission-node': patch +--- + +Added a new endpoint for aggregating permission metadata from a plugin backend: `/.well-known/backstage/permissions/metadata` + +By default, the metadata endpoint will return information about the permission rules supported by the plugin. Plugin authors can also provide an optional `permissions` parameter to `createPermissionIntegrationRouter`. If provided, these `Permission` objects will be included in the metadata returned by this endpoint. The `permissions` parameter will eventually be required in a future breaking change. diff --git a/.github/vale/Vocab/Backstage/accept.txt b/.github/vale/Vocab/Backstage/accept.txt index 7631640199..198a16e566 100644 --- a/.github/vale/Vocab/Backstage/accept.txt +++ b/.github/vale/Vocab/Backstage/accept.txt @@ -275,6 +275,7 @@ scrollbar seb semlas semver +serializable Serverless shoutout siloed diff --git a/plugins/permission-node/api-report.md b/plugins/permission-node/api-report.md index b2e4ff45b8..702d363137 100644 --- a/plugins/permission-node/api-report.md +++ b/plugins/permission-node/api-report.md @@ -112,6 +112,7 @@ export const createPermissionIntegrationRouter: < TResource, >(options: { resourceType: TResourceType; + permissions?: Permission[] | undefined; rules: PermissionRule, unknown[]>[]; getResources: (resourceRefs: string[]) => Promise<(TResource | undefined)[]>; }) => express.Router; diff --git a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts index 65c43c7f30..ac4005c487 100644 --- a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts +++ b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.test.ts @@ -14,7 +14,11 @@ * limitations under the License. */ -import { AuthorizeResult } from '@backstage/plugin-permission-common'; +import { + AuthorizeResult, + createPermission, + Permission, +} from '@backstage/plugin-permission-common'; import express, { Express, Router } from 'express'; import request, { Response } from 'supertest'; import { createPermissionIntegrationRouter } from './createPermissionIntegrationRouter'; @@ -26,22 +30,25 @@ const mockGetResources: jest.MockedFunction< resourceRefs.map(resourceRef => ({ id: resourceRef })), ); +const testPermission: Permission = createPermission({ + name: 'test.permission', + attributes: {}, +}); + const testRule1 = createPermissionRule({ name: 'test-rule-1', description: 'Test rule 1', resourceType: 'test-resource', - apply: jest.fn( - (_resource: any, _firstParam: string, _secondParam: number) => true, - ), - toQuery: jest.fn(), + apply: (_resource: any, _firstParam: string, _secondParam: number) => true, + toQuery: (_firstParam: string, _secondParam: number) => ({}), }); const testRule2 = createPermissionRule({ name: 'test-rule-2', description: 'Test rule 2', resourceType: 'test-resource', - apply: jest.fn((_resource: any, _firstParam: object) => false), - toQuery: jest.fn(), + apply: (_resource: any, _firstParam: object) => false, + toQuery: (_firstParam: object) => ({}), }); describe('createPermissionIntegrationRouter', () => { @@ -51,6 +58,7 @@ describe('createPermissionIntegrationRouter', () => { beforeAll(() => { router = createPermissionIntegrationRouter({ resourceType: 'test-resource', + permissions: [testPermission], getResources: mockGetResources, rules: [testRule1, testRule2], }); @@ -501,4 +509,31 @@ describe('createPermissionIntegrationRouter', () => { expect(response.error && response.error.text).toMatch(/invalid/i); }); }); + + describe('GET /.well-known/backstage/permissions/metadata', () => { + it('returns a list of permissions and rules used by a given backend', async () => { + const response = await request(app).get( + '/.well-known/backstage/permissions/metadata', + ); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ + permissions: [testPermission], + rules: [ + { + name: testRule1.name, + description: testRule1.description, + resourceType: testRule1.resourceType, + parameters: { count: 2 }, + }, + { + name: testRule2.name, + description: testRule2.description, + resourceType: testRule2.resourceType, + parameters: { count: 1 }, + }, + ], + }); + }); + }); }); diff --git a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts index 4bdb4397dd..28abc2f48d 100644 --- a/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts +++ b/plugins/permission-node/src/integration/createPermissionIntegrationRouter.ts @@ -23,6 +23,7 @@ import { AuthorizeResult, DefinitivePolicyDecision, IdentifiedPermissionMessage, + Permission, PermissionCondition, PermissionCriteria, } from '@backstage/plugin-permission-common'; @@ -174,6 +175,7 @@ export const createPermissionIntegrationRouter = < TResource, >(options: { resourceType: TResourceType; + permissions?: Array; // Do not infer value of TResourceType from supplied rules. // instead only consider the resourceType parameter, and // consider any rules whose resource type does not match @@ -183,8 +185,22 @@ export const createPermissionIntegrationRouter = < resourceRefs: string[], ) => Promise>; }): express.Router => { - const { resourceType, rules, getResources } = options; + const { resourceType, permissions, rules, getResources } = options; const router = Router(); + router.use(express.json()); + + router.get('/.well-known/backstage/permissions/metadata', (_, res) => { + const serializableRules = rules.map(rule => ({ + name: rule.name, + description: rule.description, + resourceType: rule.resourceType, + parameters: { + count: rule.toQuery.length, + }, + })); + + return res.json({ permissions, rules: serializableRules }); + }); const getRule = createGetRule(rules); @@ -202,8 +218,6 @@ export const createPermissionIntegrationRouter = < } }; - router.use(express.json()); - router.post( '/.well-known/backstage/permissions/apply-conditions', async (req, res: Response) => { @@ -227,7 +241,7 @@ export const createPermissionIntegrationRouter = < return acc; }, {} as Record); - return res.status(200).json({ + return res.json({ items: body.items.map(request => ({ id: request.id, result: applyConditions( From 941060a420abac1dcc3664e1b5bc5713a7d99bfd Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 11:07:18 +0000 Subject: [PATCH 323/550] fix(deps): update dependency @roadiehq/backstage-plugin-github-pull-requests to v2.1.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 92bad383fd..7dfacaf9f1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5236,9 +5236,9 @@ zustand "3.6.9" "@roadiehq/backstage-plugin-github-pull-requests@^2.0.0": - version "2.1.2" - resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.1.2.tgz#1c8289679bb109a70c30b5ba090ea7d751553764" - integrity sha512-VXv1D1JhifX0B9nukxFa61MyXouPTXEYkeNwYB+Y3e0VfoPEGzAeE/Ub23rP8aVcYsbuyCA+6u/HQsrw6Vgpxw== + version "2.1.3" + resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.1.3.tgz#d37869c2ff5a51794d3d166e80260937e1d51e11" + integrity sha512-2/HVfFFbmSwRTweTYVh5TYEa7Rl2+TPI2nVPps9yse6DBYPpo26XBvhnRT8O8OdJIJ0D4IQe1mZxpeFiDPZQpA== dependencies: "@backstage/catalog-model" "^1.0.0" "@backstage/core-components" "^0.9.0" From 0b8c1b93e25e633701cdbb479db18fd27b86b6fd Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 13:31:46 +0200 Subject: [PATCH 324/550] setIndexTemplate to be directly responsible for calling putIndexTemplate Signed-off-by: Emma Indal --- .../engines/ElasticSearchSearchEngine.test.ts | 43 +++---------------- .../src/engines/ElasticSearchSearchEngine.ts | 24 +++-------- 2 files changed, 14 insertions(+), 53 deletions(-) diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts index c1c8ed9c86..c114406d99 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts @@ -32,9 +32,6 @@ class ElasticSearchSearchEngineForTranslatorTests extends ElasticSearchSearchEng getTranslator() { return this.translator; } - getIndexTemplate() { - return this.indexTemplate; - } } const mock = new Mock(); @@ -93,16 +90,16 @@ describe('ElasticSearchSearchEngine', () => { }); describe('custom index template', () => { - it('should not have custom template set as default', async () => { - expect(inspectableSearchEngine.getIndexTemplate()).toBeUndefined(); - }); - it('should set custom index template', async () => { + const indexTemplateSpy = jest.fn().mockReturnValue(customIndexTemplate); + mock.add( + { method: 'PUT', path: '/_index_template/custom-index-template' }, + indexTemplateSpy, + ); await inspectableSearchEngine.setIndexTemplate(customIndexTemplate); - expect(inspectableSearchEngine.getIndexTemplate()).toMatchObject( - customIndexTemplate, - ); + expect(indexTemplateSpy).toHaveBeenCalled(); + expect(indexTemplateSpy).toHaveBeenCalledTimes(1); }); }); @@ -811,38 +808,12 @@ describe('ElasticSearchSearchEngine', () => { elasticSearchClient: client, }), ); - expect(indexerMock.on).toHaveBeenCalledWith( - 'finish', - expect.any(Function), - ); expect(indexerMock.on).toHaveBeenCalledWith( 'error', expect.any(Function), ); }); - describe('onFinish', () => { - let callback: Function; - - beforeEach(async () => { - mock.clearAll(); - await testSearchEngine.getIndexer('test-index'); - callback = indexerMock.on.mock.calls[1][1]; - }); - - it('should set provided index template on finish', async () => { - const indexTemplateSpy = jest.fn().mockReturnValue(customIndexTemplate); - mock.add( - { method: 'PUT', path: '/_index_template/custom-index-template' }, - indexTemplateSpy, - ); - - await callback(); - - expect(indexTemplateSpy).toHaveBeenCalled(); - }); - }); - describe('onError', () => { let errorHandler: Function; const error = new Error('some error'); diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index 01bffdfff2..d11d8a1f90 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -145,7 +145,6 @@ function isBlank(str: string) { export class ElasticSearchSearchEngine implements SearchEngine { private readonly elasticSearchClient: Client; private readonly highlightOptions: ElasticSearchHighlightConfig; - protected indexTemplate?: ElasticSearchCustomIndexTemplate; constructor( private readonly elasticSearchClientOptions: ElasticSearchClientOptions, @@ -268,8 +267,13 @@ export class ElasticSearchSearchEngine implements SearchEngine { this.translator = translator; } - setIndexTemplate(template: ElasticSearchCustomIndexTemplate) { - this.indexTemplate = template; + async setIndexTemplate(template: ElasticSearchCustomIndexTemplate) { + try { + await this.elasticSearchClient.indices.putIndexTemplate(template); + this.logger.info('Custom index template set'); + } catch (error) { + this.logger.error(`Unable to set custom index template: ${error}`); + } } async getIndexer(type: string) { @@ -303,20 +307,6 @@ export class ElasticSearchSearchEngine implements SearchEngine { } }); - indexer.on('finish', async () => { - // Set custom index template if set - if (this.indexTemplate) { - try { - await this.elasticSearchClient.indices.putIndexTemplate( - this.indexTemplate, - ); - this.logger.info('Custom index template set'); - } catch (error) { - this.logger.error(`Unable to set custom index template: ${error}`); - } - } - }); - return indexer; } From 33bea6d4a15fccb174a1baaa3533b4e63d7a9873 Mon Sep 17 00:00:00 2001 From: Raffi Tamizian Date: Fri, 10 Jun 2022 12:32:31 +0100 Subject: [PATCH 325/550] Update docs link to current techdocs-cli Signed-off-by: Raffi Tamizian --- docs/features/techdocs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/features/techdocs/README.md b/docs/features/techdocs/README.md index 48c469def7..761a247819 100644 --- a/docs/features/techdocs/README.md +++ b/docs/features/techdocs/README.md @@ -95,7 +95,7 @@ See [TechDocs Architecture](architecture.md) to get an overview of where the bel [techdocs/frontend-library]: https://github.com/backstage/backstage/blob/master/plugins/techdocs-react [techdocs/backend]: https://github.com/backstage/backstage/blob/master/plugins/techdocs-backend [techdocs/container]: https://github.com/backstage/techdocs-container -[techdocs/cli]: https://github.com/backstage/techdocs-cli +[techdocs/cli]: https://github.com/backstage/backstage/blob/master/packages/techdocs-cli ## Get involved From d3edcd078476e460db7a0e97e901d58c4170fde2 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 13:41:56 +0200 Subject: [PATCH 326/550] add instructions for how to set a custom index template Signed-off-by: Emma Indal --- docs/features/search/search-engines.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/docs/features/search/search-engines.md b/docs/features/search/search-engines.md index f1fd4bd62b..9bb8b8c343 100644 --- a/docs/features/search/search-engines.md +++ b/docs/features/search/search-engines.md @@ -102,6 +102,31 @@ import { Client } from '@elastic/elastic-search'; const client = searchEngine.newClient(options => new Client(options)); ``` +#### Set custom index template + +The elasticsearch engine gives you the ability to set a custom index template if needed. + +> Index templates define settings, mappings, and aliases that can be applied automatically to new indices. + +```typescript +// app/backend/src/plugins/search.ts +const searchEngine = await ElasticSearchSearchEngine.initialize({ + logger: env.logger, + config: env.config, +}); + +searchEngine.setIndexTemplate({ + name: '', + body: { + index_patterns: [''], + template: { + mappings: {}, + settings: {}, + }, + }, +}); +``` + ## Example configurations ### AWS From 539c7bb4f75b62938acb6315b2f1e0730380b5d4 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Fri, 10 Jun 2022 13:43:37 +0200 Subject: [PATCH 327/550] update api report Signed-off-by: Emma Indal --- plugins/search-backend-module-elasticsearch/api-report.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugins/search-backend-module-elasticsearch/api-report.md b/plugins/search-backend-module-elasticsearch/api-report.md index dfbb7e493f..04b7f96f93 100644 --- a/plugins/search-backend-module-elasticsearch/api-report.md +++ b/plugins/search-backend-module-elasticsearch/api-report.md @@ -224,13 +224,11 @@ export class ElasticSearchSearchEngine implements SearchEngine { }: ElasticSearchOptions): Promise; // (undocumented) getIndexer(type: string): Promise; - // (undocumented) - protected indexTemplate?: ElasticSearchCustomIndexTemplate; newClient(create: (options: ElasticSearchClientOptions) => T): T; // (undocumented) query(query: SearchQuery): Promise; // (undocumented) - setIndexTemplate(template: ElasticSearchCustomIndexTemplate): void; + setIndexTemplate(template: ElasticSearchCustomIndexTemplate): Promise; // (undocumented) setTranslator(translator: ElasticSearchQueryTranslator): void; // (undocumented) From e5cf887fc38e0fa332a62405c9201b4c2a3150c2 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 12:18:57 +0000 Subject: [PATCH 328/550] fix(deps): update dependency @yarnpkg/parsers to v3.0.0-rc.9 Signed-off-by: Renovate Bot --- yarn.lock | 89 +++++++------------------------------------------------ 1 file changed, 10 insertions(+), 79 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7dfacaf9f1..a82b4d5dab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4340,14 +4340,6 @@ resolved "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.1.tgz#155ef21065427901994e765da8a0ba0eaae8b8bd" integrity sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw== -"@mswjs/cookies@^0.1.6": - version "0.1.7" - resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.1.7.tgz#d334081b2c51057a61c1dd7b76ca3cac02251651" - integrity sha512-bDg1ReMBx+PYDB4Pk7y1Q07Zz1iKIEUWQpkEXiA2lEWg9gvOZ8UBmGXilCEUvyYoRFlmr/9iXTRR69TrgSwX/Q== - dependencies: - "@types/set-cookie-parser" "^2.4.0" - set-cookie-parser "^2.4.6" - "@mswjs/cookies@^0.2.0": version "0.2.0" resolved "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.2.0.tgz#7ef2b5d7e444498bb27cf57720e61f76a4ce9f23" @@ -4356,18 +4348,6 @@ "@types/set-cookie-parser" "^2.4.0" set-cookie-parser "^2.4.6" -"@mswjs/interceptors@^0.12.6": - version "0.12.7" - resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.12.7.tgz#0d1cd4cd31a0f663e0455993951201faa09d0909" - integrity sha512-eGjZ3JRAt0Fzi5FgXiV/P3bJGj0NqsN7vBS0J0FO2AQRQ0jCKQS4lEFm4wvlSgKQNfeuc/Vz6d81VtU3Gkx/zg== - dependencies: - "@open-draft/until" "^1.0.3" - "@xmldom/xmldom" "^0.7.2" - debug "^4.3.2" - headers-utils "^3.0.2" - outvariant "^1.2.0" - strict-event-emitter "^0.2.0" - "@mswjs/interceptors@^0.15.1": version "0.15.3" resolved "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.15.3.tgz#bcd17b5d7558d4f598007a4bb383b42dc9264f8d" @@ -6259,14 +6239,6 @@ resolved "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz#f14740d1f585a0a8e3f46359b62fda8b0eaa31e7" integrity sha512-K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w== -"@types/inquirer@^7.3.3": - version "7.3.3" - resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-7.3.3.tgz#92e6676efb67fa6925c69a2ee638f67a822952ac" - integrity sha512-HhxyLejTHMfohAuhRun4csWigAMjXTmRyiJTU1Y/I1xmggikFMkOUoMQRlFm+zQcPEGHSs3io/0FAmNZf8EymQ== - dependencies: - "@types/through" "*" - rxjs "^6.4.0" - "@types/inquirer@^8.1.3": version "8.2.1" resolved "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.1.tgz#28a139be3105a1175e205537e8ac10830e38dbf4" @@ -6343,7 +6315,7 @@ resolved "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/js-levenshtein@^1.1.0", "@types/js-levenshtein@^1.1.1": +"@types/js-levenshtein@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.1.tgz#ba05426a43f9e4e30b631941e0aa17bf0c890ed5" integrity sha512-qC4bCqYGy1y/NP7dDVr7KJarn+PbX1nSpwA7JXdu0HxT3QYjO8MJ+cntENtHFVy2dRAyBV23OZ6MxsW1AM1L8g== @@ -7437,7 +7409,7 @@ "@webassemblyjs/ast" "1.11.1" "@xtuc/long" "4.2.2" -"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.2", "@xmldom/xmldom@^0.7.5": +"@xmldom/xmldom@^0.7.0", "@xmldom/xmldom@^0.7.5": version "0.7.5" resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A== @@ -7463,9 +7435,9 @@ integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== "@yarnpkg/parsers@^3.0.0-rc.4": - version "3.0.0-rc.7" - resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.7.tgz#2be47b765b36518c1148e2d4e86c919be4f2101d" - integrity sha512-MTEcH+5vmkspbMD53S6eHEfpRHer3pXOl0vCBYNTPivsxmTU14As5yoKyJvGjM/KN7/Madzz+WoDUvYNs7an+A== + version "3.0.0-rc.9" + resolved "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.9.tgz#2d284e4e0c79b1c4e410465e217fa303d98b7be3" + integrity sha512-JMBE+6OJoNN9AXBzZ72u22/t9M25K8KgUWZIjvk8CU/NsE/m946l8D7SqMhbi3ZaUfYa5QitqCqVWTTFtysGJQ== dependencies: js-yaml "^3.10.0" tslib "^1.13.0" @@ -10155,7 +10127,7 @@ cookie@0.4.1: resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== -cookie@0.4.2, cookie@^0.4.1, cookie@^0.4.2, cookie@~0.4.1: +cookie@0.4.2, cookie@^0.4.2, cookie@~0.4.1: version "0.4.2" resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== @@ -14016,11 +13988,6 @@ graphql-ws@^5.4.1: resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== -graphql@^15.5.1: - version "15.8.0" - resolved "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" - integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== - graphql@^16.0.0, graphql@^16.3.0: version "16.5.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.5.0.tgz#41b5c1182eaac7f3d47164fb247f61e4dfb69c85" @@ -14268,11 +14235,6 @@ headers-polyfill@^3.0.4: resolved "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.0.7.tgz#725c4f591e6748f46b036197eae102c92b959ff4" integrity sha512-JoLCAdCEab58+2/yEmSnOlficyHFpIl0XJqwu3l+Unkm1gXpFUYsThz6Yha3D6tNhocWkCPfyW0YVIGWFqTi7w== -headers-utils@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/headers-utils/-/headers-utils-3.0.2.tgz#dfc65feae4b0e34357308aefbcafa99c895e59ef" - integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== - helmet@^5.0.2: version "5.1.0" resolved "https://registry.npmjs.org/helmet/-/helmet-5.1.0.tgz#e98a5d4bf89ab8119c856018a3bcc82addadcd47" @@ -14864,7 +14826,7 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -inquirer@^8.0.0, inquirer@^8.1.1, inquirer@^8.2.0: +inquirer@^8.0.0, inquirer@^8.2.0: version "8.2.4" resolved "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== @@ -18700,32 +18662,6 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msw@^0.35.0: - version "0.35.0" - resolved "https://registry.npmjs.org/msw/-/msw-0.35.0.tgz#18a4ceb6c822ef226a30421d434413bc45030d38" - integrity sha512-V7A6PqaS31F1k//fPS0OnO7vllfaqBUFsMEu3IpYixyWpiUInfyglodnbXhhtDyytkQikpkPZv8TZi/CvZzv/w== - dependencies: - "@mswjs/cookies" "^0.1.6" - "@mswjs/interceptors" "^0.12.6" - "@open-draft/until" "^1.0.3" - "@types/cookie" "^0.4.1" - "@types/inquirer" "^7.3.3" - "@types/js-levenshtein" "^1.1.0" - chalk "^4.1.1" - chokidar "^3.4.2" - cookie "^0.4.1" - graphql "^15.5.1" - headers-utils "^3.0.2" - inquirer "^8.1.1" - is-node-process "^1.0.1" - js-levenshtein "^1.1.6" - node-fetch "^2.6.1" - node-match-path "^0.6.3" - statuses "^2.0.0" - strict-event-emitter "^0.2.0" - type-fest "^1.2.2" - yargs "^17.0.1" - msw@^0.39.2: version "0.39.2" resolved "https://registry.npmjs.org/msw/-/msw-0.39.2.tgz#832e9274db62c43cb79854d5a69dce031c700de8" @@ -19037,11 +18973,6 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-match-path@^0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/node-match-path/-/node-match-path-0.6.3.tgz#55dd8443d547f066937a0752dce462ea7dc27551" - integrity sha512-fB1reOHKLRZCJMAka28hIxCwQLxGmd7WewOCBDYKpyA1KXi68A7vaGgdZAPhY2E6SXoYt3KqYCCvXLJ+O0Fu/Q== - node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -19681,7 +19612,7 @@ outdent@^0.5.0: resolved "https://registry.npmjs.org/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.0, outvariant@^1.2.1, outvariant@^1.3.0: +outvariant@^1.2.1, outvariant@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/outvariant/-/outvariant-1.3.0.tgz#c39723b1d2cba729c930b74bf962317a81b9b1c9" integrity sha512-yeWM9k6UPfG/nzxdaPlJkB2p08hCg4xP6Lx99F+vP8YF7xyZVfTmJjrrNalkmzudD4WFvNLVudQikqUmF8zhVQ== @@ -22749,7 +22680,7 @@ rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: dependencies: tslib "^2.1.0" -rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: +rxjs@^6.3.3, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== @@ -26425,7 +26356,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -yargs@^17.0.1, yargs@^17.3.1: +yargs@^17.3.1: version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From 6d235b5c26963fc36306a8a3cfb8bb68304312a8 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Fri, 10 Jun 2022 14:24:08 +0200 Subject: [PATCH 329/550] rename oauth2proxy to oauth2Proxy Signed-off-by: Johan Haals --- docs/auth/oauth2-proxy/provider.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/auth/oauth2-proxy/provider.md b/docs/auth/oauth2-proxy/provider.md index 966596e268..e16d807cb4 100644 --- a/docs/auth/oauth2-proxy/provider.md +++ b/docs/auth/oauth2-proxy/provider.md @@ -6,7 +6,7 @@ description: Adding OAuth2Proxy as an authentication provider in Backstage --- The Backstage `@backstage/plugin-auth-backend` package comes with an -`oauth2proxy` authentication provider that can authenticate users by using a +`oauth2Proxy` authentication provider that can authenticate users by using a [oauth2-proxy](https://github.com/oauth2-proxy/oauth2-proxy) in front of an actual Backstage instance. This enables to reuse existing authentications within a cluster. In general the `oauth2-proxy` supports all OpenID Connect providers, @@ -21,17 +21,17 @@ The provider configuration can be added to your `app-config.yaml` under the root ```yaml auth: providers: - oauth2proxy: {} + oauth2Proxy: {} ``` Right now no configuration options are supported, but the empty object is needed to enable the provider in the auth backend. -To use the `oauth2proxy` provider you must also configure it with a sign-in resolver. +To use the `oauth2Proxy` provider you must also configure it with a sign-in resolver. For more information about the sign-in process in general, see the [Sign-in Identities and Resolvers](../identity-resolver.md) documentation. -For the `oauth2proxy` provider, the sign-in result is quite different than other providers. +For the `oauth2Proxy` provider, the sign-in result is quite different than other providers. Because it's a proxy provider that can be configured to forward information through arbitrary headers, the auth result simply just gives you access to the HTTP headers of the incoming request. Using these you can either extract the information directly, @@ -65,7 +65,7 @@ installed in `packages/app/src/App.tsx` like this: const app = createApp({ components: { -+ SignInPage: props => , ++ SignInPage: props => , ``` See the [Sign-In with Proxy Providers](../index.md#sign-in-with-proxy-providers) section for more information. From 0f20dbace9b290dc911ed66f2fbeeb9adaf53b70 Mon Sep 17 00:00:00 2001 From: "jean-philippe.blary" Date: Fri, 10 Jun 2022 14:28:24 +0200 Subject: [PATCH 330/550] docs: add OVHcloud as adopter Signed-off-by: jean-philippe.blary --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index f78ffb3a2c..0630ea9b4a 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -158,3 +158,4 @@ _If you're using Backstage in your organization, please try to add your company | [Meltwater](https://underthehood.meltwater.com) | [@spier](https://github.com/spier), [@remen](https://github.com/remen) | Improving developer experience by centralizing documentation and internal APIs. Goal: Foster InnerSource collaboration and speed up onboarding time in our 500+ people Product & Engineering org. | [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. | [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. +| [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. From 69df195501649285b774fc65ad0e087baef36529 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 13:21:39 +0000 Subject: [PATCH 331/550] fix(deps): update dependency graphiql to v1.9.7 Signed-off-by: Renovate Bot --- yarn.lock | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/yarn.lock b/yarn.lock index a82b4d5dab..6884819555 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2271,17 +2271,17 @@ teeny-request "^8.0.0" uuid "^8.0.0" -"@graphiql/react@^0.4.0": - version "0.4.0" - resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.4.0.tgz#55099632c29be0c49f1251904b74cbfd2d31993b" - integrity sha512-9OtwzJ3EaDgD5Qi+WtnHA8Wv0XL9l+W4n3jtNR+wFDjC2vvbEd/grPm0eSikryVcq/0q6aR4HyR3SuKj6tKPYg== +"@graphiql/react@^0.4.1": + version "0.4.1" + resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.4.1.tgz#c424951f4e1b2ffa22aa514b18663d7a848ff31f" + integrity sha512-YeB26Sc223zfv6wSzygKRfeJ7JeXZW40c6vY4Om/POXuytRyrxuKynuP1Z3ueGYY4Rji8YMg6dPAjtTOUDLjZw== dependencies: "@graphiql/toolkit" "^0.6.0" codemirror "^5.65.3" - codemirror-graphql "^1.3.0" + codemirror-graphql "^1.3.1" copy-to-clipboard "^3.2.0" escape-html "^1.0.3" - graphql-language-service "^5.0.4" + graphql-language-service "^5.0.5" markdown-it "^12.2.0" set-value "^4.1.0" @@ -9589,12 +9589,12 @@ code-point-at@^1.0.0: resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= -codemirror-graphql@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/codemirror-graphql/-/codemirror-graphql-1.3.0.tgz#6ca19eb2735dbfd5ac9db59b8fc4c8fc1e34fe43" - integrity sha512-Inqecp/PpUsNFz6+V6jpgQD1m7jjGg3yby60baw2t5yb2stBH8Z/6cHm/IYp9eN0Aq2EWqomd0GkGmiISPi4jQ== +codemirror-graphql@^1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/codemirror-graphql/-/codemirror-graphql-1.3.1.tgz#c852b12b6909783681a5e37d61d1627a78f9c7a6" + integrity sha512-jlLwTARoMeuYLR5sQYbh5uYewIoYUYAn+0lOIKXpaHudk9X1rOrP/WtOqfDza1ETnyfnlpLidBnpieIMKktriQ== dependencies: - graphql-language-service "^5.0.4" + graphql-language-service "^5.0.5" codemirror@^5.65.3: version "5.65.3" @@ -13905,14 +13905,14 @@ grapheme-splitter@^1.0.4: integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== graphiql@^1.5.12, graphiql@^1.8.8: - version "1.9.6" - resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.6.tgz#ab1714a0200bdcf358761d7e9625de41fe06a98c" - integrity sha512-HxKM2cu6SQUi8x1QqZc/GkLBnyjZerPOKmiBfsZmIWYLtZTJTd4dezeraD2klB80FkYKgPVPbojGLofuLq8w3w== + version "1.9.7" + resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.7.tgz#2edadea4fbbd723f9ba27a1f464f4ff5b20866bd" + integrity sha512-rn0njwDkCpFn5GwDbSuzt7GwjiFLhYCdgiscYm4n8Oq9EeOyGrIxQK/PjUz1YaR/+T7lg1raIBuRAX/Nei9KcQ== dependencies: - "@graphiql/react" "^0.4.0" + "@graphiql/react" "^0.4.1" "@graphiql/toolkit" "^0.6.0" entities "^2.0.0" - graphql-language-service "^5.0.4" + graphql-language-service "^5.0.5" markdown-it "^12.2.0" graphlib@^2.1.8: @@ -13944,10 +13944,10 @@ graphql-executor@0.0.23: resolved "https://registry.npmjs.org/graphql-executor/-/graphql-executor-0.0.23.tgz#205c1764b39ee0fcf611553865770f37b45851a2" integrity sha512-3Ivlyfjaw3BWmGtUSnMpP/a4dcXCp0mJtj0PiPG14OKUizaMKlSEX+LX2Qed0LrxwniIwvU6B4w/koVjEPyWJg== -graphql-language-service@^5.0.4: - version "5.0.4" - resolved "https://registry.npmjs.org/graphql-language-service/-/graphql-language-service-5.0.4.tgz#068dd4ff5dc6fcc6c8560ccc8f05311d5fd63fcd" - integrity sha512-lX+ahYBwvTHJe1N7JqA08moNwbr0RWaFILxVnbciaaeb469TTIhQi87ZgVJ/y9Szre4d0r3vjIt2EstwafzcDA== +graphql-language-service@^5.0.5: + version "5.0.5" + resolved "https://registry.npmjs.org/graphql-language-service/-/graphql-language-service-5.0.5.tgz#894c08bee50070c97cc53ae514847aeef41bc0ac" + integrity sha512-hekBLI73r6ghShWrIMJ7Pe4Z+yJrda/U+kLenNJLNswuCrR0XfFOv5pNtnSXLcjFZkQfY1bwGV0D8IVKZEOW5Q== dependencies: nullthrows "^1.0.0" vscode-languageserver-types "^3.15.1" From 14c0a579a509137cbe6a0a0b3a8fbbef2d5d1630 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Fri, 10 Jun 2022 15:25:39 +0200 Subject: [PATCH 332/550] add UserSettingsIdentityCard Signed-off-by: Kiss Miklos --- .../General/UserSettingsGeneral.tsx | 4 ++ .../General/UserSettingsIdentityCard.tsx | 51 +++++++++++++++++++ .../src/components/useUserProfileInfo.ts | 1 + 3 files changed, 56 insertions(+) create mode 100644 plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx diff --git a/plugins/user-settings/src/components/General/UserSettingsGeneral.tsx b/plugins/user-settings/src/components/General/UserSettingsGeneral.tsx index 6705997d1c..db7fdd7be6 100644 --- a/plugins/user-settings/src/components/General/UserSettingsGeneral.tsx +++ b/plugins/user-settings/src/components/General/UserSettingsGeneral.tsx @@ -17,6 +17,7 @@ import { Grid } from '@material-ui/core'; import React from 'react'; import { UserSettingsProfileCard } from './UserSettingsProfileCard'; import { UserSettingsAppearanceCard } from './UserSettingsAppearanceCard'; +import { UserSettingsIdentityCard } from './UserSettingsIdentityCard'; export const UserSettingsGeneral = () => { return ( @@ -27,6 +28,9 @@ export const UserSettingsGeneral = () => { + + + ); }; diff --git a/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx new file mode 100644 index 0000000000..b656c6b861 --- /dev/null +++ b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx @@ -0,0 +1,51 @@ +/* + * Copyright 2022 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 { InfoCard } from '@backstage/core-components'; +import { Grid, Typography } from '@material-ui/core'; +import React from 'react'; +import { useUserProfile } from '../useUserProfileInfo'; +import Chip from '@material-ui/core/Chip'; + +export const UserSettingsIdentityCard = () => { + const { backstageIdentity } = useUserProfile(); + + return ( + + + + + + + User Entity:{' '} + + + + Ownership Entities:{' '} + {backstageIdentity?.ownershipEntityRefs.map(it => ( + + ))} + + + + + + + ); +}; diff --git a/plugins/user-settings/src/components/useUserProfileInfo.ts b/plugins/user-settings/src/components/useUserProfileInfo.ts index f893520cd2..c168fc12b4 100644 --- a/plugins/user-settings/src/components/useUserProfileInfo.ts +++ b/plugins/user-settings/src/components/useUserProfileInfo.ts @@ -53,6 +53,7 @@ export const useUserProfile = () => { return { profile: value!.profile, + backstageIdentity: value!.identity, displayName: value!.profile.displayName ?? value!.identity.userEntityRef, loading, }; From 9d2d6a0ceae21b39bb4c810d366b16df346b302a Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Fri, 10 Jun 2022 15:30:00 +0200 Subject: [PATCH 333/550] add changeset to plugin-user-settings Signed-off-by: Kiss Miklos --- .changeset/early-hats-rest.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/early-hats-rest.md diff --git a/.changeset/early-hats-rest.md b/.changeset/early-hats-rest.md new file mode 100644 index 0000000000..6eab693200 --- /dev/null +++ b/.changeset/early-hats-rest.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-user-settings': patch +--- + +Add UserSettingsIdentityCard to show the result of the identityApi.getBackstageIdentity() call to help debug ownership issues. From cd1acab4636bc3188130081dcd1228bb484f8014 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 9 Jun 2022 14:58:59 +0200 Subject: [PATCH 334/550] Document the `discover` event for search result clicks. Signed-off-by: Eric Peterson --- docs/plugins/analytics.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/plugins/analytics.md b/docs/plugins/analytics.md index d5fd02a46d..ccb4e5c5a7 100644 --- a/docs/plugins/analytics.md +++ b/docs/plugins/analytics.md @@ -52,11 +52,12 @@ learn how to contribute the integration yourself! The following table summarizes events that, depending on the plugins you have installed, may be captured. -| Action | Provided By | Subject | -| ---------- | -------------- | --------------------------------------------------- | -| `navigate` | Backstage Core | The URL of the page that was navigated to | -| `click` | Backstage Core | The text of the link that was clicked on | -| `search` | Backstage Core | The search term entered in any search bar component | +| Action | Subject | Other Notes | +| ---------- | --------------------------------------------------- | ----------------------------------------------------------------- | +| `navigate` | The URL of the page that was navigated to | | +| `click` | The text of the link that was clicked on | The `to` attribute represents the URL clicked to | +| `search` | The search term entered in any search bar component | The `searchTypes` attribute holds `types` constraining the search | +| `discover` | The title of the search result that was clicked on | The `value` is the result rank. A `to` attribute is also provided | If there is an event you'd like to see captured, please [open an issue][add-event] describing the event you want to see and the questions it From 484afdf1dc7521a9865c82ee86f187628dd59472 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 9 Jun 2022 15:11:24 +0200 Subject: [PATCH 335/550] Add a rank attribute to the Result type. Signed-off-by: Eric Peterson --- .changeset/search-rank-and-file.md | 5 +++++ plugins/search-common/api-report.md | 4 +--- plugins/search-common/src/types.ts | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 .changeset/search-rank-and-file.md diff --git a/.changeset/search-rank-and-file.md b/.changeset/search-rank-and-file.md new file mode 100644 index 0000000000..bfad6a63ad --- /dev/null +++ b/.changeset/search-rank-and-file.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-common': patch +--- + +Added an optional `rank` attribute to the `Result` type. This represents the result rank (starting at 1) for a given result in a result set for a given search. diff --git a/plugins/search-common/api-report.md b/plugins/search-common/api-report.md index bb049742f7..ea9fc2d26e 100644 --- a/plugins/search-common/api-report.md +++ b/plugins/search-common/api-report.md @@ -52,11 +52,9 @@ export type QueryTranslator = (query: SearchQuery) => unknown; // @public (undocumented) export interface Result { - // (undocumented) document: TDocument; - // (undocumented) highlight?: ResultHighlight; - // (undocumented) + rank?: number; type: string; } diff --git a/plugins/search-common/src/types.ts b/plugins/search-common/src/types.ts index fdcc06287c..4b4c25d423 100644 --- a/plugins/search-common/src/types.ts +++ b/plugins/search-common/src/types.ts @@ -56,9 +56,27 @@ export interface ResultHighlight { * @public */ export interface Result { + /** + * The "type" of the given document. See: {@link DocumentCollatorFactory."type"} + */ type: string; + + /** + * The raw value of the document, as indexed. + */ document: TDocument; + + /** + * Optional result highlight. Useful for improving the search result + * display/experience. + */ highlight?: ResultHighlight; + + /** + * Optional result rank, where 1 is the first/top result returned. Useful for + * understanding search effectiveness in analytics. + */ + rank?: number; } /** From 915700f64fcf600ac0079571372944e8cb130f09 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 9 Jun 2022 15:17:55 +0200 Subject: [PATCH 336/550] Set a pagination-aware rank value for all search engines. Signed-off-by: Eric Peterson --- .changeset/search-rank-choice-voting.md | 8 ++++ .changeset/search-rankly-my-dear.md | 7 ++++ plugins/catalog/api-report.md | 2 + .../CatalogSearchResultListItem.tsx | 12 +++++- .../src/engines/ElasticSearchSearchEngine.ts | 41 ++++++++++--------- .../src/PgSearchEngine/PgSearchEngine.ts | 12 ++++-- .../src/engines/LunrSearchEngine.ts | 3 +- .../src/service/AuthorizedSearchEngine.ts | 13 ++++-- plugins/search-react/api-report.md | 1 + .../DefaultResultListItem.tsx | 14 ++++++- plugins/techdocs/api-report.md | 1 + .../TechDocsSearchResultListItem.tsx | 20 ++++++++- 12 files changed, 102 insertions(+), 32 deletions(-) create mode 100644 .changeset/search-rank-choice-voting.md create mode 100644 .changeset/search-rankly-my-dear.md diff --git a/.changeset/search-rank-choice-voting.md b/.changeset/search-rank-choice-voting.md new file mode 100644 index 0000000000..2754d149e7 --- /dev/null +++ b/.changeset/search-rank-choice-voting.md @@ -0,0 +1,8 @@ +--- +'@backstage/plugin-search-backend': patch +'@backstage/plugin-search-backend-module-elasticsearch': patch +'@backstage/plugin-search-backend-module-pg': patch +'@backstage/plugin-search-backend-node': patch +--- + +The provided search engine now adds a pagination-aware `rank` value to all results. diff --git a/.changeset/search-rankly-my-dear.md b/.changeset/search-rankly-my-dear.md new file mode 100644 index 0000000000..c528c567b1 --- /dev/null +++ b/.changeset/search-rankly-my-dear.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-catalog': patch +'@backstage/plugin-search': patch +'@backstage/plugin-techdocs': patch +--- + +In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index 5b7e07701c..34bb5dfcec 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -114,6 +114,8 @@ export interface CatalogSearchResultListItemProps { // (undocumented) icon?: ReactNode; // (undocumented) + rank?: number; + // (undocumented) result: IndexableDocument; } diff --git a/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx b/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx index 993e34fbf6..a7307055c2 100644 --- a/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx +++ b/plugins/catalog/src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.tsx @@ -25,6 +25,7 @@ import { makeStyles, } from '@material-ui/core'; import { Link } from '@backstage/core-components'; +import { useAnalytics } from '@backstage/core-plugin-api'; import { IndexableDocument, ResultHighlight, @@ -51,6 +52,7 @@ export interface CatalogSearchResultListItemProps { icon?: ReactNode; result: IndexableDocument; highlight?: ResultHighlight; + rank?: number; } /** @public */ @@ -60,8 +62,16 @@ export function CatalogSearchResultListItem( const result = props.result as any; const classes = useStyles(); + const analytics = useAnalytics(); + const handleClick = () => { + analytics.captureEvent('discover', result.title, { + attributes: { to: result.location }, + value: props.rank, + }); + }; + return ( - + {props.icon && {props.icon}}
diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts index d11d8a1f90..31112e3446 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.ts @@ -334,27 +334,30 @@ export class ElasticSearchSearchEngine implements SearchEngine { : undefined; return { - results: result.body.hits.hits.map((d: ElasticSearchResult) => { - const resultItem: IndexableResult = { - type: this.getTypeFromIndex(d._index), - document: d._source, - }; - - if (d.highlight) { - resultItem.highlight = { - preTag: this.highlightOptions.preTag as string, - postTag: this.highlightOptions.postTag as string, - fields: Object.fromEntries( - Object.entries(d.highlight).map(([field, fragments]) => [ - field, - fragments.join(this.highlightOptions.fragmentDelimiter), - ]), - ), + results: result.body.hits.hits.map( + (d: ElasticSearchResult, index: number) => { + const resultItem: IndexableResult = { + type: this.getTypeFromIndex(d._index), + document: d._source, + rank: pageSize * page + index + 1, }; - } - return resultItem; - }), + if (d.highlight) { + resultItem.highlight = { + preTag: this.highlightOptions.preTag as string, + postTag: this.highlightOptions.postTag as string, + fields: Object.fromEntries( + Object.entries(d.highlight).map(([field, fragments]) => [ + field, + fragments.join(this.highlightOptions.fragmentDelimiter), + ]), + ), + }; + } + + return resultItem; + }, + ), nextPageCursor, previousPageCursor, }; diff --git a/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.ts b/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.ts index 445d1bb5c1..bf98c58de9 100644 --- a/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.ts +++ b/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.ts @@ -18,6 +18,7 @@ import { SearchEngine } from '@backstage/plugin-search-backend-node'; import { SearchQuery, IndexableResultSet, + IndexableResult, } from '@backstage/plugin-search-common'; import { PgSearchEngineIndexer } from './PgSearchEngineIndexer'; import { @@ -104,10 +105,13 @@ export class PgSearchEngine implements SearchEngine { ? encodePageCursor({ page: page - 1 }) : undefined; - const results = pageRows.map(({ type, document }) => ({ - type, - document, - })); + const results = pageRows.map( + ({ type, document }, index): IndexableResult => ({ + type, + document, + rank: page * pageSize + index + 1, + }), + ); return { results, nextPageCursor, previousPageCursor }; } diff --git a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts index 4a5f4cdd18..03cb421653 100644 --- a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts +++ b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts @@ -207,9 +207,10 @@ export class LunrSearchEngine implements SearchEngine { // Translate results into IndexableResultSet const realResultSet: IndexableResultSet = { - results: results.slice(offset, offset + pageSize).map(d => ({ + results: results.slice(offset, offset + pageSize).map((d, index) => ({ type: d.type, document: this.docStore[d.result.ref], + rank: page * pageSize + index + 1, highlight: { preTag: this.highlightPreTag, postTag: this.highlightPostTag, diff --git a/plugins/search-backend/src/service/AuthorizedSearchEngine.ts b/plugins/search-backend/src/service/AuthorizedSearchEngine.ts index a74cdf8eef..ade43280be 100644 --- a/plugins/search-backend/src/service/AuthorizedSearchEngine.ts +++ b/plugins/search-backend/src/service/AuthorizedSearchEngine.ts @@ -189,10 +189,15 @@ export class AuthorizedSearchEngine implements SearchEngine { ); return { - results: filteredResults.slice( - page * this.pageSize, - (page + 1) * this.pageSize, - ), + results: filteredResults + .slice(page * this.pageSize, (page + 1) * this.pageSize) + .map((result, index) => { + // Overwrite any/all rank entries to avoid leaking knowledge of filtered results. + return { + ...result, + rank: page * this.pageSize + index + 1, + }; + }), previousPageCursor: page === 0 ? undefined : encodePageCursor({ page: page - 1 }), nextPageCursor: diff --git a/plugins/search-react/api-report.md b/plugins/search-react/api-report.md index f9bb993fd6..e4afee45ca 100644 --- a/plugins/search-react/api-report.md +++ b/plugins/search-react/api-report.md @@ -38,6 +38,7 @@ export type DefaultResultListItemProps = { secondaryAction?: ReactNode; result: SearchDocument; highlight?: ResultHighlight; + rank?: number; lineClamp?: number; }; diff --git a/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx index ff6f3d7fe1..f4260525d6 100644 --- a/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx +++ b/plugins/search-react/src/components/DefaultResultListItem/DefaultResultListItem.tsx @@ -15,7 +15,7 @@ */ import React, { ReactNode } from 'react'; -import { AnalyticsContext } from '@backstage/core-plugin-api'; +import { AnalyticsContext, useAnalytics } from '@backstage/core-plugin-api'; import { ResultHighlight, SearchDocument, @@ -40,6 +40,7 @@ export type DefaultResultListItemProps = { secondaryAction?: ReactNode; result: SearchDocument; highlight?: ResultHighlight; + rank?: number; lineClamp?: number; }; @@ -51,12 +52,21 @@ export type DefaultResultListItemProps = { export const DefaultResultListItemComponent = ({ result, highlight, + rank, icon, secondaryAction, lineClamp = 5, }: DefaultResultListItemProps) => { + const analytics = useAnalytics(); + const handleClick = () => { + analytics.captureEvent('discover', result.title, { + attributes: { to: result.location }, + value: rank, + }); + }; + return ( - + {icon && {icon}} { + analytics.captureEvent('discover', result.title, { + attributes: { to: result.location }, + value: rank, + }); + }; + const TextItem = () => { const resultTitle = highlight?.fields.title ? ( ) => - asLink ? {children} : <>{children}; + asLink ? ( + + {children} + + ) : ( + <>{children} + ); const ListItemWrapper = ({ children }: PropsWithChildren<{}>) => asListItem ? ( From f7f5a6c6a3b0f925279dbe56bef2bfc80bdc3026 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 9 Jun 2022 15:51:32 +0200 Subject: [PATCH 337/550] Update the app and create-app to pass through rank Signed-off-by: Eric Peterson --- .changeset/search-pull-rank.md | 50 +++++++++++++++++++ .../app/src/components/search/SearchModal.tsx | 5 +- .../app/src/components/search/SearchPage.tsx | 5 +- .../app/src/components/search/SearchPage.tsx | 5 +- 4 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 .changeset/search-pull-rank.md diff --git a/.changeset/search-pull-rank.md b/.changeset/search-pull-rank.md new file mode 100644 index 0000000000..995225698e --- /dev/null +++ b/.changeset/search-pull-rank.md @@ -0,0 +1,50 @@ +--- +'@backstage/create-app': patch +--- + +It's now possible to pass result item components a `rank`, which is captured by the analytics API when a user clicks on a search result. To apply this change, update your `/packages/app/src/components/search/SearchPage.tsx` in the following way: + +```diff +// ... + + {({ results }) => ( + +- {results.map(({ type, document, highlight }) => { ++ {results.map(({ type, document, highlight, rank }) => { + switch (type) { + case 'software-catalog': + return ( + + ); + case 'techdocs': + return ( + + ); + default: + return ( + + ); + } + })} + + )} + +// ... +``` + +If you have implemented a custom Search Modal or other custom search experience, you will want to make similar changes in those components. diff --git a/packages/app/src/components/search/SearchModal.tsx b/packages/app/src/components/search/SearchModal.tsx index f5f4204302..99fc964cb2 100644 --- a/packages/app/src/components/search/SearchModal.tsx +++ b/packages/app/src/components/search/SearchModal.tsx @@ -184,7 +184,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { {({ results }) => ( - {results.map(({ type, document, highlight }) => { + {results.map(({ type, document, highlight, rank }) => { let resultItem; switch (type) { case 'software-catalog': @@ -194,6 +194,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); break; @@ -204,6 +205,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); break; @@ -213,6 +215,7 @@ export const SearchModal = ({ toggleModal }: { toggleModal: () => void }) => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); } diff --git a/packages/app/src/components/search/SearchPage.tsx b/packages/app/src/components/search/SearchPage.tsx index 9a2e85bd8c..053fa81da8 100644 --- a/packages/app/src/components/search/SearchPage.tsx +++ b/packages/app/src/components/search/SearchPage.tsx @@ -132,7 +132,7 @@ const SearchPage = () => { {({ results }) => ( - {results.map(({ type, document, highlight }) => { + {results.map(({ type, document, highlight, rank }) => { switch (type) { case 'software-catalog': return ( @@ -141,6 +141,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); case 'techdocs': @@ -150,6 +151,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); default: @@ -158,6 +160,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); } diff --git a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx index 1b3bf5b77d..928b8201ea 100644 --- a/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/components/search/SearchPage.tsx @@ -112,7 +112,7 @@ const SearchPage = () => { {({ results }) => ( - {results.map(({ type, document, highlight }) => { + {results.map(({ type, document, highlight, rank }) => { switch (type) { case 'software-catalog': return ( @@ -120,6 +120,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); case 'techdocs': @@ -128,6 +129,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); default: @@ -136,6 +138,7 @@ const SearchPage = () => { key={document.location} result={document} highlight={highlight} + rank={rank} /> ); } From c7ce7b1eb043c4d5d2a701f32380dabc0e6493c6 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Thu, 9 Jun 2022 17:26:28 +0200 Subject: [PATCH 338/550] Test rank handling in all search engines. Signed-off-by: Eric Peterson --- .../engines/ElasticSearchSearchEngine.test.ts | 4 ++++ .../src/PgSearchEngine/PgSearchEngine.test.ts | 3 +++ .../src/engines/LunrSearchEngine.test.ts | 14 +++++++++++++ .../service/AuthorizedSearchEngine.test.ts | 20 +++++++++++++++---- 4 files changed, 37 insertions(+), 4 deletions(-) diff --git a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts index c114406d99..7892b731ed 100644 --- a/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts +++ b/plugins/search-backend-module-elasticsearch/src/engines/ElasticSearchSearchEngine.test.ts @@ -523,6 +523,7 @@ describe('ElasticSearchSearchEngine', () => { .map((_, i) => ({ type: 'mytype', document: { value: `${i}` }, + rank: i + 1, })), ), }); @@ -567,6 +568,7 @@ describe('ElasticSearchSearchEngine', () => { .map((_, i) => ({ type: 'mytype', document: { value: `${i}` }, + rank: i + 1, })), ), nextPageCursor: 'MQ==', @@ -614,6 +616,7 @@ describe('ElasticSearchSearchEngine', () => { .map((_, i) => ({ type: 'mytype', document: { value: `${i}` }, + rank: i + 1, })) .slice(25), ), @@ -667,6 +670,7 @@ describe('ElasticSearchSearchEngine', () => { .map((_, i) => ({ type: 'mytype', document: { value: `${i}` }, + rank: i + 1, highlight: { preTag: '', postTag: '', diff --git a/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.test.ts b/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.test.ts index cc89f28c80..3ed002567e 100644 --- a/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.test.ts +++ b/plugins/search-backend-module-pg/src/PgSearchEngine/PgSearchEngine.test.ts @@ -174,6 +174,7 @@ describe('PgSearchEngine', () => { location: 'location-1', }, type: 'my-type', + rank: 1, }, ], nextPageCursor: undefined, @@ -215,6 +216,7 @@ describe('PgSearchEngine', () => { location: `location-${i}`, }, type: 'my-type', + rank: i + 1, })), nextPageCursor: 'MQ==', }); @@ -257,6 +259,7 @@ describe('PgSearchEngine', () => { location: `location-${i}`, }, type: 'my-type', + rank: i + 1, })) .slice(25), previousPageCursor: 'MA==', diff --git a/plugins/search-backend-node/src/engines/LunrSearchEngine.test.ts b/plugins/search-backend-node/src/engines/LunrSearchEngine.test.ts index 84b1a35165..098d1e8b16 100644 --- a/plugins/search-backend-node/src/engines/LunrSearchEngine.test.ts +++ b/plugins/search-backend-node/src/engines/LunrSearchEngine.test.ts @@ -431,6 +431,7 @@ describe('LunrSearchEngine', () => { location: 'test/location', }, type: 'test-index', + rank: 1, }, ], nextPageCursor: undefined, @@ -469,6 +470,7 @@ describe('LunrSearchEngine', () => { text: 'testText', location: 'test/location', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -521,6 +523,7 @@ describe('LunrSearchEngine', () => { location: `${highlightTags.pre}test/location${highlightTags.post}`, }, }, + rank: 1, }, ], nextPageCursor: undefined, @@ -559,6 +562,7 @@ describe('LunrSearchEngine', () => { text: 'testText', location: 'test/location', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -598,6 +602,7 @@ describe('LunrSearchEngine', () => { text: 'testText', location: 'test/location', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -637,6 +642,7 @@ describe('LunrSearchEngine', () => { text: 'Hello World.', location: 'test/location', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -676,6 +682,7 @@ describe('LunrSearchEngine', () => { text: 'Searching', location: 'test/location', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -722,6 +729,7 @@ describe('LunrSearchEngine', () => { text: 'testText', location: 'test/location2', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -777,6 +785,7 @@ describe('LunrSearchEngine', () => { location: 'test/location2', extraField: 'testExtraField', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -823,6 +832,7 @@ describe('LunrSearchEngine', () => { text: 'testText', location: 'test:location2', }, + rank: 1, }, ], nextPageCursor: undefined, @@ -886,6 +896,7 @@ describe('LunrSearchEngine', () => { text: 'testText', title: 'testTitle', }, + rank: 1, }, { document: { @@ -893,6 +904,7 @@ describe('LunrSearchEngine', () => { text: 'testText', title: 'testTitle', }, + rank: 2, }, ], nextPageCursor: undefined, @@ -931,6 +943,7 @@ describe('LunrSearchEngine', () => { location: `test/location/${i}`, }, type: 'test-index', + rank: i + 1, })), nextPageCursor: 'MQ==', previousPageCursor: undefined, @@ -968,6 +981,7 @@ describe('LunrSearchEngine', () => { location: `test/location/${i}`, }, type: 'test-index', + rank: i + 1, })) .slice(25), nextPageCursor: undefined, diff --git a/plugins/search-backend/src/service/AuthorizedSearchEngine.test.ts b/plugins/search-backend/src/service/AuthorizedSearchEngine.test.ts index 256608fd82..b2355a7239 100644 --- a/plugins/search-backend/src/service/AuthorizedSearchEngine.test.ts +++ b/plugins/search-backend/src/service/AuthorizedSearchEngine.test.ts @@ -44,6 +44,7 @@ describe('AuthorizedSearchEngine', () => { .fill(0) .map((_, index) => ({ type, + rank: index + 1, document: { title: `${type}_doc_${index}`, authorization: withAuthorization @@ -261,9 +262,11 @@ describe('AuthorizedSearchEngine', () => { }), ); + const expectedResult = { ...usersWithAuth[8], rank: 1 }; + await expect( authorizedSearchEngine.query({ term: '' }, options), - ).resolves.toEqual({ results: [usersWithAuth[8]] }); + ).resolves.toEqual({ results: [expectedResult] }); expect(mockedQuery).toHaveBeenCalledWith( { term: '', types: ['users'] }, @@ -275,6 +278,7 @@ describe('AuthorizedSearchEngine', () => { const searchResults = [ { type: 'templates', + rank: 1, document: { title: `doc_0_a`, authorization: { resourceRef: `template_doc_0` }, @@ -282,6 +286,7 @@ describe('AuthorizedSearchEngine', () => { }, { type: 'templates', + rank: 2, document: { title: `doc_0_b`, authorization: { resourceRef: `template_doc_0` }, @@ -419,7 +424,9 @@ describe('AuthorizedSearchEngine', () => { { token: 'token' }, ); - const expectedResult = allDocuments.slice(0, 25); + const expectedResult = allDocuments + .slice(0, 25) + .map((r, i) => ({ ...r, rank: i + 1 })); const expectedFirstRequestCursor = 'MQ=='; expect(result).toEqual({ @@ -510,7 +517,8 @@ describe('AuthorizedSearchEngine', () => { const expectedResult = allDocuments .filter(d => d.type !== typeServices) - .slice(0, 25); + .slice(0, 25) + .map((d, i) => ({ ...d, rank: i + 1 })); const expectedFirstRequestCursor = 'MQ=='; expect(result).toEqual({ @@ -587,8 +595,12 @@ describe('AuthorizedSearchEngine', () => { { token: 'token' }, ); + const expectedResults = servicesWithAuth + .slice(5) + .map((r, i) => ({ ...r, rank: 25 + i + 1 })); + expect(result).toEqual({ - results: servicesWithAuth.slice(5), + results: expectedResults, previousPageCursor: encodePageCursor({ page: 0 }), }); }); From 3ff65242b84b1c012239c049905d34d4c9beb12e Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Fri, 10 Jun 2022 15:50:47 +0200 Subject: [PATCH 339/550] add api-report.md Signed-off-by: Kiss Miklos --- plugins/user-settings/api-report.md | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/plugins/user-settings/api-report.md b/plugins/user-settings/api-report.md index 136b23bd71..db98f54a90 100644 --- a/plugins/user-settings/api-report.md +++ b/plugins/user-settings/api-report.md @@ -7,6 +7,7 @@ import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { BackstageUserIdentity } from '@backstage/core-plugin-api'; import { IconComponent } from '@backstage/core-plugin-api'; import { ProfileInfo } from '@backstage/core-plugin-api'; import { PropsWithChildren } from 'react'; @@ -129,9 +130,17 @@ export const UserSettingsThemeToggle: () => JSX.Element; // Warning: (ae-missing-release-tag) "useUserProfile" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export const useUserProfile: () => { - profile: ProfileInfo; - displayName: string; - loading: boolean; -}; +export const useUserProfile: () => + | { + profile: ProfileInfo; + displayName: string; + backstageIdentity: undefined; + loading: boolean; + } + | { + profile: ProfileInfo; + backstageIdentity: BackstageUserIdentity; + displayName: string; + loading: false; + }; ``` From 22f1047165cdea1473febd1a23c854ddb8b8d2d1 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 10 Jun 2022 15:50:54 +0200 Subject: [PATCH 340/550] docs/oauth2-proxy: update provider installation example Signed-off-by: Patrik Oldsberg --- docs/auth/oauth2-proxy/provider.md | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/docs/auth/oauth2-proxy/provider.md b/docs/auth/oauth2-proxy/provider.md index e16d807cb4..e57ea96b26 100644 --- a/docs/auth/oauth2-proxy/provider.md +++ b/docs/auth/oauth2-proxy/provider.md @@ -40,19 +40,22 @@ or grab ID or access tokens to look up additional information and/or validate th A simple sign-in resolver might for example look like this: ```ts -providers.oauth2Proxy.create({ - signIn: { - async resolver({ result }, ctx) { - const name = result.getHeader('x-forwarded-user'); - if (!name) { - throw new Error('Request did not contain a user') - } - return ctx.signInWithCatalogUser({ - entityRef: { name }, - }); +providerFactories: { + ...defaultAuthProviderFactories, + oauth2Proxy: providers.oauth2Proxy.create({ + signIn: { + async resolver({ result }, ctx) { + const name = result.getHeader('x-forwarded-user'); + if (!name) { + throw new Error('Request did not contain a user') + } + return ctx.signInWithCatalogUser({ + entityRef: { name }, + }); + }, }, - }, -}), + }), +}, ``` ## Adding the provider to the Backstage frontend From cac715bf933a602402cdf11e70d6d9832240e317 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 14:47:48 +0000 Subject: [PATCH 341/550] chore(deps): update dependency ws to v8.8.0 Signed-off-by: Renovate Bot --- yarn.lock | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index 6884819555..58ee777ae5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26099,7 +26099,7 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" -ws@8.7.0, ws@^8.0.0, ws@^8.3.0: +ws@8.7.0: version "8.7.0" resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== @@ -26109,6 +26109,11 @@ ws@^7.3.1, ws@^7.4.6: resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== +ws@^8.0.0, ws@^8.3.0: + version "8.8.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz#8e71c75e2f6348dbf8d78005107297056cb77769" + integrity sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ== + ws@^8.4.2: version "8.5.0" resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" From cdf43a30583baeccc4e4d328b5226e8c5af8d89b Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 10 Jun 2022 15:51:02 +0000 Subject: [PATCH 342/550] fix(deps): update dependency @octokit/webhooks to v9.25.0 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 58ee777ae5..92532270c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5016,19 +5016,19 @@ resolved "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-2.0.0.tgz#1108b9ea661ca6c81e4a8bfa63a09eb27d5bc2db" integrity sha512-35cfQ4YWlnZnmZKmIxlGPUPLtbkF8lr/A/1Sk1eC0ddLMwQN06dOuLc+dI3YLQS+T+MoNt3DIQ0NynwgKPilig== -"@octokit/webhooks-types@5.6.0": - version "5.6.0" - resolved "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.6.0.tgz#cbc908ef0df997de7f65da4e4003ecb8430410d3" - integrity sha512-y3MqE6N6Ksg1+YV0sXVpW2WP7Y24h7rUp2hDJuzoqWdKGr7owmRDyHC72INwfCYNzura/vsNPXvc6Xbfp4wGGw== +"@octokit/webhooks-types@5.7.1": + version "5.7.1" + resolved "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.7.1.tgz#26452dcd72fa77ac85bb188fda2a5980eb292932" + integrity sha512-zabCzfWvvquxDzj1lU7GhJQteACGfGXnHfROJD4A7LKhRjlkaggoSkE5cWQJJ6nW2t/UI51dSFrEA+A4mhqfPw== "@octokit/webhooks@^9.0.1", "@octokit/webhooks@^9.14.1": - version "9.24.0" - resolved "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.24.0.tgz#3e3b194ee67151f674e8d0d565c8179828a12b3d" - integrity sha512-s1nqplA+j4sP7Cz40jn/Q2ipkKRKJ7Gi+NzZiSnwNfisYNduLHEwMUJVBEKc5I0r6GMcZZRJOe6PJ2rJXYW66g== + version "9.25.0" + resolved "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.25.0.tgz#f1bd7815af59fb37892b87c86d2cb8625a570e9a" + integrity sha512-pyCraAmxHSnfTMe4K+QnNH/nSCJolCc++J2SAfYBwPFm6gg2WTGxWuegzuHul+Xm71+V9qL2NhIXX48U7MvTIA== dependencies: "@octokit/request-error" "^2.0.2" "@octokit/webhooks-methods" "^2.0.0" - "@octokit/webhooks-types" "5.6.0" + "@octokit/webhooks-types" "5.7.1" aggregate-error "^3.1.0" "@open-draft/until@^1.0.3": From 50770f06ccb6020773befdbef2ba6b8986eadd4b Mon Sep 17 00:00:00 2001 From: Isaiah Thiessen Date: Fri, 10 Jun 2022 09:49:07 -0700 Subject: [PATCH 343/550] fix: build api-report Signed-off-by: Isaiah Thiessen --- plugins/dynatrace/api-report.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/plugins/dynatrace/api-report.md b/plugins/dynatrace/api-report.md index 26716108b7..026df62189 100644 --- a/plugins/dynatrace/api-report.md +++ b/plugins/dynatrace/api-report.md @@ -8,13 +8,15 @@ import { BackstagePlugin } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; -// @public (undocumented) +// @public export const dynatracePlugin: BackstagePlugin<{}, {}>; -// @public (undocumented) +// @public export const DynatraceTab: () => JSX.Element; -// @public (undocumented) +// Warning: (tsdoc-param-tag-with-invalid-type) The @param block should not include a JSDoc-style '{type}' +// +// @public export const isDynatraceAvailable: (entity: Entity) => boolean; // (No @packageDocumentation comment for this package) From d8538cddee9792c252bde505b74b1c60f65c2685 Mon Sep 17 00:00:00 2001 From: Binita Nayak <45393478+binitan@users.noreply.github.com> Date: Sun, 12 Jun 2022 13:06:52 +0200 Subject: [PATCH 344/550] add P&G to adopters Signed-off-by: Binita Nayak <45393478+binitan@users.noreply.github.com> --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 0630ea9b4a..703879544a 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -159,3 +159,4 @@ _If you're using Backstage in your organization, please try to add your company | [Doctolib](https://doctolib.engineering/) | [@djiit](https://github.com/djiit) | Rails modularization effort awareness, tech organization discoverability. Improving the daily workflows and collaboration processes of our engineers. | [Twilio](https://www.twilio.com) | [Kyle Smith](https://github.com/knksmith57) | Developer portal, universal software catalog, and centralized taxonomy platform. | [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. +| [Procter & Gamble](https://us.pg.com/) | [Binita Nayak](https://github.com/binitan), [Josh Rose](https://github.com/joshuarose), [RJ Winkler](https://github.com/rjwink) | P&G leverages Backstage to build internal developer portal to ensure developers' happiness. This developer portal shall act as single source of information needed by development teams to seamlessly create, find and maintain their software components/resources/documentation. From cdf8e8aab0b2f72c7ca2c40dbb3b6d362b88b401 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Do=C4=9Fan?= <8117265+omerfarukdogan@users.noreply.github.com> Date: Mon, 13 Jun 2022 09:08:24 +0300 Subject: [PATCH 345/550] feat(techdocs): use entity title in searchbar placeholder MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Ömer Faruk Doğan <8117265+omerfarukdogan@users.noreply.github.com> --- .changeset/tall-jobs-warn.md | 5 +++++ plugins/techdocs/api-report.md | 1 + .../TechDocsReaderPageContent/TechDocsReaderPageContent.tsx | 5 ++++- plugins/techdocs/src/search/components/TechDocsSearch.tsx | 5 +++-- 4 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 .changeset/tall-jobs-warn.md diff --git a/.changeset/tall-jobs-warn.md b/.changeset/tall-jobs-warn.md new file mode 100644 index 0000000000..00154bc9e3 --- /dev/null +++ b/.changeset/tall-jobs-warn.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs': patch +--- + +Use entity title in `TechDocsSearch` placeholder if available. diff --git a/plugins/techdocs/api-report.md b/plugins/techdocs/api-report.md index 7778c07ef4..d4ec65ed53 100644 --- a/plugins/techdocs/api-report.md +++ b/plugins/techdocs/api-report.md @@ -380,6 +380,7 @@ export const TechDocsSearch: (props: TechDocsSearchProps) => JSX.Element; // @public export type TechDocsSearchProps = { entityId: CompoundEntityRef; + entityTitle?: string; debounceTime?: number; }; diff --git a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/TechDocsReaderPageContent.tsx b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/TechDocsReaderPageContent.tsx index c31979b5f9..000a1ba275 100644 --- a/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/TechDocsReaderPageContent.tsx +++ b/plugins/techdocs/src/reader/components/TechDocsReaderPageContent/TechDocsReaderPageContent.tsx @@ -114,7 +114,10 @@ export const TechDocsReaderPageContent = withTechDocsReaderProvider( {withSearch && ( - + )} diff --git a/plugins/techdocs/src/search/components/TechDocsSearch.tsx b/plugins/techdocs/src/search/components/TechDocsSearch.tsx index 509c991353..647520af8c 100644 --- a/plugins/techdocs/src/search/components/TechDocsSearch.tsx +++ b/plugins/techdocs/src/search/components/TechDocsSearch.tsx @@ -46,6 +46,7 @@ const useStyles = makeStyles({ */ export type TechDocsSearchProps = { entityId: CompoundEntityRef; + entityTitle?: string; debounceTime?: number; }; @@ -64,7 +65,7 @@ type TechDocsSearchResult = { }; const TechDocsSearchBar = (props: TechDocsSearchProps) => { - const { entityId, debounceTime = 150 } = props; + const { entityId, entityTitle, debounceTime = 150 } = props; const [open, setOpen] = useState(false); const navigate = useNavigate(); const { @@ -160,7 +161,7 @@ const TechDocsSearchBar = (props: TechDocsSearchProps) => { data-testid="techdocs-search-bar-input" variant="outlined" fullWidth - placeholder={`Search ${entityId.name} docs`} + placeholder={`Search ${entityTitle || entityId.name} docs`} value={value} onChange={handleQuery} InputProps={{ From f6dfc61d2707c85621c0b8a1ecf1dcc918279606 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Mon, 13 Jun 2022 10:00:22 +0200 Subject: [PATCH 346/550] add test Signed-off-by: Kiss Miklos --- .../General/UserSettingsIdentityCard.test.tsx | 53 +++++++++++++++++++ .../General/UserSettingsIdentityCard.tsx | 3 +- 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 plugins/user-settings/src/components/General/UserSettingsIdentityCard.test.tsx diff --git a/plugins/user-settings/src/components/General/UserSettingsIdentityCard.test.tsx b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.test.tsx new file mode 100644 index 0000000000..19c3eb2182 --- /dev/null +++ b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.test.tsx @@ -0,0 +1,53 @@ +/* + * Copyright 2022 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 { + renderWithEffects, + wrapInTestApp, + TestApiRegistry, +} from '@backstage/test-utils'; +import { screen } from '@testing-library/react'; +import React from 'react'; +import { UserSettingsIdentityCard } from './UserSettingsIdentityCard'; +import { ApiProvider } from '@backstage/core-app-api'; +import { identityApiRef } from '@backstage/core-plugin-api'; + +const apiRegistry = TestApiRegistry.from([ + identityApiRef, + { + getProfileInfo: jest.fn(async () => ({})), + getBackstageIdentity: jest.fn(async () => ({ + type: 'user' as const, + userEntityRef: 'foo:bar/foobar', + ownershipEntityRefs: ['test-ownership'], + })), + }, +]); + +describe('', () => { + it('displays an identity card', async () => { + await renderWithEffects( + wrapInTestApp( + + + , + ), + ); + + expect(screen.getByText('test-ownership')).toBeInTheDocument(); + expect(screen.getByText('foo:bar/foobar')).toBeInTheDocument(); + }); +}); diff --git a/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx index b656c6b861..908cda1423 100644 --- a/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx +++ b/plugins/user-settings/src/components/General/UserSettingsIdentityCard.tsx @@ -14,10 +14,11 @@ * limitations under the License. */ import { InfoCard } from '@backstage/core-components'; -import { Grid, Typography } from '@material-ui/core'; import React from 'react'; import { useUserProfile } from '../useUserProfileInfo'; import Chip from '@material-ui/core/Chip'; +import Grid from '@material-ui/core/Grid'; +import Typography from '@material-ui/core/Typography'; export const UserSettingsIdentityCard = () => { const { backstageIdentity } = useUserProfile(); From 6955d948a7dfb14507659589b58ce98dfc9a2ad7 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Mon, 13 Jun 2022 10:13:53 +0200 Subject: [PATCH 347/550] export the componenet from the plugin Signed-off-by: Kiss Miklos --- plugins/user-settings/src/components/General/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/user-settings/src/components/General/index.ts b/plugins/user-settings/src/components/General/index.ts index 80a9c75d89..ff4d1210c4 100644 --- a/plugins/user-settings/src/components/General/index.ts +++ b/plugins/user-settings/src/components/General/index.ts @@ -21,3 +21,4 @@ export { UserSettingsSignInAvatar } from './UserSettingsSignInAvatar'; export { UserSettingsAppearanceCard } from './UserSettingsAppearanceCard'; export { UserSettingsThemeToggle } from './UserSettingsThemeToggle'; export { UserSettingsPinToggle } from './UserSettingsPinToggle'; +export { UserSettingsIdentityCard } from './UserSettingsIdentityCard'; From f9a5c9a7c85ec16abb32cab2ef770abb23b33308 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Mon, 13 Jun 2022 10:22:58 +0200 Subject: [PATCH 348/550] update api-report Signed-off-by: Kiss Miklos --- plugins/user-settings/api-report.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/user-settings/api-report.md b/plugins/user-settings/api-report.md index db98f54a90..9db9f5f91b 100644 --- a/plugins/user-settings/api-report.md +++ b/plugins/user-settings/api-report.md @@ -71,6 +71,11 @@ export const UserSettingsFeatureFlags: () => JSX.Element; // @public (undocumented) export const UserSettingsGeneral: () => JSX.Element; +// Warning: (ae-missing-release-tag) "UserSettingsIdentityCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const UserSettingsIdentityCard: () => JSX.Element; + // Warning: (ae-missing-release-tag) "UserSettingsMenu" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) From fc28e634ab2dc82536c8d2a48f11c6af9ba27e83 Mon Sep 17 00:00:00 2001 From: djamaile Date: Mon, 13 Jun 2022 10:34:59 +0200 Subject: [PATCH 349/550] chore(cloud-insights): update readme with updated sidebar path Signed-off-by: djamaile --- plugins/cost-insights/README.md | 69 ++++++++++++++++++++------------- 1 file changed, 41 insertions(+), 28 deletions(-) diff --git a/plugins/cost-insights/README.md b/plugins/cost-insights/README.md index 295cfcccd2..824cf6f9fe 100644 --- a/plugins/cost-insights/README.md +++ b/plugins/cost-insights/README.md @@ -72,37 +72,50 @@ import { CostInsightsPage } from '@backstage/plugin-cost-insights'; To expose the plugin to your users, you can integrate the `cost-insights` route anyway that suits your application, but most commonly it is added to the Sidebar. ```diff -// packages/app/src/sidebar.tsx +// packages/app/src/components/Root/Root.tsx + import MoneyIcon from '@material-ui/icons/MonetizationOn'; ... - export const AppSidebar = () => ( - - - } to="/search"> - - - - {/* Global nav, not org-specific */} - }> - - - - - - -+ - - {/* End global nav */} - - - - } to="/settings"> - - - - ); + export const Root = ({ children }: PropsWithChildren<{}>) => ( + + + + } to="/search"> + + {({ toggleModal }) => } + + + + + + + + {/* End global nav */} + + ++ + + + + + + + } + to="/settings" + > + + + + {children} + +); ``` ## Configuration @@ -157,7 +170,7 @@ costInsights: ### Currencies (Optional) -In the `Cost Overview` panel, users can choose from a dropdown of currencies to see costs in, such as Engineers or USD. Currencies must be defined as keys on the `currencies` field. A user-friendly label and unit are **required**. If not set, the `defaultCurrencies` in `currenc.ts` will be used. +In the `Cost Overview` panel, users can choose from a dropdown of currencies to see costs in, such as Engineers or USD. Currencies must be defined as keys on the `currencies` field. A user-friendly label and unit are **required**. If not set, the `defaultCurrencies` in `currency.ts` will be used. A currency without `kind` is reserved to calculate cost for `engineers`. There should only be one currency without `kind`. From fe07d959a59ca84a0de12ddb690bfd9634faf384 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Mon, 13 Jun 2022 10:46:25 +0200 Subject: [PATCH 350/550] add search-react to list of stories to be published Signed-off-by: Emma Indal --- storybook/.storybook/main.js | 1 + 1 file changed, 1 insertion(+) diff --git a/storybook/.storybook/main.js b/storybook/.storybook/main.js index f493bd2de6..d2e22abee7 100644 --- a/storybook/.storybook/main.js +++ b/storybook/.storybook/main.js @@ -9,6 +9,7 @@ const BACKSTAGE_CORE_STORIES = [ 'packages/app', 'plugins/org', 'plugins/search', + 'plugins/search-react', 'plugins/home', 'plugins/stack-overflow', ]; From b3545f427965ef343b73466390fbabbd1d5ea1ea Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 10 Jun 2022 16:42:06 +0200 Subject: [PATCH 351/550] docs: merge and clean up auth contribution docs Signed-off-by: Patrik Oldsberg --- docs/auth/add-auth-provider.md | 277 +++++++++++++++++++----------- docs/auth/auth-backend-classes.md | 206 ---------------------- microsite/sidebars.json | 3 +- mkdocs.yml | 3 +- 4 files changed, 181 insertions(+), 308 deletions(-) delete mode 100644 docs/auth/auth-backend-classes.md diff --git a/docs/auth/add-auth-provider.md b/docs/auth/add-auth-provider.md index bd2bcd1694..eb8973bec1 100644 --- a/docs/auth/add-auth-provider.md +++ b/docs/auth/add-auth-provider.md @@ -1,9 +1,113 @@ --- id: add-auth-provider -title: Adding authentication providers -description: Documentation on Adding authentication providers +title: Contributing New Providers +description: Documentation on adding new authentication providers --- +> NOTE: The primary audience for this documentation are contributors to the main +> Backstage project that want to add support for new authentication providers. +> While you can follow it to implement your own custom providers it is much +> more advanced than using our built-in providers. + +## How Does Authentication Work? + +The Backstage application can use various external authentication providers for +authentication. An external provider is wrapped using an +`AuthProviderRouteHandlers` interface for handling authentication. This +interface consists of four methods. Each of these methods is hosted at an +endpoint (by default) `/api/auth/[provider]/method`, where `method` performs a +certain operation as follows: + +``` + /auth/[provider]/start -> Initiate a login from the web page + /auth/[provider]/handler/frame -> Handle a finished authentication operation + /auth/[provider]/refresh -> Refresh the validity of a login + /auth/[provider]/logout -> Log out a logged-in user +``` + +The flow is as follows: + +1. A user attempts to sign in. +2. A popup window is opened, pointing to the `auth` endpoint. That endpoint does + initial preparations and then re-directs the user to an external + authenticator, still inside the popup. +3. The authenticator validates the user and returns the result of the validation + (success OR failure), to the wrapper's endpoint (`handler/frame`). +4. The `handler/frame` rendered webpage will issue the appropriate response to + the webpage that opened the popup window, and the popup is closed. +5. The user signs out by clicking on a UI interface and the webpage makes a + request to logout the user. + +## Implementing Your Own Auth Wrapper + +The core interface of any auth wrapper is the `AuthProviderRouteHandlers` +interface. This interface has four methods corresponding to the API described in +the initial section. Any auth wrapper will have to implement this interface. + +When initiating a login, a pop-up window is created by the frontend, to allow +the user to initiate a login. This login request is done to the `/start` +endpoint which is handled by the `start` method. + +The `start` method re-directs to the external auth provider who authenticates +the request and re-directs the request to the `/frame/handler` endpoint, which +is handled by the `frameHandler` method. + +The `frameHandler` returns an HTML response, containing a script that does a +`postMessage` to the frontend window, containing the result of the request. +The `WebMessageResponse` type is the message sent by the `postMessage` to the +frontend. + +A `postMessageResponse` utility function wraps the logic of generating a +`postMessage` response that ensures that CORS is successfully handled. This +function takes an `express.Response`, a `WebMessageResponse` and the URL of the +frontend (`appOrigin`) as parameters and return an HTML page with the script and +the message. + +There is a helper class for [OAuth2](https://oauth.net/2/) based authentication providers, [OAuthAdapter](../reference/plugin-auth-backend.oauthadapter.md). This class implements the `AuthProviderRouteHandlers` interface +for you, and instead requires you to implement [OAuthHandlers](../reference/plugin-auth-backend.oauthhandlers.md), which +is significantly easier. + +### Auth Environment Separation + +The concept of an `env` is core to the way the auth backend works. It uses an +`env` query parameter to identify the environment in which the application is +running (`development`, `staging`, `production`, etc). Each runtime can +simultaneously support multiple environments at the same time and the right +handler for each request is identified and dispatched to, based on the `env` +parameter. + +`OAuthEnvironmentHandler` is a utility wrapper for an `OAuthHandlers` that +implements the `AuthProviderRouteHandlers` interface while supporting multiple +`env`s. + +To instantiate OAuth providers (the same but for different environments), use +`OAuthEnvironmentHandler.mapConfig`. It's a helper to iterate over a +configuration object that is a map of environments to configurations. See one of +the existing OAuth providers for an example of how it is used. + +Given the following configuration: + +```yaml +development: + clientId: abc + clientSecret: secret +production: + clientId: xyz + clientSecret: supersecret +``` + +The `OAuthEnvironmentHandler.mapConfig(config, envConfig => ...)` call will +split the config by the top level `development` and `production` keys, and pass +on each block as `envConfig`. + +For convenience, the `AuthProviderFactory` is a factory function that has to be +implemented which can then generate a `AuthProviderRouteHandlers` for a given +provider. + +All of the supported providers provide an `AuthProviderFactory` that returns an +`OAuthEnvironmentHandler`, capable of handling authentication for multiple +environments. + ## Passport We chose [Passport](http://www.passportjs.org/) as our authentication platform @@ -46,13 +150,13 @@ plugins/auth-backend/src/providers/providerA **`plugins/auth-backend/src/providers/providerA/provider.ts`** defines the provider class which implements a handler for the chosen framework. -#### Adding an OAuth based provider +### Adding an OAuth based provider If we're adding an `OAuth` based provider we would implement the -[OAuthProviderHandlers](#OAuthProviderHandlers) interface. By implementing this +`OAuthHandlers` interface. By implementing this interface we can use the `OAuthProvider` class provided by `lib/oauth`, meaning we don't need to implement the full -[AuthProviderRouteHandlers](#AuthProviderRouteHandlers) interface that providers +`AuthProviderRouteHandlers` interface that providers otherwise need to implement. The provider class takes the provider's options as a class parameter. It also @@ -65,7 +169,7 @@ export type ProviderAProviderOptions = OAuthProviderOptions & { // extra options here } -export class ProviderAAuthProvider implements OAuthProviderHandlers { +export class ProviderAAuthProvider implements OAuthHandlers { private readonly _strategy: ProviderAStrategy; constructor(options: ProviderAProviderOptions) { @@ -87,13 +191,10 @@ export class ProviderAAuthProvider implements OAuthProviderHandlers { } ``` -#### Adding an non-OAuth based provider - -_**Note**: We have prioritized OAuth-based providers and non-OAuth providers -should be considered experimental._ +### Adding an non-OAuth based provider An non-`OAuth` based provider could implement -[AuthProviderRouteHandlers](#AuthProviderRouteHandlers) instead. +`AuthProviderRouteHandlers` instead. ```ts type ProviderAOptions = { @@ -119,13 +220,19 @@ export class ProviderAAuthProvider implements AuthProviderRouteHandlers { } ``` -#### Factory function +#### Integration Wrapper -Each provider exports a factory function that instantiates the provider. The -factory should implement [AuthProviderFactory](#AuthProviderFactory), which +Each provider exports an object that provides a way to create new instances +of the provider, along with related utilities like predefined sign-in resolvers. + +The object is created using `createAuthProviderIntegration`, with the most +important part being the `create` method that acts as the factory function +for our provider. + +The factory should return an implementation of `AuthProviderFactory`, which passes in a object with utilities for configuration, logging, token issuing, etc. The factory should return an implementation of -[AuthProviderRouteHandlers](#AuthProviderRouteHandlers). +`AuthProviderRouteHandlers`. The factory is what decides the mapping from [static configuration](../conf/index.md) to the creation of auth providers. For @@ -133,48 +240,70 @@ example, OAuth providers use `OAuthEnvironmentHandler` to allow for multiple different configurations, one for each environment, which looks like this; ```ts -export const createOktaProvider: AuthProviderFactory = ({ - globalConfig, - config, - tokenIssuer, -}) => - OAuthEnvironmentHandler.mapConfig(config, envConfig => { - // read options from config - const clientId = envConfig.getString('clientId'); - const clientSecret = envConfig.getString('clientSecret'); +export const okta = createAuthProviderIntegration({ + create(options?: { + /** + * The profile transformation function used to verify and convert the auth response + * into the profile that will be presented to the user. + */ + authHandler?: AuthHandler; - // instantiate our OAuthProviderHandlers implementation - const provider = new OktaAuthProvider({ - audience, - clientId, - clientSecret, - callbackUrl, - }); + /** + * Configure sign-in for this provider, without it the provider can not be used to sign users in. + */ + signIn?: { + /** + * Maps an auth result to a Backstage identity for the user. + */ + resolver: SignInResolver; + }; + }) { + return ({ providerId, globalConfig, config, resolverContext }) => + OAuthEnvironmentHandler.mapConfig(config, envConfig => { + // read options from config + const clientId = envConfig.getString('clientId'); + const clientSecret = envConfig.getString('clientSecret'); - // Wrap the OAuthProviderHandlers with OAuthProvider, which implements AuthProviderRouteHandlers - return OAuthProvider.fromConfig(globalConfig, provider, { - providerId, - tokenIssuer, - }); - }); + // Use provided auth handler, or create a default one + const authHandler: AuthHandler = options?.authHandler + ? options.authHandler + : async ({ fullProfile, params }) => ({ + profile: makeProfileInfo(fullProfile, params.id_token), + }); + + // instantiate our OAuthHandlers implementation + const provider = new OktaAuthProvider({ + audience, + clientId, + clientSecret, + callbackUrl, + authHandler, + signInResolver: options?.signIn?.resolver, + resolverContext, + }); + + // Wrap the OAuthHandlers with OAuthProvider, which implements AuthProviderRouteHandlers + return OAuthProvider.fromConfig(globalConfig, provider, { + providerId, + tokenIssuer, + }); + }); + }, + resolvers: { + /** + * Looks up the user by matching their email local part to the entity name. + */ + emailLocalPartMatchingUserEntityName: () => commonByEmailLocalPartResolver, + + // ... additional predefined resolvers + }, +}); ``` The purpose of the different environments is to allow for a single auth-backend to serve as the authentication service for multiple different frontend environments, such as local development, staging, and production. -The factory function for other providers can be a lot simpler, as they might not -have configuration for each environment. Looking something like this: - -```ts -export const createProviderAProvider: AuthProviderFactory = ({ config }) => { - const a = config.getString('a'); - const b = config.getString('b'); - - return new ProviderAAuthProvider({ a, b }); -}; -``` - #### Verify Callback > Strategies require what is known as a verify callback. The purpose of a verify @@ -202,7 +331,7 @@ export { createProviderAProvider } from './provider'; **`plugins/auth-backend/src/providers/factories.ts`** When the `auth-backend` starts it sets up routing for all the available providers by calling -`createAuthProviderRouter` on each provider. You need to import the factory +the factory function of each provider. You need to import the factory function from the provider and add it to the factory: ```ts @@ -232,51 +361,3 @@ You can `curl -i localhost:7007/api/auth/providerA/start` and which should provide a `302` redirect with a `Location` header. Paste the URL from that header into a web browser and you should be able to trigger the authorization flow. - ---- - -##### OAuthProviderHandlers - -```ts -export interface OAuthProviderHandlers { - start( - req: express.Request, - options: Record, - ): Promise; - handler(req: express.Request): Promise<{ - response: AuthResponse; - refreshToken?: string; - }>; - refresh?( - refreshToken: string, - scope: string, - ): Promise>; - logout?(): Promise; -} -``` - -##### AuthProviderRouteHandlers - -```ts -export interface AuthProviderRouteHandlers { - start(req: express.Request, res: express.Response): Promise; - frameHandler(req: express.Request, res: express.Response): Promise; - refresh?(req: express.Request, res: express.Response): Promise; - logout(req: express.Request, res: express.Response): Promise; -} -``` - -##### AuthProviderFactory - -```ts -export type AuthProviderFactoryOptions = { - globalConfig: AuthProviderConfig; - config: Config; - logger: Logger; - tokenIssuer: TokenIssuer; -}; - -export type AuthProviderFactory = ( - options: AuthProviderFactoryOptions, -) => AuthProviderRouteHandlers; -``` diff --git a/docs/auth/auth-backend-classes.md b/docs/auth/auth-backend-classes.md deleted file mode 100644 index 5b5950f6c3..0000000000 --- a/docs/auth/auth-backend-classes.md +++ /dev/null @@ -1,206 +0,0 @@ ---- -id: auth-backend-classes -title: Auth backend classes -description: Documentation on Auth backend classes ---- - -## How Does Authentication Work? - -The Backstage application can use various external authentication providers for -authentication. An external provider is wrapped using an -`AuthProviderRouteHandlers` interface for handling authentication. This -interface consists of four methods. Each of these methods is hosted at an -endpoint (by default) `/api/auth/[provider]/method`, where `method` performs a -certain operation as follows: - -``` - /auth/[provider]/start -> Initiate a login from the web page - /auth/[provider]/handler/frame -> Handle a finished authentication operation - /auth/[provider]/refresh -> Refresh the validity of a login - /auth/[provider]/logout -> Log out a logged-in user -``` - -The flow is as follows: - -1. A user attempts to sign in. -2. A popup window is opened, pointing to the `auth` endpoint. That endpoint does - initial preparations and then re-directs the user to an external - authenticator, still inside the popup. -3. The authenticator validates the user and returns the result of the validation - (success OR failure), to the wrapper's endpoint (`handler/frame`). -4. The `handler/frame` rendered b´webpage will issue the appropriate response to - the webpage that opened the popup window, and the popup is closed. -5. The user signs out by clicking on a UI interface and the webpage makes a - request to logout the user. - -There are currently two different classes for two authentication mechanisms that -implement this interface: an `OAuthAdapter` for [OAuth](https://oauth.net/2/) -based mechanisms and a `SAMLAuthProvider` for -[SAML](http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html). - -If you do not have an `OAuth2` or `SAML` based authentication provider, look in -the section [below](#implementing-your-own-auth-wrapper). - -### OAuth Mechanisms - -For more information on how these methods are used and for which purpose, refer -to the [OAuth documentation](oauth.md). - -Currently OAuth is assumed to be the de facto authentication mechanism for -Backstage based applications. - -Backstage comes with a "batteries-included" set of supported commonly used OAuth -providers: Okta, GitHub, Google, GitLab, and a generic OAuth2 provider. For a -list of available providers, look at the available wrappers in -`backstage/plugins/auth-backend/src/providers/`. - -All of these use the **authorization flow** of OAuth2 to implement -authentication. - -If your authentication provider is any of the above mentioned providers, you can -configure them by setting the right variables in `app-config.yaml` under the -`auth` section. - -### SAML - -The SAML Provider is currently under development. Additional validation and -profile handling is still required before use in production. - -To configure the SAML Auth provider, look at the configuration parameters -supported by -[Passport-SAML](https://github.com/node-saml/passport-saml#config-parameter-details) -under the `auth.providers.saml` key - -For security reasons, validate that the response from the IdP is indeed signed -by also providing the `cert` configuration. - -### Configuration - -Each authentication provider (except SAML) needs six parameters: an OAuth client -ID, a client secret, an authorization endpoint, a token endpoint, an optional -list of scopes (as a string separated by spaces) that may be required by the -OAuth2 Server to enable end-user sign-on, and an app origin. The app origin is -the URL at which the frontend of the application is hosted, and it is read from -the `app.baseUrl` config. This is required because the application opens a popup -window to perform the authentication, and once the flow is completed, the popup -window sends a `postMessage` to the frontend application to indicate the result -of the operation. Also this URL is used to verify that authentication requests -are coming from only this endpoint. - -These values are configured via the `app-config.yaml` present in the root of -your app folder. - -``` -auth: - providers: - google: - development: - clientId: ${AUTH_GOOGLE_CLIENT_ID} - clientSecret: ${AUTH_GOOGLE_CLIENT_SECRET} - github: - development: - clientId: ${AUTH_GITHUB_CLIENT_ID} - clientSecret: ${AUTH_GITHUB_CLIENT_SECRET} - enterpriseInstanceUrl: ${AUTH_GITHUB_ENTERPRISE_INSTANCE_URL} - gitlab: - development: - clientId: ${AUTH_GITLAB_CLIENT_ID} - oauth2: - development: - clientId: ${AUTH_OAUTH2_CLIENT_ID} - clientSecret: ${AUTH_OAUTH2_CLIENT_SECRET} - authorizationUrl: ${AUTH_OAUTH2_AUTH_URL} - tokenUrl: ${AUTH_OAUTH2_TOKEN_URL} - scope: ${AUTH_OAUTH2_SCOPE} - saml: - entryPoint: ${AUTH_SAML_ENTRY_POINT} - issuer: ${AUTH_SAML_ISSUER} - ... -``` - -## Implementing Your Own Auth Wrapper - -The core interface of any auth wrapper is the `AuthProviderRouteHandlers` -interface. This interface has four methods corresponding to the API described in -the initial section. Any auth wrapper will have to implement this interface. - -When initiating a login, a pop-up window is created by the frontend, to allow -the user to initiate a login. This login request is done to the `/start` -endpoint which is handled by the `start` method. - -The `start` method re-directs to the external auth provider who authenticates -the request and re-directs the request to the `/frame/handler` endpoint, which -is handled by the `frameHandler` method. - -The `frameHandler` returns an HTML response, containing a script that does a -`postMessage` to the frontend's window, containing the result of the request. -The `WebMessageResponse` type is the message sent by the `postMessage` to the -frontend. - -A `postMessageResponse` utility function wraps the logic of generating a -`postMessage` response that ensures that CORS is successfully handled. This -function takes an `express.Response`, a `WebMessageResponse` and the URL of the -frontend (`appOrigin`) as parameters and return an HTML page with the script and -the message. - -### OAuth Wrapping Interfaces. - -Each OAuth external provider is supported by a corresponding -[Passport](https://github.com/jaredhanson/passport) strategy. For a generic -OAuth2 provider, passport has a `passport-oauth2` strategy. The strategy class -handles the implementation details of working with each provider. - -Each strategy is wrapped by an `OAuthHandlers` interface. - -This interface cannot be directly used as an Express HTTP request handler. To do -so, `OAuthHandlers` are wrapped in an `OAuthAdapter`, which implements the -`AuthProviderRouterHandlers` interface. - -#### Env - -The concept of an `env` is core to the way the auth backend works. It uses an -`env` query parameter to identify the environment in which the application is -running (`development`, `staging`, `production`, etc). Each runtime can -simultaneously support multiple environments at the same time and the right -handler for each request is identified and dispatched to, based on the `env` -parameter. - -`OAuthEnvironmentHandler` is a utility wrapper for an `OAuthHandlers` that -implements the `AuthProviderRouteHandlers` interface while supporting multiple -`env`s. - -To instantiate OAuth providers (the same but for different environments), use -`OAuthEnvironmentHandler.mapConfig`. It's a helper to iterate over a -configuration object that is a map of environments to configurations. See one of -the existing OAuth providers for an example of how it is used. - -Given the following configuration: - -```yaml -development: - clientId: abc - clientSecret: secret -production: - clientId: xyz - clientSecret: supersecret -``` - -The `OAuthEnvironmentHandler.mapConfig(config, envConfig => ...)` call will -split the config by the top level `development` and `production` keys, and pass -on each block as `envConfig`. - -For convenience, the `AuthProviderFactory` is a factory function that has to be -implemented which can then generate a `AuthProviderRouteHandlers` for a given -provider. - -All of the supported providers provide an `AuthProviderFactory` that returns an -`OAuthEnvironmentHandler`, capable of handling authentication for multiple -environments. - -### OAuth2 Provider - -The `oauth2` provider abstracts a generic **OAuth2 + OIDC** based authentication -provider. What this means is that after the application has been given -permission by the user, the `authorization code` will be exchanged for an -`access_token`, a `refresh_token` and an `id_token`. This `id_token` is used to -obtain an email id of the user, which is then used for creating the session. diff --git a/microsite/sidebars.json b/microsite/sidebars.json index 6cbe079def..8c460c7d3d 100644 --- a/microsite/sidebars.json +++ b/microsite/sidebars.json @@ -259,11 +259,10 @@ "auth/oauth2-proxy/provider" ] }, - "auth/add-auth-provider", "auth/identity-resolver", "auth/auth-backend", "auth/oauth", - "auth/auth-backend-classes", + "auth/add-auth-provider", "auth/troubleshooting", "auth/glossary" ], diff --git a/mkdocs.yml b/mkdocs.yml index 3bd83832f7..04d62d32d4 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -156,11 +156,10 @@ nav: - OneLogin: 'auth/onelogin/provider.md' - OAuth2Proxy: 'auth/oauth2-proxy/provider.md' - Bitbucket: 'auth/bitbucket/provider.md' - - Adding authentication providers: 'auth/add-auth-provider.md' - Sign in resolvers: 'auth/identity-resolver.md' - Auth backend: 'auth/auth-backend.md' - OAuth and OpenID Connect: 'auth/oauth.md' - - Auth backend classes: 'auth/auth-backend-classes.md' + - Contributing New Providers: 'auth/add-auth-provider.md' - Troubleshooting Auth: 'auth/troubleshooting.md' - Glossary: 'auth/glossary.md' - Deployment: From dea1f32f447d43bffd784734e37fdff374742616 Mon Sep 17 00:00:00 2001 From: djamaile Date: Mon, 13 Jun 2022 11:15:06 +0200 Subject: [PATCH 352/550] chore(cost-insights): add changeset Signed-off-by: djamaile --- .changeset/angry-jobs-serve.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/angry-jobs-serve.md diff --git a/.changeset/angry-jobs-serve.md b/.changeset/angry-jobs-serve.md new file mode 100644 index 0000000000..ec2976dccd --- /dev/null +++ b/.changeset/angry-jobs-serve.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-cost-insights': patch +--- + +In the README, a old path of the `sidebar` was updated to the current path. From ae2adaff8ed07156633bfcb74b2b423a3d50d5b7 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Mon, 13 Jun 2022 11:37:17 +0200 Subject: [PATCH 353/550] make changeset more clear Signed-off-by: Kiss Miklos --- .changeset/early-hats-rest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/early-hats-rest.md b/.changeset/early-hats-rest.md index 6eab693200..dfe685ea77 100644 --- a/.changeset/early-hats-rest.md +++ b/.changeset/early-hats-rest.md @@ -2,4 +2,4 @@ '@backstage/plugin-user-settings': patch --- -Add UserSettingsIdentityCard to show the result of the identityApi.getBackstageIdentity() call to help debug ownership issues. +Added new `` to show the result of the `identityApi.getBackstageIdentity()` call to help debug ownership issues. The new card has been added to the user settings page. From d5962d1cc6d53be0970fb5bcea014e4633cabaf9 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Mon, 13 Jun 2022 11:37:37 +0200 Subject: [PATCH 354/550] update api-report.md Signed-off-by: Kiss Miklos --- plugins/user-settings/api-report.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/user-settings/api-report.md b/plugins/user-settings/api-report.md index 9db9f5f91b..a38b37846a 100644 --- a/plugins/user-settings/api-report.md +++ b/plugins/user-settings/api-report.md @@ -139,8 +139,8 @@ export const useUserProfile: () => | { profile: ProfileInfo; displayName: string; - backstageIdentity: undefined; loading: boolean; + backstageIdentity?: undefined; } | { profile: ProfileInfo; From 79c8e5c5864a40358a86ddb2ea238fecd3ed825e Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 13 Jun 2022 13:59:46 +0200 Subject: [PATCH 355/550] chore: added doc updates for user templating Signed-off-by: blam --- .../software-templates/writing-templates.md | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/docs/features/software-templates/writing-templates.md b/docs/features/software-templates/writing-templates.md index 0163877a8b..27e6e76817 100644 --- a/docs/features/software-templates/writing-templates.md +++ b/docs/features/software-templates/writing-templates.md @@ -397,6 +397,26 @@ There's also the ability to pass additional scopes when requesting the `oauth` token from the user, which you can do on a per-provider basis, in case your template can be published to multiple providers. +### Accessing the signed-in users details + +Sometimes when authoring templates, you'll want to access the user that is running the template, and get details from the profile or the users `Entity` in the Catalog. + +If you have enabled a sign in provider and have a [sign in resolver](../../auth/identity-resolver.md) that points to a user in the Catalog, then you can use the `${{ user.entity }}` templating expression to access the raw entity from the Catalog. + +This can be particularly useful if you have processors setup in the Catalog to write `spec.profile.email` of the `User Entities` to reference them and pass them into actions like below: + +```yaml + steps: + action: publish:github + ... + input: + ... + gitAuthorName: ${{ user.entity.metadata.name }} + gitAuthorEmail: ${{ user.entity.spec.profile.email }} +``` + +You also have access to `user.entity.metadata.annotations` too, so if you have some other additional information stored in there, you reference those too. + ### The Owner Picker When the scaffolder needs to add new components to the catalog, it needs to have From 5296b00d4a8c7b7079ccb11b27eb1376e40b8125 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Wed, 8 Jun 2022 14:37:40 +0200 Subject: [PATCH 356/550] chore: fix local entity path join Signed-off-by: Eric Peterson --- .../src/stages/publish/local.test.ts | 137 ++++++++++++------ .../techdocs-node/src/stages/publish/local.ts | 111 +++++++++----- 2 files changed, 167 insertions(+), 81 deletions(-) diff --git a/plugins/techdocs-node/src/stages/publish/local.test.ts b/plugins/techdocs-node/src/stages/publish/local.test.ts index 761de03c5a..daf943dce4 100644 --- a/plugins/techdocs-node/src/stages/publish/local.test.ts +++ b/plugins/techdocs-node/src/stages/publish/local.test.ts @@ -54,62 +54,107 @@ const resolvedDir = resolvePackagePath( ); describe('local publisher', () => { - it('should publish generated documentation dir', async () => { - mockFs({ - [tmpDir]: { - 'index.html': '', - }, + describe('publish', () => { + beforeEach(() => { + mockFs({ + [tmpDir]: { + 'index.html': '', + }, + }); }); - const mockConfig = new ConfigReader({}); - - const publisher = LocalPublish.fromConfig( - mockConfig, - logger, - testDiscovery, - ); - const mockEntity = createMockEntity(); - const lowerMockEntity = createMockEntity(undefined, true); - - await publisher.publish({ entity: mockEntity, directory: tmpDir }); - - expect(await publisher.hasDocsBeenGenerated(mockEntity)).toBe(true); - - // Lower/upper should be treated the same. - expect(await publisher.hasDocsBeenGenerated(lowerMockEntity)).toBe(true); - - mockFs.restore(); - }); - - it('should respect legacy casing', async () => { - mockFs({ - [tmpDir]: { - 'index.html': '', - }, + afterEach(() => { + mockFs.restore(); }); - const mockConfig = new ConfigReader({ - techdocs: { - legacyUseCaseSensitiveTripletPaths: true, - }, + it('should publish generated documentation dir', async () => { + const mockConfig = new ConfigReader({}); + + const publisher = LocalPublish.fromConfig( + mockConfig, + logger, + testDiscovery, + ); + const mockEntity = createMockEntity(); + const lowerMockEntity = createMockEntity(undefined, true); + + await publisher.publish({ entity: mockEntity, directory: tmpDir }); + + expect(await publisher.hasDocsBeenGenerated(mockEntity)).toBe(true); + + // Lower/upper should be treated the same. + expect(await publisher.hasDocsBeenGenerated(lowerMockEntity)).toBe(true); + + mockFs.restore(); }); - const publisher = LocalPublish.fromConfig( - mockConfig, - logger, - testDiscovery, - ); - const mockEntity = createMockEntity(); - const lowerMockEntity = createMockEntity(undefined, true); + it('should respect legacy casing', async () => { + const mockConfig = new ConfigReader({ + techdocs: { + legacyUseCaseSensitiveTripletPaths: true, + }, + }); - await publisher.publish({ entity: mockEntity, directory: tmpDir }); + const publisher = LocalPublish.fromConfig( + mockConfig, + logger, + testDiscovery, + ); + const mockEntity = createMockEntity(); + const lowerMockEntity = createMockEntity(undefined, true); - expect(await publisher.hasDocsBeenGenerated(mockEntity)).toBe(true); + await publisher.publish({ entity: mockEntity, directory: tmpDir }); - // Lower/upper should be treated differently. - expect(await publisher.hasDocsBeenGenerated(lowerMockEntity)).toBe(false); + expect(await publisher.hasDocsBeenGenerated(mockEntity)).toBe(true); - mockFs.restore(); + // Lower/upper should be treated differently. + expect(await publisher.hasDocsBeenGenerated(lowerMockEntity)).toBe(false); + + mockFs.restore(); + }); + + it('should throw with unsafe triplet', async () => { + const mockConfig = new ConfigReader({}); + const publisher = LocalPublish.fromConfig( + mockConfig, + logger, + testDiscovery, + ); + const mockEntity = { + ...createMockEntity(), + ...{ + kind: '..', + metadata: { name: '..', namespace: '..' }, + }, + }; + + await expect(() => + publisher.publish({ entity: mockEntity, directory: tmpDir }), + ).rejects.toThrowError('Unable to publish TechDocs site'); + }); + + it('should throw with unsafe name', async () => { + const mockConfig = new ConfigReader({}); + const publisher = LocalPublish.fromConfig( + mockConfig, + logger, + testDiscovery, + ); + const mockEntity = { + ...createMockEntity(), + ...{ + kind: 'component', + metadata: { + name: '../component/other-component', + namespace: 'default', + }, + }, + }; + + await expect(() => + publisher.publish({ entity: mockEntity, directory: tmpDir }), + ).rejects.toThrowError('Unable to publish TechDocs site'); + }); }); describe('docsRouter', () => { diff --git a/plugins/techdocs-node/src/stages/publish/local.ts b/plugins/techdocs-node/src/stages/publish/local.ts index 4539d389df..c0de46eb22 100644 --- a/plugins/techdocs-node/src/stages/publish/local.ts +++ b/plugins/techdocs-node/src/stages/publish/local.ts @@ -16,8 +16,13 @@ import { PluginEndpointDiscovery, resolvePackagePath, + resolveSafeChildPath, } from '@backstage/backend-common'; -import { Entity, CompoundEntityRef } from '@backstage/catalog-model'; +import { + Entity, + CompoundEntityRef, + stringifyEntityRef, +} from '@backstage/catalog-model'; import { Config } from '@backstage/config'; import express from 'express'; import fs from 'fs-extra'; @@ -37,7 +42,7 @@ import { getHeadersForFileExtension, lowerCaseEntityTripletInStoragePath, } from './helpers'; -import { assertError } from '@backstage/errors'; +import { ForwardedError } from '@backstage/errors'; // TODO: Use a more persistent storage than node_modules or /tmp directory. // Make it configurable with techdocs.publisher.local.publishDirectory @@ -103,12 +108,22 @@ export class LocalPublish implements PublisherBase { directory, }: PublishRequest): Promise { const entityNamespace = entity.metadata.namespace ?? 'default'; + let publishDir: string; - const publishDir = this.staticEntityPathJoin( - entityNamespace, - entity.kind, - entity.metadata.name, - ); + try { + publishDir = this.staticEntityPathJoin( + entityNamespace, + entity.kind, + entity.metadata.name, + ); + } catch (error) { + throw new ForwardedError( + `Unable to publish TechDocs site for entity: ${stringifyEntityRef( + entity, + )}`, + error, + ); + } if (!fs.existsSync(publishDir)) { this.logger.info(`Could not find ${publishDir}, creating the directory.`); @@ -144,21 +159,31 @@ export class LocalPublish implements PublisherBase { async fetchTechDocsMetadata( entityName: CompoundEntityRef, ): Promise { - const metadataPath = this.staticEntityPathJoin( - entityName.namespace, - entityName.kind, - entityName.name, - 'techdocs_metadata.json', - ); + let metadataPath: string; + + try { + metadataPath = this.staticEntityPathJoin( + entityName.namespace, + entityName.kind, + entityName.name, + 'techdocs_metadata.json', + ); + } catch (err) { + throw new ForwardedError( + `Unexpected entity when fetching metadata: ${stringifyEntityRef( + entityName, + )}`, + err, + ); + } try { return await fs.readJson(metadataPath); } catch (err) { - assertError(err); - this.logger.error( + throw new ForwardedError( `Unable to read techdocs_metadata.json at ${metadataPath}. Error: ${err}`, + err, ); - throw new Error(err.message); } } @@ -217,18 +242,26 @@ export class LocalPublish implements PublisherBase { async hasDocsBeenGenerated(entity: Entity): Promise { const namespace = entity.metadata.namespace ?? 'default'; - const indexHtmlPath = this.staticEntityPathJoin( - namespace, - entity.kind, - entity.metadata.name, - 'index.html', - ); - // Check if the file exists try { + const indexHtmlPath = this.staticEntityPathJoin( + namespace, + entity.kind, + entity.metadata.name, + 'index.html', + ); + await fs.access(indexHtmlPath, fs.constants.F_OK); + return true; } catch (err) { + if (err.name === 'NotAllowedError') { + this.logger.error( + `Unexpected entity when checking if generated: ${stringifyEntityRef( + entity, + )}`, + ); + } return false; } } @@ -278,17 +311,25 @@ export class LocalPublish implements PublisherBase { * Utility wrapper around path.join(), used to control legacy case logic. */ protected staticEntityPathJoin(...allParts: string[]): string { - if (this.legacyPathCasing) { - const [namespace, kind, name, ...parts] = allParts; - return path.join(staticDocsDir, namespace, kind, name, ...parts); - } - const [namespace, kind, name, ...parts] = allParts; - return path.join( - staticDocsDir, - namespace.toLowerCase(), - kind.toLowerCase(), - name.toLowerCase(), - ...parts, - ); + let staticEntityPath = staticDocsDir; + + allParts + .map(part => part.split(path.sep)) + .flat() + .forEach((part, index) => { + // Respect legacy path casing when operating on namespace, kind, or name. + if (index < 3) { + staticEntityPath = resolveSafeChildPath( + staticEntityPath, + this.legacyPathCasing ? part : part.toLowerCase(), + ); + return; + } + + // Otherwise, respect the provided case. + staticEntityPath = resolveSafeChildPath(staticEntityPath, part); + }); + + return staticEntityPath; } } From 18d4c3e50a47e65e7fb6e6540f1968d8e68a43ed Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Mon, 13 Jun 2022 14:34:52 +0200 Subject: [PATCH 357/550] create-app: Add empty locations list to production config Signed-off-by: Johan Haals --- .changeset/nice-yaks-tie.md | 5 +++++ .../templates/default-app/app-config.production.yaml | 6 ++++++ 2 files changed, 11 insertions(+) create mode 100644 .changeset/nice-yaks-tie.md diff --git a/.changeset/nice-yaks-tie.md b/.changeset/nice-yaks-tie.md new file mode 100644 index 0000000000..e51ba432fa --- /dev/null +++ b/.changeset/nice-yaks-tie.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Updated `app-config.production.yaml` to specify an empty list of catalog locations. This is done to prevent example locations stored in `app-config.yaml` from being loaded as these are examples. diff --git a/packages/create-app/templates/default-app/app-config.production.yaml b/packages/create-app/templates/default-app/app-config.production.yaml index b9dd00bb01..6535d967d5 100644 --- a/packages/create-app/templates/default-app/app-config.production.yaml +++ b/packages/create-app/templates/default-app/app-config.production.yaml @@ -32,3 +32,9 @@ backend: # ssl: # ca: # if you have a CA file and want to verify it you can uncomment this section # $file: /ca/server.crt + +catalog: + # Overrides the default list locations from app-config.yaml as these contain example data. + # See https://backstage.io/docs/features/software-catalog/software-catalog-overview#adding-components-to-the-catalog for more details + # on how to get entities into the catalog. + locations: [] From 5ca0b86b88d68672133af75343bcb6e91fa0b220 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Mon, 13 Jun 2022 14:50:23 +0200 Subject: [PATCH 358/550] always create a keystore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/polite-jokes-matter.md | 5 +++++ plugins/auth-node/src/IdentityClient.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/polite-jokes-matter.md diff --git a/.changeset/polite-jokes-matter.md b/.changeset/polite-jokes-matter.md new file mode 100644 index 0000000000..d317b79a7d --- /dev/null +++ b/.changeset/polite-jokes-matter.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-auth-node': patch +--- + +Address corner cases where the key store was not being created at startup diff --git a/plugins/auth-node/src/IdentityClient.ts b/plugins/auth-node/src/IdentityClient.ts index 3799222447..0773d22c26 100644 --- a/plugins/auth-node/src/IdentityClient.ts +++ b/plugins/auth-node/src/IdentityClient.ts @@ -141,7 +141,7 @@ export class IdentityClient { // Add a small margin in case clocks are out of sync const issuedAfterLastRefresh = payload?.iat && payload.iat > this.keyStoreUpdated - CLOCK_MARGIN_S; - if (!keyStoreHasKey && issuedAfterLastRefresh) { + if (!this.keyStore || (!keyStoreHasKey && issuedAfterLastRefresh)) { const url = await this.discovery.getBaseUrl('auth'); const endpoint = new URL(`${url}/.well-known/jwks.json`); this.keyStore = createRemoteJWKSet(endpoint); From fe0e5a6feacb5357838edbc6d07a1be5cb3609a2 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 13 Jun 2022 14:53:55 +0200 Subject: [PATCH 359/550] scripts/api-extractor: switch to allow list for api report warnings Signed-off-by: Patrik Oldsberg --- scripts/api-extractor.ts | 130 +++++++++++++++++++-------------------- 1 file changed, 63 insertions(+), 67 deletions(-) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index 619dafabd4..57954eec84 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -209,72 +209,68 @@ const SKIPPED_PACKAGES = [ join('packages', 'techdocs-cli'), ]; -const NO_WARNING_PACKAGES = [ - 'packages/app-defaults', - 'packages/backend-common', - 'packages/backend-tasks', - 'packages/backend-test-utils', - 'packages/catalog-client', - 'packages/cli-common', - 'packages/config', - 'packages/config-loader', - 'packages/core-app-api', - 'packages/core-plugin-api', - 'packages/dev-utils', - 'packages/errors', - 'packages/integration', - 'packages/integration-react', - 'packages/search-common', - 'packages/techdocs-common', - 'packages/test-utils', - 'packages/theme', - 'packages/types', - 'packages/release-manifests', - 'packages/version-bridge', - 'plugins/auth-node', - 'plugins/catalog-backend', - 'plugins/catalog-backend-module-aws', - 'plugins/catalog-backend-module-azure', - 'plugins/catalog-backend-module-bitbucket', - 'plugins/catalog-backend-module-github', - 'plugins/catalog-backend-module-gitlab', - 'plugins/catalog-backend-module-ldap', - 'plugins/catalog-backend-module-msgraph', - 'plugins/catalog-common', - 'plugins/catalog-graph', - 'plugins/catalog-react', - 'plugins/codescene', - 'plugins/graphiql', - 'plugins/org', - 'plugins/periskop', - 'plugins/periskop-backend', - 'plugins/permission-backend', - 'plugins/permission-common', - 'plugins/permission-node', - 'plugins/permission-react', - 'plugins/scaffolder-backend-module-cookiecutter', - 'plugins/scaffolder-backend-module-rails', - 'plugins/scaffolder-backend-module-yeoman', - 'plugins/scaffolder-common', - 'plugins/search', - 'plugins/search-backend', - 'plugins/search-backend-node', - 'plugins/search-backend-module-elasticsearch', - 'plugins/search-common', - 'plugins/search-react', - 'plugins/techdocs', - 'plugins/techdocs-addons-test-utils', - 'plugins/techdocs-backend', - 'plugins/techdocs-module-addons-contrib', - 'plugins/techdocs-node', - 'plugins/techdocs-react', - 'plugins/tech-insights', - 'plugins/tech-insights-backend', - 'plugins/tech-insights-backend-module-jsonfc', - 'plugins/tech-insights-common', - 'plugins/tech-insights-node', - 'plugins/todo', - 'plugins/todo-backend', +const ALLOW_WARNINGS = [ + 'packages/core-components', + 'plugins/allure', + 'plugins/apache-airflow', + 'plugins/api-docs', + 'plugins/app-backend', + 'plugins/auth-backend', + 'plugins/azure-devops', + 'plugins/azure-devops-backend', + 'plugins/azure-devops-common', + 'plugins/badges', + 'plugins/badges-backend', + 'plugins/bazaar', + 'plugins/bazaar-backend', + 'plugins/bitrise', + 'plugins/catalog', + 'plugins/catalog-graphql', + 'plugins/catalog-import', + 'plugins/cicd-statistics', + 'plugins/circleci', + 'plugins/cloudbuild', + 'plugins/code-climate', + 'plugins/code-coverage', + 'plugins/code-coverage-backend', + 'plugins/config-schema', + 'plugins/cost-insights', + 'plugins/explore', + 'plugins/explore-react', + 'plugins/firehydrant', + 'plugins/fossa', + 'plugins/gcalendar', + 'plugins/gcp-projects', + 'plugins/git-release-manager', + 'plugins/github-actions', + 'plugins/github-deployments', + 'plugins/github-pull-requests-board', + 'plugins/gitops-profiles', + 'plugins/graphql-backend', + 'plugins/home', + 'plugins/ilert', + 'plugins/jenkins', + 'plugins/jenkins-backend', + 'plugins/kafka', + 'plugins/kafka-backend', + 'plugins/kubernetes', + 'plugins/kubernetes-backend', + 'plugins/kubernetes-common', + 'plugins/lighthouse', + 'plugins/newrelic', + 'plugins/newrelic-dashboard', + 'plugins/pagerduty', + 'plugins/proxy-backend', + 'plugins/rollbar', + 'plugins/rollbar-backend', + 'plugins/search-backend-module-pg', + 'plugins/sentry', + 'plugins/shortcuts', + 'plugins/sonarqube', + 'plugins/splunk-on-call', + 'plugins/tech-radar', + 'plugins/user-settings', + 'plugins/xcmetrics', ]; async function resolvePackagePath( @@ -583,7 +579,7 @@ async function runApiExtraction({ } const warningCountAfter = await countApiReportWarnings(projectFolder); - if (NO_WARNING_PACKAGES.includes(packageDir) && warningCountAfter > 0) { + if (warningCountAfter > 0 && !ALLOW_WARNINGS.includes(packageDir)) { throw new Error( `The API Report for ${packageDir} is not allowed to have warnings`, ); From 8838b13038cf86ef90e6ce1506097a8fc4047dcb Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 13 Jun 2022 16:16:51 +0200 Subject: [PATCH 360/550] catalog-backend: disallow non-url location registration Signed-off-by: Patrik Oldsberg --- .changeset/cuddly-pillows-press.md | 5 +++++ .../src/service/DefaultLocationService.test.ts | 13 +++++++++++++ .../src/service/DefaultLocationService.ts | 4 ++++ 3 files changed, 22 insertions(+) create mode 100644 .changeset/cuddly-pillows-press.md diff --git a/.changeset/cuddly-pillows-press.md b/.changeset/cuddly-pillows-press.md new file mode 100644 index 0000000000..93980456aa --- /dev/null +++ b/.changeset/cuddly-pillows-press.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-backend': patch +--- + +Disallow anything but `'url'` locations from being registered via the location service. diff --git a/plugins/catalog-backend/src/service/DefaultLocationService.test.ts b/plugins/catalog-backend/src/service/DefaultLocationService.test.ts index 562bae4867..bd166cbd50 100644 --- a/plugins/catalog-backend/src/service/DefaultLocationService.test.ts +++ b/plugins/catalog-backend/src/service/DefaultLocationService.test.ts @@ -17,6 +17,7 @@ import { DefaultLocationService } from './DefaultLocationService'; import { CatalogProcessingOrchestrator } from '../processing/types'; import { LocationStore } from './types'; +import { InputError } from '@backstage/errors'; describe('DefaultLocationServiceTest', () => { const orchestrator: jest.Mocked = { @@ -251,6 +252,18 @@ describe('DefaultLocationServiceTest', () => { type: 'url', }); }); + + it('should not allow locations of unknown types', async () => { + await expect( + locationService.createLocation( + { + type: 'unknown', + target: 'https://backstage.io/catalog-info.yaml', + }, + false, + ), + ).rejects.toThrow(InputError); + }); }); describe('listLocations', () => { diff --git a/plugins/catalog-backend/src/service/DefaultLocationService.ts b/plugins/catalog-backend/src/service/DefaultLocationService.ts index 7a1b923068..fc6ffb0825 100644 --- a/plugins/catalog-backend/src/service/DefaultLocationService.ts +++ b/plugins/catalog-backend/src/service/DefaultLocationService.ts @@ -27,6 +27,7 @@ import { } from '../processing/types'; import { LocationInput, LocationService, LocationStore } from './types'; import { locationSpecToMetadataName } from '../util/conversion'; +import { InputError } from '@backstage/errors'; export class DefaultLocationService implements LocationService { constructor( @@ -38,6 +39,9 @@ export class DefaultLocationService implements LocationService { input: LocationInput, dryRun: boolean, ): Promise<{ location: Location; entities: Entity[]; exists?: boolean }> { + if (input.type !== 'url') { + throw new InputError(`Registered locations must be of type 'url'`); + } if (dryRun) { return this.dryRunCreateLocation(input); } From 50f877683b547b86e1081be6cb7cb7021c65c86c Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 13 Jun 2022 16:16:58 +0200 Subject: [PATCH 361/550] chore: another plugin just crept in there Signed-off-by: blam --- scripts/api-extractor.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/api-extractor.ts b/scripts/api-extractor.ts index 57954eec84..2ca7aef17f 100644 --- a/scripts/api-extractor.ts +++ b/scripts/api-extractor.ts @@ -235,6 +235,7 @@ const ALLOW_WARNINGS = [ 'plugins/code-coverage-backend', 'plugins/config-schema', 'plugins/cost-insights', + 'plugins/dynatrace', 'plugins/explore', 'plugins/explore-react', 'plugins/firehydrant', From 2c048f8b90a1a1cc2c9b999dec68f34e58c81d1f Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Mon, 13 Jun 2022 17:46:01 +0200 Subject: [PATCH 362/550] Fix windows test and deprecated redirect method usage. Signed-off-by: Eric Peterson Co-authored-by: Emma Indal --- .changeset/techdocs-flying-inspection.md | 5 +++++ plugins/techdocs-node/src/stages/publish/local.test.ts | 3 ++- plugins/techdocs-node/src/stages/publish/local.ts | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/techdocs-flying-inspection.md diff --git a/.changeset/techdocs-flying-inspection.md b/.changeset/techdocs-flying-inspection.md new file mode 100644 index 0000000000..baf956ee19 --- /dev/null +++ b/.changeset/techdocs-flying-inspection.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs-node': patch +--- + +Updated deprecated use of `express`' `res.redirect()` method when handling legacy path casing. diff --git a/plugins/techdocs-node/src/stages/publish/local.test.ts b/plugins/techdocs-node/src/stages/publish/local.test.ts index daf943dce4..0119def16d 100644 --- a/plugins/techdocs-node/src/stages/publish/local.test.ts +++ b/plugins/techdocs-node/src/stages/publish/local.test.ts @@ -24,6 +24,7 @@ import request from 'supertest'; import mockFs from 'mock-fs'; import * as os from 'os'; import { LocalPublish } from './local'; +import path from 'path'; const createMockEntity = (annotations = {}, lowerCase = false) => { return { @@ -145,7 +146,7 @@ describe('local publisher', () => { ...{ kind: 'component', metadata: { - name: '../component/other-component', + name: path.join('..', 'component', 'other-component'), namespace: 'default', }, }, diff --git a/plugins/techdocs-node/src/stages/publish/local.ts b/plugins/techdocs-node/src/stages/publish/local.ts index c0de46eb22..11c6e6dd2b 100644 --- a/plugins/techdocs-node/src/stages/publish/local.ts +++ b/plugins/techdocs-node/src/stages/publish/local.ts @@ -220,7 +220,7 @@ export class LocalPublish implements PublisherBase { } // Otherwise, redirect to the new path. - return res.redirect(req.baseUrl + newPath, 301); + return res.redirect(301, req.baseUrl + newPath); }); router.use( From 12817a57e18d43b8a602b10f847ec51a6e089c26 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Mon, 13 Jun 2022 14:18:23 +0200 Subject: [PATCH 363/550] Remove legacy techdocs-common package Signed-off-by: Eric Peterson --- packages/techdocs-common/.eslintrc.js | 1 - packages/techdocs-common/CHANGELOG.md | 1165 ------------------------ packages/techdocs-common/README.md | 5 - packages/techdocs-common/api-report.md | 9 - packages/techdocs-common/package.json | 47 - packages/techdocs-common/src/index.ts | 17 - 6 files changed, 1244 deletions(-) delete mode 100644 packages/techdocs-common/.eslintrc.js delete mode 100644 packages/techdocs-common/CHANGELOG.md delete mode 100644 packages/techdocs-common/README.md delete mode 100644 packages/techdocs-common/api-report.md delete mode 100644 packages/techdocs-common/package.json delete mode 100644 packages/techdocs-common/src/index.ts diff --git a/packages/techdocs-common/.eslintrc.js b/packages/techdocs-common/.eslintrc.js deleted file mode 100644 index e2a53a6ad2..0000000000 --- a/packages/techdocs-common/.eslintrc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('@backstage/cli/config/eslint-factory')(__dirname); diff --git a/packages/techdocs-common/CHANGELOG.md b/packages/techdocs-common/CHANGELOG.md deleted file mode 100644 index f1bff865ee..0000000000 --- a/packages/techdocs-common/CHANGELOG.md +++ /dev/null @@ -1,1165 +0,0 @@ -# @backstage/techdocs-common - -## 0.11.16-next.2 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.2-next.2 - -## 0.11.16-next.1 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.2-next.1 - -## 0.11.16-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.2-next.0 - -## 0.11.15 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.1 - -## 0.11.15-next.1 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.1-next.1 - -## 0.11.15-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.1-next.0 - -## 0.11.14 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.0 - -## 0.11.14-next.2 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.1.0-next.2 - -## 0.11.14-next.1 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.0.1-next.1 - -## 0.11.14-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-techdocs-node@1.0.1-next.0 - -## 0.11.13 - -### Patch Changes - -- 82b0190155: This package is no longer maintained. Use `@backstage/plugin-techdocs-node`, going forward. -- Updated dependencies - - @backstage/plugin-techdocs-node@1.0.0 - -## 0.11.12 - -### Patch Changes - -- cea6f10b97: **DEPRECATION** - - The `@backstage/techdocs-common` package is being renamed `@backstage/plugin-techdocs-node`. We may continue to publish changes to `@backstage/techdocs-common` for a time, but will stop doing so in the near future. If you depend on this package, you should update your dependencies to point at the renamed package. - -- Updated dependencies - - @backstage/plugin-techdocs-node@0.11.12 - -## 0.11.12-next.0 - -### Patch Changes - -- cea6f10b97: **DEPRECATION** - - The `@backstage/techdocs-common` package is being renamed `@backstage/plugin-techdocs-node`. We may continue to publish changes to `@backstage/techdocs-common` for a time, but will stop doing so in the near future. If you depend on this package, you should update your dependencies to point at the renamed package. - -- Updated dependencies - - @backstage/plugin-techdocs-node@0.11.12-next.0 - -## 0.11.11 - -### Patch Changes - -- 955be6bc7d: adds passing projectID to the Storage client -- ff0a16fb1a: Modify techdocs builder to automatically append techdocs-core plugin to mkdocs.yaml file if it is missing. Adds an optional configuration item if this plugin needs to be omitted. -- Updated dependencies - - @backstage/catalog-model@0.12.0 - - @backstage/backend-common@0.12.0 - - @backstage/integration@0.8.0 - - @backstage/search-common@0.3.0 - -## 0.11.10 - -### Patch Changes - -- 209fd128e6: Updated usage of `github:` location types in docs to use `url:` instead. -- 13ef228d03: Clean up the API interface for TechDocs common library. -- Updated dependencies - - @backstage/backend-common@0.11.0 - - @backstage/catalog-model@0.11.0 - - @backstage/integration@0.7.5 - -## 0.11.9 - -### Patch Changes - -- Fix for the previous release with missing type declarations. -- Updated dependencies - - @backstage/backend-common@0.10.9 - - @backstage/catalog-model@0.10.1 - - @backstage/config@0.1.15 - - @backstage/errors@0.2.2 - - @backstage/integration@0.7.4 - - @backstage/search-common@0.2.4 - -## 0.11.8 - -### Patch Changes - -- c77c5c7eb6: Added `backstage.role` to `package.json` -- 216725b434: Updated to use new names for `parseLocationRef` and `stringifyLocationRef` -- 7aeb491394: Replace use of deprecated `ENTITY_DEFAULT_NAMESPACE` constant with `DEFAULT_NAMESPACE`. -- Updated dependencies - - @backstage/backend-common@0.10.8 - - @backstage/errors@0.2.1 - - @backstage/integration@0.7.3 - - @backstage/catalog-model@0.10.0 - - @backstage/config@0.1.14 - - @backstage/search-common@0.2.3 - -## 0.11.7 - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.10.7 - -## 0.11.7-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.10.7-next.0 - -## 0.11.6 - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.10.6 - -## 0.11.6-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.10.6-next.0 - -## 0.11.5 - -### Patch Changes - -- ff93fbeeec: Fix interpolated string for "Failed to generate docs from ..." -- Updated dependencies - - @backstage/search-common@0.2.2 - - @backstage/backend-common@0.10.5 - -## 0.11.4 - -### Patch Changes - -- 47277c0d8c: Updated the default version of the `@spotify/techdocs` container used when `techdocs.generator.runIn` is `docker` to `v0.3.6`, which includes an update to `mkdocs-monorepo-plugin` that allows glob-based wildcard includes. -- Updated dependencies - - @backstage/integration@0.7.2 - - @backstage/backend-common@0.10.4 - - @backstage/config@0.1.13 - - @backstage/catalog-model@0.9.10 - -## 0.11.4-next.0 - -### Patch Changes - -- 47277c0d8c: Updated the default version of the `@spotify/techdocs` container used when `techdocs.generator.runIn` is `docker` to `v0.3.6`, which includes an update to `mkdocs-monorepo-plugin` that allows glob-based wildcard includes. -- Updated dependencies - - @backstage/backend-common@0.10.4-next.0 - - @backstage/config@0.1.13-next.0 - - @backstage/catalog-model@0.9.10-next.0 - - @backstage/integration@0.7.2-next.0 - -## 0.11.3 - -### Patch Changes - -- 5333451def: Cleaned up API exports -- Updated dependencies - - @backstage/config@0.1.12 - - @backstage/integration@0.7.1 - - @backstage/backend-common@0.10.3 - - @backstage/errors@0.2.0 - - @backstage/catalog-model@0.9.9 - -## 0.11.2 - -### Patch Changes - -- c2c8768771: Bump `@azure/identity` from `^1.5.0` to `^2.0.1`. -- Updated dependencies - - @backstage/backend-common@0.10.1 - - @backstage/integration@0.7.0 - -## 0.11.1 - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.10.0 - -## 0.11.0 - -### Minor Changes - -- 1bada775a9: Added the ability for the TechDocs Backend to (optionally) leverage a cache - store to improve performance when reading files from a cloud storage provider. - -### Patch Changes - -- dcd1a0c3f4: Minor improvement to the API reports, by not unpacking arguments directly -- Updated dependencies - - @backstage/backend-common@0.9.13 - -## 0.10.8 - -### Patch Changes - -- bab752e2b3: Change default port of backend from 7000 to 7007. - - This is due to the AirPlay Receiver process occupying port 7000 and preventing local Backstage instances on MacOS to start. - - You can change the port back to 7000 or any other value by providing an `app-config.yaml` with the following values: - - ``` - backend: - listen: 0.0.0.0:7123 - baseUrl: http://localhost:7123 - ``` - - More information can be found here: https://backstage.io/docs/conf/writing - -- Updated dependencies - - @backstage/errors@0.1.5 - - @backstage/backend-common@0.9.11 - -## 0.10.7 - -### Patch Changes - -- 0b60a051c9: Added OpenStack Swift case migration support. -- 9e64a7ac1e: Allow amazon web services s3 buckets to pass an server side encryption configuration so they can publish to encrypted buckets -- Updated dependencies - - @backstage/catalog-model@0.9.7 - - @backstage/backend-common@0.9.10 - -## 0.10.6 - -### Patch Changes - -- a2d4389587: 1. Techdocs publisher constructors now use parameter objects when being - instantiated - - 2. Internal refactor of `LocalPublish` publisher to use `fromConfig` for - creation to be aligned with other publishers; this does not impact - `LocalPublish` usage. - - ```diff - - const publisher = new LocalPublish(config, logger, discovery); - + const publisher = LocalPublish.fromConfig(config, logger, discovery); - ``` - -- 6129c89a47: Default TechDocs container used at docs generation-time is now [v0.3.5](https://github.com/backstage/techdocs-container/releases/tag/v0.3.5). -- f3c7eec64b: Updated to properly join URL segments under any OS for both AWS S3 and GCP -- Updated dependencies - - @backstage/backend-common@0.9.9 - -## 0.10.5 - -### Patch Changes - -- d207f6ee9e: Support optional bucketRootPath configuration parameter in S3 and GCS publishers -- Updated dependencies - - @backstage/config@0.1.11 - - @backstage/errors@0.1.4 - - @backstage/integration@0.6.9 - - @backstage/backend-common@0.9.8 - - @backstage/catalog-model@0.9.6 - - @backstage/search-common@0.2.1 - -## 0.10.4 - -### Patch Changes - -- 87f5b9db13: Use docs/README.md or README.md as fallback if docs/index.md is missing -- 36e67d2f24: Internal updates to apply more strict checks to throw errors. -- Updated dependencies - - @backstage/backend-common@0.9.7 - - @backstage/errors@0.1.3 - - @backstage/catalog-model@0.9.5 - -## 0.10.3 - -### Patch Changes - -- 156421c59a: Sets the default techdocs docker image to the [latest released version - v0.3.3](https://github.com/backstage/techdocs-container/releases/tag/v0.3.3). -- Updated dependencies - - @backstage/catalog-model@0.9.4 - - @backstage/backend-common@0.9.6 - - @backstage/integration@0.6.7 - -## 0.10.2 - -### Patch Changes - -- 1c75e8bf98: Add more context to techdocs log lines when files are not found along with - ensuring that the routers return 404 with a descriptive message. -- e92f0f728b: Locks the version of the default docker image used to generate TechDocs. As of - this changelog entry, it is v0.3.2! -- Updated dependencies - - @backstage/backend-common@0.9.5 - - @backstage/integration@0.6.6 - -## 0.10.1 - -### Patch Changes - -- 96fef17a18: Upgrade git-parse-url to v11.6.0 -- Updated dependencies - - @backstage/backend-common@0.9.3 - - @backstage/integration@0.6.4 - -## 0.10.0 - -### Minor Changes - -- 8b0f6f860: Set the correct `edit_uri` or `repo_url` for documentation pages that are hosted on GitHub and GitLab. - - The constructor of the `TechDocsGenerator` changed. - Prefer the use of `TechdocsGenerator.fromConfig(…)` instead: - - ```diff - - const techdocsGenerator = new TechdocsGenerator({ - + const techdocsGenerator = TechdocsGenerator.fromConfig(config, { - logger, - containerRunner, - - config, - }); - ``` - -### Patch Changes - -- 30ed662a3: Adding in-context search to TechDocs Reader component. Using existing search-backend to query for indexed search results scoped into a specific entity's techdocs. Needs TechDocsCollator enabled on the backend to work. - - Adding extra information to indexed tech docs documents for search. - -- 3624616e7: "Local" (out-of-the-box) publisher explicitly follows lower-case entity triplet - logic. -- 67ba7e088: Only write the updated `mkdocs.yml` file if the content was updated. - - This keeps local files unchanged if the `dir` annotation is used in combination with the `file` location. - -- 8eab6be6a: Force using `posix` path for cloud storage -- Updated dependencies - - @backstage/integration@0.6.3 - - @backstage/search-common@0.2.0 - - @backstage/catalog-model@0.9.1 - - @backstage/backend-common@0.9.1 - -## 0.9.0 - -### Minor Changes - -- 58452cdb7: OpenStack Swift Client changed with Trendyol's OpenStack Swift SDK. - - ## Migration from old OpenStack Swift Configuration - - Let's assume we have the old OpenStack Swift configuration here. - - ```yaml - techdocs: - publisher: - type: 'openStackSwift' - openStackSwift: - containerName: 'name-of-techdocs-storage-bucket' - credentials: - username: ${OPENSTACK_SWIFT_STORAGE_USERNAME} - password: ${OPENSTACK_SWIFT_STORAGE_PASSWORD} - authUrl: ${OPENSTACK_SWIFT_STORAGE_AUTH_URL} - keystoneAuthVersion: ${OPENSTACK_SWIFT_STORAGE_AUTH_VERSION} - domainId: ${OPENSTACK_SWIFT_STORAGE_DOMAIN_ID} - domainName: ${OPENSTACK_SWIFT_STORAGE_DOMAIN_NAME} - region: ${OPENSTACK_SWIFT_STORAGE_REGION} - ``` - - ##### Step 1: Change the credential keys - - Since the new SDK uses _Application Credentials_ to authenticate OpenStack, we - need to change the keys `credentials.username` to `credentials.id`, - `credentials.password` to `credentials.secret` and use Application Credential ID - and secret here. For more detail about credentials look - [here](https://docs.openstack.org/api-ref/identity/v3/?expanded=password-authentication-with-unscoped-authorization-detail,authenticating-with-an-application-credential-detail#authenticating-with-an-application-credential). - - ##### Step 2: Remove the unused keys - - Since the new SDK doesn't use the old way authentication, we don't need the keys - `openStackSwift.keystoneAuthVersion`, `openStackSwift.domainId`, - `openStackSwift.domainName` and `openStackSwift.region`. So you can remove them. - - ##### Step 3: Add Swift URL - - The new SDK needs the OpenStack Swift connection URL for connecting the Swift. - So you need to add a new key called `openStackSwift.swiftUrl` and give the - OpenStack Swift url here. Example url should look like that: - `https://example.com:6780/swift/v1` - - ##### That's it! - - Your new configuration should look like that! - - ```yaml - techdocs: - publisher: - type: 'openStackSwift' - openStackSwift: - containerName: 'name-of-techdocs-storage-bucket' - credentials: - id: ${OPENSTACK_SWIFT_STORAGE_APPLICATION_CREDENTIALS_ID} - secret: ${OPENSTACK_SWIFT_STORAGE_APPLICATION_CREDENTIALS_SECRET} - authUrl: ${OPENSTACK_SWIFT_STORAGE_AUTH_URL} - swiftUrl: ${OPENSTACK_SWIFT_STORAGE_SWIFT_URL} - ``` - -- c772d9a84: TechDocs sites can now be accessed using paths containing entity triplets of - any case (e.g. `/docs/namespace/KIND/name` or `/docs/namespace/kind/name`). - - If you do not use an external storage provider for serving TechDocs, this is a - transparent change and no action is required from you. - - If you _do_ use an external storage provider for serving TechDocs (one of\* GCS, - AWS S3, or Azure Blob Storage), you must run a migration command against your - storage provider before updating. - - [A migration guide is available here](https://backstage.io/docs/features/techdocs/how-to-guides#how-to-migrate-from-techdocs-alpha-to-beta). - - - (\*) We're seeking help from the community to bring OpenStack Swift support - [to feature parity](https://github.com/backstage/backstage/issues/6763) with the above. - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.9.0 - - @backstage/integration@0.6.2 - - @backstage/config@0.1.8 - -## 0.8.1 - -### Patch Changes - -- bc405be6e: Stale TechDocs content (files that had previously been published but which have - since been removed) is now removed from storage at publish-time. This is now - supported by the following publishers: - - - Google GCS - - AWS S3 - - Azure Blob Storage - - You may need to apply a greater level of permissions (e.g. the ability to - delete objects in your storage provider) to any credentials/accounts used by - the TechDocs CLI or TechDocs backend in order for this change to take effect. - - For more details, see [#6132][issue-ref]. - - [issue-ref]: https://github.com/backstage/backstage/issues/6132 - -- Updated dependencies - - @backstage/integration@0.6.0 - - @backstage/backend-common@0.8.9 - -## 0.8.0 - -### Minor Changes - -- 48ea3d25b: TechDocs has dropped all support for the long-ago deprecated git-based common - prepares as well as all corresponding values in `backstage.io/techdocs-ref` - annotations. - - Entities whose `backstage.io/techdocs-ref` annotation values still begin with - `github:`, `gitlab:`, `bitbucket:`, or `azure/api:` will no longer be generated - by TechDocs. Be sure to update these values so that they align with their - expected format and your usage of TechDocs. - - For details, see [this explainer on TechDocs ref annotation values][how]. - - [how]: https://backstage.io/docs/features/techdocs/how-to-guides#how-to-understand-techdocs-ref-annotation-values - -### Patch Changes - -- Updated dependencies - - @backstage/backend-common@0.8.8 - - @backstage/config@0.1.6 - - @backstage/integration@0.5.9 - -## 0.7.1 - -### Patch Changes - -- 59a5fa319: Migrated files are now printed when `techdocs-cli migrate` is run with the - `--verbose` flag set. -- 54356336e: TechDocs generator stage now supports `mkdocs.yaml` file, in addition to `.yml` - depending on whichever is present at the time of generation. (Assumes the - latest `spotify/techdocs` container, running mkdocs `v1.2.2` or greater). - -## 0.7.0 - -### Minor Changes - -- d32d01e5b: Improve the annotation `backstage.io/techdocs-ref: dir:` that links to a path that is relative to the source of the annotated entity. - This annotation works with the basic and the recommended flow, however, it will be most useful with the basic approach. - - This change remove the deprecation of the `dir` reference and provides first-class support for it. - In addition, this change removes the support of the deprecated `github`, `gitlab`, and `azure/api` locations from the `dir` reference preparer. - - #### Example Usage - - The annotation is convenient if the documentation is stored in the same location, i.e. the same git repository, as the `catalog-info.yaml`. - While it is still supported to add full URLs such as `backstage.io/techdocs-ref: url:https://...` for custom setups, documentation is mostly stored in the same repository as the entity definition. - By automatically resolving the target relative to the registration location of the entity, the configuration overhead for this default setup is minimized. - Since it leverages the `@backstage/integrations` package for the URL resolution, this is compatible with every supported source. - - Consider the following examples: - - 1. "I have a repository with a single `catalog-info.yaml` and a TechDocs page in the root folder!" - - ``` - https://github.com/backstage/example/tree/main/ - |- catalog-info.yaml - | > apiVersion: backstage.io/v1alpha1 - | > kind: Component - | > metadata: - | > name: example - | > annotations: - | > backstage.io/techdocs-ref: dir:. # -> same folder - | > spec: {} - |- docs/ - |- mkdocs.yml - ``` - - 2. "I have a repository with a single `catalog-info.yaml` and my TechDocs page in located in a folder!" - - ``` - https://bitbucket.org/my-owner/my-project/src/master/ - |- catalog-info.yaml - | > apiVersion: backstage.io/v1alpha1 - | > kind: Component - | > metadata: - | > name: example - | > annotations: - | > backstage.io/techdocs-ref: dir:./some-folder # -> subfolder - | > spec: {} - |- some-folder/ - |- docs/ - |- mkdocs.yml - ``` - - 3. "I have a mono repository that hosts multiple components!" - - ``` - https://dev.azure.com/organization/project/_git/repository - |- my-1st-module/ - |- catalog-info.yaml - | > apiVersion: backstage.io/v1alpha1 - | > kind: Component - | > metadata: - | > name: my-1st-module - | > annotations: - | > backstage.io/techdocs-ref: dir:. # -> same folder - | > spec: {} - |- docs/ - |- mkdocs.yml - |- my-2nd-module/ - |- catalog-info.yaml - | > apiVersion: backstage.io/v1alpha1 - | > kind: Component - | > metadata: - | > name: my-2nd-module - | > annotations: - | > backstage.io/techdocs-ref: dir:. # -> same folder - | > spec: {} - |- docs/ - |- mkdocs.yml - |- catalog-info.yaml - | > apiVersion: backstage.io/v1alpha1 - | > kind: Location - | > metadata: - | > name: example - | > spec: - | > targets: - | > - ./*/catalog-info.yaml - ``` - -### Patch Changes - -- 6e5aed1c9: Fix validation of mkdocs.yml docs_dir -- 250984333: Add link to https://backstage.io/docs/features/techdocs/configuration in the log warning message about updating techdocs.generate key. -- Updated dependencies - - @backstage/backend-common@0.8.7 - -## 0.6.8 - -### Patch Changes - -- d5eaab91d: Adds custom docker image support to the techdocs generator. This change adds a new `techdocs.generator` configuration key and deprecates the existing `techdocs.generators.techdocs` key. - - ```yaml - techdocs: - # recommended, going forward: - generator: - runIn: 'docker' # or 'local' - # New optional settings - dockerImage: my-org/techdocs # use a custom docker image - pullImage: false # disable automatic pulling of image (e.g. if custom docker login is required) - # legacy (deprecated): - generators: - techdocs: 'docker' # or 'local' - ``` - -- c18e8eb91: Provide optional `logger: Logger` and `logStream: Writable` arguments to the `GeneratorBase#run(...)` command. - They receive all log messages that are emitted during the generator run. -- ae84b20cf: Revert the upgrade to `fs-extra@10.0.0` as that seemed to have broken all installs inexplicably. -- Updated dependencies - - @backstage/backend-common@0.8.6 - -## 0.6.7 - -### Patch Changes - -- 683308ecf: Fix openStack swift publisher encoding issue. Remove utf8 forced encoding on binary files -- 6841e0113: fix minor version of git-url-parse as 11.5.x introduced a bug for Bitbucket Server -- Updated dependencies - - @backstage/integration@0.5.8 - - @backstage/catalog-model@0.9.0 - - @backstage/backend-common@0.8.5 - -## 0.6.6 - -### Patch Changes - -- ab5cc376f: Use new utilities from `@backstage/backend-common` for safely resolving child paths -- b47fc34bc: Update "service catalog" references to "software catalog" -- Updated dependencies - - @backstage/backend-common@0.8.4 - - @backstage/integration@0.5.7 - -## 0.6.5 - -### Patch Changes - -- c17c0fcf9: Adding additional checks on tech docs to prevent folder traversal via mkdocs.yml docs_dir value. -- Updated dependencies - - @backstage/catalog-model@0.8.4 - -## 0.6.4 - -### Patch Changes - -- aad98c544: Fixes multiple XSS and sanitization bypass vulnerabilities in TechDocs. -- 090594755: Support parsing `mkdocs.yml` files that are using custom yaml tags like - `!!python/name:materialx.emoji.twemoji`. -- Updated dependencies [ebe802bc4] -- Updated dependencies [49d7ec169] - - @backstage/catalog-model@0.8.1 - - @backstage/integration@0.5.5 - -## 0.6.3 - -### Patch Changes - -- 8cefadca0: Adding validation to mkdocs.yml parsing to prevent directory tree traversing -- Updated dependencies [0fd4ea443] -- Updated dependencies [add62a455] -- Updated dependencies [704875e26] - - @backstage/integration@0.5.4 - - @backstage/catalog-model@0.8.0 - -## 0.6.2 - -### Patch Changes - -- 65e6c4541: Remove circular dependencies -- Updated dependencies [f7f7783a3] -- Updated dependencies [c7dad9218] -- Updated dependencies [65e6c4541] -- Updated dependencies [68fdbf014] -- Updated dependencies [5001de908] - - @backstage/catalog-model@0.7.10 - - @backstage/backend-common@0.8.1 - - @backstage/integration@0.5.3 - -## 0.6.1 - -### Patch Changes - -- e04f1ccfb: Fixed a bug that prevented loading static assets from GCS, S3, Azure, and OpenStackSwift whose keys contain spaces or other special characters. -- Updated dependencies [22fd8ce2a] -- Updated dependencies [10c008a3a] -- Updated dependencies [f9fb4a205] -- Updated dependencies [16be1d093] - - @backstage/backend-common@0.8.0 - - @backstage/catalog-model@0.7.9 - -## 0.6.0 - -### Minor Changes - -- e0bfd3d44: Migrate the package to use the `ContainerRunner` interface instead of `runDockerContainer(…)`. - It also no longer provides the `ContainerRunner` as an input to the `GeneratorBase#run(…)` function, but expects it as a constructor parameter instead. - - If you use the `TechdocsGenerator` you need to update the usage: - - ```diff - + const containerRunner = new DockerContainerRunner({ dockerClient }); - - - const generator = new TechdocsGenerator(logger, config); - + const techdocsGenerator = new TechdocsGenerator({ - + logger, - + containerRunner, - + config, - + }); - - await this.generator.run({ - inputDir: preparedDir, - outputDir, - - dockerClient: this.dockerClient, - parsedLocationAnnotation, - etag: newEtag, - }); - ``` - -### Patch Changes - -- e9e56b01a: Adding optional config to enable S3-like API for tech-docs using s3ForcePathStyle option. - This allows providers like LocalStack, Minio and Wasabi (+possibly others) to be used to host tech docs. -- Updated dependencies [e0bfd3d44] -- Updated dependencies [38ca05168] -- Updated dependencies [d8b81fd28] - - @backstage/backend-common@0.7.0 - - @backstage/integration@0.5.2 - - @backstage/catalog-model@0.7.8 - - @backstage/config@0.1.5 - -## 0.5.1 - -### Patch Changes - -- f4af06ebe: Gracefully handle HTTP request failures in download method of AzureBlobStorage publisher. - -## 0.5.0 - -### Minor Changes - -- bc9d62f4f: Move the sanity checks of the publisher configurations to a dedicated `PublisherBase#getReadiness()` method instead of throwing an error when doing `Publisher.fromConfig(...)`. - You should include the check when your backend to get early feedback about a potential misconfiguration: - - ```diff - // packages/backend/src/plugins/techdocs.ts - - export default async function createPlugin({ - logger, - config, - discovery, - reader, - }: PluginEnvironment): Promise { - // ... - - const publisher = await Publisher.fromConfig(config, { - logger, - discovery, - }) - - + // checks if the publisher is working and logs the result - + await publisher.getReadiness(); - - // Docker client (conditionally) used by the generators, based on techdocs.generators config. - const dockerClient = new Docker(); - - // ... - } - ``` - - If you want to crash your application on invalid configurations, you can throw an `Error` to preserve the old behavior. - Please be aware that this is not the recommended for the use in a Backstage backend but might be helpful in CLI tools such as the `techdocs-cli`. - - ```ts - const publisher = await Publisher.fromConfig(config, { - logger, - discovery, - }); - - const ready = await publisher.getReadiness(); - if (!ready.isAvailable) { - throw new Error('Invalid TechDocs publisher configuration'); - } - ``` - -### Patch Changes - -- Updated dependencies [bb5055aee] -- Updated dependencies [5d0740563] - - @backstage/catalog-model@0.7.7 - -## 0.4.5 - -### Patch Changes - -- 8686eb38c: Use errors from `@backstage/errors` -- 424742dc1: Applies only if you use TechDocs local builder instead of building on CI/CD i.e. if `techdocs.builder` in your `app-config.yaml` is set to `'local'` - - Improvements - - 1. Do not check for updates in the repository if a check has been made in the last 60 seconds. This is to prevent the annoying check for update on every page switch or load. - 2. No need to maintain an in-memory etag storage, and use the one stored in `techdocs_metadata.json` file alongside generated docs. - - New feature - - 1. You can now use a mix of basic and recommended setup i.e. `techdocs.builder` is `'local'` but using an external cloud storage instead of local storage. Previously, in this setup, the docs would never get updated. - -- Updated dependencies [8686eb38c] -- Updated dependencies [0434853a5] -- Updated dependencies [8686eb38c] - - @backstage/backend-common@0.6.0 - - @backstage/config@0.1.4 - -## 0.4.4 - -### Patch Changes - -- d7245b733: Remove runDockerContainer, and start using the utility function provided by @backstage/backend-common -- 0b42fff22: Make use of parseLocationReference/stringifyLocationReference -- 2ef5bc7ea: Implement proper AWS Credentials precedence with assume-role and explicit credentials -- aa095e469: OpenStack Swift publisher added for tech-docs. -- bc46435f5: - Improve deprecation warning messaging in logs. - - Replace temp folder path from git provider domain(`source`) to full git host name (`resource`). (See: https://github.com/IonicaBizau/git-url-parse#giturlparseurl) -- a501128db: Refactor log messaging to improve clarity -- ca4a904f6: Add an optional configuration option for setting the url endpoint for AWS S3 publisher: `techdocs.publisher.awsS3.endpoint` -- Updated dependencies [277644e09] -- Updated dependencies [52f613030] -- Updated dependencies [d7245b733] -- Updated dependencies [0b42fff22] -- Updated dependencies [905cbfc96] -- Updated dependencies [761698831] -- Updated dependencies [d4e77ec5f] - - @backstage/integration@0.5.1 - - @backstage/backend-common@0.5.6 - - @backstage/catalog-model@0.7.4 - -## 0.4.3 - -### Patch Changes - -- f43192207: remove usage of res.send() for res.json() and res.end() to ensure content types are more consistently application/json on backend responses and error cases -- 61299519f: Remove read-store-upload loop when uploading S3 objects for TechDocs -- Updated dependencies [12d8f27a6] -- Updated dependencies [497859088] -- Updated dependencies [8adb48df4] - - @backstage/catalog-model@0.7.3 - - @backstage/backend-common@0.5.5 - -## 0.4.2 - -### Patch Changes - -- 2499f6cde: Add support for assuming role in AWS integrations -- 1e4ddd71d: Fix AWS, GCS and Azure publisher to work on Windows. -- Updated dependencies [bad21a085] -- Updated dependencies [a1f5e6545] - - @backstage/catalog-model@0.7.2 - - @backstage/config@0.1.3 - -## 0.4.1 - -### Patch Changes - -- fb28da212: Switched to using `'x-access-token'` for authenticating Git over HTTPS towards GitHub. -- 26e143e60: After TechDocs generate step, insert build timestamp to techdocs_metadata.json -- c6655413d: Improved error reporting in AzureBlobStorage to surface errors when fetching metadata and uploading files fails. -- 44414239f: Pass user and group ID when invoking docker container. When TechDocs invokes Docker, docker could be run as a `root` user which results in generation of files by applications run by non-root user (e.g. TechDocs) will not have access to modify. This PR passes in current user and group ID to docker so that the file permissions of the generated files and folders are correct. -- b0a41c707: Add etag of the prepared file tree to techdocs_metadata.json in the storage -- Updated dependencies [16fb1d03a] -- Updated dependencies [491f3a0ec] -- Updated dependencies [491f3a0ec] -- Updated dependencies [434b4e81a] -- Updated dependencies [fb28da212] - - @backstage/backend-common@0.5.4 - - @backstage/integration@0.5.0 - -## 0.4.0 - -### Minor Changes - -- 08142b256: URL Preparer will now use proper etag based caching introduced in https://github.com/backstage/backstage/pull/4120. Previously, builds used to be cached for 30 minutes. - -### Patch Changes - -- 77ad0003a: Revert AWS SDK version to v2 -- 08142b256: TechDocs will throw warning in backend logs when legacy git preparer or dir preparer is used to preparer docs. Migrate to URL Preparer by updating `backstage.io/techdocs-ref` annotation to be prefixed with `url:`. - Detailed docs are here https://backstage.io/docs/features/techdocs/how-to-guides#how-to-use-url-reader-in-techdocs-prepare-step - See benefits and reason for doing so https://github.com/backstage/backstage/issues/4409 -- Updated dependencies [ffffea8e6] -- Updated dependencies [82b2c11b6] -- Updated dependencies [965e200c6] -- Updated dependencies [ffffea8e6] -- Updated dependencies [5a5163519] - - @backstage/backend-common@0.5.3 - - @backstage/integration@0.4.0 - -## 0.3.7 - -### Patch Changes - -- c777df180: 1. Added option to use Azure Blob Storage as a choice to store the static generated files for TechDocs. -- e44925723: `techdocs.requestUrl` and `techdocs.storageUrl` are now optional configs and the discovery API will be used to get the URL where techdocs plugin is hosted. -- f0320190d: dir preparer will use URL Reader in its implementation. -- Updated dependencies [c4abcdb60] -- Updated dependencies [2430ee7c2] -- Updated dependencies [6e612ce25] -- Updated dependencies [025e122c3] -- Updated dependencies [064c513e1] -- Updated dependencies [7881f2117] -- Updated dependencies [3149bfe63] -- Updated dependencies [2e62aea6f] -- Updated dependencies [11cb5ef94] - - @backstage/integration@0.3.2 - - @backstage/backend-common@0.5.2 - - @backstage/catalog-model@0.7.1 - -## 0.3.6 - -### Patch Changes - -- 9dd057662: Upgrade [git-url-parse](https://www.npmjs.com/package/git-url-parse) to [v11.4.4](https://github.com/IonicaBizau/git-url-parse/pull/125) which fixes parsing an Azure DevOps branch ref. -- db2328c88: Add rate limiter for concurrent execution of file uploads in AWS and Google publishers -- Updated dependencies [26a3a6cf0] -- Updated dependencies [664dd08c9] -- Updated dependencies [6800da78d] -- Updated dependencies [9dd057662] - - @backstage/backend-common@0.5.1 - - @backstage/integration@0.3.1 - -## 0.3.5 - -### Patch Changes - -- 53c9c51f2: TechDocs backend now streams files through from Google Cloud Storage to the browser, improving memory usage. -- a5e27d5c1: Create type for TechDocsMetadata (#3716) - - This change introduces a new type (TechDocsMetadata) in packages/techdocs-common. This type is then introduced in the endpoint response in techdocs-backend and in the api interface in techdocs (frontend). - -- Updated dependencies [def2307f3] -- Updated dependencies [0b135e7e0] -- Updated dependencies [294a70cab] -- Updated dependencies [fa8ba330a] -- Updated dependencies [0ea032763] -- Updated dependencies [5345a1f98] -- Updated dependencies [ed6baab66] -- Updated dependencies [09a370426] -- Updated dependencies [a93f42213] - - @backstage/catalog-model@0.7.0 - - @backstage/backend-common@0.5.0 - - @backstage/integration@0.3.0 - -## 0.3.4 - -### Patch Changes - -- a594a7257: @backstage/techdocs-common can now be imported in an environment without @backstage/plugin-techdocs-backend being installed. - -## 0.3.3 - -### Patch Changes - -- 68ad5af51: Improve techdocs-common Generator API for it to be used by techdocs-cli. TechDocs generator.run function now takes - an input AND an output directory. Most probably you use techdocs-common via plugin-techdocs-backend, and so there - is no breaking change for you. - But if you use techdocs-common separately, you need to create an output directory and pass into the generator. -- 371f67ecd: fix to-string breakage of binary files -- f1e74777a: Fix bug where binary files (`png`, etc.) could not load when using AWS or GCS publisher. -- dbe4450c3: Google Cloud authentication in TechDocs has been improved. - - 1. `techdocs.publisher.googleGcs.credentials` is now optional. If it is missing, `GOOGLE_APPLICATION_CREDENTIALS` - environment variable (and some other methods) will be used to authenticate. - Read more here https://cloud.google.com/docs/authentication/production - - 2. `techdocs.publisher.googleGcs.projectId` is no longer used. You can remove it from your `app-config.yaml`. - -- 5826d0973: AWS SDK version bump for TechDocs. -- b3b9445df: AWS S3 authentication in TechDocs has been improved. - - 1. `techdocs.publisher.awsS3.bucketName` is now the only required config. `techdocs.publisher.awsS3.credentials` and `techdocs.publisher.awsS3.region` are optional. - - 2. If `techdocs.publisher.awsS3.credentials` and `techdocs.publisher.awsS3.region` are missing, the AWS environment variables `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` and `AWS_REGION` will be used. There are more better ways of setting up AWS authentication. Read the guide at https://backstage.io/docs/features/techdocs/using-cloud-storage - -- Updated dependencies [466354aaa] -- Updated dependencies [f3b064e1c] -- Updated dependencies [abbee6fff] -- Updated dependencies [147fadcb9] - - @backstage/integration@0.2.0 - - @backstage/catalog-model@0.6.1 - - @backstage/backend-common@0.4.3 - -## 0.3.2 - -### Patch Changes - -- 7ec525481: 1. Added option to use AWS S3 as a choice to store the static generated files for TechDocs. -- f8ba88ded: Fix for `integration.github.apiBaseUrl` configuration not properly overriding apiBaseUrl used by techdocs -- 00042e73c: Moving the Git actions to isomorphic-git instead of the node binding version of nodegit -- Updated dependencies [5ecd50f8a] -- Updated dependencies [00042e73c] -- Updated dependencies [0829ff126] -- Updated dependencies [036a84373] - - @backstage/backend-common@0.4.2 - - @backstage/integration@0.1.5 - -## 0.3.1 - -### Patch Changes - -- 8804e8981: Using @backstage/integration package for GitHub/GitLab/Azure tokens and request options. - - Most probably you do not have to make any changes in the app because of this change. - However, if you are using the `DirectoryPreparer` or `CommonGitPreparer` exported by - `@backstage/techdocs-common` package, you now need to add pass in a `config` (from `@backstage/config`) - instance as argument. - - ``` - - const directoryPreparer = new DirectoryPreparer(logger); - const commonGitPreparer = new CommonGitPreparer(logger); - - const directoryPreparer = new DirectoryPreparer(config, logger); - const commonGitPreparer = new CommonGitPreparer(config, logger); - ``` - -## 0.3.0 - -### Minor Changes - -- a8573e53b: techdocs-backend: Simplified file, removing individual preparers and generators. - techdocs-backend: UrlReader is now available to use in preparers. - - In your Backstage app, `packages/backend/plugins/techdocs.ts` file has now been simplified, - to remove registering individual preparers and generators. - - Please update the file when upgrading the version of `@backstage/plugin-techdocs-backend` package. - - ```typescript - const preparers = await Preparers.fromConfig(config, { - logger, - reader, - }); - - const generators = await Generators.fromConfig(config, { - logger, - }); - - const publisher = await Publisher.fromConfig(config, { - logger, - discovery, - }); - ``` - - You should be able to remove unnecessary imports, and just do - - ```typescript - import { - createRouter, - Preparers, - Generators, - Publisher, - } from '@backstage/plugin-techdocs-backend'; - ``` - -## 0.2.0 - -### Minor Changes - -- dae4f3983: _Breaking changes_ - - 1. Added option to use Google Cloud Storage as a choice to store the static generated files for TechDocs. - It can be configured using `techdocs.publisher.type` option in `app-config.yaml`. - Step-by-step guide to configure GCS is available here https://backstage.io/docs/features/techdocs/using-cloud-storage - Set `techdocs.publisher.type` to `'local'` if you want to continue using local filesystem to store TechDocs files. - - 2. `techdocs.builder` is now required and can be set to `'local'` or `'external'`. (Set it to `'local'` for now, since CI/CD build - workflow for TechDocs will be available soon (in few weeks)). - If builder is set to 'local' and you open a TechDocs page, `techdocs-backend` will try to generate the docs, publish to storage and - show the generated docs afterwords. - If builder is set to `'external'`, `techdocs-backend` will only fetch the docs and will NOT try to generate and publish. In this case of `'external'`, - we assume that docs are being built in the CI/CD pipeline of the repository. - TechDocs will not assume a default value for `techdocs.builder`. It is better to explicitly define it in the `app-config.yaml`. - - 3. When configuring TechDocs in your backend, there is a difference in how a new publisher is created. - - ``` - --- const publisher = new LocalPublish(logger, discovery); - +++ const publisher = Publisher.fromConfig(config, logger, discovery); - ``` - - Based on the config `techdocs.publisher.type`, the publisher could be either Local publisher or Google Cloud Storage publisher. - - 4. `techdocs.storageUrl` is now a required config. Should be `http://localhost:7007/api/techdocs/static/docs` in most setups. - - 5. Parts of `@backstage/plugin-techdocs-backend` have been moved to a new package `@backstage/techdocs-common` to generate docs. Also to publish docs - to-and-fro between TechDocs and a storage (either local or external). However, a Backstage app does NOT need to import the `techdocs-common` package - - app should only import `@backstage/plugin-techdocs` and `@backstage/plugin-techdocs-backend`. - - _Patch changes_ - - 1. See all of TechDocs config options and its documentation https://backstage.io/docs/features/techdocs/configuration - - 2. Logic about serving static files and metadata retrieval have been abstracted away from the router in `techdocs-backend` to the instance of publisher. - - 3. Removed Material UI Spinner from TechDocs header. Spinners cause unnecessary UX distraction. - Case 1 (when docs are built and are to be served): Spinners appear for a split second before the name of site shows up. This unnecessarily distracts eyes because spinners increase the size of the Header. A dot (.) would do fine. Definitely more can be done. - Case 2 (when docs are being generated): There is already a linear progress bar (which is recommended in Storybook). - -### Patch Changes - -- Updated dependencies [c911061b7] -- Updated dependencies [1d1c2860f] -- Updated dependencies [0e6298f7e] -- Updated dependencies [4eafdec4a] -- Updated dependencies [ac3560b42] - - @backstage/catalog-model@0.6.0 - - @backstage/backend-common@0.4.1 diff --git a/packages/techdocs-common/README.md b/packages/techdocs-common/README.md deleted file mode 100644 index 052eae7ab2..0000000000 --- a/packages/techdocs-common/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# @backstage/techdocs-common - -This package has been moved to `@backstage/plugin-techdocs-node` and is no -longer maintained. Please update any dependencies you have on this package -accordingly. diff --git a/packages/techdocs-common/api-report.md b/packages/techdocs-common/api-report.md deleted file mode 100644 index 62851bbd68..0000000000 --- a/packages/techdocs-common/api-report.md +++ /dev/null @@ -1,9 +0,0 @@ -## API Report File for "@backstage/techdocs-common" - -> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). - -```ts -export * from '@backstage/plugin-techdocs-node'; - -// (No @packageDocumentation comment for this package) -``` diff --git a/packages/techdocs-common/package.json b/packages/techdocs-common/package.json deleted file mode 100644 index 91fe642194..0000000000 --- a/packages/techdocs-common/package.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "@backstage/techdocs-common", - "description": "No longer maintained. Use @backstage/plugin-techdocs-node instead.", - "version": "0.11.16-next.2", - "main": "src/index.ts", - "types": "src/index.ts", - "private": false, - "publishConfig": { - "access": "public", - "main": "dist/index.cjs.js", - "types": "dist/index.d.ts" - }, - "backstage": { - "role": "node-library" - }, - "homepage": "https://backstage.io", - "repository": { - "type": "git", - "url": "https://github.com/backstage/backstage", - "directory": "packages/techdocs-common" - }, - "license": "Apache-2.0", - "files": [ - "dist" - ], - "scripts": { - "build": "backstage-cli package build", - "lint": "backstage-cli package lint", - "test": "backstage-cli package test", - "prepack": "backstage-cli package prepack", - "postpack": "backstage-cli package postpack", - "clean": "backstage-cli package clean", - "start": "backstage-cli package start" - }, - "bugs": { - "url": "https://github.com/backstage/backstage/issues" - }, - "dependencies": { - "@backstage/plugin-techdocs-node": "1.1.2-next.2" - }, - "devDependencies": {}, - "jest": { - "roots": [ - ".." - ] - } -} diff --git a/packages/techdocs-common/src/index.ts b/packages/techdocs-common/src/index.ts deleted file mode 100644 index a881eef5ea..0000000000 --- a/packages/techdocs-common/src/index.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright 2020 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 '@backstage/plugin-techdocs-node'; From de28184035388879c662124d512321a5dfad4780 Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Mon, 13 Jun 2022 14:18:43 +0200 Subject: [PATCH 364/550] Remove legacy search-common package. Signed-off-by: Eric Peterson --- packages/search-common/.eslintrc.js | 1 - packages/search-common/CHANGELOG.md | 227 --------------------------- packages/search-common/README.md | 5 - packages/search-common/api-report.md | 9 -- packages/search-common/package.json | 46 ------ packages/search-common/src/index.ts | 17 -- 6 files changed, 305 deletions(-) delete mode 100644 packages/search-common/.eslintrc.js delete mode 100644 packages/search-common/CHANGELOG.md delete mode 100644 packages/search-common/README.md delete mode 100644 packages/search-common/api-report.md delete mode 100644 packages/search-common/package.json delete mode 100644 packages/search-common/src/index.ts diff --git a/packages/search-common/.eslintrc.js b/packages/search-common/.eslintrc.js deleted file mode 100644 index e2a53a6ad2..0000000000 --- a/packages/search-common/.eslintrc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('@backstage/cli/config/eslint-factory')(__dirname); diff --git a/packages/search-common/CHANGELOG.md b/packages/search-common/CHANGELOG.md deleted file mode 100644 index 6e1cd9efd9..0000000000 --- a/packages/search-common/CHANGELOG.md +++ /dev/null @@ -1,227 +0,0 @@ -# @backstage/search-common - -## 0.3.5-next.1 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.5-next.1 - -## 0.3.5-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.5-next.0 - -## 0.3.4 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.4 - -## 0.3.4-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.4-next.0 - -## 0.3.3 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.3 - -## 0.3.3-next.1 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.3-next.1 - -## 0.3.3-next.0 - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-search-common@0.3.3-next.0 - -## 0.3.2 - -### Patch Changes - -- 82b0190155: This package is no longer maintained. Use `@backstage/plugin-search-common`, going forward. -- Updated dependencies - - @backstage/plugin-search-common@0.3.2 - -## 0.3.1 - -### Patch Changes - -- d52155466a: **DEPRECATION** - - The `@backstage/search-common` package is being renamed `@backstage/plugin-search-common`. We may continue to publish changes to `@backstage/search-common` for a time, but will stop doing so in the near future. If you depend on this package, you should update your dependencies to point at the renamed package. - -- Updated dependencies - - @backstage/plugin-search-common@0.3.1 - -## 0.3.1-next.0 - -### Patch Changes - -- d52155466a: **DEPRECATION** - - The `@backstage/search-common` package is being renamed `@backstage/plugin-search-common`. We may continue to publish changes to `@backstage/search-common` for a time, but will stop doing so in the near future. If you depend on this package, you should update your dependencies to point at the renamed package. - -- Updated dependencies - - @backstage/plugin-search-common@0.3.1-next.0 - -## 0.3.0 - -### Minor Changes - -- 022507c860: **BREAKING** - - The Backstage Search Platform's indexing process has been rewritten as a stream - pipeline in order to improve efficiency and performance on large document sets. - - The concepts of `Collator` and `Decorator` have been replaced with readable and - transform object streams (respectively), as well as factory classes to - instantiate them. Accordingly, the `SearchEngine.index()` method has also been - replaced with a `getIndexer()` factory method that resolves to a writable - object stream. - - Check [this upgrade guide](https://backstage.io/docs/features/search/how-to-guides#how-to-migrate-from-search-alpha-to-beta) - for further details. - -### Patch Changes - -- Updated dependencies - - @backstage/plugin-permission-common@0.5.2 - -## 0.2.4 - -### Patch Changes - -- Fix for the previous release with missing type declarations. -- Updated dependencies - - @backstage/types@0.1.3 - - @backstage/plugin-permission-common@0.5.1 - -## 0.2.3 - -### Patch Changes - -- c77c5c7eb6: Added `backstage.role` to `package.json` -- Updated dependencies - - @backstage/plugin-permission-common@0.5.0 - - @backstage/types@0.1.2 - -## 0.2.2 - -### Patch Changes - -- 9a511968b1: - Add optional visibilityPermission property to DocumentCollator type - - Add new DocumentTypeInfo type for housing information about the document types stored in a search engine. -- b2e918fa0b: Add optional resourceRef field to the IndexableDocument type for use when authorizing access to documents. -- 96cbebc629: Add optional query request options containing authorization token to SearchEngine#query. - -## 0.2.1 - -### Patch Changes - -- 10615525f3: Switch to use the json and observable types from `@backstage/types` - -## 0.2.0 - -### Minor Changes - -- a13f21cdc: Implement optional `pageCursor` based paging in search. - - To use paging in your app, add a `` to your - `SearchPage.tsx`. - -## 0.1.3 - -### Patch Changes - -- d9c13d535: Implements configuration and indexing functionality for ElasticSearch search engine. Adds indexing, searching and default translator for ElasticSearch and modifies default backend example-app to use ES if it is configured. - - ## Example configurations: - - ### AWS - - Using AWS hosted ElasticSearch the only configuration options needed is the URL to the ElasticSearch service. The implementation assumes - that environment variables for AWS access key id and secret access key are defined in accordance to the [default AWS credential chain.](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-credentials-node.html). - - ```yaml - search: - elasticsearch: - provider: aws - node: https://my-backstage-search-asdfqwerty.eu-west-1.es.amazonaws.com - ``` - - ### Elastic.co - - Elastic Cloud hosted ElasticSearch uses a Cloud ID to determine the instance of hosted ElasticSearch to connect to. Additionally, username and password needs to be provided either directly or using environment variables like defined in [Backstage documentation.](https://backstage.io/docs/conf/writing#includes-and-dynamic-data) - - ```yaml - search: - elasticsearch: - provider: elastic - cloudId: backstage-elastic:asdfqwertyasdfqwertyasdfqwertyasdfqwerty== - auth: - username: elastic - password: changeme - ``` - - ### Others - - Other ElasticSearch instances can be connected to by using standard ElasticSearch authentication methods and exposed URL, provided that the cluster supports that. The configuration options needed are the URL to the node and authentication information. Authentication can be handled by either providing username/password or and API key or a bearer token. In case both username/password combination and one of the tokens are provided, token takes precedence. For more information how to create an API key, see [Elastic documentation on API keys](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html) and how to create a bearer token, see [Elastic documentation on tokens.](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-service-token.html) - - #### Configuration examples - - ##### With username and password - - ```yaml - search: - elasticsearch: - node: http://localhost:9200 - auth: - username: elastic - password: changeme - ``` - - ##### With bearer token - - ```yaml - search: - elasticsearch: - node: http://localhost:9200 - auth: - bearer: token - ``` - - ##### With API key - - ```yaml - search: - elasticsearch: - node: http://localhost:9200 - auth: - apiKey: base64EncodedKey - ``` - -- Updated dependencies - - @backstage/config@0.1.6 - -## 0.1.2 - -### Patch Changes - -- db1c8f93b: The ` set of components exported by the Search Plugin are now updated to use the Search Backend API. These will be made available as the default non-"next" versions in a follow-up release. - - The interfaces for decorators and collators in the Search Backend have also seen minor, breaking revisions ahead of a general release. If you happen to be building on top of these interfaces, check and update your implementations accordingly. The APIs will be considered more stable in a follow-up release. diff --git a/packages/search-common/README.md b/packages/search-common/README.md deleted file mode 100644 index 80b0c09c40..0000000000 --- a/packages/search-common/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# @backstage/search-common - -This package has been moved to `@backstage/plugin-search-common` and is no -longer maintained. Please update any dependencies you have on this package -accordingly. diff --git a/packages/search-common/api-report.md b/packages/search-common/api-report.md deleted file mode 100644 index 03965ace66..0000000000 --- a/packages/search-common/api-report.md +++ /dev/null @@ -1,9 +0,0 @@ -## API Report File for "@backstage/search-common" - -> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). - -```ts -export * from '@backstage/plugin-search-common'; - -// (No @packageDocumentation comment for this package) -``` diff --git a/packages/search-common/package.json b/packages/search-common/package.json deleted file mode 100644 index 99de5fd382..0000000000 --- a/packages/search-common/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "@backstage/search-common", - "description": "No longer maintained. Use @backstage/plugin-search-common instead.", - "version": "0.3.5-next.1", - "main": "src/index.ts", - "types": "src/index.ts", - "private": false, - "publishConfig": { - "access": "public", - "main": "dist/index.cjs.js", - "types": "dist/index.d.ts" - }, - "backstage": { - "role": "common-library" - }, - "homepage": "https://backstage.io", - "repository": { - "type": "git", - "url": "https://github.com/backstage/backstage", - "directory": "packages/search-common" - }, - "license": "Apache-2.0", - "files": [ - "dist" - ], - "scripts": { - "build": "backstage-cli package build", - "lint": "backstage-cli package lint", - "test": "backstage-cli package test", - "prepack": "backstage-cli package prepack", - "postpack": "backstage-cli package postpack", - "clean": "backstage-cli package clean" - }, - "bugs": { - "url": "https://github.com/backstage/backstage/issues" - }, - "dependencies": { - "@backstage/plugin-search-common": "0.3.5-next.1" - }, - "devDependencies": {}, - "jest": { - "roots": [ - ".." - ] - } -} diff --git a/packages/search-common/src/index.ts b/packages/search-common/src/index.ts deleted file mode 100644 index 8e21c5f936..0000000000 --- a/packages/search-common/src/index.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright 2021 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 '@backstage/plugin-search-common'; From 5d3cb7689515a8fb38f04b25cb0d049e259646ab Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Mon, 13 Jun 2022 14:41:26 +0200 Subject: [PATCH 365/550] Remove legacy packages from scripts, codeowners, and docs. Signed-off-by: Eric Peterson --- .github/CODEOWNERS | 2 -- docs/plugins/url-reader.md | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b4f825d221..96ee5cf23f 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -14,10 +14,8 @@ yarn.lock @backstage/reviewers @backst /docs/assets/search @backstage/reviewers @backstage/techdocs-core /docs/features/search @backstage/reviewers @backstage/techdocs-core /docs/features/techdocs @backstage/reviewers @backstage/techdocs-core -/packages/search-common @backstage/reviewers @backstage/techdocs-core /packages/techdocs-cli @backstage/reviewers @backstage/techdocs-core /packages/techdocs-cli-embedded-app @backstage/reviewers @backstage/techdocs-core -/packages/techdocs-common @backstage/reviewers @backstage/techdocs-core /plugins/allure @backstage/reviewers @deepak-bhardwaj-ps /plugins/apache-airflow @backstage/reviewers @cmpadden /plugins/api-docs @backstage/reviewers @backstage/sda-se-reviewers diff --git a/docs/plugins/url-reader.md b/docs/plugins/url-reader.md index 8a84f3e1ff..4c6938ade2 100644 --- a/docs/plugins/url-reader.md +++ b/docs/plugins/url-reader.md @@ -104,10 +104,10 @@ directly be used with a URL. Some example usages - - [`read`](https://github.com/backstage/backstage/blob/d5c83bb889b8142e343ebc4e4c0b90a02d1c1a3d/plugins/catalog-backend/src/ingestion/processors/codeowners/read.ts#L24-L33) - Catalog using the `read` method to read the CODEOWNERS file in a repository. -- [`readTree`](https://github.com/backstage/backstage/blob/d5c83bb889b8142e343ebc4e4c0b90a02d1c1a3d/packages/techdocs-common/src/helpers.ts#L198-L220) - +- [`readTree`](https://github.com/backstage/backstage/blob/84a8788/plugins/techdocs-node/src/helpers.ts#L146-L167) - TechDocs using the `readTree` method to download markdown files in order to generate the documentation site. -- [`readTree`](https://github.com/backstage/backstage/blob/d5c83bb889b8142e343ebc4e4c0b90a02d1c1a3d/packages/techdocs-common/src/stages/prepare/url.ts#L33-L54) - +- [`readTree`](https://github.com/backstage/backstage/blob/cb4f0e4/plugins/techdocs-node/src/stages/prepare/url.ts#L51-L73) - TechDocs using `NotModifiedError` to maintain cache and speed up and limit the number of requests. - [`search`](https://github.com/backstage/backstage/blob/d5c83bb889b8142e343ebc4e4c0b90a02d1c1a3d/plugins/catalog-backend/src/ingestion/processors/UrlReaderProcessor.ts#L88-L108) - From 9b94ade898cf5aed29cd48ba84692fac6d1b705b Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Mon, 13 Jun 2022 17:55:09 +0200 Subject: [PATCH 366/550] Rename changeset. Signed-off-by: Eric Peterson --- .changeset/{tall-jobs-warn.md => techdocs-tal-jobs-warn.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .changeset/{tall-jobs-warn.md => techdocs-tal-jobs-warn.md} (100%) diff --git a/.changeset/tall-jobs-warn.md b/.changeset/techdocs-tal-jobs-warn.md similarity index 100% rename from .changeset/tall-jobs-warn.md rename to .changeset/techdocs-tal-jobs-warn.md From 247d66cfce5ef38030f3b6cc17ca1d8803b32e31 Mon Sep 17 00:00:00 2001 From: Talita Gregory Date: Mon, 13 Jun 2022 20:26:09 +0200 Subject: [PATCH 367/550] fix: removed unnecessary filter on spec.type Signed-off-by: Talita Gregory --- .../github-pull-requests-board/src/hooks/useUserRepositories.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx b/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx index 68c4af96e4..638a8cb487 100644 --- a/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx +++ b/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx @@ -27,7 +27,6 @@ export function useUserRepositories() { const entitiesList = await catalogApi.getEntities({ filter: { kind: 'Component', - 'spec.type': 'service', 'spec.owner': teamEntity?.metadata?.name, }, }); From c6690d9d24a2c978af1bdf38dbb79f58874ad96a Mon Sep 17 00:00:00 2001 From: Talita Gregory Date: Mon, 13 Jun 2022 20:34:49 +0200 Subject: [PATCH 368/550] added changeset Signed-off-by: Talita Gregory --- .changeset/beige-horses-scream.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/beige-horses-scream.md diff --git a/.changeset/beige-horses-scream.md b/.changeset/beige-horses-scream.md new file mode 100644 index 0000000000..2034491108 --- /dev/null +++ b/.changeset/beige-horses-scream.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-github-pull-requests-board': patch +--- + +Fix bug on fetching teams repositories where were being filtered by type service unnecessarily From 3cbebf710e60a2479715dbfc9240fd2ea7be0fa8 Mon Sep 17 00:00:00 2001 From: Raghunandan Date: Mon, 13 Jun 2022 23:21:00 +0200 Subject: [PATCH 369/550] Add changeset Signed-off-by: Raghunandan --- .changeset/techdocs-gorgeous-plants-sniff.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/techdocs-gorgeous-plants-sniff.md diff --git a/.changeset/techdocs-gorgeous-plants-sniff.md b/.changeset/techdocs-gorgeous-plants-sniff.md new file mode 100644 index 0000000000..f5453f35be --- /dev/null +++ b/.changeset/techdocs-gorgeous-plants-sniff.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-techdocs': patch +--- + +Reorder browser tab title in Techdocs pages to have the site name first. From dcaf1cb418d8e63c2b5c3a9395e9a8de68609698 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 12:50:17 +0200 Subject: [PATCH 370/550] Add changeset Signed-off-by: Olivier Liechti --- .changeset/great-roses-pump.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/great-roses-pump.md diff --git a/.changeset/great-roses-pump.md b/.changeset/great-roses-pump.md new file mode 100644 index 0000000000..1172f5018a --- /dev/null +++ b/.changeset/great-roses-pump.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog': patch +--- + +Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overriden in the theme (PluginCatalogEntityContextMenu > button > color). From 8f8273eb9353465eb9e2292961e12e896e7ffabe Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:00:12 +0200 Subject: [PATCH 371/550] Fix typo in changeset Signed-off-by: Olivier Liechti --- .changeset/great-roses-pump.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.changeset/great-roses-pump.md b/.changeset/great-roses-pump.md index 1172f5018a..949c32f34b 100644 --- a/.changeset/great-roses-pump.md +++ b/.changeset/great-roses-pump.md @@ -2,4 +2,16 @@ '@backstage/plugin-catalog': patch --- -Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overriden in the theme (PluginCatalogEntityContextMenu > button > color). +Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overridden in the theme (PluginCatalogEntityContextMenu > button > color): + +export function createThemeOverrides(theme: BackstageTheme): Overrides { +return { +PluginCatalogEntityContextMenu: { +button: { +color: 'blue', +}, +}, +... +}, +... +} From 93971d41c4643675e65ef2d864d357bb7a8a9736 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:06:56 +0200 Subject: [PATCH 372/550] Fix typo in changeset Signed-off-by: Olivier Liechti --- .changeset/great-roses-pump.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/great-roses-pump.md b/.changeset/great-roses-pump.md index 949c32f34b..263254b63c 100644 --- a/.changeset/great-roses-pump.md +++ b/.changeset/great-roses-pump.md @@ -2,7 +2,7 @@ '@backstage/plugin-catalog': patch --- -Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overridden in the theme (PluginCatalogEntityContextMenu > button > color): +Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overridden in the theme (PluginCatalogEntityContextMenu > button > color). Example: export function createThemeOverrides(theme: BackstageTheme): Overrides { return { From ae8c6bf16270ae1cfdd36b6885c97bae8584184e Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:23:16 +0200 Subject: [PATCH 373/550] Fix linter issue Signed-off-by: Olivier Liechti --- .../EntityContextMenu/EntityContextMenu.tsx | 2 +- ...20ba9-Linux-5.10.25-linuxkit-en.properties | 235 ++++++++++++++++++ 2 files changed, 236 insertions(+), 1 deletion(-) create mode 100644 plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties diff --git a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx index 0059d3118c..9c16f80ee5 100644 --- a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx +++ b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx @@ -36,7 +36,7 @@ import { catalogEntityDeletePermission } from '@backstage/plugin-catalog-common' export type EntityContextMenuClassKey = 'button'; const useStyles = makeStyles( - theme => ({ + () => ({ button: { color: 'white', }, diff --git a/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties b/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties new file mode 100644 index 0000000000..3849e9a4df --- /dev/null +++ b/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties @@ -0,0 +1,235 @@ +#JDK Font Configuration Generated File: *Do Not Edit* +#Sun May 29 11:24:26 GMT 2022 +sansserif.3.5.family=DejaVu LGC Serif +serif.1.7.family=DejaVu LGC Sans +monospaced.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +serif.1.5.family=DejaVu Sans Mono +sansserif.3.7.family=DejaVu LGC Serif +sansserif.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +serif.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +serif.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +sansserif.3.3.family=DejaVu Sans +serif.1.9.family=DejaVu Math TeX Gyre +serif.1.3.family=DejaVu Serif +serif.1.1.family=DejaVu Serif +serif.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf +monospaced.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +monospaced.0.1.family=DejaVu Math TeX Gyre +monospaced.0.3.family=DejaVu Serif +sansserif.0.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +serif.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Oblique.ttf +monospaced.3.10.family=DejaVu Math TeX Gyre +monospaced.0.length=5 +sansserif.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +serif.0.6.family=DejaVu LGC Sans +sansserif.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf +version=1 +monospaced.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf +monospaced.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf +sansserif.2.4.family=DejaVu Serif +sansserif.2.6.family=DejaVu LGC Sans Mono +serif.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf +serif.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf +sansserif.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +monospaced.2.length=9 +monospaced.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +sansserif.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +sansserif.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +serif.3.length=11 +serif.0.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf +sansserif.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +serif.0.0.family=DejaVu Serif +serif.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +monospaced.1.2.family=DejaVu Serif +monospaced.1.6.family=DejaVu LGC Sans +sansserif.2.0.family=DejaVu Sans +serif.3.5.family=DejaVu Sans Mono +serif.0.4.family=DejaVu Math TeX Gyre +sansserif.1.5.family=DejaVu LGC Serif +serif.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf +serif.3.1.family=DejaVu Serif +serif.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +monospaced.3.9.family=DejaVu Sans +serif.2.0.family=DejaVu Serif +sansserif.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +sansserif.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +serif.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +monospaced.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +sansserif.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono.ttf +monospaced.2.7.family=DejaVu Math TeX Gyre +serif.2.8.family=DejaVu Math TeX Gyre +sansserif.3.1.family=DejaVu Sans +monospaced.2.3.family=DejaVu Serif +serif.2.4.family=DejaVu LGC Sans +sansserif.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +monospaced.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +monospaced.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +sansserif.2.length=8 +monospaced.3.2.family=DejaVu Sans Mono +serif.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +serif.3.10.family=DejaVu Sans +monospaced.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +monospaced.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf +monospaced.3.5.family=DejaVu LGC Serif +serif.3.10.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +monospaced.3.4.family=DejaVu Serif +monospaced.3.7.family=DejaVu Sans +serif.3.9.family=DejaVu Math TeX Gyre +sansserif.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +sansserif.1.1.family=DejaVu Sans +serif.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Oblique.ttf +serif.2.10.family=DejaVu Sans +monospaced.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf +monospaced.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.2.6.family=DejaVu Sans +sansserif.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +monospaced.2.4.family=DejaVu Serif +sansserif.0.1.family=DejaVu Sans +sansserif.0.3.family=DejaVu Sans +serif.2.9.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +serif.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono.ttf +serif.1.length=10 +sansserif.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +monospaced.1.8.family=DejaVu Math TeX Gyre +serif.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf +monospaced.1.3.family=DejaVu LGC Sans +sansserif.2.2.family=DejaVu Sans +monospaced.1.0.family=DejaVu Sans Mono +serif.3.4.family=DejaVu LGC Sans Mono +monospaced.3.9.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +serif.0.2.family=DejaVu Serif +monospaced.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-BoldItalic.ttf +sansserif.1.7.family=DejaVu Serif +sansserif.1.4.family=DejaVu Sans Mono +serif.3.7.family=DejaVu LGC Sans +sansserif.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +serif.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +sansserif.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +monospaced.2.1.family=DejaVu Sans Mono +monospaced.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +serif.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +serif.0.7.family=DejaVu Sans +monospaced.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +sansserif.2.5.family=DejaVu Serif +serif.2.6.family=DejaVu Sans +monospaced.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +sansserif.0.6.family=DejaVu Math TeX Gyre +sansserif.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +serif.1.6.family=DejaVu LGC Sans Mono +monospaced.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf +serif.1.8.family=DejaVu Sans +sansserif.3.8.family=DejaVu Math TeX Gyre +sansserif.3.6.family=DejaVu LGC Sans Mono +sansserif.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf +sansserif.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf +serif.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +sansserif.3.4.family=DejaVu Serif +sansserif.3.2.family=DejaVu Sans +serif.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf +serif.1.2.family=DejaVu Serif +serif.1.4.family=DejaVu Sans +monospaced.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf +serif.1.0.family=DejaVu Serif +serif.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +monospaced.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf +monospaced.0.4.family=DejaVu Sans +monospaced.0.2.family=DejaVu LGC Sans +monospaced.0.0.family=DejaVu Sans Mono +serif.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-BoldOblique.ttf +serif.2.1.family=DejaVu Serif +monospaced.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Bold.ttf +serif.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +sansserif.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf +sansserif.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf +cachedir.0=/var/cache/fontconfig +serif.2.9.family=DejaVu Sans Mono +cachedir.2=/tmp/.fontconfig +sansserif.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-Oblique.ttf +cachedir.1=/tmp/.cache/fontconfig +serif.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf +sansserif.0.6.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +fcversion=21301 +sansserif.3.0.family=DejaVu Sans +serif.2.5.family=DejaVu LGC Sans Mono +serif.2.3.family=DejaVu Serif +serif.2.7.family=DejaVu LGC Sans +monospaced.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +serif.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +serif.2.length=11 +monospaced.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +serif.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +sansserif.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +serif.0.1.family=DejaVu Serif +monospaced.1.1.family=DejaVu Sans Mono +monospaced.1.5.family=DejaVu LGC Serif +serif.0.5.family=DejaVu Sans Mono +serif.3.2.family=DejaVu Serif +serif.3.6.family=DejaVu Sans +serif.0.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +sansserif.1.6.family=DejaVu LGC Sans Mono +serif.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf +sansserif.1.2.family=DejaVu Sans +monospaced.3.11.family=DejaVu Sans +monospaced.1.length=9 +monospaced.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Oblique.ttf +sansserif.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +sansserif.2.7.family=DejaVu Math TeX Gyre +sansserif.2.3.family=DejaVu Sans +serif.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-Oblique.ttf +sansserif.0.0.family=DejaVu Sans +sansserif.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +sansserif.0.4.family=DejaVu Sans Mono +serif.3.9.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +sansserif.0.5.family=DejaVu Serif +serif.1.9.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.3.10.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +sansserif.1.length=9 +sansserif.3.length=9 +serif.2.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf +monospaced.3.11.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +monospaced.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +monospaced.3.6.family=DejaVu Sans +sansserif.0.length=7 +monospaced.3.0.family=DejaVu Sans Mono +monospaced.3.3.family=DejaVu LGC Serif +monospaced.3.1.family=DejaVu Sans Mono +monospaced.3.8.family=DejaVu LGC Serif +sansserif.1.3.family=DejaVu Sans +monospaced.2.0.family=DejaVu Sans Mono +monospaced.2.2.family=DejaVu LGC Serif +sansserif.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +monospaced.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf +serif.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +monospaced.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif.ttf +monospaced.2.8.family=DejaVu Sans +sansserif.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +monospaced.1.4.family=DejaVu Sans +serif.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf +serif.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf +serif.0.length=8 +monospaced.1.7.family=DejaVu Sans +sansserif.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +sansserif.2.1.family=DejaVu Sans +serif.3.3.family=DejaVu Serif +serif.0.3.family=DejaVu Serif +sansserif.1.8.family=DejaVu Math TeX Gyre +serif.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-BoldOblique.ttf +serif.3.8.family=DejaVu Sans +serif.3.0.family=DejaVu Serif +serif.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf +sansserif.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +sansserif.1.0.family=DejaVu Sans +serif.2.10.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +serif.2.2.family=DejaVu Serif +monospaced.2.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf +monospaced.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +serif.0.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf +sansserif.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf +sansserif.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-BoldOblique.ttf +monospaced.3.length=12 +monospaced.2.5.family=DejaVu Sans +monospaced.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf +sansserif.0.2.family=DejaVu Sans From 33ad22a309888dc7fcf7d41efd635a46c361e59b Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:54:03 +0200 Subject: [PATCH 374/550] Update api-report.md Signed-off-by: Olivier Liechti --- plugins/catalog/api-report.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index 3d426a0c8b..aea9c2b2c5 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -390,6 +390,7 @@ export function isOrphan(entity: Entity): boolean; export type PluginCatalogComponentsNameToClassKey = { PluginCatalogEntityLinksEmptyState: EntityLinksEmptyStateClassKey; PluginCatalogSystemDiagramCard: SystemDiagramCardClassKey; + PluginCatalogEntityContextMenu: EntityContextMenuClassKey; }; // @public (undocumented) @@ -416,4 +417,8 @@ export type SystemDiagramCardClassKey = | 'componentNode' | 'apiNode' | 'resourceNode'; + +// Warnings were encountered during analysis: +// +// src/overridableComponents.d.ts:10:5 - (ae-forgotten-export) The symbol "EntityContextMenuClassKey" needs to be exported by the entry point index.d.ts ``` From 74dc3acb1ac2a3205aeb78ad62a20c8ea24408b0 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:00:12 +0200 Subject: [PATCH 375/550] Fix typo in changeset Signed-off-by: Olivier Liechti --- .../EntityContextMenu/EntityContextMenu.tsx | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx index 9c16f80ee5..db50eeab84 100644 --- a/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx +++ b/plugins/catalog/src/components/EntityContextMenu/EntityContextMenu.tsx @@ -31,16 +31,19 @@ import React, { useState } from 'react'; import { IconComponent } from '@backstage/core-plugin-api'; import { useEntityPermission } from '@backstage/plugin-catalog-react'; import { catalogEntityDeletePermission } from '@backstage/plugin-catalog-common'; +import { BackstageTheme } from '@backstage/theme'; /** @public */ export type EntityContextMenuClassKey = 'button'; const useStyles = makeStyles( - () => ({ - button: { - color: 'white', - }, - }), + (theme: BackstageTheme) => { + return { + button: { + color: theme.palette.bursts.fontColor, + }, + }; + }, { name: 'PluginCatalogEntityContextMenu' }, ); From e173877d5140b0d5c56e58d391001dce013ccebc Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Wed, 1 Jun 2022 13:00:12 +0200 Subject: [PATCH 376/550] Fix typo in changeset Signed-off-by: Olivier Liechti --- ...20ba9-Linux-5.10.25-linuxkit-en.properties | 235 ------------------ 1 file changed, 235 deletions(-) delete mode 100644 plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties diff --git a/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties b/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties deleted file mode 100644 index 3849e9a4df..0000000000 --- a/plugins/techdocs-backend/examples/documented-component/?/.java/fonts/11.0.15/fcinfo-1-995caf720ba9-Linux-5.10.25-linuxkit-en.properties +++ /dev/null @@ -1,235 +0,0 @@ -#JDK Font Configuration Generated File: *Do Not Edit* -#Sun May 29 11:24:26 GMT 2022 -sansserif.3.5.family=DejaVu LGC Serif -serif.1.7.family=DejaVu LGC Sans -monospaced.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -serif.1.5.family=DejaVu Sans Mono -sansserif.3.7.family=DejaVu LGC Serif -sansserif.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -serif.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -serif.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -sansserif.3.3.family=DejaVu Sans -serif.1.9.family=DejaVu Math TeX Gyre -serif.1.3.family=DejaVu Serif -serif.1.1.family=DejaVu Serif -serif.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf -monospaced.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -monospaced.0.1.family=DejaVu Math TeX Gyre -monospaced.0.3.family=DejaVu Serif -sansserif.0.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -serif.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Oblique.ttf -monospaced.3.10.family=DejaVu Math TeX Gyre -monospaced.0.length=5 -sansserif.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -serif.0.6.family=DejaVu LGC Sans -sansserif.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf -version=1 -monospaced.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf -monospaced.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf -sansserif.2.4.family=DejaVu Serif -sansserif.2.6.family=DejaVu LGC Sans Mono -serif.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf -serif.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf -sansserif.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -monospaced.2.length=9 -monospaced.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -sansserif.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -sansserif.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -serif.3.length=11 -serif.0.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf -sansserif.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -serif.0.0.family=DejaVu Serif -serif.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -monospaced.1.2.family=DejaVu Serif -monospaced.1.6.family=DejaVu LGC Sans -sansserif.2.0.family=DejaVu Sans -serif.3.5.family=DejaVu Sans Mono -serif.0.4.family=DejaVu Math TeX Gyre -sansserif.1.5.family=DejaVu LGC Serif -serif.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf -serif.3.1.family=DejaVu Serif -serif.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -monospaced.3.9.family=DejaVu Sans -serif.2.0.family=DejaVu Serif -sansserif.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -sansserif.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -serif.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -monospaced.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -sansserif.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono.ttf -monospaced.2.7.family=DejaVu Math TeX Gyre -serif.2.8.family=DejaVu Math TeX Gyre -sansserif.3.1.family=DejaVu Sans -monospaced.2.3.family=DejaVu Serif -serif.2.4.family=DejaVu LGC Sans -sansserif.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -monospaced.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -monospaced.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -sansserif.2.length=8 -monospaced.3.2.family=DejaVu Sans Mono -serif.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -serif.3.10.family=DejaVu Sans -monospaced.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -monospaced.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf -monospaced.3.5.family=DejaVu LGC Serif -serif.3.10.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -monospaced.3.4.family=DejaVu Serif -monospaced.3.7.family=DejaVu Sans -serif.3.9.family=DejaVu Math TeX Gyre -sansserif.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -sansserif.1.1.family=DejaVu Sans -serif.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Oblique.ttf -serif.2.10.family=DejaVu Sans -monospaced.3.8.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf -monospaced.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.2.6.family=DejaVu Sans -sansserif.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -monospaced.2.4.family=DejaVu Serif -sansserif.0.1.family=DejaVu Sans -sansserif.0.3.family=DejaVu Sans -serif.2.9.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -serif.1.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono.ttf -serif.1.length=10 -sansserif.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -monospaced.1.8.family=DejaVu Math TeX Gyre -serif.1.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf -monospaced.1.3.family=DejaVu LGC Sans -sansserif.2.2.family=DejaVu Sans -monospaced.1.0.family=DejaVu Sans Mono -serif.3.4.family=DejaVu LGC Sans Mono -monospaced.3.9.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -serif.0.2.family=DejaVu Serif -monospaced.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-BoldItalic.ttf -sansserif.1.7.family=DejaVu Serif -sansserif.1.4.family=DejaVu Sans Mono -serif.3.7.family=DejaVu LGC Sans -sansserif.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -serif.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -sansserif.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -monospaced.2.1.family=DejaVu Sans Mono -monospaced.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -serif.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -serif.0.7.family=DejaVu Sans -monospaced.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -sansserif.2.5.family=DejaVu Serif -serif.2.6.family=DejaVu Sans -monospaced.1.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -sansserif.0.6.family=DejaVu Math TeX Gyre -sansserif.3.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -serif.1.6.family=DejaVu LGC Sans Mono -monospaced.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Bold.ttf -serif.1.8.family=DejaVu Sans -sansserif.3.8.family=DejaVu Math TeX Gyre -sansserif.3.6.family=DejaVu LGC Sans Mono -sansserif.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf -sansserif.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf -serif.0.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -sansserif.3.4.family=DejaVu Serif -sansserif.3.2.family=DejaVu Sans -serif.2.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf -serif.1.2.family=DejaVu Serif -serif.1.4.family=DejaVu Sans -monospaced.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans.ttf -serif.1.0.family=DejaVu Serif -serif.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -monospaced.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf -monospaced.0.4.family=DejaVu Sans -monospaced.0.2.family=DejaVu LGC Sans -monospaced.0.0.family=DejaVu Sans Mono -serif.3.4.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-BoldOblique.ttf -serif.2.1.family=DejaVu Serif -monospaced.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-Bold.ttf -serif.1.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -sansserif.1.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif.ttf -sansserif.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Bold.ttf -cachedir.0=/var/cache/fontconfig -serif.2.9.family=DejaVu Sans Mono -cachedir.2=/tmp/.fontconfig -sansserif.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-Oblique.ttf -cachedir.1=/tmp/.cache/fontconfig -serif.3.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf -sansserif.0.6.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -fcversion=21301 -sansserif.3.0.family=DejaVu Sans -serif.2.5.family=DejaVu LGC Sans Mono -serif.2.3.family=DejaVu Serif -serif.2.7.family=DejaVu LGC Sans -monospaced.0.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -serif.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -serif.2.length=11 -monospaced.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -serif.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -sansserif.0.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -serif.0.1.family=DejaVu Serif -monospaced.1.1.family=DejaVu Sans Mono -monospaced.1.5.family=DejaVu LGC Serif -serif.0.5.family=DejaVu Sans Mono -serif.3.2.family=DejaVu Serif -serif.3.6.family=DejaVu Sans -serif.0.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -sansserif.1.6.family=DejaVu LGC Sans Mono -serif.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Bold.ttf -sansserif.1.2.family=DejaVu Sans -monospaced.3.11.family=DejaVu Sans -monospaced.1.length=9 -monospaced.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono-Oblique.ttf -sansserif.2.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -sansserif.2.7.family=DejaVu Math TeX Gyre -sansserif.2.3.family=DejaVu Sans -serif.2.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-Oblique.ttf -sansserif.0.0.family=DejaVu Sans -sansserif.1.3.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -sansserif.0.4.family=DejaVu Sans Mono -serif.3.9.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -sansserif.0.5.family=DejaVu Serif -serif.1.9.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.3.10.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.3.7.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -sansserif.1.length=9 -sansserif.3.length=9 -serif.2.8.file=/usr/share/fonts/ttf-dejavu/DejaVuMathTeXGyre.ttf -monospaced.3.11.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -monospaced.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -monospaced.3.6.family=DejaVu Sans -sansserif.0.length=7 -monospaced.3.0.family=DejaVu Sans Mono -monospaced.3.3.family=DejaVu LGC Serif -monospaced.3.1.family=DejaVu Sans Mono -monospaced.3.8.family=DejaVu LGC Serif -sansserif.1.3.family=DejaVu Sans -monospaced.2.0.family=DejaVu Sans Mono -monospaced.2.2.family=DejaVu LGC Serif -sansserif.3.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -monospaced.3.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif-Italic.ttf -serif.1.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -monospaced.1.5.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSerif.ttf -monospaced.2.8.family=DejaVu Sans -sansserif.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -monospaced.1.4.family=DejaVu Sans -serif.2.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-Italic.ttf -serif.2.6.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Oblique.ttf -serif.0.length=8 -monospaced.1.7.family=DejaVu Sans -sansserif.2.2.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -sansserif.2.1.family=DejaVu Sans -serif.3.3.family=DejaVu Serif -serif.0.3.family=DejaVu Serif -sansserif.1.8.family=DejaVu Math TeX Gyre -serif.2.7.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSans-BoldOblique.ttf -serif.3.8.family=DejaVu Sans -serif.3.0.family=DejaVu Serif -serif.2.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSerif-BoldItalic.ttf -sansserif.0.1.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -sansserif.1.0.family=DejaVu Sans -serif.2.10.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -serif.2.2.family=DejaVu Serif -monospaced.2.8.file=/usr/share/fonts/ttf-dejavu/DejaVuSans.ttf -monospaced.0.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -serif.0.5.file=/usr/share/fonts/ttf-dejavu/DejaVuSansMono.ttf -sansserif.3.0.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-BoldOblique.ttf -sansserif.3.6.file=/usr/share/fonts/ttf-dejavu/DejaVuLGCSansMono-BoldOblique.ttf -monospaced.3.length=12 -monospaced.2.5.family=DejaVu Sans -monospaced.1.4.file=/usr/share/fonts/ttf-dejavu/DejaVuSans-Bold.ttf -sansserif.0.2.family=DejaVu Sans From f0eed32519a83e2318673252e110bc61d44e0482 Mon Sep 17 00:00:00 2001 From: blam Date: Tue, 14 Jun 2022 10:43:27 +0200 Subject: [PATCH 377/550] chore: updating codeowners for kubernetes Signed-off-by: blam --- .github/CODEOWNERS | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 96ee5cf23f..3401dc5b2b 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -40,14 +40,16 @@ yarn.lock @backstage/reviewers @backst /plugins/jenkins-backend @backstage/reviewers @timja /plugins/kafka @backstage/reviewers @nirga /plugins/kafka-backend @backstage/reviewers @nirga +/plugins/kubernetes @backstage/reviewers @backstage/warpspeed +/plugins/kubernetes-* @backstage/reviewers @backstage/warpspeed /plugins/newrelic-dashboard @backstage/reviewers @mufaddal7 /plugins/scaffolder-backend-module-rails @backstage/reviewers @angeliski /plugins/scaffolder-backend-module-yeoman @backstage/reviewers @pawelmitka /plugins/search @backstage/reviewers @backstage/techdocs-core /plugins/search-* @backstage/reviewers @backstage/techdocs-core +/plugins/sonarqube @backstage/reviewers @backstage/sda-se-reviewers /plugins/stack-overflow @backstage/reviewers @backstage/techdocs-core /plugins/stack-overflow-backend @backstage/reviewers @backstage/techdocs-core -/plugins/sonarqube @backstage/reviewers @backstage/sda-se-reviewers /plugins/techdocs @backstage/reviewers @backstage/techdocs-core /plugins/techdocs-* @backstage/reviewers @backstage/techdocs-core /tech-insights-backend @backstage/reviewers @xantier @iain-b From a8399074116eeae60d235a2fcf021c7e55cd1b8a Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Tue, 14 Jun 2022 10:49:35 +0200 Subject: [PATCH 378/550] Improve changeset Signed-off-by: Olivier Liechti --- .changeset/great-roses-pump.md | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/.changeset/great-roses-pump.md b/.changeset/great-roses-pump.md index 263254b63c..16a49bd464 100644 --- a/.changeset/great-roses-pump.md +++ b/.changeset/great-roses-pump.md @@ -2,16 +2,22 @@ '@backstage/plugin-catalog': patch --- -Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as 'white'. This was an issue for themes that use a header with a white background. The color of the icon can now be overridden in the theme (PluginCatalogEntityContextMenu > button > color). Example: +Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as `white`. +This was an issue for themes that use a header with a white background. By default, the color of the icon is now `theme.palette.bursts.fontColor`. + +It can now also be overridden in the theme, which is only necessary if the header title, subtitle and three-dots icon need to have different colors. For example: + +```typescript export function createThemeOverrides(theme: BackstageTheme): Overrides { -return { -PluginCatalogEntityContextMenu: { -button: { -color: 'blue', -}, -}, -... -}, -... -} + return { + PluginCatalogEntityContextMenu: { + button: { + color: 'blue', + }, + }, + ... + }, + ... + } +``` From 3500c13a3383fd86db771351462f7234cf2eaa6f Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 10:59:23 +0200 Subject: [PATCH 379/550] scaffolder: add missing changesets for template editor Signed-off-by: Patrik Oldsberg --- .changeset/eleven-mice-collect.md | 5 +++++ .changeset/polite-eagles-invite.md | 7 +++++++ 2 files changed, 12 insertions(+) create mode 100644 .changeset/eleven-mice-collect.md create mode 100644 .changeset/polite-eagles-invite.md diff --git a/.changeset/eleven-mice-collect.md b/.changeset/eleven-mice-collect.md new file mode 100644 index 0000000000..66c4591d8e --- /dev/null +++ b/.changeset/eleven-mice-collect.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': minor +--- + +Added a new `/v2/dry-run` endpoint that allows for a synchronous dry run of a provided template. A `supportsDryRun` option has been added to `createTemplateAction`, which signals whether the action should be executed during dry runs. When enabled, the action context will have the new `isDryRun` property set to signal if the action is being executed during a dry run. diff --git a/.changeset/polite-eagles-invite.md b/.changeset/polite-eagles-invite.md new file mode 100644 index 0000000000..f9c5073a83 --- /dev/null +++ b/.changeset/polite-eagles-invite.md @@ -0,0 +1,7 @@ +--- +'@backstage/plugin-scaffolder': minor +--- + +A new template editor has been added which is accessible via the context menu on the top right hand corner of the Create page. It allows you to load a template from a local directory, edit it with a preview, execute it in dry-run mode, and view the results. Note that the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) must be supported by your browser for this to be available. + +To support the new template editor the `ScaffolderApi` now has an optional `dryRun` method, which is implemented by the default `ScaffolderClient`. From 2e2a82c9d7a9fa69194ed5f2329e3f7bf9d4ffa2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 14 Jun 2022 09:12:05 +0000 Subject: [PATCH 380/550] Version Packages --- .changeset/afraid-mangos-sip.md | 5 - .changeset/angry-jobs-serve.md | 5 - .changeset/beige-apricots-enjoy.md | 5 - .changeset/beige-deers-remember.md | 5 - .changeset/beige-dots-bathe.md | 5 - .changeset/big-bears-fold.md | 6 - .changeset/blue-roses-give.md | 8 - .changeset/calm-timers-wonder.md | 5 - .changeset/cuddly-pillows-press.md | 5 - .changeset/dry-tables-sniff.md | 65 - .changeset/early-hats-rest.md | 5 - .changeset/eight-ducks-beg.md | 5 - .changeset/fair-grapes-joke.md | 46 - .changeset/famous-cups-clap.md | 5 - .changeset/famous-elephants-guess.md | 5 - .changeset/famous-walls-visit.md | 6 - .changeset/fifty-dogs-collect.md | 5 - .changeset/fifty-planes-dream.md | 5 - .changeset/fluffy-candles-learn.md | 5 - .changeset/fluffy-cherries-own.md | 58 - .changeset/fluffy-wasps-chew.md | 5 - .changeset/forty-timers-cheer.md | 6 - .changeset/fresh-items-punch.md | 5 - .changeset/funny-suns-pay.md | 5 - .changeset/giant-birds-wink.md | 7 - .changeset/give-that-wolf-a-banana.md | 29 - .changeset/gold-tables-matter.md | 5 - .changeset/good-squids-rest.md | 5 - .changeset/gorgeous-trees-sparkle.md | 5 - .changeset/green-parents-pay.md | 5 - .changeset/healthy-pets-mix.md | 5 - .changeset/heavy-carrots-cheer.md | 5 - .changeset/hip-pears-shout.md | 5 - .changeset/honest-planets-sin.md | 23 - .changeset/hungry-brooms-wash.md | 5 - .changeset/itchy-avocados-hug.md | 5 - .changeset/khaki-shrimps-tell.md | 5 - .changeset/large-monkeys-visit.md | 5 - .changeset/lazy-zoos-move.md | 64 - .changeset/long-spiders-wave.md | 5 - .changeset/loud-jars-kick.md | 5 - .changeset/loud-walls-itch.md | 5 - .changeset/lovely-gifts-itch.md | 5 - .changeset/many-yaks-occur.md | 5 - .changeset/mean-turtles-reply.md | 5 - .changeset/metal-items-mix.md | 5 - .changeset/modern-pandas-agree.md | 5 - .changeset/moody-worms-rhyme.md | 5 - .changeset/nervous-gorillas-approve.md | 6 - .changeset/nervous-ravens-smash.md | 5 - .changeset/nice-yaks-tie.md | 5 - .changeset/odd-baboons-buy.md | 5 - .changeset/olive-rats-rest.md | 30 - .changeset/plenty-garlics-shop.md | 5 - .changeset/polite-jokes-matter.md | 5 - .changeset/polite-ligers-hang.md | 5 - .changeset/polite-spiders-pay.md | 5 - .changeset/poor-years-develop.md | 5 - .changeset/poor-zebras-design.md | 7 - .changeset/pre.json | 259 -- .changeset/pretty-wolves-whisper.md | 5 - .changeset/quick-ladybugs-try.md | 7 - .changeset/real-beers-type.md | 14 - .changeset/red-apes-tell.md | 17 - .changeset/reject-failed-index-tasks.md | 5 - .changeset/renovate-01d4fe0.md | 6 - .changeset/renovate-0fe5912.md | 5 - .changeset/renovate-126b147.md | 5 - .changeset/renovate-1a41b78.md | 5 - .changeset/renovate-4696848.md | 6 - .changeset/renovate-648a745.md | 6 - .changeset/renovate-7ed704d.md | 5 - .changeset/renovate-9363c67.md | 98 - .changeset/renovate-ad175cc.md | 7 - .changeset/renovate-b61d275.md | 6 - .changeset/renovate-b7ba5e4.md | 5 - .changeset/renovate-c8fbb1e.md | 5 - .changeset/renovate-cd4546d.md | 5 - .changeset/renovate-dd5df61.md | 7 - .changeset/rich-zebras-design.md | 7 - .changeset/right-one-at-the-wrong-time.md | 7 - .changeset/scaffolder-form-context.md | 21 - .changeset/search-eight-hounds-worry.md | 5 - .changeset/search-eyes-of-them-all.md | 7 - .changeset/search-generals-gathered.md | 5 - .changeset/search-martha-sways.md | 5 - .changeset/search-pull-rank.md | 50 - .changeset/search-rank-and-file.md | 5 - .changeset/search-rank-choice-voting.md | 8 - .changeset/search-rankly-my-dear.md | 7 - .changeset/search-wet-icons-shout.md | 5 - .changeset/seven-readers-drop.md | 14 - .changeset/shaggy-bulldogs-collect.md | 5 - .changeset/shaggy-crabs-return.md | 5 - .changeset/shiny-clocks-joke.md | 5 - .changeset/shiny-windows-roll.md | 5 - .changeset/short-jokes-applaud.md | 8 - .changeset/shy-geese-judge.md | 5 - .changeset/silent-plants-guess.md | 5 - .changeset/silly-wombats-flash.md | 5 - .changeset/sixty-plums-kick.md | 5 - .changeset/sixty-poems-drum.md | 5 - .changeset/sixty-rats-talk.md | 10 - .changeset/slimy-elephants-attend.md | 15 - .changeset/slow-apes-appear.md | 10 - .changeset/smart-melons-think.md | 5 - .changeset/spicy-forks-return.md | 26 - .changeset/spotty-goats-look.md | 5 - .changeset/strange-flies-march.md | 5 - .changeset/tame-ears-pretend.md | 5 - .changeset/tasty-snails-boil.md | 5 - .changeset/techdocs-buttons-film.md | 5 - .changeset/techdocs-crabs-retire.md | 9 - .changeset/techdocs-everybody-to-the-limit.md | 5 - .changeset/techdocs-flying-inspection.md | 5 - .changeset/techdocs-paws-study.md | 64 - .changeset/techdocs-swans-check.md | 9 - .changeset/techdocs-tal-jobs-warn.md | 5 - .changeset/techdocs-vans-run.md | 5 - .changeset/techdocs-ways-type.md | 5 - .changeset/techdocs-wolves-carry.md | 8 - .changeset/ten-rocks-smile.md | 5 - .changeset/ten-suits-prove.md | 5 - .changeset/ten-wombats-reply.md | 5 - .changeset/tender-carpets-cry.md | 6 - .changeset/tender-weeks-help.md | 6 - .changeset/tidy-pens-work.md | 5 - .changeset/tricky-hounds-cry.md | 5 - .changeset/twenty-avocados-refuse.md | 5 - .changeset/twenty-mangos-clap.md | 5 - .changeset/unlucky-lies-pretend.md | 5 - .changeset/up-in-space-man.md | 7 - .changeset/violet-apples-repair.md | 5 - .changeset/warm-bats-jump.md | 5 - .changeset/warm-lions-retire.md | 8 - .changeset/wicked-teachers-hide.md | 5 - .changeset/wise-nails-hang.md | 5 - .changeset/yellow-falcons-sin.md | 5 - docs/releases/v1.3.0-changelog.md | 2311 +++++++++++++++++ package.json | 2 +- packages/app-defaults/CHANGELOG.md | 10 + packages/app-defaults/package.json | 14 +- packages/app/CHANGELOG.md | 59 + packages/app/package.json | 110 +- packages/backend-common/CHANGELOG.md | 16 + packages/backend-common/package.json | 10 +- packages/backend-tasks/CHANGELOG.md | 11 + packages/backend-tasks/package.json | 8 +- packages/backend-test-utils/CHANGELOG.md | 9 + packages/backend-test-utils/package.json | 8 +- packages/backend/CHANGELOG.md | 39 + packages/backend/package.json | 68 +- packages/catalog-client/CHANGELOG.md | 9 + packages/catalog-client/package.json | 6 +- packages/catalog-model/CHANGELOG.md | 6 + packages/catalog-model/package.json | 4 +- packages/cli/CHANGELOG.md | 16 + packages/cli/package.json | 18 +- packages/config-loader/CHANGELOG.md | 6 + packages/config-loader/package.json | 2 +- packages/core-app-api/CHANGELOG.md | 9 + packages/core-app-api/package.json | 8 +- packages/core-components/CHANGELOG.md | 24 + packages/core-components/package.json | 10 +- packages/core-plugin-api/CHANGELOG.md | 6 + packages/core-plugin-api/package.json | 8 +- packages/create-app/CHANGELOG.md | 173 ++ packages/create-app/package.json | 2 +- packages/dev-utils/CHANGELOG.md | 14 + packages/dev-utils/package.json | 20 +- packages/integration-react/CHANGELOG.md | 10 + packages/integration-react/package.json | 14 +- packages/integration/CHANGELOG.md | 8 + packages/integration/package.json | 8 +- packages/release-manifests/CHANGELOG.md | 6 + packages/release-manifests/package.json | 4 +- .../techdocs-cli-embedded-app/CHANGELOG.md | 17 + .../techdocs-cli-embedded-app/package.json | 26 +- packages/techdocs-cli/CHANGELOG.md | 11 + packages/techdocs-cli/package.json | 10 +- packages/test-utils/CHANGELOG.md | 11 + packages/test-utils/package.json | 12 +- plugins/adr-backend/CHANGELOG.md | 13 + plugins/adr-backend/package.json | 16 +- plugins/adr-common/CHANGELOG.md | 9 + plugins/adr-common/package.json | 10 +- plugins/adr/CHANGELOG.md | 15 + plugins/adr/package.json | 24 +- plugins/airbrake-backend/CHANGELOG.md | 8 + plugins/airbrake-backend/package.json | 6 +- plugins/airbrake/CHANGELOG.md | 13 + plugins/airbrake/package.json | 22 +- plugins/allure/CHANGELOG.md | 12 + plugins/allure/package.json | 18 +- plugins/analytics-module-ga/CHANGELOG.md | 9 + plugins/analytics-module-ga/package.json | 14 +- plugins/apache-airflow/CHANGELOG.md | 9 + plugins/apache-airflow/package.json | 14 +- plugins/api-docs/CHANGELOG.md | 14 + plugins/api-docs/package.json | 20 +- plugins/app-backend/CHANGELOG.md | 9 + plugins/app-backend/package.json | 10 +- plugins/auth-backend/CHANGELOG.md | 15 + plugins/auth-backend/package.json | 14 +- plugins/auth-node/CHANGELOG.md | 10 + plugins/auth-node/package.json | 6 +- plugins/azure-devops-backend/CHANGELOG.md | 8 + plugins/azure-devops-backend/package.json | 6 +- plugins/azure-devops/CHANGELOG.md | 11 + plugins/azure-devops/package.json | 18 +- plugins/badges-backend/CHANGELOG.md | 9 + plugins/badges-backend/package.json | 10 +- plugins/badges/CHANGELOG.md | 11 + plugins/badges/package.json | 18 +- plugins/bazaar-backend/CHANGELOG.md | 8 + plugins/bazaar-backend/package.json | 8 +- plugins/bazaar/CHANGELOG.md | 13 + plugins/bazaar/package.json | 20 +- plugins/bitbucket-cloud-common/CHANGELOG.md | 17 + plugins/bitbucket-cloud-common/package.json | 6 +- plugins/bitrise/CHANGELOG.md | 11 + plugins/bitrise/package.json | 18 +- .../catalog-backend-module-aws/CHANGELOG.md | 12 + .../catalog-backend-module-aws/package.json | 14 +- .../catalog-backend-module-azure/CHANGELOG.md | 74 + .../catalog-backend-module-azure/package.json | 16 +- .../CHANGELOG.md | 210 ++ .../package.json | 16 +- .../CHANGELOG.md | 16 + .../package.json | 16 +- .../CHANGELOG.md | 13 + .../package.json | 16 +- .../CHANGELOG.md | 13 + .../package.json | 16 +- .../CHANGELOG.md | 85 + .../package.json | 16 +- .../catalog-backend-module-ldap/CHANGELOG.md | 13 + .../catalog-backend-module-ldap/package.json | 10 +- .../CHANGELOG.md | 10 + .../package.json | 14 +- plugins/catalog-backend/CHANGELOG.md | 31 + plugins/catalog-backend/package.json | 28 +- plugins/catalog-common/CHANGELOG.md | 9 + plugins/catalog-common/package.json | 8 +- plugins/catalog-graph/CHANGELOG.md | 11 + plugins/catalog-graph/package.json | 22 +- plugins/catalog-graphql/CHANGELOG.md | 8 + plugins/catalog-graphql/package.json | 8 +- plugins/catalog-import/CHANGELOG.md | 15 + plugins/catalog-import/package.json | 24 +- plugins/catalog-react/CHANGELOG.md | 20 + plugins/catalog-react/package.json | 28 +- plugins/catalog/CHANGELOG.md | 25 + plugins/catalog/package.json | 30 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- plugins/cicd-statistics/CHANGELOG.md | 9 + plugins/cicd-statistics/package.json | 8 +- plugins/circleci/CHANGELOG.md | 11 + plugins/circleci/package.json | 18 +- plugins/cloudbuild/CHANGELOG.md | 11 + plugins/cloudbuild/package.json | 18 +- plugins/code-climate/CHANGELOG.md | 11 + plugins/code-climate/package.json | 16 +- plugins/code-coverage-backend/CHANGELOG.md | 11 + plugins/code-coverage-backend/package.json | 12 +- plugins/code-coverage/CHANGELOG.md | 11 + plugins/code-coverage/package.json | 18 +- plugins/codescene/CHANGELOG.md | 10 + plugins/codescene/package.json | 14 +- plugins/config-schema/CHANGELOG.md | 9 + plugins/config-schema/package.json | 14 +- plugins/cost-insights/CHANGELOG.md | 14 + plugins/cost-insights/package.json | 16 +- plugins/dynatrace/CHANGELOG.md | 14 + plugins/dynatrace/package.json | 16 +- .../example-todo-list-backend/CHANGELOG.md | 8 + .../example-todo-list-backend/package.json | 8 +- plugins/example-todo-list-common/CHANGELOG.md | 7 + plugins/example-todo-list-common/package.json | 12 +- plugins/example-todo-list/CHANGELOG.md | 8 + plugins/example-todo-list/package.json | 14 +- plugins/explore-react/CHANGELOG.md | 8 + plugins/explore-react/package.json | 10 +- plugins/explore/CHANGELOG.md | 12 + plugins/explore/package.json | 20 +- plugins/firehydrant/CHANGELOG.md | 10 + plugins/firehydrant/package.json | 16 +- plugins/fossa/CHANGELOG.md | 11 + plugins/fossa/package.json | 18 +- plugins/gcalendar/CHANGELOG.md | 9 + plugins/gcalendar/package.json | 14 +- plugins/gcp-projects/CHANGELOG.md | 10 + plugins/gcp-projects/package.json | 14 +- plugins/git-release-manager/CHANGELOG.md | 10 + plugins/git-release-manager/package.json | 16 +- plugins/github-actions/CHANGELOG.md | 12 + plugins/github-actions/package.json | 20 +- plugins/github-deployments/CHANGELOG.md | 13 + plugins/github-deployments/package.json | 22 +- .../github-pull-requests-board/CHANGELOG.md | 16 + .../github-pull-requests-board/package.json | 18 +- plugins/gitops-profiles/CHANGELOG.md | 9 + plugins/gitops-profiles/package.json | 14 +- plugins/gocd/CHANGELOG.md | 11 + plugins/gocd/package.json | 18 +- plugins/graphiql/CHANGELOG.md | 10 + plugins/graphiql/package.json | 14 +- plugins/graphql-backend/CHANGELOG.md | 9 + plugins/graphql-backend/package.json | 8 +- plugins/home/CHANGELOG.md | 12 + plugins/home/package.json | 20 +- plugins/ilert/CHANGELOG.md | 11 + plugins/ilert/package.json | 18 +- plugins/jenkins-backend/CHANGELOG.md | 14 + plugins/jenkins-backend/package.json | 16 +- plugins/jenkins-common/CHANGELOG.md | 8 + plugins/jenkins-common/package.json | 8 +- plugins/jenkins/CHANGELOG.md | 12 + plugins/jenkins/package.json | 20 +- plugins/kafka-backend/CHANGELOG.md | 8 + plugins/kafka-backend/package.json | 8 +- plugins/kafka/CHANGELOG.md | 11 + plugins/kafka/package.json | 18 +- plugins/kubernetes-backend/CHANGELOG.md | 15 + plugins/kubernetes-backend/package.json | 10 +- plugins/kubernetes-common/CHANGELOG.md | 11 + plugins/kubernetes-common/package.json | 6 +- plugins/kubernetes/CHANGELOG.md | 16 + plugins/kubernetes/package.json | 20 +- plugins/lighthouse/CHANGELOG.md | 11 + plugins/lighthouse/package.json | 18 +- plugins/newrelic-dashboard/CHANGELOG.md | 10 + plugins/newrelic-dashboard/package.json | 14 +- plugins/newrelic/CHANGELOG.md | 9 + plugins/newrelic/package.json | 14 +- plugins/org/CHANGELOG.md | 34 + plugins/org/package.json | 20 +- plugins/pagerduty/CHANGELOG.md | 16 + plugins/pagerduty/package.json | 18 +- plugins/periskop-backend/CHANGELOG.md | 8 + plugins/periskop-backend/package.json | 6 +- plugins/periskop/CHANGELOG.md | 11 + plugins/periskop/package.json | 18 +- plugins/permission-backend/CHANGELOG.md | 11 + plugins/permission-backend/package.json | 12 +- plugins/permission-common/CHANGELOG.md | 6 + plugins/permission-common/package.json | 4 +- plugins/permission-node/CHANGELOG.md | 14 + plugins/permission-node/package.json | 10 +- plugins/permission-react/CHANGELOG.md | 8 + plugins/permission-react/package.json | 10 +- plugins/proxy-backend/CHANGELOG.md | 7 + plugins/proxy-backend/package.json | 6 +- plugins/rollbar-backend/CHANGELOG.md | 8 + plugins/rollbar-backend/package.json | 8 +- plugins/rollbar/CHANGELOG.md | 11 + plugins/rollbar/package.json | 18 +- .../CHANGELOG.md | 10 + .../package.json | 10 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- .../CHANGELOG.md | 7 + .../package.json | 6 +- plugins/scaffolder-backend/CHANGELOG.md | 45 + plugins/scaffolder-backend/package.json | 18 +- plugins/scaffolder-common/CHANGELOG.md | 7 + plugins/scaffolder-common/package.json | 6 +- plugins/scaffolder/CHANGELOG.md | 45 + plugins/scaffolder/package.json | 32 +- .../CHANGELOG.md | 22 + .../package.json | 10 +- plugins/search-backend-module-pg/CHANGELOG.md | 10 + plugins/search-backend-module-pg/package.json | 12 +- plugins/search-backend-node/CHANGELOG.md | 18 + plugins/search-backend-node/package.json | 14 +- plugins/search-backend/CHANGELOG.md | 14 + plugins/search-backend/package.json | 16 +- plugins/search-common/CHANGELOG.md | 9 + plugins/search-common/package.json | 6 +- plugins/search-react/CHANGELOG.md | 10 + plugins/search-react/package.json | 12 +- plugins/search/CHANGELOG.md | 20 + plugins/search/package.json | 22 +- plugins/sentry/CHANGELOG.md | 12 + plugins/sentry/package.json | 18 +- plugins/shortcuts/CHANGELOG.md | 9 + plugins/shortcuts/package.json | 14 +- plugins/sonarqube/CHANGELOG.md | 12 + plugins/sonarqube/package.json | 18 +- plugins/splunk-on-call/CHANGELOG.md | 11 + plugins/splunk-on-call/package.json | 18 +- plugins/stack-overflow-backend/CHANGELOG.md | 7 + plugins/stack-overflow-backend/package.json | 4 +- plugins/stack-overflow/CHANGELOG.md | 11 + plugins/stack-overflow/package.json | 18 +- .../CHANGELOG.md | 8 + .../package.json | 8 +- plugins/tech-insights-backend/CHANGELOG.md | 16 + plugins/tech-insights-backend/package.json | 16 +- plugins/tech-insights-node/CHANGELOG.md | 11 + plugins/tech-insights-node/package.json | 6 +- plugins/tech-insights/CHANGELOG.md | 12 + plugins/tech-insights/package.json | 18 +- plugins/tech-radar/CHANGELOG.md | 11 + plugins/tech-radar/package.json | 14 +- .../techdocs-addons-test-utils/CHANGELOG.md | 17 + .../techdocs-addons-test-utils/package.json | 24 +- plugins/techdocs-backend/CHANGELOG.md | 77 + plugins/techdocs-backend/package.json | 24 +- .../CHANGELOG.md | 13 + .../package.json | 22 +- plugins/techdocs-node/CHANGELOG.md | 12 + plugins/techdocs-node/package.json | 12 +- plugins/techdocs-react/CHANGELOG.md | 14 + plugins/techdocs-react/package.json | 10 +- plugins/techdocs/CHANGELOG.md | 39 + plugins/techdocs/package.json | 28 +- plugins/todo-backend/CHANGELOG.md | 11 + plugins/todo-backend/package.json | 12 +- plugins/todo/CHANGELOG.md | 11 + plugins/todo/package.json | 18 +- plugins/user-settings/CHANGELOG.md | 11 + plugins/user-settings/package.json | 14 +- plugins/vault-backend/CHANGELOG.md | 14 + plugins/vault-backend/package.json | 10 +- plugins/vault/CHANGELOG.md | 15 + plugins/vault/package.json | 18 +- plugins/xcmetrics/CHANGELOG.md | 9 + plugins/xcmetrics/package.json | 14 +- yarn.lock | 370 +-- 431 files changed, 5900 insertions(+), 2965 deletions(-) delete mode 100644 .changeset/afraid-mangos-sip.md delete mode 100644 .changeset/angry-jobs-serve.md delete mode 100644 .changeset/beige-apricots-enjoy.md delete mode 100644 .changeset/beige-deers-remember.md delete mode 100644 .changeset/beige-dots-bathe.md delete mode 100644 .changeset/big-bears-fold.md delete mode 100644 .changeset/blue-roses-give.md delete mode 100644 .changeset/calm-timers-wonder.md delete mode 100644 .changeset/cuddly-pillows-press.md delete mode 100644 .changeset/dry-tables-sniff.md delete mode 100644 .changeset/early-hats-rest.md delete mode 100644 .changeset/eight-ducks-beg.md delete mode 100644 .changeset/fair-grapes-joke.md delete mode 100644 .changeset/famous-cups-clap.md delete mode 100644 .changeset/famous-elephants-guess.md delete mode 100644 .changeset/famous-walls-visit.md delete mode 100644 .changeset/fifty-dogs-collect.md delete mode 100644 .changeset/fifty-planes-dream.md delete mode 100644 .changeset/fluffy-candles-learn.md delete mode 100644 .changeset/fluffy-cherries-own.md delete mode 100644 .changeset/fluffy-wasps-chew.md delete mode 100644 .changeset/forty-timers-cheer.md delete mode 100644 .changeset/fresh-items-punch.md delete mode 100644 .changeset/funny-suns-pay.md delete mode 100644 .changeset/giant-birds-wink.md delete mode 100644 .changeset/give-that-wolf-a-banana.md delete mode 100644 .changeset/gold-tables-matter.md delete mode 100644 .changeset/good-squids-rest.md delete mode 100644 .changeset/gorgeous-trees-sparkle.md delete mode 100644 .changeset/green-parents-pay.md delete mode 100644 .changeset/healthy-pets-mix.md delete mode 100644 .changeset/heavy-carrots-cheer.md delete mode 100644 .changeset/hip-pears-shout.md delete mode 100644 .changeset/honest-planets-sin.md delete mode 100644 .changeset/hungry-brooms-wash.md delete mode 100644 .changeset/itchy-avocados-hug.md delete mode 100644 .changeset/khaki-shrimps-tell.md delete mode 100644 .changeset/large-monkeys-visit.md delete mode 100644 .changeset/lazy-zoos-move.md delete mode 100644 .changeset/long-spiders-wave.md delete mode 100644 .changeset/loud-jars-kick.md delete mode 100644 .changeset/loud-walls-itch.md delete mode 100644 .changeset/lovely-gifts-itch.md delete mode 100644 .changeset/many-yaks-occur.md delete mode 100644 .changeset/mean-turtles-reply.md delete mode 100644 .changeset/metal-items-mix.md delete mode 100644 .changeset/modern-pandas-agree.md delete mode 100644 .changeset/moody-worms-rhyme.md delete mode 100644 .changeset/nervous-gorillas-approve.md delete mode 100644 .changeset/nervous-ravens-smash.md delete mode 100644 .changeset/nice-yaks-tie.md delete mode 100644 .changeset/odd-baboons-buy.md delete mode 100644 .changeset/olive-rats-rest.md delete mode 100644 .changeset/plenty-garlics-shop.md delete mode 100644 .changeset/polite-jokes-matter.md delete mode 100644 .changeset/polite-ligers-hang.md delete mode 100644 .changeset/polite-spiders-pay.md delete mode 100644 .changeset/poor-years-develop.md delete mode 100644 .changeset/poor-zebras-design.md delete mode 100644 .changeset/pre.json delete mode 100644 .changeset/pretty-wolves-whisper.md delete mode 100644 .changeset/quick-ladybugs-try.md delete mode 100644 .changeset/real-beers-type.md delete mode 100644 .changeset/red-apes-tell.md delete mode 100644 .changeset/reject-failed-index-tasks.md delete mode 100644 .changeset/renovate-01d4fe0.md delete mode 100644 .changeset/renovate-0fe5912.md delete mode 100644 .changeset/renovate-126b147.md delete mode 100644 .changeset/renovate-1a41b78.md delete mode 100644 .changeset/renovate-4696848.md delete mode 100644 .changeset/renovate-648a745.md delete mode 100644 .changeset/renovate-7ed704d.md delete mode 100644 .changeset/renovate-9363c67.md delete mode 100644 .changeset/renovate-ad175cc.md delete mode 100644 .changeset/renovate-b61d275.md delete mode 100644 .changeset/renovate-b7ba5e4.md delete mode 100644 .changeset/renovate-c8fbb1e.md delete mode 100644 .changeset/renovate-cd4546d.md delete mode 100644 .changeset/renovate-dd5df61.md delete mode 100644 .changeset/rich-zebras-design.md delete mode 100644 .changeset/right-one-at-the-wrong-time.md delete mode 100644 .changeset/scaffolder-form-context.md delete mode 100644 .changeset/search-eight-hounds-worry.md delete mode 100644 .changeset/search-eyes-of-them-all.md delete mode 100644 .changeset/search-generals-gathered.md delete mode 100644 .changeset/search-martha-sways.md delete mode 100644 .changeset/search-pull-rank.md delete mode 100644 .changeset/search-rank-and-file.md delete mode 100644 .changeset/search-rank-choice-voting.md delete mode 100644 .changeset/search-rankly-my-dear.md delete mode 100644 .changeset/search-wet-icons-shout.md delete mode 100644 .changeset/seven-readers-drop.md delete mode 100644 .changeset/shaggy-bulldogs-collect.md delete mode 100644 .changeset/shaggy-crabs-return.md delete mode 100644 .changeset/shiny-clocks-joke.md delete mode 100644 .changeset/shiny-windows-roll.md delete mode 100644 .changeset/short-jokes-applaud.md delete mode 100644 .changeset/shy-geese-judge.md delete mode 100644 .changeset/silent-plants-guess.md delete mode 100644 .changeset/silly-wombats-flash.md delete mode 100644 .changeset/sixty-plums-kick.md delete mode 100644 .changeset/sixty-poems-drum.md delete mode 100644 .changeset/sixty-rats-talk.md delete mode 100644 .changeset/slimy-elephants-attend.md delete mode 100644 .changeset/slow-apes-appear.md delete mode 100644 .changeset/smart-melons-think.md delete mode 100644 .changeset/spicy-forks-return.md delete mode 100644 .changeset/spotty-goats-look.md delete mode 100644 .changeset/strange-flies-march.md delete mode 100644 .changeset/tame-ears-pretend.md delete mode 100644 .changeset/tasty-snails-boil.md delete mode 100644 .changeset/techdocs-buttons-film.md delete mode 100644 .changeset/techdocs-crabs-retire.md delete mode 100644 .changeset/techdocs-everybody-to-the-limit.md delete mode 100644 .changeset/techdocs-flying-inspection.md delete mode 100644 .changeset/techdocs-paws-study.md delete mode 100644 .changeset/techdocs-swans-check.md delete mode 100644 .changeset/techdocs-tal-jobs-warn.md delete mode 100644 .changeset/techdocs-vans-run.md delete mode 100644 .changeset/techdocs-ways-type.md delete mode 100644 .changeset/techdocs-wolves-carry.md delete mode 100644 .changeset/ten-rocks-smile.md delete mode 100644 .changeset/ten-suits-prove.md delete mode 100644 .changeset/ten-wombats-reply.md delete mode 100644 .changeset/tender-carpets-cry.md delete mode 100644 .changeset/tender-weeks-help.md delete mode 100644 .changeset/tidy-pens-work.md delete mode 100644 .changeset/tricky-hounds-cry.md delete mode 100644 .changeset/twenty-avocados-refuse.md delete mode 100644 .changeset/twenty-mangos-clap.md delete mode 100644 .changeset/unlucky-lies-pretend.md delete mode 100644 .changeset/up-in-space-man.md delete mode 100644 .changeset/violet-apples-repair.md delete mode 100644 .changeset/warm-bats-jump.md delete mode 100644 .changeset/warm-lions-retire.md delete mode 100644 .changeset/wicked-teachers-hide.md delete mode 100644 .changeset/wise-nails-hang.md delete mode 100644 .changeset/yellow-falcons-sin.md create mode 100644 docs/releases/v1.3.0-changelog.md create mode 100644 plugins/dynatrace/CHANGELOG.md create mode 100644 plugins/vault-backend/CHANGELOG.md create mode 100644 plugins/vault/CHANGELOG.md diff --git a/.changeset/afraid-mangos-sip.md b/.changeset/afraid-mangos-sip.md deleted file mode 100644 index 5cf1b72dc5..0000000000 --- a/.changeset/afraid-mangos-sip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes': patch ---- - -Add support to fetch data for Stateful Sets and display an accordion in the same way as with Deployments diff --git a/.changeset/angry-jobs-serve.md b/.changeset/angry-jobs-serve.md deleted file mode 100644 index ec2976dccd..0000000000 --- a/.changeset/angry-jobs-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-cost-insights': patch ---- - -In the README, a old path of the `sidebar` was updated to the current path. diff --git a/.changeset/beige-apricots-enjoy.md b/.changeset/beige-apricots-enjoy.md deleted file mode 100644 index bd1f932454..0000000000 --- a/.changeset/beige-apricots-enjoy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-tech-insights-backend': patch ---- - -Updated tech-insights fetch/latest endpoint to return the actual latest row based on the timestamp diff --git a/.changeset/beige-deers-remember.md b/.changeset/beige-deers-remember.md deleted file mode 100644 index 4fcba4f0c6..0000000000 --- a/.changeset/beige-deers-remember.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-cost-insights': patch ---- - -Add missing `export` in configuration schema. diff --git a/.changeset/beige-dots-bathe.md b/.changeset/beige-dots-bathe.md deleted file mode 100644 index 3d8f34f1db..0000000000 --- a/.changeset/beige-dots-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder': patch ---- - -Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. diff --git a/.changeset/big-bears-fold.md b/.changeset/big-bears-fold.md deleted file mode 100644 index b3bf51787a..0000000000 --- a/.changeset/big-bears-fold.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-catalog': minor -'@backstage/plugin-techdocs': minor ---- - -Add an optional icon to the Catalog and TechDocs search results diff --git a/.changeset/blue-roses-give.md b/.changeset/blue-roses-give.md deleted file mode 100644 index 2479c33e46..0000000000 --- a/.changeset/blue-roses-give.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@backstage/plugin-catalog-react': patch ---- - -Accessibility updates: - -- Wrapped the `EntityLifecyclePicker`, `EntityOwnerPicker`, `EntityTagPicker`, in `label` elements -- Changed group name `Typography` component to `span` (from default `h6`), added `aria-label` to the `List` component, and `role` of `menuitem` to the container of the `MenuItem` component diff --git a/.changeset/calm-timers-wonder.md b/.changeset/calm-timers-wonder.md deleted file mode 100644 index 516e2ae9ce..0000000000 --- a/.changeset/calm-timers-wonder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. diff --git a/.changeset/cuddly-pillows-press.md b/.changeset/cuddly-pillows-press.md deleted file mode 100644 index 93980456aa..0000000000 --- a/.changeset/cuddly-pillows-press.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend': patch ---- - -Disallow anything but `'url'` locations from being registered via the location service. diff --git a/.changeset/dry-tables-sniff.md b/.changeset/dry-tables-sniff.md deleted file mode 100644 index 3c938935d6..0000000000 --- a/.changeset/dry-tables-sniff.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-azure': patch ---- - -Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. - -In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply -the following changes: - -**Before:** - -```yaml -# app-config.yaml - -catalog: - locations: - - type: azure-discovery - target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml -``` - -```ts -/* packages/backend/src/plugins/catalog.ts */ - -import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; - -const builder = await CatalogBuilder.create(env); -/** ... other processors ... */ -builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); -``` - -**After:** - -```yaml -# app-config.yaml - -catalog: - providers: - azureDevOps: - anyProviderId: - host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com - organization: myorg # For on-premise this would be your Collection - project: myproject - repository: service-* - path: /catalog-info.yaml -``` - -```ts -/* packages/backend/src/plugins/catalog.ts */ - -import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; - -const builder = await CatalogBuilder.create(env); -/** ... other processors and/or providers ... */ -builder.addEntityProvider( - AzureDevOpsEntityProvider.fromConfig(env.config, { - logger: env.logger, - schedule: env.scheduler.createScheduledTaskRunner({ - frequency: { minutes: 30 }, - timeout: { minutes: 3 }, - }), - }), -); -``` - -Visit [https://backstage.io/docs/integrations/azure/discovery](https://backstage.io/docs/integrations/azure/discovery) for more details and options on configuration. diff --git a/.changeset/early-hats-rest.md b/.changeset/early-hats-rest.md deleted file mode 100644 index dfe685ea77..0000000000 --- a/.changeset/early-hats-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-user-settings': patch ---- - -Added new `` to show the result of the `identityApi.getBackstageIdentity()` call to help debug ownership issues. The new card has been added to the user settings page. diff --git a/.changeset/eight-ducks-beg.md b/.changeset/eight-ducks-beg.md deleted file mode 100644 index ed61c305b2..0000000000 --- a/.changeset/eight-ducks-beg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-pagerduty': minor ---- - -**Breaking**: Use identityApi to provide auth token for pagerduty API calls. diff --git a/.changeset/fair-grapes-joke.md b/.changeset/fair-grapes-joke.md deleted file mode 100644 index 8ab6516833..0000000000 --- a/.changeset/fair-grapes-joke.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Register `TechDocs` addons on catalog entity pages, follow the steps below to add them manually: - -```diff -// packages/app/src/components/catalog/EntityPage.tsx - -+ import { TechDocsAddons } from '@backstage/plugin-techdocs-react'; -+ import { -+ ReportIssue, -+ } from '@backstage/plugin-techdocs-module-addons-contrib'; - -+ const techdocsContent = ( -+ -+ -+ -+ -+ -+ ); - -const defaultEntityPage = ( - ... - -+ {techdocsContent} - - ... -); - -const serviceEntityPage = ( - ... - -+ {techdocsContent} - - ... -); - -const websiteEntityPage = ( - ... - -+ {techdocsContent} - - ... -); -``` diff --git a/.changeset/famous-cups-clap.md b/.changeset/famous-cups-clap.md deleted file mode 100644 index 206aec9177..0000000000 --- a/.changeset/famous-cups-clap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-common': patch ---- - -`@beta` exports now replaced with `@public` exports diff --git a/.changeset/famous-elephants-guess.md b/.changeset/famous-elephants-guess.md deleted file mode 100644 index 62f5159385..0000000000 --- a/.changeset/famous-elephants-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Removed peer dependencies, as they are no longer needed. diff --git a/.changeset/famous-walls-visit.md b/.changeset/famous-walls-visit.md deleted file mode 100644 index b57702a392..0000000000 --- a/.changeset/famous-walls-visit.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-search': patch -'@backstage/plugin-search-react': patch ---- - -Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. diff --git a/.changeset/fifty-dogs-collect.md b/.changeset/fifty-dogs-collect.md deleted file mode 100644 index ac04d6b930..0000000000 --- a/.changeset/fifty-dogs-collect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-sentry': patch ---- - -Exported `isSentryAvailable` which can be used to determine if sentry is available. diff --git a/.changeset/fifty-planes-dream.md b/.changeset/fifty-planes-dream.md deleted file mode 100644 index 655cd42dc1..0000000000 --- a/.changeset/fifty-planes-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-backend': patch ---- - -Increased key field size for signing_keys table to account for larger signature keys diff --git a/.changeset/fluffy-candles-learn.md b/.changeset/fluffy-candles-learn.md deleted file mode 100644 index 6fe3f1e09b..0000000000 --- a/.changeset/fluffy-candles-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog': patch ---- - -Updates the `isKind`, `ìsComponentType`, and `isNamespace` to allow an array of possible values diff --git a/.changeset/fluffy-cherries-own.md b/.changeset/fluffy-cherries-own.md deleted file mode 100644 index 93d7272b14..0000000000 --- a/.changeset/fluffy-cherries-own.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-bitbucket-cloud': minor ---- - -Add new plugin `catalog-backend-module-bitbucket-cloud` with `BitbucketCloudEntityProvider`. - -This entity provider is an alternative/replacement to the `BitbucketDiscoveryProcessor` **_(for Bitbucket Cloud only!)_**. -It replaces use cases using `search=true` and should be powerful enough as a complete replacement. - -If any feature for Bitbucket Cloud is missing and preventing you from switching, please raise an issue. - -**Before:** - -```typescript -// packages/backend/src/plugins/catalog.ts - -builder.addProcessor( - BitbucketDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), -); -``` - -```yaml -# app-config.yaml - -catalog: - locations: - - type: bitbucket-discovery - target: 'https://bitbucket.org/workspaces/workspace-name/projects/apis-*/repos/service-*?search=true&catalogPath=/catalog-info.yaml' -``` - -**After:** - -```typescript -// packages/backend/src/plugins/catalog.ts -builder.addEntityProvider( - BitbucketCloudEntityProvider.fromConfig(env.config, { - logger: env.logger, - schedule: env.scheduler.createScheduledTaskRunner({ - frequency: { minutes: 30 }, - timeout: { minutes: 3 }, - }), - }), -); -``` - -```yaml -# app-config.yaml - -catalog: - providers: - bitbucketCloud: - yourProviderId: # identifies your ingested dataset - catalogPath: /catalog-info.yaml # default value - filters: # optional - projectKey: '^apis-.*$' # optional; RegExp - repoSlug: '^service-.*$' # optional; RegExp - workspace: workspace-name -``` diff --git a/.changeset/fluffy-wasps-chew.md b/.changeset/fluffy-wasps-chew.md deleted file mode 100644 index b23a4f8181..0000000000 --- a/.changeset/fluffy-wasps-chew.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes': patch ---- - -show request/limit CPU and Memory on the UI diff --git a/.changeset/forty-timers-cheer.md b/.changeset/forty-timers-cheer.md deleted file mode 100644 index 9fba60e6ed..0000000000 --- a/.changeset/forty-timers-cheer.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': minor ---- - -**DEPRECATION**: The `projectid` input parameters to the `publish:gitlab:merge-request`, it's no longer required as it can be decoded from the `repoUrl` input parameter. -**DEPRECATION**: The `projectid` output of the action in favour of `projectPath` diff --git a/.changeset/fresh-items-punch.md b/.changeset/fresh-items-punch.md deleted file mode 100644 index 1893dc7661..0000000000 --- a/.changeset/fresh-items-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Updated Lockfile to support new versions of yarn as well as the legacy 1 version diff --git a/.changeset/funny-suns-pay.md b/.changeset/funny-suns-pay.md deleted file mode 100644 index b736d34cc1..0000000000 --- a/.changeset/funny-suns-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/backend-tasks': patch ---- - -Allow tasks that fail to retry on a loop emitting a warning log every time it fails with the amount of attempts it has diff --git a/.changeset/giant-birds-wink.md b/.changeset/giant-birds-wink.md deleted file mode 100644 index c3dc2446b2..0000000000 --- a/.changeset/giant-birds-wink.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-permission-node': patch ---- - -Added a new endpoint for aggregating permission metadata from a plugin backend: `/.well-known/backstage/permissions/metadata` - -By default, the metadata endpoint will return information about the permission rules supported by the plugin. Plugin authors can also provide an optional `permissions` parameter to `createPermissionIntegrationRouter`. If provided, these `Permission` objects will be included in the metadata returned by this endpoint. The `permissions` parameter will eventually be required in a future breaking change. diff --git a/.changeset/give-that-wolf-a-banana.md b/.changeset/give-that-wolf-a-banana.md deleted file mode 100644 index a9e99782ad..0000000000 --- a/.changeset/give-that-wolf-a-banana.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Use of `SidebarContext` has been deprecated and will be removed in a future release. Instead, `useSidebarOpenState()` should be used to consume the context and `` should be used to provide it. - -To prepare your app, update `packages/app/src/components/Root/Root.tsx` as follows: - -```diff -import { - Sidebar, - sidebarConfig, -- SidebarContext - SidebarDivider, - // ... - SidebarSpace, -+ useSidebarOpenState, -} from '@backstage/core-components'; - -// ... - -const SidebarLogo = () => { - const classes = useSidebarLogoStyles(); -- const { isOpen } = useContext(SidebarContext); -+ const { isOpen } = useSidebarOpenState(); - - // ... -}; -``` diff --git a/.changeset/gold-tables-matter.md b/.changeset/gold-tables-matter.md deleted file mode 100644 index ee5f4e5af3..0000000000 --- a/.changeset/gold-tables-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': minor ---- - -A new scaffolder action has been added: `gerrit:publish` diff --git a/.changeset/good-squids-rest.md b/.changeset/good-squids-rest.md deleted file mode 100644 index dc9f9129e2..0000000000 --- a/.changeset/good-squids-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-cost-insights': patch ---- - -Fix broken app-config in the example in the README diff --git a/.changeset/gorgeous-trees-sparkle.md b/.changeset/gorgeous-trees-sparkle.md deleted file mode 100644 index 962cc22021..0000000000 --- a/.changeset/gorgeous-trees-sparkle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-react': patch ---- - -Table component no longer has drag and drop columns by default diff --git a/.changeset/green-parents-pay.md b/.changeset/green-parents-pay.md deleted file mode 100644 index 15ceab937d..0000000000 --- a/.changeset/green-parents-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Improved the `create-github-app` permissions selection prompt by converting it into a multi-select with clearer descriptions. The `members` permission is now also included in the list which is required for ingesting user data into the catalog. diff --git a/.changeset/healthy-pets-mix.md b/.changeset/healthy-pets-mix.md deleted file mode 100644 index 44075b6a76..0000000000 --- a/.changeset/healthy-pets-mix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes-backend': patch ---- - -cache and refresh Azure tokens to avoid excessive calls to Azure Identity diff --git a/.changeset/heavy-carrots-cheer.md b/.changeset/heavy-carrots-cheer.md deleted file mode 100644 index 484e04d8bd..0000000000 --- a/.changeset/heavy-carrots-cheer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-tech-insights': patch ---- - -Export TechInsightsClient so it may be extended by custom implementations diff --git a/.changeset/hip-pears-shout.md b/.changeset/hip-pears-shout.md deleted file mode 100644 index 61cb7c52a0..0000000000 --- a/.changeset/hip-pears-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-common': patch ---- - -Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` diff --git a/.changeset/honest-planets-sin.md b/.changeset/honest-planets-sin.md deleted file mode 100644 index bb55e881c6..0000000000 --- a/.changeset/honest-planets-sin.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': minor ---- - -Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. -This fix required changing the way parameters are passed to the action. -In order to add a team as collaborator, now you must use the `team` field instead of `username`. -In order to add a user as collaborator, you must use the `user` field. - -It's still possible to use the field `username` but is deprecated in favor of `team`. - -```yaml -- id: publish - name: Publish - action: publish:github - input: - repoUrl: ... - collaborators: - - access: ... - team: my_team - - access: ... - user: my_username -``` diff --git a/.changeset/hungry-brooms-wash.md b/.changeset/hungry-brooms-wash.md deleted file mode 100644 index 307b91ce15..0000000000 --- a/.changeset/hungry-brooms-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-pagerduty': patch ---- - -Fix alert that was not showing after creating an incident. diff --git a/.changeset/itchy-avocados-hug.md b/.changeset/itchy-avocados-hug.md deleted file mode 100644 index 1ce61d405e..0000000000 --- a/.changeset/itchy-avocados-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/backend-common': patch ---- - -Applied the `luxon` dependency fix from the `0.13.4` patch release. diff --git a/.changeset/khaki-shrimps-tell.md b/.changeset/khaki-shrimps-tell.md deleted file mode 100644 index cad03e2ae5..0000000000 --- a/.changeset/khaki-shrimps-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes': patch ---- - -ability to configure refresh interval on Kubernetes tab diff --git a/.changeset/large-monkeys-visit.md b/.changeset/large-monkeys-visit.md deleted file mode 100644 index 1ecaadb890..0000000000 --- a/.changeset/large-monkeys-visit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-cost-insights': patch ---- - -Fixed css to show large tooltips on cost overview graph diff --git a/.changeset/lazy-zoos-move.md b/.changeset/lazy-zoos-move.md deleted file mode 100644 index 69bd517438..0000000000 --- a/.changeset/lazy-zoos-move.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-gitlab': patch ---- - -Add a new provider `GitlabDiscoveryEntityProvider` as replacement for `GitlabDiscoveryProcessor` - -In order to migrate from the `GitlabDiscoveryProcessor` you need to apply -the following changes: - -**Before:** - -```yaml -# app-config.yaml - -catalog: - locations: - - type: gitlab-discovery - target: https://company.gitlab.com/prefix/*/catalog-info.yaml -``` - -```ts -/* packages/backend/src/plugins/catalog.ts */ - -import { GitlabDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-gitlab'; - -const builder = await CatalogBuilder.create(env); -/** ... other processors ... */ -builder.addProcessor( - GitLabDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), -); -``` - -**After:** - -```yaml -# app-config.yaml - -catalog: - providers: - gitlab: - yourProviderId: # identifies your dataset / provider independent of config changes - host: gitlab-host # Identifies one of the hosts set up in the integrations - branch: main # Optional. Uses `master` as default - group: example-group # Group and subgroup (if needed) to look for repositories - entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` -``` - -```ts -/* packages/backend/src/plugins/catalog.ts */ - -import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-gitlab'; - -const builder = await CatalogBuilder.create(env); -/** ... other processors and/or providers ... */ -builder.addEntityProvider( - ...GitlabDiscoveryEntityProvider.fromConfig(env.config, { - logger: env.logger, - schedule: env.scheduler.createScheduledTaskRunner({ - frequency: { minutes: 30 }, - timeout: { minutes: 3 }, - }), - }), -); -``` diff --git a/.changeset/long-spiders-wave.md b/.changeset/long-spiders-wave.md deleted file mode 100644 index 8c836621db..0000000000 --- a/.changeset/long-spiders-wave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-gitlab': patch ---- - -The `last_activity_after` timestamp is now being omitted when querying the GitLab API for the first time. diff --git a/.changeset/loud-jars-kick.md b/.changeset/loud-jars-kick.md deleted file mode 100644 index b53006f7f9..0000000000 --- a/.changeset/loud-jars-kick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-allure': patch ---- - -Add export for `isAllureReportAvailable` and `ALLURE_PROJECT_ID_ANNOTATION` so it can be used outside of plugin diff --git a/.changeset/loud-walls-itch.md b/.changeset/loud-walls-itch.md deleted file mode 100644 index eff8c8b5c6..0000000000 --- a/.changeset/loud-walls-itch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Updated the `--version` flag to output the version of the current backstage release instead of the version of create-app. diff --git a/.changeset/lovely-gifts-itch.md b/.changeset/lovely-gifts-itch.md deleted file mode 100644 index 3fd1f5a38f..0000000000 --- a/.changeset/lovely-gifts-itch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -Fix EntityPage tab scrolling overflow bug on Firefox diff --git a/.changeset/many-yaks-occur.md b/.changeset/many-yaks-occur.md deleted file mode 100644 index d8f617bf11..0000000000 --- a/.changeset/many-yaks-occur.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-dynatrace': minor ---- - -Adds Dynatrace plugin diff --git a/.changeset/mean-turtles-reply.md b/.changeset/mean-turtles-reply.md deleted file mode 100644 index f3b21989d1..0000000000 --- a/.changeset/mean-turtles-reply.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -Fix issue where right arrow icon was incorrectly added to side bar items without a sub-menu diff --git a/.changeset/metal-items-mix.md b/.changeset/metal-items-mix.md deleted file mode 100644 index 6299e479e6..0000000000 --- a/.changeset/metal-items-mix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/backend-common': minor ---- - -**BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. diff --git a/.changeset/modern-pandas-agree.md b/.changeset/modern-pandas-agree.md deleted file mode 100644 index 9c3f95aef2..0000000000 --- a/.changeset/modern-pandas-agree.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-github': patch ---- - -Adds an edit URL to the GitHub Teams Group entities. diff --git a/.changeset/moody-worms-rhyme.md b/.changeset/moody-worms-rhyme.md deleted file mode 100644 index 39517a6416..0000000000 --- a/.changeset/moody-worms-rhyme.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-github-pull-requests-board': minor ---- - -Add Github Pull Requests board plugin diff --git a/.changeset/nervous-gorillas-approve.md b/.changeset/nervous-gorillas-approve.md deleted file mode 100644 index 8c0d742b7b..0000000000 --- a/.changeset/nervous-gorillas-approve.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-aws': patch -'@backstage/plugin-catalog-backend-module-gerrit': patch ---- - -Inline config interfaces diff --git a/.changeset/nervous-ravens-smash.md b/.changeset/nervous-ravens-smash.md deleted file mode 100644 index b9d7546d44..0000000000 --- a/.changeset/nervous-ravens-smash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend': patch ---- - -`RouterOptions` and `createRouter` now marked as public exports diff --git a/.changeset/nice-yaks-tie.md b/.changeset/nice-yaks-tie.md deleted file mode 100644 index e51ba432fa..0000000000 --- a/.changeset/nice-yaks-tie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Updated `app-config.production.yaml` to specify an empty list of catalog locations. This is done to prevent example locations stored in `app-config.yaml` from being loaded as these are examples. diff --git a/.changeset/odd-baboons-buy.md b/.changeset/odd-baboons-buy.md deleted file mode 100644 index 3a7f5584b4..0000000000 --- a/.changeset/odd-baboons-buy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/backend-common': patch ---- - -Applied the AWS S3 reading patch from the `0.13.5` patch release. diff --git a/.changeset/olive-rats-rest.md b/.changeset/olive-rats-rest.md deleted file mode 100644 index 46e76f7c17..0000000000 --- a/.changeset/olive-rats-rest.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Accessibility updates: - -- Added `aria-label` to the sidebar Logo link. To enable this for an existing app, please make the following changes: - -`packages/app/src/components/Root/Root.tsx` - -```diff -const SidebarLogo = () => { - const classes = useSidebarLogoStyles(); - const { isOpen } = useContext(SidebarContext); - - return ( -
- - {isOpen ? : } - -
- ); -}; -``` diff --git a/.changeset/plenty-garlics-shop.md b/.changeset/plenty-garlics-shop.md deleted file mode 100644 index cccbae0109..0000000000 --- a/.changeset/plenty-garlics-shop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes-common': minor ---- - -Add support to fetch data for Stateful Sets diff --git a/.changeset/polite-jokes-matter.md b/.changeset/polite-jokes-matter.md deleted file mode 100644 index d317b79a7d..0000000000 --- a/.changeset/polite-jokes-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-node': patch ---- - -Address corner cases where the key store was not being created at startup diff --git a/.changeset/polite-ligers-hang.md b/.changeset/polite-ligers-hang.md deleted file mode 100644 index 182822fc6c..0000000000 --- a/.changeset/polite-ligers-hang.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Use entity title as label in `TechDocsReaderPageHeader` if available diff --git a/.changeset/polite-spiders-pay.md b/.changeset/polite-spiders-pay.md deleted file mode 100644 index 41528aff6b..0000000000 --- a/.changeset/polite-spiders-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-backend': patch ---- - -Added configurable algorithm field for TokenFactory diff --git a/.changeset/poor-years-develop.md b/.changeset/poor-years-develop.md deleted file mode 100644 index aee42bfc48..0000000000 --- a/.changeset/poor-years-develop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/integration': patch ---- - -Gerrit Integration: Handle absolute paths in `resolveUrl` properly. diff --git a/.changeset/poor-zebras-design.md b/.changeset/poor-zebras-design.md deleted file mode 100644 index 8b618610d1..0000000000 --- a/.changeset/poor-zebras-design.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': minor ---- - -- Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` -- Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` -- Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter diff --git a/.changeset/pre.json b/.changeset/pre.json deleted file mode 100644 index 1fce147888..0000000000 --- a/.changeset/pre.json +++ /dev/null @@ -1,259 +0,0 @@ -{ - "mode": "exit", - "tag": "next", - "initialVersions": { - "example-app": "0.2.71", - "@backstage/app-defaults": "1.0.2", - "example-backend": "0.2.71", - "@backstage/backend-common": "0.13.3", - "@backstage/backend-tasks": "0.3.1", - "@backstage/backend-test-utils": "0.1.24", - "@backstage/catalog-client": "1.0.2", - "@backstage/catalog-model": "1.0.2", - "@backstage/cli": "0.17.1", - "@backstage/cli-common": "0.1.9", - "@backstage/codemods": "0.1.38", - "@backstage/config": "1.0.1", - "@backstage/config-loader": "1.1.1", - "@backstage/core-app-api": "1.0.2", - "@backstage/core-components": "0.9.4", - "@backstage/core-plugin-api": "1.0.2", - "@backstage/create-app": "0.4.27", - "@backstage/dev-utils": "1.0.2", - "e2e-test": "0.2.0", - "@backstage/errors": "1.0.0", - "@backstage/integration": "1.2.0", - "@backstage/integration-react": "1.1.0", - "@backstage/release-manifests": "0.0.3", - "@techdocs/cli": "1.1.1", - "techdocs-cli-embedded-app": "0.2.70", - "@backstage/techdocs-common": "0.11.15", - "@backstage/test-utils": "1.1.0", - "@backstage/theme": "0.2.15", - "@backstage/types": "1.0.0", - "@backstage/version-bridge": "1.0.1", - "@backstage/plugin-adr": "0.1.0", - "@backstage/plugin-adr-backend": "0.1.0", - "@backstage/plugin-adr-common": "0.1.0", - "@backstage/plugin-airbrake": "0.3.5", - "@backstage/plugin-airbrake-backend": "0.2.5", - "@backstage/plugin-allure": "0.1.21", - "@backstage/plugin-analytics-module-ga": "0.1.16", - "@backstage/plugin-apache-airflow": "0.1.13", - "@backstage/plugin-api-docs": "0.8.5", - "@backstage/plugin-app-backend": "0.3.32", - "@backstage/plugin-auth-backend": "0.14.0", - "@backstage/plugin-auth-node": "0.2.1", - "@backstage/plugin-azure-devops": "0.1.21", - "@backstage/plugin-azure-devops-backend": "0.3.11", - "@backstage/plugin-azure-devops-common": "0.2.3", - "@backstage/plugin-badges": "0.2.29", - "@backstage/plugin-badges-backend": "0.1.26", - "@backstage/plugin-bazaar": "0.1.20", - "@backstage/plugin-bazaar-backend": "0.1.16", - "@backstage/plugin-bitrise": "0.1.32", - "@backstage/plugin-catalog": "1.2.0", - "@backstage/plugin-catalog-backend": "1.1.2", - "@backstage/plugin-catalog-backend-module-aws": "0.1.5", - "@backstage/plugin-catalog-backend-module-azure": "0.1.3", - "@backstage/plugin-catalog-backend-module-bitbucket": "0.1.3", - "@backstage/plugin-catalog-backend-module-gerrit": "0.1.0", - "@backstage/plugin-catalog-backend-module-github": "0.1.3", - "@backstage/plugin-catalog-backend-module-gitlab": "0.1.3", - "@backstage/plugin-catalog-backend-module-ldap": "0.4.3", - "@backstage/plugin-catalog-backend-module-msgraph": "0.3.2", - "@backstage/plugin-catalog-common": "1.0.2", - "@backstage/plugin-catalog-graph": "0.2.17", - "@backstage/plugin-catalog-graphql": "0.3.9", - "@backstage/plugin-catalog-import": "0.8.8", - "@backstage/plugin-catalog-react": "1.1.0", - "@backstage/plugin-cicd-statistics": "0.1.7", - "@backstage/plugin-cicd-statistics-module-gitlab": "0.1.1", - "@backstage/plugin-circleci": "0.3.5", - "@backstage/plugin-cloudbuild": "0.3.5", - "@backstage/plugin-code-climate": "0.1.5", - "@backstage/plugin-code-coverage": "0.1.32", - "@backstage/plugin-code-coverage-backend": "0.1.30", - "@backstage/plugin-codescene": "0.1.0", - "@backstage/plugin-config-schema": "0.1.28", - "@backstage/plugin-cost-insights": "0.11.27", - "@internal/plugin-todo-list": "1.0.1", - "@internal/plugin-todo-list-backend": "1.0.1", - "@internal/plugin-todo-list-common": "1.0.1", - "@backstage/plugin-explore": "0.3.36", - "@backstage/plugin-explore-react": "0.0.17", - "@backstage/plugin-firehydrant": "0.1.22", - "@backstage/plugin-fossa": "0.2.37", - "@backstage/plugin-gcalendar": "0.3.1", - "@backstage/plugin-gcp-projects": "0.3.24", - "@backstage/plugin-git-release-manager": "0.3.18", - "@backstage/plugin-github-actions": "0.5.5", - "@backstage/plugin-github-deployments": "0.1.36", - "@backstage/plugin-gitops-profiles": "0.3.23", - "@backstage/plugin-gocd": "0.1.11", - "@backstage/plugin-graphiql": "0.2.37", - "@backstage/plugin-graphql-backend": "0.1.22", - "@backstage/plugin-home": "0.4.21", - "@backstage/plugin-ilert": "0.1.31", - "@backstage/plugin-jenkins": "0.7.4", - "@backstage/plugin-jenkins-backend": "0.1.22", - "@backstage/plugin-jenkins-common": "0.1.4", - "@backstage/plugin-kafka": "0.3.5", - "@backstage/plugin-kafka-backend": "0.2.25", - "@backstage/plugin-kubernetes": "0.6.5", - "@backstage/plugin-kubernetes-backend": "0.5.1", - "@backstage/plugin-kubernetes-common": "0.2.10", - "@backstage/plugin-lighthouse": "0.3.5", - "@backstage/plugin-newrelic": "0.3.23", - "@backstage/plugin-newrelic-dashboard": "0.1.13", - "@backstage/plugin-org": "0.5.5", - "@backstage/plugin-pagerduty": "0.3.32", - "@backstage/plugin-periskop": "0.1.3", - "@backstage/plugin-periskop-backend": "0.1.3", - "@backstage/plugin-permission-backend": "0.5.7", - "@backstage/plugin-permission-common": "0.6.1", - "@backstage/plugin-permission-node": "0.6.1", - "@backstage/plugin-permission-react": "0.4.1", - "@backstage/plugin-proxy-backend": "0.2.26", - "@backstage/plugin-rollbar": "0.4.5", - "@backstage/plugin-rollbar-backend": "0.1.29", - "@backstage/plugin-scaffolder": "1.2.0", - "@backstage/plugin-scaffolder-backend": "1.2.0", - "@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.7", - "@backstage/plugin-scaffolder-backend-module-rails": "0.4.0", - "@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.5", - "@backstage/plugin-scaffolder-common": "1.1.0", - "@backstage/plugin-search": "0.8.1", - "@backstage/plugin-search-backend": "0.5.2", - "@backstage/plugin-search-backend-module-elasticsearch": "0.1.4", - "@backstage/plugin-search-backend-module-pg": "0.3.3", - "@backstage/plugin-search-backend-node": "0.6.1", - "@backstage/plugin-search-common": "0.3.4", - "@backstage/plugin-search-react": "0.2.0", - "@backstage/plugin-sentry": "0.3.43", - "@backstage/plugin-shortcuts": "0.2.6", - "@backstage/plugin-sonarqube": "0.3.5", - "@backstage/plugin-splunk-on-call": "0.3.29", - "@backstage/plugin-stack-overflow": "0.1.1", - "@backstage/plugin-stack-overflow-backend": "0.1.1", - "@backstage/plugin-tech-insights": "0.2.1", - "@backstage/plugin-tech-insights-backend": "0.4.0", - "@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.16", - "@backstage/plugin-tech-insights-common": "0.2.4", - "@backstage/plugin-tech-insights-node": "0.3.0", - "@backstage/plugin-tech-radar": "0.5.12", - "@backstage/plugin-techdocs": "1.1.1", - "@backstage/plugin-techdocs-addons-test-utils": "1.0.0", - "@backstage/plugin-techdocs-backend": "1.1.1", - "@backstage/plugin-techdocs-module-addons-contrib": "1.0.0", - "@backstage/plugin-techdocs-node": "1.1.1", - "@backstage/plugin-techdocs-react": "1.0.0", - "@backstage/plugin-todo": "0.2.7", - "@backstage/plugin-todo-backend": "0.1.29", - "@backstage/plugin-user-settings": "0.4.4", - "@backstage/plugin-xcmetrics": "0.2.25", - "@backstage/plugin-bitbucket-cloud-common": "0.0.0", - "@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.0.0", - "@backstage/plugin-github-pull-requests-board": "0.0.0", - "@backstage/search-common": "0.3.5-next.0" - }, - "changesets": [ - "afraid-mangos-sip", - "beige-apricots-enjoy", - "beige-deers-remember", - "beige-dots-bathe", - "blue-roses-give", - "calm-timers-wonder", - "dry-tables-sniff", - "eight-ducks-beg", - "fair-grapes-joke", - "famous-cups-clap", - "fifty-dogs-collect", - "fifty-planes-dream", - "fluffy-candles-learn", - "fluffy-cherries-own", - "fluffy-wasps-chew", - "fresh-items-punch", - "funny-suns-pay", - "give-that-wolf-a-banana", - "gold-tables-matter", - "good-squids-rest", - "healthy-pets-mix", - "heavy-carrots-cheer", - "hip-pears-shout", - "honest-planets-sin", - "hungry-brooms-wash", - "itchy-avocados-hug", - "khaki-shrimps-tell", - "large-monkeys-visit", - "loud-jars-kick", - "loud-walls-itch", - "lovely-gifts-itch", - "mean-turtles-reply", - "metal-items-mix", - "modern-pandas-agree", - "moody-worms-rhyme", - "nervous-gorillas-approve", - "nervous-ravens-smash", - "odd-baboons-buy", - "olive-rats-rest", - "plenty-garlics-shop", - "polite-spiders-pay", - "poor-years-develop", - "poor-zebras-design", - "pretty-wolves-whisper", - "quick-ladybugs-try", - "real-beers-type", - "reject-failed-index-tasks", - "renovate-126b147", - "renovate-648a745", - "renovate-7ed704d", - "renovate-9363c67", - "renovate-ad175cc", - "renovate-b7ba5e4", - "renovate-c8fbb1e", - "renovate-cd4546d", - "renovate-dd5df61", - "rich-zebras-design", - "right-one-at-the-wrong-time", - "scaffolder-form-context", - "search-eight-hounds-worry", - "search-eyes-of-them-all", - "search-generals-gathered", - "search-martha-sways", - "seven-readers-drop", - "shaggy-crabs-return", - "shiny-clocks-joke", - "shiny-windows-roll", - "short-jokes-applaud", - "shy-geese-judge", - "silly-wombats-flash", - "sixty-plums-kick", - "sixty-poems-drum", - "sixty-rats-talk", - "slimy-elephants-attend", - "slow-apes-appear", - "spicy-forks-return", - "spotty-goats-look", - "tasty-snails-boil", - "techdocs-buttons-film", - "techdocs-crabs-retire", - "techdocs-everybody-to-the-limit", - "techdocs-paws-study", - "techdocs-swans-check", - "techdocs-vans-run", - "techdocs-ways-type", - "techdocs-wolves-carry", - "ten-rocks-smile", - "tidy-pens-work", - "tricky-hounds-cry", - "twenty-mangos-clap", - "unlucky-lies-pretend", - "up-in-space-man", - "violet-apples-repair", - "warm-bats-jump", - "wicked-teachers-hide", - "wise-nails-hang", - "yellow-falcons-sin" - ] -} diff --git a/.changeset/pretty-wolves-whisper.md b/.changeset/pretty-wolves-whisper.md deleted file mode 100644 index 498eac7173..0000000000 --- a/.changeset/pretty-wolves-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-jenkins-backend': patch ---- - -bug fix: provide backstage token for rebuild api call diff --git a/.changeset/quick-ladybugs-try.md b/.changeset/quick-ladybugs-try.md deleted file mode 100644 index aad1b200b6..0000000000 --- a/.changeset/quick-ladybugs-try.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-catalog': patch ---- - -Accessibility updates: - -- Added screen reader elements to describe default table `Action` buttons diff --git a/.changeset/real-beers-type.md b/.changeset/real-beers-type.md deleted file mode 100644 index f09aafe007..0000000000 --- a/.changeset/real-beers-type.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-gitlab': patch ---- - -do not create location object if file with component definition do not exists in project, that decrease count of request to gitlab with 404 status code. Now we can create processor with new flag to enable this logic: - -```ts -const processor = GitLabDiscoveryProcessor.fromConfig(config, { - logger, - skipReposWithoutExactFileMatch: true, -}); -``` - -**WARNING:** This new functionality does not support globs in the repo file path diff --git a/.changeset/red-apes-tell.md b/.changeset/red-apes-tell.md deleted file mode 100644 index ee0ace6a4c..0000000000 --- a/.changeset/red-apes-tell.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Components ``, ``, ``, and `` are now deprecated in `@backstage/plugin-search` and should be imported from `@backstage/plugin-search-react` instead. - -To upgrade your App, update the following in `packages/app/src/components/search/SearchPage.tsx`: - -```diff -import { - DefaultResultListItem - SearchBar - SearchFilter - SearchResult -- } from `@backstage/plugin-search`; -+ } from `@backstage/plugin-search-react`; -``` diff --git a/.changeset/reject-failed-index-tasks.md b/.changeset/reject-failed-index-tasks.md deleted file mode 100644 index b2f1f5ad6a..0000000000 --- a/.changeset/reject-failed-index-tasks.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend-node': patch ---- - -propagate indexing errors so they don't appear successful to the task scheduler diff --git a/.changeset/renovate-01d4fe0.md b/.changeset/renovate-01d4fe0.md deleted file mode 100644 index fb242da82e..0000000000 --- a/.changeset/renovate-01d4fe0.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/backend-common': patch -'@backstage/plugin-techdocs-node': patch ---- - -Updated dependency `@google-cloud/storage` to `^6.0.0`. diff --git a/.changeset/renovate-0fe5912.md b/.changeset/renovate-0fe5912.md deleted file mode 100644 index 1fd4080f4d..0000000000 --- a/.changeset/renovate-0fe5912.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes-backend': patch ---- - -Updated dependency `@google-cloud/container` to `^4.0.0`. diff --git a/.changeset/renovate-126b147.md b/.changeset/renovate-126b147.md deleted file mode 100644 index c087911b84..0000000000 --- a/.changeset/renovate-126b147.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Updated dependency `run-script-webpack-plugin` to `^0.0.14`. diff --git a/.changeset/renovate-1a41b78.md b/.changeset/renovate-1a41b78.md deleted file mode 100644 index d1864ff3c3..0000000000 --- a/.changeset/renovate-1a41b78.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -Updated dependency `react-text-truncate` to `^0.19.0`. diff --git a/.changeset/renovate-4696848.md b/.changeset/renovate-4696848.md deleted file mode 100644 index 5e2bca7c99..0000000000 --- a/.changeset/renovate-4696848.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-tech-radar': patch ---- - -Updated dependency `d3-force` to `^3.0.0`. -Updated dependency `@types/d3-force` to `^3.0.0`. diff --git a/.changeset/renovate-648a745.md b/.changeset/renovate-648a745.md deleted file mode 100644 index 005c235736..0000000000 --- a/.changeset/renovate-648a745.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/backend-tasks': patch ---- - -Updated dependency `cron` to `^2.0.0`. -Updated dependency `@types/cron` to `^2.0.0`. diff --git a/.changeset/renovate-7ed704d.md b/.changeset/renovate-7ed704d.md deleted file mode 100644 index df638d8964..0000000000 --- a/.changeset/renovate-7ed704d.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. diff --git a/.changeset/renovate-9363c67.md b/.changeset/renovate-9363c67.md deleted file mode 100644 index 85115241de..0000000000 --- a/.changeset/renovate-9363c67.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -'@backstage/backend-common': patch -'@backstage/backend-test-utils': patch -'@backstage/catalog-client': patch -'@backstage/cli': patch -'@backstage/config-loader': patch -'@backstage/core-app-api': patch -'@backstage/core-components': patch -'@backstage/core-plugin-api': patch -'@backstage/integration-react': patch -'@backstage/integration': patch -'@backstage/release-manifests': patch -'@backstage/test-utils': patch -'@backstage/plugin-adr-backend': patch -'@backstage/plugin-adr': patch -'@backstage/plugin-airbrake-backend': patch -'@backstage/plugin-airbrake': patch -'@backstage/plugin-allure': patch -'@backstage/plugin-analytics-module-ga': patch -'@backstage/plugin-apache-airflow': patch -'@backstage/plugin-api-docs': patch -'@backstage/plugin-app-backend': patch -'@backstage/plugin-auth-backend': patch -'@backstage/plugin-auth-node': patch -'@backstage/plugin-azure-devops-backend': patch -'@backstage/plugin-azure-devops': patch -'@backstage/plugin-badges': patch -'@backstage/plugin-bitrise': patch -'@backstage/plugin-catalog-backend-module-azure': patch -'@backstage/plugin-catalog-backend-module-bitbucket': patch -'@backstage/plugin-catalog-backend-module-gerrit': patch -'@backstage/plugin-catalog-backend-module-github': patch -'@backstage/plugin-catalog-backend-module-gitlab': patch -'@backstage/plugin-catalog-backend-module-msgraph': patch -'@backstage/plugin-catalog-backend': patch -'@backstage/plugin-catalog-graphql': patch -'@backstage/plugin-catalog-import': patch -'@backstage/plugin-circleci': patch -'@backstage/plugin-cloudbuild': patch -'@backstage/plugin-code-climate': patch -'@backstage/plugin-code-coverage-backend': patch -'@backstage/plugin-code-coverage': patch -'@backstage/plugin-codescene': patch -'@backstage/plugin-config-schema': patch -'@backstage/plugin-cost-insights': patch -'@backstage/plugin-explore-react': patch -'@backstage/plugin-explore': patch -'@backstage/plugin-firehydrant': patch -'@backstage/plugin-fossa': patch -'@backstage/plugin-gcalendar': patch -'@backstage/plugin-gcp-projects': patch -'@backstage/plugin-git-release-manager': patch -'@backstage/plugin-github-actions': patch -'@backstage/plugin-github-deployments': patch -'@backstage/plugin-github-pull-requests-board': patch -'@backstage/plugin-gitops-profiles': patch -'@backstage/plugin-gocd': patch -'@backstage/plugin-graphiql': patch -'@backstage/plugin-graphql-backend': patch -'@backstage/plugin-home': patch -'@backstage/plugin-ilert': patch -'@backstage/plugin-jenkins-backend': patch -'@backstage/plugin-jenkins': patch -'@backstage/plugin-kafka': patch -'@backstage/plugin-kubernetes': patch -'@backstage/plugin-lighthouse': patch -'@backstage/plugin-newrelic': patch -'@backstage/plugin-org': patch -'@backstage/plugin-pagerduty': patch -'@backstage/plugin-periskop-backend': patch -'@backstage/plugin-periskop': patch -'@backstage/plugin-permission-backend': patch -'@backstage/plugin-permission-common': patch -'@backstage/plugin-permission-node': patch -'@backstage/plugin-rollbar-backend': patch -'@backstage/plugin-rollbar': patch -'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch -'@backstage/plugin-scaffolder-backend': patch -'@backstage/plugin-scaffolder': patch -'@backstage/plugin-search': patch -'@backstage/plugin-sentry': patch -'@backstage/plugin-shortcuts': patch -'@backstage/plugin-sonarqube': patch -'@backstage/plugin-splunk-on-call': patch -'@backstage/plugin-stack-overflow': patch -'@backstage/plugin-tech-insights': patch -'@backstage/plugin-tech-radar': patch -'@backstage/plugin-techdocs-addons-test-utils': patch -'@backstage/plugin-techdocs-backend': patch -'@backstage/plugin-techdocs-module-addons-contrib': patch -'@backstage/plugin-techdocs': patch -'@backstage/plugin-todo-backend': patch -'@backstage/plugin-todo': patch -'@backstage/plugin-user-settings': patch -'@backstage/plugin-xcmetrics': patch ---- - -Updated dependency `msw` to `^0.41.0`. diff --git a/.changeset/renovate-ad175cc.md b/.changeset/renovate-ad175cc.md deleted file mode 100644 index 72e278146e..0000000000 --- a/.changeset/renovate-ad175cc.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/core-components': patch -'@backstage/plugin-gcp-projects': patch -'@backstage/plugin-techdocs-module-addons-contrib': patch ---- - -Updated dependency `@react-hookz/web` to `^14.0.0`. diff --git a/.changeset/renovate-b61d275.md b/.changeset/renovate-b61d275.md deleted file mode 100644 index 65977829f7..0000000000 --- a/.changeset/renovate-b61d275.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-bitbucket-cloud-common': patch -'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch ---- - -Updated dependency `msw` to `^0.42.0`. diff --git a/.changeset/renovate-b7ba5e4.md b/.changeset/renovate-b7ba5e4.md deleted file mode 100644 index db9082f1b2..0000000000 --- a/.changeset/renovate-b7ba5e4.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@techdocs/cli': patch ---- - -Updated dependency `cypress` to `^10.0.0`. diff --git a/.changeset/renovate-c8fbb1e.md b/.changeset/renovate-c8fbb1e.md deleted file mode 100644 index f60d352577..0000000000 --- a/.changeset/renovate-c8fbb1e.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-backend': patch ---- - -Updated dependency `passport` to `^0.6.0`. diff --git a/.changeset/renovate-cd4546d.md b/.changeset/renovate-cd4546d.md deleted file mode 100644 index 73c890d53d..0000000000 --- a/.changeset/renovate-cd4546d.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Updated dependency `minimatch` to `5.1.0`. diff --git a/.changeset/renovate-dd5df61.md b/.changeset/renovate-dd5df61.md deleted file mode 100644 index 6b30209e68..0000000000 --- a/.changeset/renovate-dd5df61.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/core-components': patch -'@backstage/plugin-codescene': patch -'@backstage/plugin-sonarqube': patch ---- - -Updated dependency `rc-progress` to `3.3.3`. diff --git a/.changeset/rich-zebras-design.md b/.changeset/rich-zebras-design.md deleted file mode 100644 index 916226787a..0000000000 --- a/.changeset/rich-zebras-design.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-scaffolder': minor ---- - -- Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. -- Ability to filter these tasks by the signed in user, and all tasks. -- Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. diff --git a/.changeset/right-one-at-the-wrong-time.md b/.changeset/right-one-at-the-wrong-time.md deleted file mode 100644 index 5ef8e42555..0000000000 --- a/.changeset/right-one-at-the-wrong-time.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch -'@backstage/plugin-user-settings': patch -'@techdocs/cli': patch ---- - -Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. diff --git a/.changeset/scaffolder-form-context.md b/.changeset/scaffolder-form-context.md deleted file mode 100644 index 9b0e19ebd0..0000000000 --- a/.changeset/scaffolder-form-context.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -'@backstage/plugin-scaffolder': minor ---- - -Get data of other fields in Form from a custom field in template Scaffolder. -following: - -```tsx -const CustomFieldExtensionComponent = (props: FieldExtensionComponentProps) => { - const { formData } = props.formContext; - ... -}; - -const CustomFieldExtension = scaffolderPlugin.provide( - createScaffolderFieldExtension({ - name: ..., - component: CustomFieldExtensionComponent, - validation: ... - }) -); -``` diff --git a/.changeset/search-eight-hounds-worry.md b/.changeset/search-eight-hounds-worry.md deleted file mode 100644 index dcce19e65d..0000000000 --- a/.changeset/search-eight-hounds-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend-module-elasticsearch': patch ---- - -Use more precise matching for query filters diff --git a/.changeset/search-eyes-of-them-all.md b/.changeset/search-eyes-of-them-all.md deleted file mode 100644 index 4984d31877..0000000000 --- a/.changeset/search-eyes-of-them-all.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-search-backend-node': patch ---- - -Introducing a `NewlineDelimitedJsonCollatorFactory`, which can be used to create search indices from newline delimited JSON files stored in external storage readable via a configured `UrlReader` instance. - -This is useful if you have an independent process periodically generating `*.ndjson` files consisting of `IndexableDocument` objects and want to be able to generate a fresh index based on the latest version of such a file. diff --git a/.changeset/search-generals-gathered.md b/.changeset/search-generals-gathered.md deleted file mode 100644 index 89ad5eeff5..0000000000 --- a/.changeset/search-generals-gathered.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search': patch ---- - -Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. diff --git a/.changeset/search-martha-sways.md b/.changeset/search-martha-sways.md deleted file mode 100644 index 10231a4205..0000000000 --- a/.changeset/search-martha-sways.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend-node': patch ---- - -Fixed a bug that prevented `TestPipeline.withSubject` from identifying valid `Readable` subjects that were technically transform streams. diff --git a/.changeset/search-pull-rank.md b/.changeset/search-pull-rank.md deleted file mode 100644 index 995225698e..0000000000 --- a/.changeset/search-pull-rank.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -It's now possible to pass result item components a `rank`, which is captured by the analytics API when a user clicks on a search result. To apply this change, update your `/packages/app/src/components/search/SearchPage.tsx` in the following way: - -```diff -// ... - - {({ results }) => ( - -- {results.map(({ type, document, highlight }) => { -+ {results.map(({ type, document, highlight, rank }) => { - switch (type) { - case 'software-catalog': - return ( - - ); - case 'techdocs': - return ( - - ); - default: - return ( - - ); - } - })} - - )} - -// ... -``` - -If you have implemented a custom Search Modal or other custom search experience, you will want to make similar changes in those components. diff --git a/.changeset/search-rank-and-file.md b/.changeset/search-rank-and-file.md deleted file mode 100644 index bfad6a63ad..0000000000 --- a/.changeset/search-rank-and-file.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-common': patch ---- - -Added an optional `rank` attribute to the `Result` type. This represents the result rank (starting at 1) for a given result in a result set for a given search. diff --git a/.changeset/search-rank-choice-voting.md b/.changeset/search-rank-choice-voting.md deleted file mode 100644 index 2754d149e7..0000000000 --- a/.changeset/search-rank-choice-voting.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@backstage/plugin-search-backend': patch -'@backstage/plugin-search-backend-module-elasticsearch': patch -'@backstage/plugin-search-backend-module-pg': patch -'@backstage/plugin-search-backend-node': patch ---- - -The provided search engine now adds a pagination-aware `rank` value to all results. diff --git a/.changeset/search-rankly-my-dear.md b/.changeset/search-rankly-my-dear.md deleted file mode 100644 index c528c567b1..0000000000 --- a/.changeset/search-rankly-my-dear.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/plugin-catalog': patch -'@backstage/plugin-search': patch -'@backstage/plugin-techdocs': patch ---- - -In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. diff --git a/.changeset/search-wet-icons-shout.md b/.changeset/search-wet-icons-shout.md deleted file mode 100644 index de105cbde9..0000000000 --- a/.changeset/search-wet-icons-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend-module-elasticsearch': patch ---- - -Now possible to set a custom index template on the elasticsearch search engine. diff --git a/.changeset/seven-readers-drop.md b/.changeset/seven-readers-drop.md deleted file mode 100644 index 687969edfe..0000000000 --- a/.changeset/seven-readers-drop.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -'@backstage/plugin-search-backend-module-elasticsearch': patch ---- - -Additional types now exported publicly: - -- ElasticSearchAgentOptions -- ElasticSearchConcreteQuery -- ElasticSearchQueryTranslator -- ElasticSearchConnectionConstructor, -- ElasticSearchTransportConstructor, -- ElasticSearchNodeOptions, -- ElasticSearchOptions, -- ElasticSearchAuth, diff --git a/.changeset/shaggy-bulldogs-collect.md b/.changeset/shaggy-bulldogs-collect.md deleted file mode 100644 index 04dea88cc7..0000000000 --- a/.changeset/shaggy-bulldogs-collect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-vault-backend': minor ---- - -First implementation for the backend vault plugin. For more information refer to its `README.md`. diff --git a/.changeset/shaggy-crabs-return.md b/.changeset/shaggy-crabs-return.md deleted file mode 100644 index afd1f74ef5..0000000000 --- a/.changeset/shaggy-crabs-return.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/catalog-model': patch ---- - -Added targetRef to common.schema.json to match the Typescript type diff --git a/.changeset/shiny-clocks-joke.md b/.changeset/shiny-clocks-joke.md deleted file mode 100644 index 3784cb1b7d..0000000000 --- a/.changeset/shiny-clocks-joke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/cli': patch ---- - -Added console warning to frontend start when the `app.baseUrl` and `backend.baseUrl` are identical diff --git a/.changeset/shiny-windows-roll.md b/.changeset/shiny-windows-roll.md deleted file mode 100644 index 46801542b5..0000000000 --- a/.changeset/shiny-windows-roll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': minor ---- - -Add an option to not protect the default branch. diff --git a/.changeset/short-jokes-applaud.md b/.changeset/short-jokes-applaud.md deleted file mode 100644 index b1b4f55858..0000000000 --- a/.changeset/short-jokes-applaud.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -Accessibility updates: - -- Added `aria-label` to the `Select` component -- Changed heading level used in the header of `Table` component diff --git a/.changeset/shy-geese-judge.md b/.changeset/shy-geese-judge.md deleted file mode 100644 index fbb994263b..0000000000 --- a/.changeset/shy-geese-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/integration': patch ---- - -Updated to support deployments of Azure DevOps Server under TFS or similar sub path diff --git a/.changeset/silent-plants-guess.md b/.changeset/silent-plants-guess.md deleted file mode 100644 index 1dc9a0559e..0000000000 --- a/.changeset/silent-plants-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-vault': minor ---- - -First implementation of the frontend vault plugin. For more information refer to its `README.md`. diff --git a/.changeset/silly-wombats-flash.md b/.changeset/silly-wombats-flash.md deleted file mode 100644 index d75196df76..0000000000 --- a/.changeset/silly-wombats-flash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-adr': patch ---- - -Adding term highlighting support to `AdrSearchResultListItem` diff --git a/.changeset/sixty-plums-kick.md b/.changeset/sixty-plums-kick.md deleted file mode 100644 index 5c11d9aaca..0000000000 --- a/.changeset/sixty-plums-kick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes': patch ---- - -Fix for HPA matching when deploying same HPA in multiple namespaces diff --git a/.changeset/sixty-poems-drum.md b/.changeset/sixty-poems-drum.md deleted file mode 100644 index 82c5f6c499..0000000000 --- a/.changeset/sixty-poems-drum.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-graphiql': patch ---- - -Fix for custom headers not being included in requests. diff --git a/.changeset/sixty-rats-talk.md b/.changeset/sixty-rats-talk.md deleted file mode 100644 index ad2575f83e..0000000000 --- a/.changeset/sixty-rats-talk.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. - -```diff -- "cypress": "^7.3.0", -+ "cypress": "^9.7.0", -``` diff --git a/.changeset/slimy-elephants-attend.md b/.changeset/slimy-elephants-attend.md deleted file mode 100644 index 4add8f18a3..0000000000 --- a/.changeset/slimy-elephants-attend.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -'@backstage/plugin-catalog-backend': minor ---- - -Allow array as non-spread arguments at the `CatalogBuilder`. - -```typescript -builder.addEntityProvider(...getArrayOfProviders()); -``` - -can be simplified to - -```typescript -builder.addEntityProvider(getArrayOfProviders()); -``` diff --git a/.changeset/slow-apes-appear.md b/.changeset/slow-apes-appear.md deleted file mode 100644 index 8771561893..0000000000 --- a/.changeset/slow-apes-appear.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@backstage/plugin-bitbucket-cloud-common': minor ---- - -Add new common library `bitbucket-cloud-common` with a client for Bitbucket Cloud. - -This client can be reused across all packages and might be the future place for additional -features like managing the rate limits, etc. - -The client itself was generated in parts using the `@openapitools/openapi-generator-cli`. diff --git a/.changeset/smart-melons-think.md b/.changeset/smart-melons-think.md deleted file mode 100644 index 2af8b1671f..0000000000 --- a/.changeset/smart-melons-think.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -Fix the missing filter in the toolbar when passing a custom component in the core-components Table diff --git a/.changeset/spicy-forks-return.md b/.changeset/spicy-forks-return.md deleted file mode 100644 index b36366639c..0000000000 --- a/.changeset/spicy-forks-return.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -'@backstage/plugin-org': patch ---- - -Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: - -```diff -// app/src/components/Root/Root.tsx - - - //... - }> - {/* Global nav, not org-specific */} - //... - - - //... - - - -``` diff --git a/.changeset/spotty-goats-look.md b/.changeset/spotty-goats-look.md deleted file mode 100644 index 0759afcd57..0000000000 --- a/.changeset/spotty-goats-look.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder-backend': patch ---- - -Adds more of an explanation when the `publish:github` scaffolder action fails to create a repository. diff --git a/.changeset/strange-flies-march.md b/.changeset/strange-flies-march.md deleted file mode 100644 index 70a15b41d9..0000000000 --- a/.changeset/strange-flies-march.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search': minor ---- - -The pre-alpha ``, ``, `etc...` components have been removed. In the unlikely event you were still using/referencing them, please update to using their non-`*Next` equivalents from either `@backstage/plugin-search-react` or `@backstage/plugin-search`. diff --git a/.changeset/tame-ears-pretend.md b/.changeset/tame-ears-pretend.md deleted file mode 100644 index 63a81cbf06..0000000000 --- a/.changeset/tame-ears-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-app-api': patch ---- - -Handle URLs as the first argument to `fetchApi`, when using the `plugin:` protocol diff --git a/.changeset/tasty-snails-boil.md b/.changeset/tasty-snails-boil.md deleted file mode 100644 index d5b73d3b1b..0000000000 --- a/.changeset/tasty-snails-boil.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-node': patch ---- - -Added configurable algorithms array for IdentityClient diff --git a/.changeset/techdocs-buttons-film.md b/.changeset/techdocs-buttons-film.md deleted file mode 100644 index 1af1ead4c7..0000000000 --- a/.changeset/techdocs-buttons-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Fix `EntityTechdocsContent` component to use objects instead of `` elements, otherwise "outlet" will be null on sub-pages and add-ons won't render. diff --git a/.changeset/techdocs-crabs-retire.md b/.changeset/techdocs-crabs-retire.md deleted file mode 100644 index b15c983bc4..0000000000 --- a/.changeset/techdocs-crabs-retire.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Restructures reader style transformations to improve code readability: - -- Extracts the style rules to separate files; -- Creates a hook that processes each rule; -- And creates another hook that returns a transformer responsible for injecting them into the head tag of a given element. diff --git a/.changeset/techdocs-everybody-to-the-limit.md b/.changeset/techdocs-everybody-to-the-limit.md deleted file mode 100644 index 9167838d03..0000000000 --- a/.changeset/techdocs-everybody-to-the-limit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs-backend': patch ---- - -In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. diff --git a/.changeset/techdocs-flying-inspection.md b/.changeset/techdocs-flying-inspection.md deleted file mode 100644 index baf956ee19..0000000000 --- a/.changeset/techdocs-flying-inspection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs-node': patch ---- - -Updated deprecated use of `express`' `res.redirect()` method when handling legacy path casing. diff --git a/.changeset/techdocs-paws-study.md b/.changeset/techdocs-paws-study.md deleted file mode 100644 index adbc8d1b3d..0000000000 --- a/.changeset/techdocs-paws-study.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -'@backstage/plugin-techdocs-backend': patch ---- - -Output logs from a TechDocs build to a logging transport in addition to existing -frontend event stream, for capturing these logs to other sources. - -This allows users to capture debugging information around why tech docs fail to build -without needing to rely on end users capturing information from their web browser. - -The most common use case is to log to the same place as the rest of the backend -application logs. - -Sample usage: - -``` -import { DockerContainerRunner } from '@backstage/backend-common'; -import { - createRouter, - Generators, - Preparers, - Publisher, -} from '@backstage/plugin-techdocs-backend'; -import Docker from 'dockerode'; -import { Router } from 'express'; -import { PluginEnvironment } from '../types'; - -export default async function createPlugin( - env: PluginEnvironment, -): Promise { - const preparers = await Preparers.fromConfig(env.config, { - logger: env.logger, - reader: env.reader, - }); - - const dockerClient = new Docker(); - const containerRunner = new DockerContainerRunner({ dockerClient }); - - const generators = await Generators.fromConfig(env.config, { - logger: env.logger, - containerRunner, - }); - - const publisher = await Publisher.fromConfig(env.config, { - logger: env.logger, - discovery: env.discovery, - }); - - await publisher.getReadiness(); - - return await createRouter({ - preparers, - generators, - publisher, - logger: env.logger, - // Passing a buildLogTransport as a parameter in createRouter will enable - // capturing build logs to a backend log stream - buildLogTransport: env.logger, - config: env.config, - discovery: env.discovery, - cache: env.cache, - }); -} -``` diff --git a/.changeset/techdocs-swans-check.md b/.changeset/techdocs-swans-check.md deleted file mode 100644 index 750648ff8a..0000000000 --- a/.changeset/techdocs-swans-check.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Packages a set of tweaks to the TechDocs addons rendering process: - -- Prevents displaying sidebars until page styles are loaded and the sidebar position is updated; -- Prevents new sidebar locations from being created every time the reader page is rendered if these locations already exist; -- Centers the styles loaded event to avoid having multiple locations setting the opacity style in Shadow Dom causing the screen to flash multiple times. diff --git a/.changeset/techdocs-tal-jobs-warn.md b/.changeset/techdocs-tal-jobs-warn.md deleted file mode 100644 index 00154bc9e3..0000000000 --- a/.changeset/techdocs-tal-jobs-warn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Use entity title in `TechDocsSearch` placeholder if available. diff --git a/.changeset/techdocs-vans-run.md b/.changeset/techdocs-vans-run.md deleted file mode 100644 index 2e59da8ad5..0000000000 --- a/.changeset/techdocs-vans-run.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Convert `sanitizeDOM` transformer to hook as part of code readability improvements in dom file. diff --git a/.changeset/techdocs-ways-type.md b/.changeset/techdocs-ways-type.md deleted file mode 100644 index 6e147f62a7..0000000000 --- a/.changeset/techdocs-ways-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs': patch ---- - -Change the `EntityDocsPage` path to be more specific and also add integration tests for `sub-routes` on this page. diff --git a/.changeset/techdocs-wolves-carry.md b/.changeset/techdocs-wolves-carry.md deleted file mode 100644 index 01436ee15f..0000000000 --- a/.changeset/techdocs-wolves-carry.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@backstage/plugin-techdocs-react': patch ---- - -Creates a `TechDocsShadowDom` component that takes a tree of elements and an `onAppend` handler: - -- Calls the `onAppend` handler when appending the element tree to the shadow root; -- Also dispatches an event when styles are loaded to let transformers know that the computed styles are ready to be consumed. diff --git a/.changeset/ten-rocks-smile.md b/.changeset/ten-rocks-smile.md deleted file mode 100644 index af178f559e..0000000000 --- a/.changeset/ten-rocks-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder': minor ---- - -Gerrit Integration: Implemented a `RepoUrlPicker` for Gerrit. diff --git a/.changeset/ten-suits-prove.md b/.changeset/ten-suits-prove.md deleted file mode 100644 index a8f648b71e..0000000000 --- a/.changeset/ten-suits-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/catalog-client': patch ---- - -Update README to point to catalog-react for frontend usage diff --git a/.changeset/ten-wombats-reply.md b/.changeset/ten-wombats-reply.md deleted file mode 100644 index ec60aad81b..0000000000 --- a/.changeset/ten-wombats-reply.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-techdocs-addons-test-utils': patch ---- - -Update default mock diff --git a/.changeset/tender-carpets-cry.md b/.changeset/tender-carpets-cry.md deleted file mode 100644 index a3d275fe33..0000000000 --- a/.changeset/tender-carpets-cry.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-scaffolder': minor -'@backstage/plugin-scaffolder-backend': minor ---- - -Added the ability to support running of templates that are not in the `default` namespace diff --git a/.changeset/tender-weeks-help.md b/.changeset/tender-weeks-help.md deleted file mode 100644 index c1e0e99945..0000000000 --- a/.changeset/tender-weeks-help.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/plugin-api-docs': patch ---- - -Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS -vulnerability](https://github.com/advisories/GHSA-hqq7-2q2v-82xq) in `@braintree/sanitize-url` diff --git a/.changeset/tidy-pens-work.md b/.changeset/tidy-pens-work.md deleted file mode 100644 index d2199b86aa..0000000000 --- a/.changeset/tidy-pens-work.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -fix Sidebar Contexts deprecation message diff --git a/.changeset/tricky-hounds-cry.md b/.changeset/tricky-hounds-cry.md deleted file mode 100644 index d54d59fd30..0000000000 --- a/.changeset/tricky-hounds-cry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-auth-backend': patch ---- - -Fix improper binding of 'this' in ALB Auth provider diff --git a/.changeset/twenty-avocados-refuse.md b/.changeset/twenty-avocados-refuse.md deleted file mode 100644 index dab68d5a10..0000000000 --- a/.changeset/twenty-avocados-refuse.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/create-app': patch ---- - -Updated the auth backend setup in the template to include a guest sign-in resolver in order to make it quicker to get up and running with a basic sign-in setup. There is no need to update existing apps to match this change, but in case you want to use the guest sign-in resolver you can find it at https://backstage.io/docs/auth/identity-resolver#guest-sign-in-resolver diff --git a/.changeset/twenty-mangos-clap.md b/.changeset/twenty-mangos-clap.md deleted file mode 100644 index 5cb4284711..0000000000 --- a/.changeset/twenty-mangos-clap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-search-backend-node': patch ---- - -Replaced all `@beta` exports with `@public` exports diff --git a/.changeset/unlucky-lies-pretend.md b/.changeset/unlucky-lies-pretend.md deleted file mode 100644 index a52f2f394e..0000000000 --- a/.changeset/unlucky-lies-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-kubernetes-backend': minor ---- - -Add support to fetch data for Stateful Sets from Kubernetes diff --git a/.changeset/up-in-space-man.md b/.changeset/up-in-space-man.md deleted file mode 100644 index 3a4dc6c5d3..0000000000 --- a/.changeset/up-in-space-man.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@backstage/core-components': patch ---- - -The `SidebarPinStateContext` and `SidebarContext` have been deprecated and will be removed in a future release. Instead, use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()`. - -This was done to ensure that sidebar state can be shared successfully across components exported by different packages, regardless of what version of this package is resolved and installed for each individual package. diff --git a/.changeset/violet-apples-repair.md b/.changeset/violet-apples-repair.md deleted file mode 100644 index a6be2797f6..0000000000 --- a/.changeset/violet-apples-repair.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-import': patch ---- - -Updated catalog import page text so they go in the correct hierarchy order diff --git a/.changeset/warm-bats-jump.md b/.changeset/warm-bats-jump.md deleted file mode 100644 index 1547734434..0000000000 --- a/.changeset/warm-bats-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-bitbucket': minor ---- - -Integrate `@backstage/plugin-bitbucket-cloud-common` as replacement for the `BitbucketCloudClient`. diff --git a/.changeset/warm-lions-retire.md b/.changeset/warm-lions-retire.md deleted file mode 100644 index 23cbf9d78b..0000000000 --- a/.changeset/warm-lions-retire.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@backstage/plugin-tech-insights-backend': patch -'@backstage/plugin-tech-insights-node': patch ---- - -Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks - -Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. diff --git a/.changeset/wicked-teachers-hide.md b/.changeset/wicked-teachers-hide.md deleted file mode 100644 index c93b9e0848..0000000000 --- a/.changeset/wicked-teachers-hide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-catalog-backend-module-ldap': minor ---- - -Added the possibility to pass TLS configuration to ldap connection diff --git a/.changeset/wise-nails-hang.md b/.changeset/wise-nails-hang.md deleted file mode 100644 index cec8c1d397..0000000000 --- a/.changeset/wise-nails-hang.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/backend-tasks': patch ---- - -Add error logging when a background task throws an error rather than silently swallowing it. diff --git a/.changeset/yellow-falcons-sin.md b/.changeset/yellow-falcons-sin.md deleted file mode 100644 index 943a93d8ac..0000000000 --- a/.changeset/yellow-falcons-sin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder': patch ---- - -Handle binary files and files that are too large during dry-run content upload. diff --git a/docs/releases/v1.3.0-changelog.md b/docs/releases/v1.3.0-changelog.md new file mode 100644 index 0000000000..641fd8422a --- /dev/null +++ b/docs/releases/v1.3.0-changelog.md @@ -0,0 +1,2311 @@ +# Release v1.3.0 + +## @backstage/backend-common@0.14.0 + +### Minor Changes + +- 55647ec7df: **BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. + +### Patch Changes + +- f72a6b8c62: Applied the `luxon` dependency fix from the `0.13.4` patch release. +- 5b22a8c97f: Applied the AWS S3 reading patch from the `0.13.5` patch release. +- f5283a42e2: Updated dependency `@google-cloud/storage` to `^6.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/integration@1.2.1 + - @backstage/config-loader@1.1.2 + +## @backstage/plugin-bitbucket-cloud-common@0.1.0 + +### Minor Changes + +- 1dffa7dd4d: Add new common library `bitbucket-cloud-common` with a client for Bitbucket Cloud. + + This client can be reused across all packages and might be the future place for additional + features like managing the rate limits, etc. + + The client itself was generated in parts using the `@openapitools/openapi-generator-cli`. + +### Patch Changes + +- 9122060776: Updated dependency `msw` to `^0.42.0`. +- Updated dependencies + - @backstage/integration@1.2.1 + +## @backstage/plugin-catalog@1.3.0 + +### Minor Changes + +- fe7614ea54: Add an optional icon to the Catalog and TechDocs search results + +### Patch Changes + +- 449dcef98e: Updates the `isKind`, `ìsComponentType`, and `isNamespace` to allow an array of possible values + +- 1f70704580: Accessibility updates: + + - Added screen reader elements to describe default table `Action` buttons + +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend@1.2.0 + +### Minor Changes + +- b594679ae3: Allow array as non-spread arguments at the `CatalogBuilder`. + + ```typescript + builder.addEntityProvider(...getArrayOfProviders()); + ``` + + can be simplified to + + ```typescript + builder.addEntityProvider(getArrayOfProviders()); + ``` + +### Patch Changes + +- 8838b13038: Disallow anything but `'url'` locations from being registered via the location service. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-scaffolder-common@1.1.1 + +## @backstage/plugin-catalog-backend-module-bitbucket@0.2.0 + +### Minor Changes + +- 1c01c0fd14: Integrate `@backstage/plugin-bitbucket-cloud-common` as replacement for the `BitbucketCloudClient`. + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/plugin-bitbucket-cloud-common@0.1.0 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-bitbucket-cloud@0.1.0 + +### Minor Changes + +- dfc4efcbf0: Add new plugin `catalog-backend-module-bitbucket-cloud` with `BitbucketCloudEntityProvider`. + + This entity provider is an alternative/replacement to the `BitbucketDiscoveryProcessor` **_(for Bitbucket Cloud only!)_**. + It replaces use cases using `search=true` and should be powerful enough as a complete replacement. + + If any feature for Bitbucket Cloud is missing and preventing you from switching, please raise an issue. + + **Before:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + + builder.addProcessor( + BitbucketDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: bitbucket-discovery + target: 'https://bitbucket.org/workspaces/workspace-name/projects/apis-*/repos/service-*?search=true&catalogPath=/catalog-info.yaml' + ``` + + **After:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + builder.addEntityProvider( + BitbucketCloudEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + providers: + bitbucketCloud: + yourProviderId: # identifies your ingested dataset + catalogPath: /catalog-info.yaml # default value + filters: # optional + projectKey: '^apis-.* + ``` + +## @backstage/plugin-catalog-backend-module-ldap@0.5.0 + +### Minor Changes + +- 1f83f0bc84: Added the possibility to pass TLS configuration to ldap connection + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-dynatrace@0.1.0 + +### Minor Changes + +- 70027d09aa: Adds Dynatrace plugin + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-github-pull-requests-board@0.1.0 + +### Minor Changes + +- fc9927c81d: Add Github Pull Requests board plugin + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-kubernetes-backend@0.6.0 + +### Minor Changes + +- 4328737af6: Add support to fetch data for Stateful Sets from Kubernetes + +### Patch Changes + +- 0c70cd8e1d: cache and refresh Azure tokens to avoid excessive calls to Azure Identity +- 2aedf64ad3: Updated dependency `@google-cloud/container` to `^4.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-kubernetes-common@0.3.0 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-kubernetes-common@0.3.0 + +### Minor Changes + +- 4328737af6: Add support to fetch data for Stateful Sets + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-pagerduty@0.4.0 + +### Minor Changes + +- b157c2eb1c: **Breaking**: Use identityApi to provide auth token for pagerduty API calls. + +### Patch Changes + +- 76bf6400fe: Fix alert that was not showing after creating an incident. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-scaffolder@1.3.0 + +### Minor Changes + +- dc39366bdb: - Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. + + - Ability to filter these tasks by the signed in user, and all tasks. + - Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. + +- 86a4a0f72d: Get data of other fields in Form from a custom field in template Scaffolder. + following: + + ```tsx + const CustomFieldExtensionComponent = (props: FieldExtensionComponentProps) => { + const { formData } = props.formContext; + ... + }; + + const CustomFieldExtension = scaffolderPlugin.provide( + createScaffolderFieldExtension({ + name: ..., + component: CustomFieldExtensionComponent, + validation: ... + }) + ); + ``` + +- 72dfcbc8bf: Gerrit Integration: Implemented a `RepoUrlPicker` for Gerrit. + +- f93af969cd: Added the ability to support running of templates that are not in the `default` namespace + +### Patch Changes + +- ac0c7e45ee: Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- fd505f40c0: Handle binary files and files that are too large during dry-run content upload. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + - @backstage/plugin-scaffolder-common@1.1.1 + +## @backstage/plugin-scaffolder-backend@1.3.0 + +### Minor Changes + +- 35a26131b3: **DEPRECATION**: The `projectid` input parameters to the `publish:gitlab:merge-request`, it's no longer required as it can be decoded from the `repoUrl` input parameter. + **DEPRECATION**: The `projectid` output of the action in favour of `projectPath` + +- 72dfcbc8bf: A new scaffolder action has been added: `gerrit:publish` + +- ce0d8d7eb1: Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. + This fix required changing the way parameters are passed to the action. + In order to add a team as collaborator, now you must use the `team` field instead of `username`. + In order to add a user as collaborator, you must use the `user` field. + + It's still possible to use the field `username` but is deprecated in favor of `team`. + + ```yaml + - id: publish + name: Publish + action: publish:github + input: + repoUrl: ... + collaborators: + - access: ... + team: my_team + - access: ... + user: my_username + ``` + +- 582003a059: - Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` + + - Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` + - Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter + +- c042c5eaff: Add an option to not protect the default branch. + +- f93af969cd: Added the ability to support running of templates that are not in the `default` namespace + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6901f6be4a: Adds more of an explanation when the `publish:github` scaffolder action fails to create a repository. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-scaffolder-common@1.1.1 + +## @backstage/plugin-search@0.9.0 + +### Minor Changes + +- 2dc4818541: The pre-alpha ``, ``, `etc...` components have been removed. In the unlikely event you were still using/referencing them, please update to using their non-`*Next` equivalents from either `@backstage/plugin-search-react` or `@backstage/plugin-search`. + +### Patch Changes + +- 8809159148: Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 5388e6bdc5: Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-techdocs@1.2.0 + +### Minor Changes + +- fe7614ea54: Add an optional icon to the Catalog and TechDocs search results + +### Patch Changes + +- d047d81295: Use entity title as label in `TechDocsReaderPageHeader` if available + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. + +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. + +- 881fbd7e8d: Fix `EntityTechdocsContent` component to use objects instead of `` elements, otherwise "outlet" will be null on sub-pages and add-ons won't render. + +- 17c059dfd0: Restructures reader style transformations to improve code readability: + + - Extracts the style rules to separate files; + - Creates a hook that processes each rule; + - And creates another hook that returns a transformer responsible for injecting them into the head tag of a given element. + +- 3b45ad701f: Packages a set of tweaks to the TechDocs addons rendering process: + + - Prevents displaying sidebars until page styles are loaded and the sidebar position is updated; + - Prevents new sidebar locations from being created every time the reader page is rendered if these locations already exist; + - Centers the styles loaded event to avoid having multiple locations setting the opacity style in Shadow Dom causing the screen to flash multiple times. + +- 9b94ade898: Use entity title in `TechDocsSearch` placeholder if available. + +- 816f7475ec: Convert `sanitizeDOM` transformer to hook as part of code readability improvements in dom file. + +- 50ff56a80f: Change the `EntityDocsPage` path to be more specific and also add integration tests for `sub-routes` on this page. + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + +## @backstage/plugin-vault@0.1.0 + +### Minor Changes + +- 7c310a5bc2: First implementation of the frontend vault plugin. For more information refer to its `README.md`. + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-vault-backend@0.1.0 + +### Minor Changes + +- 7c310a5bc2: First implementation for the backend vault plugin. For more information refer to its `README.md`. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/backend-test-utils@0.1.25 + +## @backstage/app-defaults@1.0.3 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + +## @backstage/backend-tasks@0.3.2 + +### Patch Changes + +- fde10d24f6: Allow tasks that fail to retry on a loop emitting a warning log every time it fails with the amount of attempts it has +- f7146b516f: Updated dependency `cron` to `^2.0.0`. + Updated dependency `@types/cron` to `^2.0.0`. +- 7f108513b8: Add error logging when a background task throws an error rather than silently swallowing it. +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/backend-test-utils@0.1.25 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/cli@0.17.2 + - @backstage/backend-common@0.14.0 + +## @backstage/catalog-client@1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 35bc0a7c27: Update README to point to catalog-react for frontend usage +- Updated dependencies + - @backstage/catalog-model@1.0.3 + +## @backstage/catalog-model@1.0.3 + +### Patch Changes + +- 131a99e909: Added targetRef to common.schema.json to match the Typescript type + +## @backstage/cli@0.17.2 + +### Patch Changes + +- 026cfe525a: Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. +- 4f73352608: Updated Lockfile to support new versions of yarn as well as the legacy 1 version +- b8970b8941: Improved the `create-github-app` permissions selection prompt by converting it into a multi-select with clearer descriptions. The `members` permission is now also included in the list which is required for ingesting user data into the catalog. +- bd58365d09: Updated dependency `run-script-webpack-plugin` to `^0.0.14`. +- 9002ebd76b: Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 1a33e8b287: Updated dependency `minimatch` to `5.1.0`. +- 6de866ea74: Added console warning to frontend start when the `app.baseUrl` and `backend.baseUrl` are identical +- Updated dependencies + - @backstage/config-loader@1.1.2 + - @backstage/release-manifests@0.0.4 + +## @backstage/config-loader@1.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +## @backstage/core-app-api@1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 19781483a2: Handle URLs as the first argument to `fetchApi`, when using the `plugin:` protocol +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + +## @backstage/core-components@0.9.5 + +### Patch Changes + +- feb4e8de07: Fix EntityPage tab scrolling overflow bug on Firefox + +- 65840b17be: Fix issue where right arrow icon was incorrectly added to side bar items without a sub-menu + +- de593ec78f: Updated dependency `react-text-truncate` to `^0.19.0`. + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. + +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. + +- 96d1e01641: Accessibility updates: + + - Added `aria-label` to the `Select` component + - Changed heading level used in the header of `Table` component + +- 7d355c4b3f: Fix the missing filter in the toolbar when passing a custom component in the core-components Table + +- 1cf9caecd6: fix Sidebar Contexts deprecation message + +- bff65e6958: The `SidebarPinStateContext` and `SidebarContext` have been deprecated and will be removed in a future release. Instead, use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()`. + + This was done to ensure that sidebar state can be shared successfully across components exported by different packages, regardless of what version of this package is resolved and installed for each individual package. + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + +## @backstage/core-plugin-api@1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +## @backstage/create-app@0.4.28 + +### Patch Changes + +- 881fbd7e8d: Register `TechDocs` addons on catalog entity pages, follow the steps below to add them manually: + + ```diff + // packages/app/src/components/catalog/EntityPage.tsx + + + import { TechDocsAddons } from '@backstage/plugin-techdocs-react'; + + import { + + ReportIssue, + + } from '@backstage/plugin-techdocs-module-addons-contrib'; + + + const techdocsContent = ( + + + + + + + + + + + + ); + + const defaultEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + + const serviceEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + + const websiteEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + ``` + +- 0e870fe0ac: Removed peer dependencies, as they are no longer needed. + +- bff65e6958: Use of `SidebarContext` has been deprecated and will be removed in a future release. Instead, `useSidebarOpenState()` should be used to consume the context and `` should be used to provide it. + + To prepare your app, update `packages/app/src/components/Root/Root.tsx` as follows: + + ```diff + import { + Sidebar, + sidebarConfig, + - SidebarContext + SidebarDivider, + // ... + SidebarSpace, + + useSidebarOpenState, + } from '@backstage/core-components'; + + // ... + + const SidebarLogo = () => { + const classes = useSidebarLogoStyles(); + - const { isOpen } = useContext(SidebarContext); + + const { isOpen } = useSidebarOpenState(); + + // ... + }; + ``` + +- 935d8515da: Updated the `--version` flag to output the version of the current backstage release instead of the version of create-app. + +- 18d4c3e50a: Updated `app-config.production.yaml` to specify an empty list of catalog locations. This is done to prevent example locations stored in `app-config.yaml` from being loaded as these are examples. + +- 1f70704580: Accessibility updates: + + - Added `aria-label` to the sidebar Logo link. To enable this for an existing app, please make the following changes: + + `packages/app/src/components/Root/Root.tsx` + + ```diff + const SidebarLogo = () => { + const classes = useSidebarLogoStyles(); + const { isOpen } = useContext(SidebarContext); + + return ( +
+ + {isOpen ? : } + +
+ ); + }; + ``` + +- 30f04d1497: Components ``, ``, ``, and `` are now deprecated in `@backstage/plugin-search` and should be imported from `@backstage/plugin-search-react` instead. + + To upgrade your App, update the following in `packages/app/src/components/search/SearchPage.tsx`: + + ```diff + import { + DefaultResultListItem + SearchBar + SearchFilter + SearchResult + - } from `@backstage/plugin-search`; + + } from `@backstage/plugin-search-react`; + ``` + +- f7f5a6c6a3: It's now possible to pass result item components a `rank`, which is captured by the analytics API when a user clicks on a search result. To apply this change, update your `/packages/app/src/components/search/SearchPage.tsx` in the following way: + + ```diff + // ... + + {({ results }) => ( + + - {results.map(({ type, document, highlight }) => { + + {results.map(({ type, document, highlight, rank }) => { + switch (type) { + case 'software-catalog': + return ( + + ); + case 'techdocs': + return ( + + ); + default: + return ( + + ); + } + })} + + )} + + // ... + ``` + + If you have implemented a custom Search Modal or other custom search experience, you will want to make similar changes in those components. + +- aaf7652084: Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. + + ```diff + - "cypress": "^7.3.0", + + "cypress": "^9.7.0", + ``` + +- 141a1caebe: Updated the auth backend setup in the template to include a guest sign-in resolver in order to make it quicker to get up and running with a basic sign-in setup. There is no need to update existing apps to match this change, but in case you want to use the guest sign-in resolver you can find it at + +## @backstage/dev-utils@1.0.3 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/app-defaults@1.0.3 + +## @backstage/integration@1.2.1 + +### Patch Changes + +- 72dfcbc8bf: Gerrit Integration: Handle absolute paths in `resolveUrl` properly. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- e37c71b5a4: Updated to support deployments of Azure DevOps Server under TFS or similar sub path + +## @backstage/integration-react@1.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/release-manifests@0.0.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +## @techdocs/cli@1.1.2 + +### Patch Changes + +- f96e98f4cd: Updated dependency `cypress` to `^10.0.0`. +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-techdocs-node@1.1.2 + - @backstage/catalog-model@1.0.3 + +## @backstage/test-utils@1.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/plugin-permission-react@0.4.2 + +## @backstage/plugin-adr@0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- a6458a120b: Adding term highlighting support to `AdrSearchResultListItem` +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-adr-common@0.1.1 + +## @backstage/plugin-adr-backend@0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-adr-common@0.1.1 + +## @backstage/plugin-adr-common@0.1.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-airbrake@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/dev-utils@1.0.3 + +## @backstage/plugin-airbrake-backend@0.2.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-allure@0.1.22 + +### Patch Changes + +- 6387b7a98a: Add export for `isAllureReportAvailable` and `ALLURE_PROJECT_ID_ANNOTATION` so it can be used outside of plugin +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-analytics-module-ga@0.1.17 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-apache-airflow@0.1.14 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-api-docs@0.8.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 811ff4bcf4: Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS + vulnerability](https://github.com/advisories/GHSA-hqq7-2q2v-82xq) in `@braintree/sanitize-url` +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-app-backend@0.3.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/config-loader@1.1.2 + +## @backstage/plugin-auth-backend@0.14.1 + +### Patch Changes + +- 5e055079f0: Increased key field size for signing_keys table to account for larger signature keys +- f6aae90e4e: Added configurable algorithm field for TokenFactory +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- bc6fb57094: Updated dependency `passport` to `^0.6.0`. +- 467facc6ea: Fix improper binding of 'this' in ALB Auth provider +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-auth-node@0.2.2 + +### Patch Changes + +- 5ca0b86b88: Address corner cases where the key store was not being created at startup +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 9079a78078: Added configurable algorithms array for IdentityClient +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-azure-devops@0.1.22 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-azure-devops-backend@0.3.12 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-badges@0.2.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-badges-backend@0.1.27 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-bazaar@0.1.21 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/cli@0.17.2 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-bazaar-backend@0.1.17 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/backend-test-utils@0.1.25 + +## @backstage/plugin-bitrise@0.1.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-aws@0.1.6 + +### Patch Changes + +- eb2544b21b: Inline config interfaces +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-azure@0.1.4 + +### Patch Changes + +- b8884fd579: Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. + + In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: azure-discovery + target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + azureDevOps: + anyProviderId: + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + Visit for more details and options on configuration. + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-gerrit@0.1.1 + +### Patch Changes + +- eb2544b21b: Inline config interfaces +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-github@0.1.4 + +### Patch Changes + +- 8335a6f6f3: Adds an edit URL to the GitHub Teams Group entities. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-gitlab@0.1.4 + +### Patch Changes + +- eea8126171: Add a new provider `GitlabDiscoveryEntityProvider` as replacement for `GitlabDiscoveryProcessor` + + In order to migrate from the `GitlabDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: gitlab-discovery + target: https://company.gitlab.com/prefix/*/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { GitlabDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-gitlab'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor( + GitLabDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), + ); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + gitlab: + yourProviderId: # identifies your dataset / provider independent of config changes + host: gitlab-host # Identifies one of the hosts set up in the integrations + branch: main # Optional. Uses `master` as default + group: example-group # Group and subgroup (if needed) to look for repositories + entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-gitlab'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + ...GitlabDiscoveryEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + +- bad907d794: The `last_activity_after` timestamp is now being omitted when querying the GitLab API for the first time. + +- 3ac4522537: do not create location object if file with component definition do not exists in project, that decrease count of request to gitlab with 404 status code. Now we can create processor with new flag to enable this logic: + + ```ts + const processor = GitLabDiscoveryProcessor.fromConfig(config, { + logger, + skipReposWithoutExactFileMatch: true, + }); + ``` + + **WARNING:** This new functionality does not support globs in the repo file path + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-backend-module-msgraph@0.3.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-common@1.0.3 + +### Patch Changes + +- 7d8acfc32e: Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-catalog-graph@0.2.18 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-graphql@0.3.10 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-import@0.8.9 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 05be420971: Updated catalog import page text so they go in the correct hierarchy order +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-catalog-react@1.1.1 + +### Patch Changes + +- 1f70704580: Accessibility updates: + + - Wrapped the `EntityLifecyclePicker`, `EntityOwnerPicker`, `EntityTagPicker`, in `label` elements + - Changed group name `Typography` component to `span` (from default `h6`), added `aria-label` to the `List` component, and `role` of `menuitem` to the container of the `MenuItem` component + +- 568f2d1e75: Table component no longer has drag and drop columns by default + +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + +## @backstage/plugin-cicd-statistics@0.1.8 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-cicd-statistics-module-gitlab@0.1.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-cicd-statistics@0.1.8 + +## @backstage/plugin-circleci@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-cloudbuild@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-code-climate@0.1.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-code-coverage@0.1.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-code-coverage-backend@0.1.31 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-codescene@0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-config-schema@0.1.29 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-cost-insights@0.11.28 + +### Patch Changes + +- dea1f32f44: In the README, a old path of the `sidebar` was updated to the current path. +- eb2544b21b: Add missing `export` in configuration schema. +- 2fc98ac50c: Fix broken app-config in the example in the README +- 2297510941: Fixed css to show large tooltips on cost overview graph +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-explore@0.3.37 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-explore-react@0.0.18 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-explore-react@0.0.18 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-firehydrant@0.1.23 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-fossa@0.2.38 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-gcalendar@0.3.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-gcp-projects@0.3.25 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-git-release-manager@0.3.19 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-github-actions@0.5.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-github-deployments@0.1.37 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-gitops-profiles@0.3.24 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-gocd@0.1.12 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-graphiql@0.2.38 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 464c33f932: Fix for custom headers not being included in requests. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-graphql-backend@0.1.23 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-catalog-graphql@0.3.10 + +## @backstage/plugin-home@0.4.22 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-stack-overflow@0.1.2 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-ilert@0.1.32 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-jenkins@0.7.5 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-jenkins-common@0.1.5 + +## @backstage/plugin-jenkins-backend@0.1.23 + +### Patch Changes + +- 83f6a64d2c: bug fix: provide backstage token for rebuild api call +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-jenkins-common@0.1.5 + +## @backstage/plugin-jenkins-common@0.1.5 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-kafka@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-kafka-backend@0.2.26 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-kubernetes@0.6.6 + +### Patch Changes + +- 4328737af6: Add support to fetch data for Stateful Sets and display an accordion in the same way as with Deployments +- b9b8bbc7d9: show request/limit CPU and Memory on the UI +- 5553f09e80: ability to configure refresh interval on Kubernetes tab +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 81304e3e91: Fix for HPA matching when deploying same HPA in multiple namespaces +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/plugin-kubernetes-common@0.3.0 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-lighthouse@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-newrelic@0.3.24 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-newrelic-dashboard@0.1.14 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-org@0.5.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- 306d0b4fdd: Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: + + ```diff + // app/src/components/Root/Root.tsx + + + //... + }> + {/* Global nav, not org-specific */} + //... + + + //... + + + + ``` + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-periskop@0.1.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-periskop-backend@0.1.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-permission-backend@0.5.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-permission-node@0.6.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-permission-common@0.6.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +## @backstage/plugin-permission-node@0.6.2 + +### Patch Changes + +- 58426f9c0f: Added a new endpoint for aggregating permission metadata from a plugin backend: `/.well-known/backstage/permissions/metadata` + + By default, the metadata endpoint will return information about the permission rules supported by the plugin. Plugin authors can also provide an optional `permissions` parameter to `createPermissionIntegrationRouter`. If provided, these `Permission` objects will be included in the metadata returned by this endpoint. The `permissions` parameter will eventually be required in a future breaking change. + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-permission-react@0.4.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-proxy-backend@0.2.27 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-rollbar@0.4.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-rollbar-backend@0.1.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-scaffolder-backend-module-cookiecutter@0.2.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + +## @backstage/plugin-scaffolder-backend-module-rails@0.4.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + +## @backstage/plugin-scaffolder-backend-module-yeoman@0.2.6 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + +## @backstage/plugin-scaffolder-common@1.1.1 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-search-backend@0.5.3 + +### Patch Changes + +- 7d8acfc32e: `RouterOptions` and `createRouter` now marked as public exports +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-search-backend-node@0.6.2 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-search-backend-module-elasticsearch@0.1.5 + +### Patch Changes + +- 281cec1b61: Use more precise matching for query filters + +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. + +- ddce23d080: Now possible to set a custom index template on the elasticsearch search engine. + +- 7d8acfc32e: Additional types now exported publicly: + + - ElasticSearchAgentOptions + - ElasticSearchConcreteQuery + - ElasticSearchQueryTranslator + - ElasticSearchConnectionConstructor, + - ElasticSearchTransportConstructor, + - ElasticSearchNodeOptions, + - ElasticSearchOptions, + - ElasticSearchAuth, + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-backend-node@0.6.2 + +## @backstage/plugin-search-backend-module-pg@0.3.4 + +### Patch Changes + +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-search-backend-node@0.6.2 + +## @backstage/plugin-search-backend-node@0.6.2 + +### Patch Changes + +- e7794a0aaa: propagate indexing errors so they don't appear successful to the task scheduler + +- 3bb25a9acc: Introducing a `NewlineDelimitedJsonCollatorFactory`, which can be used to create search indices from newline delimited JSON files stored in external storage readable via a configured `UrlReader` instance. + + This is useful if you have an independent process periodically generating `*.ndjson` files consisting of `IndexableDocument` objects and want to be able to generate a fresh index based on the latest version of such a file. + +- 3bb25a9acc: Fixed a bug that prevented `TestPipeline.withSubject` from identifying valid `Readable` subjects that were technically transform streams. + +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. + +- 7d8acfc32e: Replaced all `@beta` exports with `@public` exports + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-search-common@0.3.5 + +### Patch Changes + +- 7d8acfc32e: `@beta` exports now replaced with `@public` exports +- 484afdf1dc: Added an optional `rank` attribute to the `Result` type. This represents the result rank (starting at 1) for a given result in a result set for a given search. +- Updated dependencies + - @backstage/plugin-permission-common@0.6.2 + +## @backstage/plugin-search-react@0.2.1 + +### Patch Changes + +- 8809159148: Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-sentry@0.3.44 + +### Patch Changes + +- c55f6cb22d: Exported `isSentryAvailable` which can be used to determine if sentry is available. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-shortcuts@0.2.7 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-sonarqube@0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-splunk-on-call@0.3.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-stack-overflow@0.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-home@0.4.22 + +## @backstage/plugin-stack-overflow-backend@0.1.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + +## @backstage/plugin-tech-insights@0.2.2 + +### Patch Changes + +- 09d2f4d179: Export TechInsightsClient so it may be extended by custom implementations +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-tech-insights-backend@0.4.1 + +### Patch Changes + +- 4fee8f59e3: Updated tech-insights fetch/latest endpoint to return the actual latest row based on the timestamp + +- aa15229ec3: Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks + + Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. + +- Updated dependencies + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-tech-insights-node@0.3.1 + +## @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-tech-insights-node@0.3.1 + +## @backstage/plugin-tech-insights-node@0.3.1 + +### Patch Changes + +- aa15229ec3: Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks + + Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. + +- Updated dependencies + - @backstage/backend-common@0.14.0 + +## @backstage/plugin-tech-radar@0.5.13 + +### Patch Changes + +- bb31e5489c: Updated dependency `d3-force` to `^3.0.0`. + Updated dependency `@types/d3-force` to `^3.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-techdocs-addons-test-utils@1.0.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- d047d81295: Update default mock +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/plugin-techdocs-react@1.0.1 + +## @backstage/plugin-techdocs-backend@1.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + +- 61fba6e50b: In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. + +- 5d66d4ff67: Output logs from a TechDocs build to a logging transport in addition to existing + frontend event stream, for capturing these logs to other sources. + + This allows users to capture debugging information around why tech docs fail to build + without needing to rely on end users capturing information from their web browser. + + The most common use case is to log to the same place as the rest of the backend + application logs. + + Sample usage: + + import { DockerContainerRunner } from '@backstage/backend-common'; + import { + createRouter, + Generators, + Preparers, + Publisher, + } from '@backstage/plugin-techdocs-backend'; + import Docker from 'dockerode'; + import { Router } from 'express'; + import { PluginEnvironment } from '../types'; + + export default async function createPlugin( + env: PluginEnvironment, + ): Promise { + const preparers = await Preparers.fromConfig(env.config, { + logger: env.logger, + reader: env.reader, + }); + + const dockerClient = new Docker(); + const containerRunner = new DockerContainerRunner({ dockerClient }); + + const generators = await Generators.fromConfig(env.config, { + logger: env.logger, + containerRunner, + }); + + const publisher = await Publisher.fromConfig(env.config, { + logger: env.logger, + discovery: env.discovery, + }); + + await publisher.getReadiness(); + + return await createRouter({ + preparers, + generators, + publisher, + logger: env.logger, + // Passing a buildLogTransport as a parameter in createRouter will enable + // capturing build logs to a backend log stream + buildLogTransport: env.logger, + config: env.config, + discovery: env.discovery, + cache: env.cache, + }); + } + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/plugin-techdocs-node@1.1.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-techdocs-module-addons-contrib@1.0.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-techdocs-react@1.0.1 + +## @backstage/plugin-techdocs-node@1.1.2 + +### Patch Changes + +- f5283a42e2: Updated dependency `@google-cloud/storage` to `^6.0.0`. +- 2c048f8b90: Updated deprecated use of `express`' `res.redirect()` method when handling legacy path casing. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-techdocs-react@1.0.1 + +### Patch Changes + +- 3b45ad701f: Creates a `TechDocsShadowDom` component that takes a tree of elements and an `onAppend` handler: + + - Calls the `onAppend` handler when appending the element tree to the shadow root; + - Also dispatches an event when styles are loaded to let transformers know that the computed styles are ready to be consumed. + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-todo@0.2.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-todo-backend@0.1.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + +## @backstage/plugin-user-settings@0.4.5 + +### Patch Changes + +- 9d2d6a0cea: Added new `` to show the result of the `identityApi.getBackstageIdentity()` call to help debug ownership issues. The new card has been added to the user settings page. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @backstage/plugin-xcmetrics@0.2.26 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## example-app@0.2.72 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-kubernetes@0.6.6 + - @backstage/plugin-cost-insights@0.11.28 + - @backstage/plugin-scaffolder@1.3.0 + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/cli@0.17.2 + - @backstage/plugin-user-settings@0.4.5 + - @backstage/plugin-pagerduty@0.4.0 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search@0.9.0 + - @backstage/plugin-search-react@0.2.1 + - @backstage/plugin-sentry@0.3.44 + - @backstage/plugin-tech-insights@0.2.2 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/plugin-dynatrace@0.1.0 + - @backstage/plugin-tech-radar@0.5.13 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-airbrake@0.3.6 + - @backstage/plugin-apache-airflow@0.1.14 + - @backstage/plugin-api-docs@0.8.6 + - @backstage/plugin-azure-devops@0.1.22 + - @backstage/plugin-badges@0.2.30 + - @backstage/plugin-catalog-import@0.8.9 + - @backstage/plugin-circleci@0.3.6 + - @backstage/plugin-cloudbuild@0.3.6 + - @backstage/plugin-code-coverage@0.1.33 + - @backstage/plugin-explore@0.3.37 + - @backstage/plugin-gcalendar@0.3.2 + - @backstage/plugin-gcp-projects@0.3.25 + - @backstage/plugin-github-actions@0.5.6 + - @backstage/plugin-gocd@0.1.12 + - @backstage/plugin-graphiql@0.2.38 + - @backstage/plugin-home@0.4.22 + - @backstage/plugin-jenkins@0.7.5 + - @backstage/plugin-kafka@0.3.6 + - @backstage/plugin-lighthouse@0.3.6 + - @backstage/plugin-newrelic@0.3.24 + - @backstage/plugin-org@0.5.6 + - @backstage/plugin-rollbar@0.4.6 + - @backstage/plugin-shortcuts@0.2.7 + - @backstage/plugin-stack-overflow@0.1.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.0.1 + - @backstage/plugin-todo@0.2.8 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + - @backstage/app-defaults@1.0.3 + - @backstage/plugin-catalog-graph@0.2.18 + - @backstage/plugin-newrelic-dashboard@0.1.14 + - @backstage/plugin-permission-react@0.4.2 + +## example-backend@0.2.72 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-tech-insights-backend@0.4.1 + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/plugin-auth-backend@0.14.1 + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/plugin-kubernetes-backend@0.6.0 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-search-backend@0.5.3 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/integration@1.2.1 + - @backstage/plugin-jenkins-backend@0.1.23 + - @backstage/plugin-search-backend-node@0.6.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-app-backend@0.3.33 + - @backstage/plugin-azure-devops-backend@0.3.12 + - @backstage/plugin-code-coverage-backend@0.1.31 + - @backstage/plugin-graphql-backend@0.1.23 + - @backstage/plugin-permission-backend@0.5.8 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/plugin-rollbar-backend@0.1.30 + - @backstage/plugin-techdocs-backend@1.1.2 + - @backstage/plugin-todo-backend@0.1.30 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.5 + - @backstage/plugin-search-backend-module-pg@0.3.4 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-tech-insights-node@0.3.1 + - example-app@0.2.72 + - @backstage/plugin-badges-backend@0.1.27 + - @backstage/plugin-kafka-backend@0.2.26 + - @backstage/plugin-proxy-backend@0.2.27 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.1 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17 + +## techdocs-cli-embedded-app@0.2.71 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/cli@0.17.2 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + - @backstage/app-defaults@1.0.3 + +## @internal/plugin-todo-list@1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + +## @internal/plugin-todo-list-backend@1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + +## @internal/plugin-todo-list-common@1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-permission-common@0.6.2 diff --git a/package.json b/package.json index d4881764ab..dd2a85e757 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "@types/react": "^17", "@types/react-dom": "^17" }, - "version": "1.3.0-next.2", + "version": "1.3.0", "dependencies": { "@manypkg/get-packages": "^1.1.3", "@microsoft/api-documenter": "^7.17.11", diff --git a/packages/app-defaults/CHANGELOG.md b/packages/app-defaults/CHANGELOG.md index 7fb3c38e8b..fb1756eba2 100644 --- a/packages/app-defaults/CHANGELOG.md +++ b/packages/app-defaults/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/app-defaults +## 1.0.3 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + ## 1.0.3-next.1 ### Patch Changes diff --git a/packages/app-defaults/package.json b/packages/app-defaults/package.json index c27465d605..0a35b16c3a 100644 --- a/packages/app-defaults/package.json +++ b/packages/app-defaults/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/app-defaults", "description": "Provides the default wiring of a Backstage App", - "version": "1.0.3-next.1", + "version": "1.0.3", "private": false, "publishConfig": { "access": "public", @@ -33,10 +33,10 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-permission-react": "^0.4.2-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-permission-react": "^0.4.2", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -46,8 +46,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@types/jest": "^26.0.7", diff --git a/packages/app/CHANGELOG.md b/packages/app/CHANGELOG.md index 0cb1add155..74601b6417 100644 --- a/packages/app/CHANGELOG.md +++ b/packages/app/CHANGELOG.md @@ -1,5 +1,64 @@ # example-app +## 0.2.72 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-kubernetes@0.6.6 + - @backstage/plugin-cost-insights@0.11.28 + - @backstage/plugin-scaffolder@1.3.0 + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/cli@0.17.2 + - @backstage/plugin-user-settings@0.4.5 + - @backstage/plugin-pagerduty@0.4.0 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search@0.9.0 + - @backstage/plugin-search-react@0.2.1 + - @backstage/plugin-sentry@0.3.44 + - @backstage/plugin-tech-insights@0.2.2 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/plugin-dynatrace@0.1.0 + - @backstage/plugin-tech-radar@0.5.13 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-airbrake@0.3.6 + - @backstage/plugin-apache-airflow@0.1.14 + - @backstage/plugin-api-docs@0.8.6 + - @backstage/plugin-azure-devops@0.1.22 + - @backstage/plugin-badges@0.2.30 + - @backstage/plugin-catalog-import@0.8.9 + - @backstage/plugin-circleci@0.3.6 + - @backstage/plugin-cloudbuild@0.3.6 + - @backstage/plugin-code-coverage@0.1.33 + - @backstage/plugin-explore@0.3.37 + - @backstage/plugin-gcalendar@0.3.2 + - @backstage/plugin-gcp-projects@0.3.25 + - @backstage/plugin-github-actions@0.5.6 + - @backstage/plugin-gocd@0.1.12 + - @backstage/plugin-graphiql@0.2.38 + - @backstage/plugin-home@0.4.22 + - @backstage/plugin-jenkins@0.7.5 + - @backstage/plugin-kafka@0.3.6 + - @backstage/plugin-lighthouse@0.3.6 + - @backstage/plugin-newrelic@0.3.24 + - @backstage/plugin-org@0.5.6 + - @backstage/plugin-rollbar@0.4.6 + - @backstage/plugin-shortcuts@0.2.7 + - @backstage/plugin-stack-overflow@0.1.2 + - @backstage/plugin-techdocs-module-addons-contrib@1.0.1 + - @backstage/plugin-todo@0.2.8 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + - @backstage/app-defaults@1.0.3 + - @backstage/plugin-catalog-graph@0.2.18 + - @backstage/plugin-newrelic-dashboard@0.1.14 + - @backstage/plugin-permission-react@0.4.2 + ## 0.2.72-next.2 ### Patch Changes diff --git a/packages/app/package.json b/packages/app/package.json index db53e99e0f..df9119d602 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,66 +1,66 @@ { "name": "example-app", - "version": "0.2.72-next.2", + "version": "0.2.72", "private": true, "backstage": { "role": "frontend" }, "bundled": true, "dependencies": { - "@backstage/app-defaults": "^1.0.3-next.1", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/app-defaults": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/cli": "^0.17.2", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-airbrake": "^0.3.6-next.1", - "@backstage/plugin-api-docs": "^0.8.6-next.1", - "@backstage/plugin-azure-devops": "^0.1.22-next.1", - "@backstage/plugin-apache-airflow": "^0.1.14-next.1", - "@backstage/plugin-badges": "^0.2.30-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.1", - "@backstage/plugin-catalog-graph": "^0.2.18-next.1", - "@backstage/plugin-catalog-import": "^0.8.9-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-circleci": "^0.3.6-next.1", - "@backstage/plugin-cloudbuild": "^0.3.6-next.1", - "@backstage/plugin-code-coverage": "^0.1.33-next.1", - "@backstage/plugin-cost-insights": "^0.11.28-next.2", - "@backstage/plugin-dynatrace": "^0.0.0", - "@backstage/plugin-explore": "^0.3.37-next.1", - "@backstage/plugin-gcalendar": "^0.3.2-next.1", - "@backstage/plugin-gcp-projects": "^0.3.25-next.1", - "@backstage/plugin-github-actions": "^0.5.6-next.1", - "@backstage/plugin-gocd": "^0.1.12-next.1", - "@backstage/plugin-graphiql": "^0.2.38-next.1", - "@backstage/plugin-home": "^0.4.22-next.1", - "@backstage/plugin-jenkins": "^0.7.5-next.1", - "@backstage/plugin-kafka": "^0.3.6-next.1", - "@backstage/plugin-kubernetes": "^0.6.6-next.2", - "@backstage/plugin-lighthouse": "^0.3.6-next.1", - "@backstage/plugin-newrelic": "^0.3.24-next.1", - "@backstage/plugin-newrelic-dashboard": "^0.1.14-next.1", - "@backstage/plugin-org": "^0.5.6-next.2", - "@backstage/plugin-pagerduty": "0.4.0-next.2", - "@backstage/plugin-permission-react": "^0.4.2-next.0", - "@backstage/plugin-rollbar": "^0.4.6-next.1", - "@backstage/plugin-scaffolder": "^1.3.0-next.2", - "@backstage/plugin-search": "^0.8.2-next.2", - "@backstage/plugin-search-react": "^0.2.1-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.1", - "@backstage/plugin-sentry": "^0.3.44-next.1", - "@backstage/plugin-shortcuts": "^0.2.7-next.1", - "@backstage/plugin-stack-overflow": "^0.1.2-next.1", - "@backstage/plugin-tech-radar": "^0.5.13-next.1", - "@backstage/plugin-techdocs": "^1.1.2-next.1", - "@backstage/plugin-techdocs-react": "^1.0.1-next.1", - "@backstage/plugin-techdocs-module-addons-contrib": "^1.0.1-next.1", - "@backstage/plugin-todo": "^0.2.8-next.1", - "@backstage/plugin-user-settings": "^0.4.5-next.1", - "@backstage/plugin-tech-insights": "^0.2.2-next.1", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-airbrake": "^0.3.6", + "@backstage/plugin-api-docs": "^0.8.6", + "@backstage/plugin-azure-devops": "^0.1.22", + "@backstage/plugin-apache-airflow": "^0.1.14", + "@backstage/plugin-badges": "^0.2.30", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-catalog-graph": "^0.2.18", + "@backstage/plugin-catalog-import": "^0.8.9", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-circleci": "^0.3.6", + "@backstage/plugin-cloudbuild": "^0.3.6", + "@backstage/plugin-code-coverage": "^0.1.33", + "@backstage/plugin-cost-insights": "^0.11.28", + "@backstage/plugin-dynatrace": "^0.1.0", + "@backstage/plugin-explore": "^0.3.37", + "@backstage/plugin-gcalendar": "^0.3.2", + "@backstage/plugin-gcp-projects": "^0.3.25", + "@backstage/plugin-github-actions": "^0.5.6", + "@backstage/plugin-gocd": "^0.1.12", + "@backstage/plugin-graphiql": "^0.2.38", + "@backstage/plugin-home": "^0.4.22", + "@backstage/plugin-jenkins": "^0.7.5", + "@backstage/plugin-kafka": "^0.3.6", + "@backstage/plugin-kubernetes": "^0.6.6", + "@backstage/plugin-lighthouse": "^0.3.6", + "@backstage/plugin-newrelic": "^0.3.24", + "@backstage/plugin-newrelic-dashboard": "^0.1.14", + "@backstage/plugin-org": "^0.5.6", + "@backstage/plugin-pagerduty": "0.4.0", + "@backstage/plugin-permission-react": "^0.4.2", + "@backstage/plugin-rollbar": "^0.4.6", + "@backstage/plugin-scaffolder": "^1.3.0", + "@backstage/plugin-search": "^0.9.0", + "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-sentry": "^0.3.44", + "@backstage/plugin-shortcuts": "^0.2.7", + "@backstage/plugin-stack-overflow": "^0.1.2", + "@backstage/plugin-tech-radar": "^0.5.13", + "@backstage/plugin-techdocs": "^1.2.0", + "@backstage/plugin-techdocs-react": "^1.0.1", + "@backstage/plugin-techdocs-module-addons-contrib": "^1.0.1", + "@backstage/plugin-todo": "^0.2.8", + "@backstage/plugin-user-settings": "^0.4.5", + "@backstage/plugin-tech-insights": "^0.2.2", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -81,7 +81,7 @@ "zen-observable": "^0.8.15" }, "devDependencies": { - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/test-utils": "^1.1.1", "@rjsf/core": "^3.2.1", "@testing-library/cypress": "^8.0.2", "@testing-library/jest-dom": "^5.10.1", diff --git a/packages/backend-common/CHANGELOG.md b/packages/backend-common/CHANGELOG.md index 974e03666d..9e5a28f76b 100644 --- a/packages/backend-common/CHANGELOG.md +++ b/packages/backend-common/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/backend-common +## 0.14.0 + +### Minor Changes + +- 55647ec7df: **BREAKING**: Server-to-server tokens that are authenticated by the `ServerTokenManager` now must have an `exp` claim that has not expired. Tokens where the `exp` claim is in the past or missing are considered invalid and will throw an error. This is a followup to the deprecation from the `1.2` release of Backstage where perpetual tokens were deprecated. Be sure to update any usage of the `getToken()` method to have it be called every time a token is needed. Do not store tokens for later use. + +### Patch Changes + +- f72a6b8c62: Applied the `luxon` dependency fix from the `0.13.4` patch release. +- 5b22a8c97f: Applied the AWS S3 reading patch from the `0.13.5` patch release. +- f5283a42e2: Updated dependency `@google-cloud/storage` to `^6.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/integration@1.2.1 + - @backstage/config-loader@1.1.2 + ## 0.14.0-next.2 ### Minor Changes diff --git a/packages/backend-common/package.json b/packages/backend-common/package.json index f7f34870ba..d4da05eaa6 100644 --- a/packages/backend-common/package.json +++ b/packages/backend-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-common", "description": "Common functionality library for Backstage backends", - "version": "0.14.0-next.2", + "version": "0.14.0", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -36,9 +36,9 @@ "dependencies": { "@backstage/cli-common": "^0.1.9", "@backstage/config": "^1.0.1", - "@backstage/config-loader": "^1.1.2-next.0", + "@backstage/config-loader": "^1.1.2", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", + "@backstage/integration": "^1.2.1", "@backstage/types": "^1.0.0", "@google-cloud/storage": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -91,8 +91,8 @@ } }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/archiver": "^5.1.0", "@types/base64-stream": "^1.0.2", "@types/compression": "^1.7.0", diff --git a/packages/backend-tasks/CHANGELOG.md b/packages/backend-tasks/CHANGELOG.md index 34ba7b9cc3..34be280bbc 100644 --- a/packages/backend-tasks/CHANGELOG.md +++ b/packages/backend-tasks/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/backend-tasks +## 0.3.2 + +### Patch Changes + +- fde10d24f6: Allow tasks that fail to retry on a loop emitting a warning log every time it fails with the amount of attempts it has +- f7146b516f: Updated dependency `cron` to `^2.0.0`. + Updated dependency `@types/cron` to `^2.0.0`. +- 7f108513b8: Add error logging when a background task throws an error rather than silently swallowing it. +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.3.2-next.2 ### Patch Changes diff --git a/packages/backend-tasks/package.json b/packages/backend-tasks/package.json index 7276bb3e9d..e96a71c597 100644 --- a/packages/backend-tasks/package.json +++ b/packages/backend-tasks/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-tasks", "description": "Common distributed task management library for Backstage backends", - "version": "0.3.2-next.2", + "version": "0.3.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -33,7 +33,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/types": "^1.0.0", @@ -48,8 +48,8 @@ "zod": "^3.9.5" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/cron": "^2.0.0", "wait-for-expect": "^3.0.2" }, diff --git a/packages/backend-test-utils/CHANGELOG.md b/packages/backend-test-utils/CHANGELOG.md index cdb0403436..104f17a2e8 100644 --- a/packages/backend-test-utils/CHANGELOG.md +++ b/packages/backend-test-utils/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/backend-test-utils +## 0.1.25 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/cli@0.17.2 + - @backstage/backend-common@0.14.0 + ## 0.1.25-next.2 ### Patch Changes diff --git a/packages/backend-test-utils/package.json b/packages/backend-test-utils/package.json index 10131b1387..abc55944ea 100644 --- a/packages/backend-test-utils/package.json +++ b/packages/backend-test-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-test-utils", "description": "Test helpers library for Backstage backends", - "version": "0.1.25-next.2", + "version": "0.1.25", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -34,8 +34,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/cli": "^0.17.2", "@backstage/config": "^1.0.1", "better-sqlite3": "^7.5.0", "knex": "^1.0.2", @@ -46,7 +46,7 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/packages/backend/CHANGELOG.md b/packages/backend/CHANGELOG.md index 1bab45135a..1602a34c37 100644 --- a/packages/backend/CHANGELOG.md +++ b/packages/backend/CHANGELOG.md @@ -1,5 +1,44 @@ # example-backend +## 0.2.72 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-tech-insights-backend@0.4.1 + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/plugin-auth-backend@0.14.1 + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/plugin-kubernetes-backend@0.6.0 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-search-backend@0.5.3 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/integration@1.2.1 + - @backstage/plugin-jenkins-backend@0.1.23 + - @backstage/plugin-search-backend-node@0.6.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-app-backend@0.3.33 + - @backstage/plugin-azure-devops-backend@0.3.12 + - @backstage/plugin-code-coverage-backend@0.1.31 + - @backstage/plugin-graphql-backend@0.1.23 + - @backstage/plugin-permission-backend@0.5.8 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/plugin-rollbar-backend@0.1.30 + - @backstage/plugin-techdocs-backend@1.1.2 + - @backstage/plugin-todo-backend@0.1.30 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.5 + - @backstage/plugin-search-backend-module-pg@0.3.4 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-tech-insights-node@0.3.1 + - example-app@0.2.72 + - @backstage/plugin-badges-backend@0.1.27 + - @backstage/plugin-kafka-backend@0.2.26 + - @backstage/plugin-proxy-backend@0.2.27 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.1 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.17 + ## 0.2.72-next.2 ### Patch Changes diff --git a/packages/backend/package.json b/packages/backend/package.json index ce11fa5c0f..9dedf360c1 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -1,6 +1,6 @@ { "name": "example-backend", - "version": "0.2.72-next.2", + "version": "0.2.72", "main": "dist/index.cjs.js", "types": "src/index.ts", "license": "Apache-2.0", @@ -26,39 +26,39 @@ "build-image": "docker build ../.. -f Dockerfile --tag example-backend" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-app-backend": "^0.3.33-next.2", - "@backstage/plugin-auth-backend": "^0.14.1-next.2", - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/plugin-azure-devops-backend": "^0.3.12-next.2", - "@backstage/plugin-badges-backend": "^0.1.27-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", - "@backstage/plugin-code-coverage-backend": "^0.1.31-next.2", - "@backstage/plugin-graphql-backend": "^0.1.23-next.2", - "@backstage/plugin-jenkins-backend": "^0.1.23-next.2", - "@backstage/plugin-kubernetes-backend": "^0.6.0-next.2", - "@backstage/plugin-kafka-backend": "^0.2.26-next.2", - "@backstage/plugin-permission-backend": "^0.5.8-next.2", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.2", - "@backstage/plugin-proxy-backend": "^0.2.27-next.1", - "@backstage/plugin-rollbar-backend": "^0.1.30-next.2", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", - "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.1-next.1", - "@backstage/plugin-search-backend": "^0.5.3-next.2", - "@backstage/plugin-search-backend-node": "^0.6.2-next.2", - "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.5-next.2", - "@backstage/plugin-search-backend-module-pg": "^0.3.4-next.2", - "@backstage/plugin-techdocs-backend": "^1.1.2-next.2", - "@backstage/plugin-tech-insights-backend": "^0.4.1-next.2", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", - "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.17-next.1", - "@backstage/plugin-todo-backend": "^0.1.30-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-app-backend": "^0.3.33", + "@backstage/plugin-auth-backend": "^0.14.1", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-azure-devops-backend": "^0.3.12", + "@backstage/plugin-badges-backend": "^0.1.27", + "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/plugin-code-coverage-backend": "^0.1.31", + "@backstage/plugin-graphql-backend": "^0.1.23", + "@backstage/plugin-jenkins-backend": "^0.1.23", + "@backstage/plugin-kubernetes-backend": "^0.6.0", + "@backstage/plugin-kafka-backend": "^0.2.26", + "@backstage/plugin-permission-backend": "^0.5.8", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.2", + "@backstage/plugin-proxy-backend": "^0.2.27", + "@backstage/plugin-rollbar-backend": "^0.1.30", + "@backstage/plugin-scaffolder-backend": "^1.3.0", + "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.1", + "@backstage/plugin-search-backend": "^0.5.3", + "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.5", + "@backstage/plugin-search-backend-module-pg": "^0.3.4", + "@backstage/plugin-techdocs-backend": "^1.1.2", + "@backstage/plugin-tech-insights-backend": "^0.4.1", + "@backstage/plugin-tech-insights-node": "^0.3.1", + "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.17", + "@backstage/plugin-todo-backend": "^0.1.30", "@gitbeaker/node": "^35.1.0", "@octokit/rest": "^18.5.3", "better-sqlite3": "^7.5.0", @@ -75,7 +75,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/dockerode": "^3.3.0", "@types/express": "^4.17.6", "@types/express-serve-static-core": "^4.17.5", diff --git a/packages/catalog-client/CHANGELOG.md b/packages/catalog-client/CHANGELOG.md index 8da38a2ecd..93d232dc24 100644 --- a/packages/catalog-client/CHANGELOG.md +++ b/packages/catalog-client/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/catalog-client +## 1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 35bc0a7c27: Update README to point to catalog-react for frontend usage +- Updated dependencies + - @backstage/catalog-model@1.0.3 + ## 1.0.3-next.0 ### Patch Changes diff --git a/packages/catalog-client/package.json b/packages/catalog-client/package.json index 1bb3732d29..76818ed10f 100644 --- a/packages/catalog-client/package.json +++ b/packages/catalog-client/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/catalog-client", "description": "An isomorphic client for the catalog backend", - "version": "1.0.3-next.0", + "version": "1.0.3", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,12 +33,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/errors": "^1.0.0", "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "msw": "^0.42.0" }, diff --git a/packages/catalog-model/CHANGELOG.md b/packages/catalog-model/CHANGELOG.md index b80f10af1a..7d491dad5b 100644 --- a/packages/catalog-model/CHANGELOG.md +++ b/packages/catalog-model/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/catalog-model +## 1.0.3 + +### Patch Changes + +- 131a99e909: Added targetRef to common.schema.json to match the Typescript type + ## 1.0.3-next.0 ### Patch Changes diff --git a/packages/catalog-model/package.json b/packages/catalog-model/package.json index 0d10fdd96c..328482fd24 100644 --- a/packages/catalog-model/package.json +++ b/packages/catalog-model/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/catalog-model", "description": "Types and validators that help describe the model of a Backstage Catalog", - "version": "1.0.3-next.0", + "version": "1.0.3", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -43,7 +43,7 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "@types/json-schema": "^7.0.5", "@types/lodash": "^4.14.151", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 9c91144996..4da56c18bd 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/cli +## 0.17.2 + +### Patch Changes + +- 026cfe525a: Fix the public path configuration of the frontend app build so that a trailing `/` is always appended when needed. +- 4f73352608: Updated Lockfile to support new versions of yarn as well as the legacy 1 version +- b8970b8941: Improved the `create-github-app` permissions selection prompt by converting it into a multi-select with clearer descriptions. The `members` permission is now also included in the list which is required for ingesting user data into the catalog. +- bd58365d09: Updated dependency `run-script-webpack-plugin` to `^0.0.14`. +- 9002ebd76b: Updated dependency `@rollup/plugin-commonjs` to `^22.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 1a33e8b287: Updated dependency `minimatch` to `5.1.0`. +- 6de866ea74: Added console warning to frontend start when the `app.baseUrl` and `backend.baseUrl` are identical +- Updated dependencies + - @backstage/config-loader@1.1.2 + - @backstage/release-manifests@0.0.4 + ## 0.17.2-next.2 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index df779d5526..071fc74f97 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/cli", "description": "CLI for developing Backstage plugins and apps", - "version": "0.17.2-next.2", + "version": "0.17.2", "private": false, "publishConfig": { "access": "public" @@ -33,9 +33,9 @@ "dependencies": { "@backstage/cli-common": "^0.1.9", "@backstage/config": "^1.0.1", - "@backstage/config-loader": "^1.1.2-next.0", + "@backstage/config-loader": "^1.1.2", "@backstage/errors": "^1.0.0", - "@backstage/release-manifests": "^0.0.4-next.0", + "@backstage/release-manifests": "^0.0.4", "@backstage/types": "^1.0.0", "@hot-loader/react-dom-v16": "npm:@hot-loader/react-dom@^16.0.2", "@hot-loader/react-dom-v17": "npm:@hot-loader/react-dom@^17.0.2", @@ -126,13 +126,13 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15", "@types/diff": "^5.0.0", "@types/express": "^4.17.6", diff --git a/packages/config-loader/CHANGELOG.md b/packages/config-loader/CHANGELOG.md index 246a1d83d9..d9228aa091 100644 --- a/packages/config-loader/CHANGELOG.md +++ b/packages/config-loader/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/config-loader +## 1.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + ## 1.1.2-next.0 ### Patch Changes diff --git a/packages/config-loader/package.json b/packages/config-loader/package.json index b51076db2e..3448b336b7 100644 --- a/packages/config-loader/package.json +++ b/packages/config-loader/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/config-loader", "description": "Config loading functionality used by Backstage backend, and CLI", - "version": "1.1.2-next.0", + "version": "1.1.2", "private": false, "publishConfig": { "access": "public", diff --git a/packages/core-app-api/CHANGELOG.md b/packages/core-app-api/CHANGELOG.md index 06bbc41561..8d78e51c62 100644 --- a/packages/core-app-api/CHANGELOG.md +++ b/packages/core-app-api/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/core-app-api +## 1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 19781483a2: Handle URLs as the first argument to `fetchApi`, when using the `plugin:` protocol +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + ## 1.0.3-next.0 ### Patch Changes diff --git a/packages/core-app-api/package.json b/packages/core-app-api/package.json index dbb94edc1b..cbf9d7eb40 100644 --- a/packages/core-app-api/package.json +++ b/packages/core-app-api/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-app-api", "description": "Core app API used by Backstage apps", - "version": "1.0.3-next.0", + "version": "1.0.3", "private": false, "publishConfig": { "access": "public", @@ -34,7 +34,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/types": "^1.0.0", "@backstage/version-bridge": "^1.0.1", "@types/prop-types": "^15.7.3", @@ -49,8 +49,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/core-components/CHANGELOG.md b/packages/core-components/CHANGELOG.md index d7c89e25d4..faec6d3d90 100644 --- a/packages/core-components/CHANGELOG.md +++ b/packages/core-components/CHANGELOG.md @@ -1,5 +1,29 @@ # @backstage/core-components +## 0.9.5 + +### Patch Changes + +- feb4e8de07: Fix EntityPage tab scrolling overflow bug on Firefox +- 65840b17be: Fix issue where right arrow icon was incorrectly added to side bar items without a sub-menu +- de593ec78f: Updated dependency `react-text-truncate` to `^0.19.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- 96d1e01641: Accessibility updates: + + - Added `aria-label` to the `Select` component + - Changed heading level used in the header of `Table` component + +- 7d355c4b3f: Fix the missing filter in the toolbar when passing a custom component in the core-components Table +- 1cf9caecd6: fix Sidebar Contexts deprecation message +- bff65e6958: The `SidebarPinStateContext` and `SidebarContext` have been deprecated and will be removed in a future release. Instead, use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()`. + + This was done to ensure that sidebar state can be shared successfully across components exported by different packages, regardless of what version of this package is resolved and installed for each individual package. + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + ## 0.9.5-next.2 ### Patch Changes diff --git a/packages/core-components/package.json b/packages/core-components/package.json index 31640de0f4..867909b3cf 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-components", "description": "Core components used by Backstage plugins and apps", - "version": "0.9.5-next.2", + "version": "0.9.5", "private": false, "publishConfig": { "access": "public", @@ -34,7 +34,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", "@backstage/version-bridge": "^1.0.1", @@ -79,9 +79,9 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.2", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/core-app-api": "^1.0.3", + "@backstage/cli": "^0.17.2", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/core-plugin-api/CHANGELOG.md b/packages/core-plugin-api/CHANGELOG.md index 7b882e889a..8b363df966 100644 --- a/packages/core-plugin-api/CHANGELOG.md +++ b/packages/core-plugin-api/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/core-plugin-api +## 1.0.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + ## 1.0.3-next.0 ### Patch Changes diff --git a/packages/core-plugin-api/package.json b/packages/core-plugin-api/package.json index afa04ed399..8d525b5f0f 100644 --- a/packages/core-plugin-api/package.json +++ b/packages/core-plugin-api/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-plugin-api", "description": "Core API used by Backstage plugins", - "version": "1.0.3-next.0", + "version": "1.0.3", "private": false, "publishConfig": { "access": "public", @@ -46,9 +46,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/create-app/CHANGELOG.md b/packages/create-app/CHANGELOG.md index 95f7c440d6..775aed3faa 100644 --- a/packages/create-app/CHANGELOG.md +++ b/packages/create-app/CHANGELOG.md @@ -1,5 +1,178 @@ # @backstage/create-app +## 0.4.28 + +### Patch Changes + +- 881fbd7e8d: Register `TechDocs` addons on catalog entity pages, follow the steps below to add them manually: + + ```diff + // packages/app/src/components/catalog/EntityPage.tsx + + + import { TechDocsAddons } from '@backstage/plugin-techdocs-react'; + + import { + + ReportIssue, + + } from '@backstage/plugin-techdocs-module-addons-contrib'; + + + const techdocsContent = ( + + + + + + + + + + + + ); + + const defaultEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + + const serviceEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + + const websiteEntityPage = ( + ... + + + {techdocsContent} + + ... + ); + ``` + +- 0e870fe0ac: Removed peer dependencies, as they are no longer needed. +- bff65e6958: Use of `SidebarContext` has been deprecated and will be removed in a future release. Instead, `useSidebarOpenState()` should be used to consume the context and `` should be used to provide it. + + To prepare your app, update `packages/app/src/components/Root/Root.tsx` as follows: + + ```diff + import { + Sidebar, + sidebarConfig, + - SidebarContext + SidebarDivider, + // ... + SidebarSpace, + + useSidebarOpenState, + } from '@backstage/core-components'; + + // ... + + const SidebarLogo = () => { + const classes = useSidebarLogoStyles(); + - const { isOpen } = useContext(SidebarContext); + + const { isOpen } = useSidebarOpenState(); + + // ... + }; + ``` + +- 935d8515da: Updated the `--version` flag to output the version of the current backstage release instead of the version of create-app. +- 18d4c3e50a: Updated `app-config.production.yaml` to specify an empty list of catalog locations. This is done to prevent example locations stored in `app-config.yaml` from being loaded as these are examples. +- 1f70704580: Accessibility updates: + + - Added `aria-label` to the sidebar Logo link. To enable this for an existing app, please make the following changes: + + `packages/app/src/components/Root/Root.tsx` + + ```diff + const SidebarLogo = () => { + const classes = useSidebarLogoStyles(); + const { isOpen } = useContext(SidebarContext); + + return ( +
+ + {isOpen ? : } + +
+ ); + }; + ``` + +- 30f04d1497: Components ``, ``, ``, and `` are now deprecated in `@backstage/plugin-search` and should be imported from `@backstage/plugin-search-react` instead. + + To upgrade your App, update the following in `packages/app/src/components/search/SearchPage.tsx`: + + ```diff + import { + DefaultResultListItem + SearchBar + SearchFilter + SearchResult + - } from `@backstage/plugin-search`; + + } from `@backstage/plugin-search-react`; + ``` + +- f7f5a6c6a3: It's now possible to pass result item components a `rank`, which is captured by the analytics API when a user clicks on a search result. To apply this change, update your `/packages/app/src/components/search/SearchPage.tsx` in the following way: + + ```diff + // ... + + {({ results }) => ( + + - {results.map(({ type, document, highlight }) => { + + {results.map(({ type, document, highlight, rank }) => { + switch (type) { + case 'software-catalog': + return ( + + ); + case 'techdocs': + return ( + + ); + default: + return ( + + ); + } + })} + + )} + + // ... + ``` + + If you have implemented a custom Search Modal or other custom search experience, you will want to make similar changes in those components. + +- aaf7652084: Bump version of `cypress` in newly scaffolded Backstage Applications. To apply this change to your own instance, please make the following change to `packages/app/package.json` under `devDependencies`. + + ```diff + - "cypress": "^7.3.0", + + "cypress": "^9.7.0", + ``` + +- 141a1caebe: Updated the auth backend setup in the template to include a guest sign-in resolver in order to make it quicker to get up and running with a basic sign-in setup. There is no need to update existing apps to match this change, but in case you want to use the guest sign-in resolver you can find it at https://backstage.io/docs/auth/identity-resolver#guest-sign-in-resolver + ## 0.4.28-next.2 ### Patch Changes diff --git a/packages/create-app/package.json b/packages/create-app/package.json index 6a99bf5473..bca9fe9b68 100644 --- a/packages/create-app/package.json +++ b/packages/create-app/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/create-app", "description": "A CLI that helps you create your own Backstage app", - "version": "0.4.28-next.2", + "version": "0.4.28", "private": false, "publishConfig": { "access": "public" diff --git a/packages/dev-utils/CHANGELOG.md b/packages/dev-utils/CHANGELOG.md index 38ec2ddcc8..563de9fc44 100644 --- a/packages/dev-utils/CHANGELOG.md +++ b/packages/dev-utils/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/dev-utils +## 1.0.3 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/app-defaults@1.0.3 + ## 1.0.3-next.1 ### Patch Changes diff --git a/packages/dev-utils/package.json b/packages/dev-utils/package.json index f50cf26b6e..2da041d9b7 100644 --- a/packages/dev-utils/package.json +++ b/packages/dev-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/dev-utils", "description": "Utilities for developing Backstage plugins.", - "version": "1.0.3-next.1", + "version": "1.0.3", "private": false, "publishConfig": { "access": "public", @@ -33,14 +33,14 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/app-defaults": "^1.0.3-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/app-defaults": "^1.0.3", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -59,7 +59,7 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "@types/node": "^16.0.0" }, diff --git a/packages/integration-react/CHANGELOG.md b/packages/integration-react/CHANGELOG.md index 40c84689a8..d03553f50d 100644 --- a/packages/integration-react/CHANGELOG.md +++ b/packages/integration-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/integration-react +## 1.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + ## 1.1.1-next.1 ### Patch Changes diff --git a/packages/integration-react/package.json b/packages/integration-react/package.json index cd7e5ffd17..580b91509f 100644 --- a/packages/integration-react/package.json +++ b/packages/integration-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/integration-react", "description": "Frontend package for managing integrations towards external systems", - "version": "1.1.1-next.1", + "version": "1.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,9 +25,9 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration": "^1.2.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -38,9 +38,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/packages/integration/CHANGELOG.md b/packages/integration/CHANGELOG.md index 69ef50bbd3..736d9ff2a1 100644 --- a/packages/integration/CHANGELOG.md +++ b/packages/integration/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/integration +## 1.2.1 + +### Patch Changes + +- 72dfcbc8bf: Gerrit Integration: Handle absolute paths in `resolveUrl` properly. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- e37c71b5a4: Updated to support deployments of Azure DevOps Server under TFS or similar sub path + ## 1.2.1-next.2 ### Patch Changes diff --git a/packages/integration/package.json b/packages/integration/package.json index 7856c06988..06faef890d 100644 --- a/packages/integration/package.json +++ b/packages/integration/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/integration", "description": "Helpers for managing integrations towards external systems", - "version": "1.2.1-next.2", + "version": "1.2.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -43,9 +43,9 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/config-loader": "^1.1.2-next.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/config-loader": "^1.1.2", + "@backstage/test-utils": "^1.1.1", "@types/jest": "^26.0.7", "@types/luxon": "^2.0.4", "msw": "^0.42.0" diff --git a/packages/release-manifests/CHANGELOG.md b/packages/release-manifests/CHANGELOG.md index b9579e8465..279128576c 100644 --- a/packages/release-manifests/CHANGELOG.md +++ b/packages/release-manifests/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/release-manifests +## 0.0.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + ## 0.0.4-next.0 ### Patch Changes diff --git a/packages/release-manifests/package.json b/packages/release-manifests/package.json index 2948727d48..f0627a9c95 100644 --- a/packages/release-manifests/package.json +++ b/packages/release-manifests/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/release-manifests", "description": "Helper library for receiving release manifests", - "version": "0.0.4-next.0", + "version": "0.0.4", "private": false, "main": "src/index.ts", "types": "src/index.ts", @@ -36,7 +36,7 @@ "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/test-utils": "^1.1.1", "msw": "^0.42.0", "@types/jest": "^26.0.7", "@types/node": "^16.0.0" diff --git a/packages/techdocs-cli-embedded-app/CHANGELOG.md b/packages/techdocs-cli-embedded-app/CHANGELOG.md index ae0ae6562f..58102369ed 100644 --- a/packages/techdocs-cli-embedded-app/CHANGELOG.md +++ b/packages/techdocs-cli-embedded-app/CHANGELOG.md @@ -1,5 +1,22 @@ # techdocs-cli-embedded-app +## 0.2.71 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/cli@0.17.2 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + - @backstage/app-defaults@1.0.3 + ## 0.2.71-next.1 ### Patch Changes diff --git a/packages/techdocs-cli-embedded-app/package.json b/packages/techdocs-cli-embedded-app/package.json index 751880f8b8..8029d604db 100644 --- a/packages/techdocs-cli-embedded-app/package.json +++ b/packages/techdocs-cli-embedded-app/package.json @@ -1,24 +1,24 @@ { "name": "techdocs-cli-embedded-app", - "version": "0.2.71-next.1", + "version": "0.2.71", "private": true, "backstage": { "role": "frontend" }, "bundled": true, "dependencies": { - "@backstage/app-defaults": "^1.0.3-next.1", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/app-defaults": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/cli": "^0.17.2", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-techdocs": "^1.1.2-next.1", - "@backstage/plugin-techdocs-react": "^1.0.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/plugin-techdocs": "^1.2.0", + "@backstage/plugin-techdocs-react": "^1.0.1", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.11.0", "@material-ui/icons": "^4.9.1", @@ -30,7 +30,7 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/packages/techdocs-cli/CHANGELOG.md b/packages/techdocs-cli/CHANGELOG.md index a6a810c1e6..21eb2393b7 100644 --- a/packages/techdocs-cli/CHANGELOG.md +++ b/packages/techdocs-cli/CHANGELOG.md @@ -1,5 +1,16 @@ # @techdocs/cli +## 1.1.2 + +### Patch Changes + +- f96e98f4cd: Updated dependency `cypress` to `^10.0.0`. +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-techdocs-node@1.1.2 + - @backstage/catalog-model@1.0.3 + ## 1.1.2-next.2 ### Patch Changes diff --git a/packages/techdocs-cli/package.json b/packages/techdocs-cli/package.json index 87d44a82cf..d1db470572 100644 --- a/packages/techdocs-cli/package.json +++ b/packages/techdocs-cli/package.json @@ -1,7 +1,7 @@ { "name": "@techdocs/cli", "description": "Utility CLI for managing TechDocs sites in Backstage.", - "version": "1.1.2-next.2", + "version": "1.1.2", "private": false, "publishConfig": { "access": "public" @@ -37,7 +37,7 @@ "techdocs-cli": "bin/techdocs-cli" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/commander": "^2.12.2", "@types/fs-extra": "^9.0.6", "@types/http-proxy": "^1.17.4", @@ -62,11 +62,11 @@ "ext": "ts" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/cli-common": "^0.1.9", "@backstage/config": "^1.0.1", - "@backstage/plugin-techdocs-node": "^1.1.2-next.2", + "@backstage/plugin-techdocs-node": "^1.1.2", "@types/dockerode": "^3.3.0", "commander": "^9.1.0", "dockerode": "^3.3.1", diff --git a/packages/test-utils/CHANGELOG.md b/packages/test-utils/CHANGELOG.md index 187593adae..d8e9a8dd11 100644 --- a/packages/test-utils/CHANGELOG.md +++ b/packages/test-utils/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/test-utils +## 1.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/plugin-permission-react@0.4.2 + ## 1.1.1-next.0 ### Patch Changes diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index cb48e65a81..0c52f47325 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/test-utils", "description": "Utilities to test Backstage plugins and apps.", - "version": "1.1.1-next.0", + "version": "1.1.1", "private": false, "publishConfig": { "access": "public", @@ -34,10 +34,10 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-react": "^0.4.2-next.0", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-react": "^0.4.2", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", @@ -55,7 +55,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "msw": "^0.42.0" diff --git a/plugins/adr-backend/CHANGELOG.md b/plugins/adr-backend/CHANGELOG.md index af0f7b1de7..946df67282 100644 --- a/plugins/adr-backend/CHANGELOG.md +++ b/plugins/adr-backend/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-adr-backend +## 0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-adr-common@0.1.1 + ## 0.1.1-next.2 ### Patch Changes diff --git a/plugins/adr-backend/package.json b/plugins/adr-backend/package.json index e006817386..c192e0cd85 100644 --- a/plugins/adr-backend/package.json +++ b/plugins/adr-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-adr-backend", - "version": "0.1.1-next.2", + "version": "0.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,14 +29,14 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-adr-common": "^0.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-adr-common": "^0.1.1", + "@backstage/plugin-search-common": "^0.3.5", "luxon": "^2.0.2", "marked": "^4.0.14", "winston": "^3.2.1", @@ -44,7 +44,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/marked": "^4.0.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3", diff --git a/plugins/adr-common/CHANGELOG.md b/plugins/adr-common/CHANGELOG.md index 64dc2b1513..d9a0207248 100644 --- a/plugins/adr-common/CHANGELOG.md +++ b/plugins/adr-common/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-adr-common +## 0.1.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.1-next.1 ### Patch Changes diff --git a/plugins/adr-common/package.json b/plugins/adr-common/package.json index 49f0a00619..d3607f3a99 100644 --- a/plugins/adr-common/package.json +++ b/plugins/adr-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-adr-common", "description": "Common functionalities for the adr plugin", - "version": "0.1.1-next.1", + "version": "0.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,12 +30,12 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0" + "@backstage/catalog-model": "^1.0.3", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-search-common": "^0.3.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/plugins/adr/CHANGELOG.md b/plugins/adr/CHANGELOG.md index 5633a622f1..61e28f3834 100644 --- a/plugins/adr/CHANGELOG.md +++ b/plugins/adr/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-adr +## 0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- a6458a120b: Adding term highlighting support to `AdrSearchResultListItem` +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-adr-common@0.1.1 + ## 0.1.1-next.1 ### Patch Changes diff --git a/plugins/adr/package.json b/plugins/adr/package.json index d6ba67e477..194cc44ae4 100644 --- a/plugins/adr/package.json +++ b/plugins/adr/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-adr", - "version": "0.1.1-next.1", + "version": "0.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,13 +22,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-adr-common": "^0.1.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", - "@backstage/plugin-search-react": "^0.2.1-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-adr-common": "^0.1.1", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-search-react": "^0.2.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -44,10 +44,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/airbrake-backend/CHANGELOG.md b/plugins/airbrake-backend/CHANGELOG.md index b881dc776e..e24e510782 100644 --- a/plugins/airbrake-backend/CHANGELOG.md +++ b/plugins/airbrake-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-airbrake-backend +## 0.2.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.2.6-next.2 ### Patch Changes diff --git a/plugins/airbrake-backend/package.json b/plugins/airbrake-backend/package.json index 9a7c28ccee..4e56593990 100644 --- a/plugins/airbrake-backend/package.json +++ b/plugins/airbrake-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-airbrake-backend", - "version": "0.2.6-next.2", + "version": "0.2.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,7 +22,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@types/express": "*", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/airbrake/CHANGELOG.md b/plugins/airbrake/CHANGELOG.md index 0884e77f4b..a09bf6c668 100644 --- a/plugins/airbrake/CHANGELOG.md +++ b/plugins/airbrake/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-airbrake +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/test-utils@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/dev-utils@1.0.3 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/airbrake/package.json b/plugins/airbrake/package.json index 6ae9af115d..b98785889f 100644 --- a/plugins/airbrake/package.json +++ b/plugins/airbrake/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-airbrake", - "version": "0.3.6-next.1", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/app-defaults": "^1.0.3-next.1", - "@backstage/cli": "^0.17.2-next.2", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/app-defaults": "^1.0.3", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/allure/CHANGELOG.md b/plugins/allure/CHANGELOG.md index a17875bbdd..26b754fbf8 100644 --- a/plugins/allure/CHANGELOG.md +++ b/plugins/allure/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-allure +## 0.1.22 + +### Patch Changes + +- 6387b7a98a: Add export for `isAllureReportAvailable` and `ALLURE_PROJECT_ID_ANNOTATION` so it can be used outside of plugin +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.22-next.1 ### Patch Changes diff --git a/plugins/allure/package.json b/plugins/allure/package.json index b9d500aa68..b5d95973f2 100644 --- a/plugins/allure/package.json +++ b/plugins/allure/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-allure", "description": "A Backstage plugin that integrates with Allure", - "version": "0.1.22-next.1", + "version": "0.1.22", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,10 +25,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/analytics-module-ga/CHANGELOG.md b/plugins/analytics-module-ga/CHANGELOG.md index a7f53bb089..b8a14619d4 100644 --- a/plugins/analytics-module-ga/CHANGELOG.md +++ b/plugins/analytics-module-ga/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-analytics-module-ga +## 0.1.17 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.1.17-next.1 ### Patch Changes diff --git a/plugins/analytics-module-ga/package.json b/plugins/analytics-module-ga/package.json index 7766ff8c33..7196539053 100644 --- a/plugins/analytics-module-ga/package.json +++ b/plugins/analytics-module-ga/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-analytics-module-ga", - "version": "0.1.17-next.1", + "version": "0.1.17", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,8 +25,8 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -38,10 +38,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/apache-airflow/CHANGELOG.md b/plugins/apache-airflow/CHANGELOG.md index 6db5c66a32..7f1fc05e69 100644 --- a/plugins/apache-airflow/CHANGELOG.md +++ b/plugins/apache-airflow/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-apache-airflow +## 0.1.14 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.1.14-next.1 ### Patch Changes diff --git a/plugins/apache-airflow/package.json b/plugins/apache-airflow/package.json index d4c9cfda95..5455bd602b 100644 --- a/plugins/apache-airflow/package.json +++ b/plugins/apache-airflow/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-apache-airflow", - "version": "0.1.14-next.1", + "version": "0.1.14", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", @@ -36,10 +36,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/api-docs/CHANGELOG.md b/plugins/api-docs/CHANGELOG.md index 94442bcbd2..2d61c19e62 100644 --- a/plugins/api-docs/CHANGELOG.md +++ b/plugins/api-docs/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-api-docs +## 0.8.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 811ff4bcf4: Updated `swagger-ui-react` to 4.11.1 in order to address a [XSS + vulnerability](https://github.com/advisories/GHSA-hqq7-2q2v-82xq) in `@braintree/sanitize-url` +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.8.6-next.1 ### Patch Changes diff --git a/plugins/api-docs/package.json b/plugins/api-docs/package.json index 4878d4d7cd..9cd1e3aef0 100644 --- a/plugins/api-docs/package.json +++ b/plugins/api-docs/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-api-docs", "description": "A Backstage plugin that helps represent API entities in the frontend", - "version": "0.8.6-next.1", + "version": "0.8.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ }, "dependencies": { "@asyncapi/react-component": "1.0.0-next.38", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/app-backend/CHANGELOG.md b/plugins/app-backend/CHANGELOG.md index 568a1ae425..6e86ece20d 100644 --- a/plugins/app-backend/CHANGELOG.md +++ b/plugins/app-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-app-backend +## 0.3.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/config-loader@1.1.2 + ## 0.3.33-next.2 ### Patch Changes diff --git a/plugins/app-backend/package.json b/plugins/app-backend/package.json index a945542d4a..5efb839730 100644 --- a/plugins/app-backend/package.json +++ b/plugins/app-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-app-backend", "description": "A Backstage backend plugin that serves the Backstage frontend app", - "version": "0.3.33-next.2", + "version": "0.3.33", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,8 +33,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/config-loader": "^1.1.2-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/config-loader": "^1.1.2", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@backstage/types": "^1.0.0", "@types/supertest": "^2.0.8", "mock-fs": "^5.1.0", diff --git a/plugins/auth-backend/CHANGELOG.md b/plugins/auth-backend/CHANGELOG.md index 6835d425c4..0f69289de5 100644 --- a/plugins/auth-backend/CHANGELOG.md +++ b/plugins/auth-backend/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-auth-backend +## 0.14.1 + +### Patch Changes + +- 5e055079f0: Increased key field size for signing_keys table to account for larger signature keys +- f6aae90e4e: Added configurable algorithm field for TokenFactory +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- bc6fb57094: Updated dependency `passport` to `^0.6.0`. +- 467facc6ea: Fix improper binding of 'this' in ALB Auth provider +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.14.1-next.2 ### Patch Changes diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index 21260959ea..8e142ba401 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-auth-backend", "description": "A Backstage backend plugin that handles authentication", - "version": "0.14.1-next.2", + "version": "0.14.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,10 +33,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/types": "^1.0.0", @@ -76,8 +76,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/body-parser": "^1.19.0", "@types/cookie-parser": "^1.4.2", "@types/express-session": "^1.17.2", diff --git a/plugins/auth-node/CHANGELOG.md b/plugins/auth-node/CHANGELOG.md index 02d677f059..4381303915 100644 --- a/plugins/auth-node/CHANGELOG.md +++ b/plugins/auth-node/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-auth-node +## 0.2.2 + +### Patch Changes + +- 5ca0b86b88: Address corner cases where the key store was not being created at startup +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 9079a78078: Added configurable algorithms array for IdentityClient +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.2.2-next.2 ### Patch Changes diff --git a/plugins/auth-node/package.json b/plugins/auth-node/package.json index 7d12b4c301..2281d2d35e 100644 --- a/plugins/auth-node/package.json +++ b/plugins/auth-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-node", - "version": "0.2.2-next.2", + "version": "0.2.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "jose": "^4.6.0", @@ -31,7 +31,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "lodash": "^4.17.21", "msw": "^0.42.0", "uuid": "^8.0.0" diff --git a/plugins/azure-devops-backend/CHANGELOG.md b/plugins/azure-devops-backend/CHANGELOG.md index b0b68f5526..f9d414bef9 100644 --- a/plugins/azure-devops-backend/CHANGELOG.md +++ b/plugins/azure-devops-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-azure-devops-backend +## 0.3.12 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.3.12-next.2 ### Patch Changes diff --git a/plugins/azure-devops-backend/package.json b/plugins/azure-devops-backend/package.json index e59ffe4632..e85ba907c6 100644 --- a/plugins/azure-devops-backend/package.json +++ b/plugins/azure-devops-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-azure-devops-backend", - "version": "0.3.12-next.2", + "version": "0.3.12", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/plugin-azure-devops-common": "^0.2.3", "@types/express": "^4.17.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", "msw": "^0.42.0" diff --git a/plugins/azure-devops/CHANGELOG.md b/plugins/azure-devops/CHANGELOG.md index dcfa487c3c..8de9bd00a8 100644 --- a/plugins/azure-devops/CHANGELOG.md +++ b/plugins/azure-devops/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-azure-devops +## 0.1.22 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.22-next.1 ### Patch Changes diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index a70425ce94..8fad3a8697 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-azure-devops", - "version": "0.1.22-next.1", + "version": "0.1.22", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,12 +30,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/plugin-azure-devops-common": "^0.2.3", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/badges-backend/CHANGELOG.md b/plugins/badges-backend/CHANGELOG.md index 436d1dec59..3b80f26ca1 100644 --- a/plugins/badges-backend/CHANGELOG.md +++ b/plugins/badges-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-badges-backend +## 0.1.27 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.27-next.2 ### Patch Changes diff --git a/plugins/badges-backend/package.json b/plugins/badges-backend/package.json index 549d850d2f..d1b5d094d9 100644 --- a/plugins/badges-backend/package.json +++ b/plugins/badges-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-badges-backend", "description": "A Backstage backend plugin that generates README badges for your entities", - "version": "0.1.27-next.2", + "version": "0.1.27", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "^4.17.6", @@ -48,7 +48,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/badges/CHANGELOG.md b/plugins/badges/CHANGELOG.md index b11fbdb0c2..ff7b290b68 100644 --- a/plugins/badges/CHANGELOG.md +++ b/plugins/badges/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-badges +## 0.2.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.2.30-next.1 ### Patch Changes diff --git a/plugins/badges/package.json b/plugins/badges/package.json index fdec46cce3..aeade2c50a 100644 --- a/plugins/badges/package.json +++ b/plugins/badges/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-badges", "description": "A Backstage plugin that generates README badges for your entities", - "version": "0.2.30-next.1", + "version": "0.2.30", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,11 +30,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -46,10 +46,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/bazaar-backend/CHANGELOG.md b/plugins/bazaar-backend/CHANGELOG.md index e2554c480c..4b0cb04530 100644 --- a/plugins/bazaar-backend/CHANGELOG.md +++ b/plugins/bazaar-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-bazaar-backend +## 0.1.17 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/backend-test-utils@0.1.25 + ## 0.1.17-next.1 ### Patch Changes diff --git a/plugins/bazaar-backend/package.json b/plugins/bazaar-backend/package.json index 3026e4a8af..5f723a9dfb 100644 --- a/plugins/bazaar-backend/package.json +++ b/plugins/bazaar-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-bazaar-backend", - "version": "0.1.17-next.1", + "version": "0.1.17", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-test-utils": "^0.1.25-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-test-utils": "^0.1.25", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -34,7 +34,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "files": [ "dist", diff --git a/plugins/bazaar/CHANGELOG.md b/plugins/bazaar/CHANGELOG.md index a0943d199d..911390ee28 100644 --- a/plugins/bazaar/CHANGELOG.md +++ b/plugins/bazaar/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-bazaar +## 0.1.21 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/cli@0.17.2 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.21-next.1 ### Patch Changes diff --git a/plugins/bazaar/package.json b/plugins/bazaar/package.json index f58e2dde89..cb3318b4e9 100644 --- a/plugins/bazaar/package.json +++ b/plugins/bazaar/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-bazaar", - "version": "0.1.21-next.1", + "version": "0.1.21", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/cli": "^0.17.2", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/plugin-catalog-react": "^1.1.1", "@date-io/luxon": "1.x", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -47,8 +47,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", "@testing-library/jest-dom": "^5.10.1", "cross-fetch": "^3.1.5" }, diff --git a/plugins/bitbucket-cloud-common/CHANGELOG.md b/plugins/bitbucket-cloud-common/CHANGELOG.md index f4be4303fa..62100f2e0b 100644 --- a/plugins/bitbucket-cloud-common/CHANGELOG.md +++ b/plugins/bitbucket-cloud-common/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-bitbucket-cloud-common +## 0.1.0 + +### Minor Changes + +- 1dffa7dd4d: Add new common library `bitbucket-cloud-common` with a client for Bitbucket Cloud. + + This client can be reused across all packages and might be the future place for additional + features like managing the rate limits, etc. + + The client itself was generated in parts using the `@openapitools/openapi-generator-cli`. + +### Patch Changes + +- 9122060776: Updated dependency `msw` to `^0.42.0`. +- Updated dependencies + - @backstage/integration@1.2.1 + ## 0.1.0-next.0 ### Minor Changes diff --git a/plugins/bitbucket-cloud-common/package.json b/plugins/bitbucket-cloud-common/package.json index 322704e79f..a02196bc39 100644 --- a/plugins/bitbucket-cloud-common/package.json +++ b/plugins/bitbucket-cloud-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-bitbucket-cloud-common", "description": "Common functionalities for bitbucket-cloud plugins", - "version": "0.1.0-next.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,11 +28,11 @@ "update-models": "yarn refresh-schema && yarn generate-models && yarn reduce-models" }, "dependencies": { - "@backstage/integration": "^1.2.1-next.1", + "@backstage/integration": "^1.2.1", "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@openapitools/openapi-generator-cli": "^2.4.26", "msw": "^0.42.0", "ts-morph": "^15.0.0" diff --git a/plugins/bitrise/CHANGELOG.md b/plugins/bitrise/CHANGELOG.md index 876a3e6cfd..0badfe894d 100644 --- a/plugins/bitrise/CHANGELOG.md +++ b/plugins/bitrise/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-bitrise +## 0.1.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.33-next.1 ### Patch Changes diff --git a/plugins/bitrise/package.json b/plugins/bitrise/package.json index 4ef88e6889..1d17b5a4b5 100644 --- a/plugins/bitrise/package.json +++ b/plugins/bitrise/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-bitrise", "description": "A Backstage plugin that integrates towards Bitrise", - "version": "0.1.33-next.1", + "version": "0.1.33", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,10 +24,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/catalog-backend-module-aws/CHANGELOG.md b/plugins/catalog-backend-module-aws/CHANGELOG.md index 449540eb9c..d246ae9677 100644 --- a/plugins/catalog-backend-module-aws/CHANGELOG.md +++ b/plugins/catalog-backend-module-aws/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-catalog-backend-module-aws +## 0.1.6 + +### Patch Changes + +- eb2544b21b: Inline config interfaces +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.6-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-aws/package.json b/plugins/catalog-backend-module-aws/package.json index 15233bf1f9..53ed33c47d 100644 --- a/plugins/catalog-backend-module-aws/package.json +++ b/plugins/catalog-backend-module-aws/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-aws", "description": "A Backstage catalog backend module that helps integrate towards AWS", - "version": "0.1.6-next.2", + "version": "0.1.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "aws-sdk": "^2.840.0", "lodash": "^4.17.21", @@ -48,7 +48,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151", "aws-sdk-mock": "^5.2.1", "yaml": "^1.9.2" diff --git a/plugins/catalog-backend-module-azure/CHANGELOG.md b/plugins/catalog-backend-module-azure/CHANGELOG.md index 885dafad5e..fcc8126ad0 100644 --- a/plugins/catalog-backend-module-azure/CHANGELOG.md +++ b/plugins/catalog-backend-module-azure/CHANGELOG.md @@ -1,5 +1,79 @@ # @backstage/plugin-catalog-backend-module-azure +## 0.1.4 + +### Patch Changes + +- b8884fd579: Add a new provider `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. + + In order to migrate from the `AzureDevOpsDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: azure-discovery + target: https://dev.azure.com/myorg/myproject/_git/service-*?path=/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor(new AzureDevOpsDiscoveryProcessor(env.reader)); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + azureDevOps: + anyProviderId: + host: selfhostedazure.yourcompany.com # This is only really needed for on-premise user, defaults to dev.azure.com + organization: myorg # For on-premise this would be your Collection + project: myproject + repository: service-* + path: /catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + AzureDevOpsEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + Visit [https://backstage.io/docs/integrations/azure/discovery](https://backstage.io/docs/integrations/azure/discovery) for more details and options on configuration. + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.4-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index 315f4defe3..5b0966f960 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-azure", "description": "A Backstage catalog backend module that helps integrate towards Azure", - "version": "0.1.4-next.2", + "version": "0.1.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/backend-tasks": "^0.3.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-tasks": "^0.3.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -48,8 +48,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md index a367b30de1..4f83b02e1f 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md @@ -1,5 +1,62 @@ # @backstage/plugin-catalog-backend-module-bitbucket-cloud +## 0.1.0 + +### Minor Changes + +- dfc4efcbf0: Add new plugin `catalog-backend-module-bitbucket-cloud` with `BitbucketCloudEntityProvider`. + + This entity provider is an alternative/replacement to the `BitbucketDiscoveryProcessor` **_(for Bitbucket Cloud only!)_**. + It replaces use cases using `search=true` and should be powerful enough as a complete replacement. + + If any feature for Bitbucket Cloud is missing and preventing you from switching, please raise an issue. + + **Before:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + + builder.addProcessor( + BitbucketDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: bitbucket-discovery + target: 'https://bitbucket.org/workspaces/workspace-name/projects/apis-*/repos/service-*?search=true&catalogPath=/catalog-info.yaml' + ``` + + **After:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + builder.addEntityProvider( + BitbucketCloudEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + providers: + bitbucketCloud: + yourProviderId: # identifies your ingested dataset + catalogPath: /catalog-info.yaml # default value + filters: # optional + projectKey: '^apis-.* + ``` + ## 0.1.0-next.0 ### Minor Changes @@ -66,3 +123,156 @@ - @backstage/integration@1.2.1-next.1 - @backstage/plugin-catalog-backend@1.2.0-next.1 - @backstage/plugin-bitbucket-cloud-common@0.1.0-next.0 + +# optional; RegExp + + repoSlug: '^service-.* + +## 0.1.0-next.0 + +### Minor Changes + +- dfc4efcbf0: Add new plugin `catalog-backend-module-bitbucket-cloud` with `BitbucketCloudEntityProvider`. + + This entity provider is an alternative/replacement to the `BitbucketDiscoveryProcessor` **_(for Bitbucket Cloud only!)_**. + It replaces use cases using `search=true` and should be powerful enough as a complete replacement. + + If any feature for Bitbucket Cloud is missing and preventing you from switching, please raise an issue. + + **Before:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + + builder.addProcessor( + BitbucketDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: bitbucket-discovery + target: 'https://bitbucket.org/workspaces/workspace-name/projects/apis-*/repos/service-*?search=true&catalogPath=/catalog-info.yaml' + ``` + + **After:** + + ```typescript + // packages/backend/src/plugins/catalog.ts + builder.addEntityProvider( + BitbucketCloudEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + + ```yaml + # app-config.yaml + + catalog: + providers: + bitbucketCloud: + yourProviderId: # identifies your ingested dataset + catalogPath: /catalog-info.yaml # default value + filters: # optional + projectKey: '^apis-.* # optional; RegExp + repoSlug: '^service-.* # optional; RegExp + workspace: workspace-name + ``` + +### Patch Changes + +- Updated dependencies + - @backstage/backend-tasks@0.3.2-next.1 + - @backstage/integration@1.2.1-next.1 + - @backstage/plugin-catalog-backend@1.2.0-next.1 + - @backstage/plugin-bitbucket-cloud-common@0.1.0-next.0 + +# optional; RegExp + + workspace: workspace-name + +```` + +### Patch Changes + +- 9122060776: Updated dependency `msw` to `^0.42.0`. +- Updated dependencies +- @backstage/plugin-catalog-backend@1.2.0 +- @backstage/backend-tasks@0.3.2 +- @backstage/integration@1.2.1 +- @backstage/plugin-bitbucket-cloud-common@0.1.0 + +## 0.1.0-next.0 + +### Minor Changes + +- dfc4efcbf0: Add new plugin `catalog-backend-module-bitbucket-cloud` with `BitbucketCloudEntityProvider`. + +This entity provider is an alternative/replacement to the `BitbucketDiscoveryProcessor` **_(for Bitbucket Cloud only!)_**. +It replaces use cases using `search=true` and should be powerful enough as a complete replacement. + +If any feature for Bitbucket Cloud is missing and preventing you from switching, please raise an issue. + +**Before:** + +```typescript +// packages/backend/src/plugins/catalog.ts + +builder.addProcessor( + BitbucketDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), +); +```` + +```yaml +# app-config.yaml + +catalog: + locations: + - type: bitbucket-discovery + target: 'https://bitbucket.org/workspaces/workspace-name/projects/apis-*/repos/service-*?search=true&catalogPath=/catalog-info.yaml' +``` + +**After:** + +```typescript +// packages/backend/src/plugins/catalog.ts +builder.addEntityProvider( + BitbucketCloudEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), +); +``` + +```yaml +# app-config.yaml + +catalog: + providers: + bitbucketCloud: + yourProviderId: # identifies your ingested dataset + catalogPath: /catalog-info.yaml # default value + filters: # optional + projectKey: '^apis-.* # optional; RegExp + repoSlug: '^service-.* # optional; RegExp + workspace: workspace-name +``` + +### Patch Changes + +- Updated dependencies + - @backstage/backend-tasks@0.3.2-next.1 + - @backstage/integration@1.2.1-next.1 + - @backstage/plugin-catalog-backend@1.2.0-next.1 + - @backstage/plugin-bitbucket-cloud-common@0.1.0-next.0 diff --git a/plugins/catalog-backend-module-bitbucket-cloud/package.json b/plugins/catalog-backend-module-bitbucket-cloud/package.json index 57f6ae2e16..aea92c3b56 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/package.json +++ b/plugins/catalog-backend-module-bitbucket-cloud/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket-cloud", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket Cloud", - "version": "0.1.0-next.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,18 +33,18 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-tasks": "^0.3.2-next.2", + "@backstage/backend-tasks": "^0.3.2", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-bitbucket-cloud-common": "^0.1.0-next.0", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-bitbucket-cloud-common": "^0.1.0", + "@backstage/plugin-catalog-backend": "^1.2.0", "uuid": "^8.0.0", "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "msw": "^0.42.0" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md index 82685b07bb..8c3b2c6ad5 100644 --- a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-catalog-backend-module-bitbucket +## 0.2.0 + +### Minor Changes + +- 1c01c0fd14: Integrate `@backstage/plugin-bitbucket-cloud-common` as replacement for the `BitbucketCloudClient`. + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/plugin-bitbucket-cloud-common@0.1.0 + - @backstage/catalog-model@1.0.3 + ## 0.2.0-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-bitbucket/package.json b/plugins/catalog-backend-module-bitbucket/package.json index b65cf54614..8b9c3b4e91 100644 --- a/plugins/catalog-backend-module-bitbucket/package.json +++ b/plugins/catalog-backend-module-bitbucket/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket", - "version": "0.2.0-next.2", + "version": "0.2.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-bitbucket-cloud-common": "^0.1.0-next.0", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-bitbucket-cloud-common": "^0.1.0", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -47,8 +47,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gerrit/CHANGELOG.md b/plugins/catalog-backend-module-gerrit/CHANGELOG.md index ecc7a71c46..8654556d28 100644 --- a/plugins/catalog-backend-module-gerrit/CHANGELOG.md +++ b/plugins/catalog-backend-module-gerrit/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-catalog-backend-module-gerrit +## 0.1.1 + +### Patch Changes + +- eb2544b21b: Inline config interfaces +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.1-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-gerrit/package.json b/plugins/catalog-backend-module-gerrit/package.json index f213100765..55c33d2578 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.1.1-next.2", + "version": "0.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,13 +28,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "fs-extra": "10.1.0", "msw": "^0.42.0", "node-fetch": "^2.6.7", @@ -42,8 +42,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/fs-extra": "^9.0.1" }, "files": [ diff --git a/plugins/catalog-backend-module-github/CHANGELOG.md b/plugins/catalog-backend-module-github/CHANGELOG.md index 00eaeae828..553504c46f 100644 --- a/plugins/catalog-backend-module-github/CHANGELOG.md +++ b/plugins/catalog-backend-module-github/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-catalog-backend-module-github +## 0.1.4 + +### Patch Changes + +- 8335a6f6f3: Adds an edit URL to the GitHub Teams Group entities. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.4-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-github/package.json b/plugins/catalog-backend-module-github/package.json index bba58a7dcb..680c812c4c 100644 --- a/plugins/catalog-backend-module-github/package.json +++ b/plugins/catalog-backend-module-github/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-github", "description": "A Backstage catalog backend module that helps integrate towards GitHub", - "version": "0.1.4-next.2", + "version": "0.1.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "@octokit/graphql": "^4.5.8", "lodash": "^4.17.21", @@ -49,8 +49,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gitlab/CHANGELOG.md b/plugins/catalog-backend-module-gitlab/CHANGELOG.md index a8539f53ee..f785a935e6 100644 --- a/plugins/catalog-backend-module-gitlab/CHANGELOG.md +++ b/plugins/catalog-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,90 @@ # @backstage/plugin-catalog-backend-module-gitlab +## 0.1.4 + +### Patch Changes + +- eea8126171: Add a new provider `GitlabDiscoveryEntityProvider` as replacement for `GitlabDiscoveryProcessor` + + In order to migrate from the `GitlabDiscoveryProcessor` you need to apply + the following changes: + + **Before:** + + ```yaml + # app-config.yaml + + catalog: + locations: + - type: gitlab-discovery + target: https://company.gitlab.com/prefix/*/catalog-info.yaml + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { GitlabDiscoveryProcessor } from '@backstage/plugin-catalog-backend-module-gitlab'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors ... */ + builder.addProcessor( + GitLabDiscoveryProcessor.fromConfig(env.config, { logger: env.logger }), + ); + ``` + + **After:** + + ```yaml + # app-config.yaml + + catalog: + providers: + gitlab: + yourProviderId: # identifies your dataset / provider independent of config changes + host: gitlab-host # Identifies one of the hosts set up in the integrations + branch: main # Optional. Uses `master` as default + group: example-group # Group and subgroup (if needed) to look for repositories + entityFilename: catalog-info.yaml # Optional. Defaults to `catalog-info.yaml` + ``` + + ```ts + /* packages/backend/src/plugins/catalog.ts */ + + import { GitlabDiscoveryEntityProvider } from '@backstage/plugin-catalog-backend-module-gitlab'; + + const builder = await CatalogBuilder.create(env); + /** ... other processors and/or providers ... */ + builder.addEntityProvider( + ...GitlabDiscoveryEntityProvider.fromConfig(env.config, { + logger: env.logger, + schedule: env.scheduler.createScheduledTaskRunner({ + frequency: { minutes: 30 }, + timeout: { minutes: 3 }, + }), + }), + ); + ``` + +- bad907d794: The `last_activity_after` timestamp is now being omitted when querying the GitLab API for the first time. +- 3ac4522537: do not create location object if file with component definition do not exists in project, that decrease count of request to gitlab with 404 status code. Now we can create processor with new flag to enable this logic: + + ```ts + const processor = GitLabDiscoveryProcessor.fromConfig(config, { + logger, + skipReposWithoutExactFileMatch: true, + }); + ``` + + **WARNING:** This new functionality does not support globs in the repo file path + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.4-next.2 ### Patch Changes diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index 048ce85cb8..4780d86530 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-gitlab", "description": "A Backstage catalog backend module that helps integrate towards GitLab", - "version": "0.1.4-next.2", + "version": "0.1.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/backend-tasks": "^0.3.2-next.1", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-tasks": "^0.3.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -48,8 +48,8 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.1", - "@backstage/cli": "^0.17.2-next.1", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151", "@types/uuid": "^8.0.0" }, diff --git a/plugins/catalog-backend-module-ldap/CHANGELOG.md b/plugins/catalog-backend-module-ldap/CHANGELOG.md index 2419dc7c9d..072ef991d4 100644 --- a/plugins/catalog-backend-module-ldap/CHANGELOG.md +++ b/plugins/catalog-backend-module-ldap/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-catalog-backend-module-ldap +## 0.5.0 + +### Minor Changes + +- 1f83f0bc84: Added the possibility to pass TLS configuration to ldap connection + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/catalog-model@1.0.3 + ## 0.5.0-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-ldap/package.json b/plugins/catalog-backend-module-ldap/package.json index 3e63c43055..288fccf7a5 100644 --- a/plugins/catalog-backend-module-ldap/package.json +++ b/plugins/catalog-backend-module-ldap/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-ldap", "description": "A Backstage catalog backend module that helps integrate towards LDAP", - "version": "0.5.0-next.1", + "version": "0.5.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,11 +33,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-tasks": "^0.3.2-next.1", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-backend": "^1.2.0-next.1", + "@backstage/plugin-catalog-backend": "^1.2.0", "@backstage/types": "^1.0.0", "@types/ldapjs": "^2.2.0", "ldapjs": "^2.2.0", @@ -46,7 +46,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-msgraph/CHANGELOG.md b/plugins/catalog-backend-module-msgraph/CHANGELOG.md index a26f34d547..d6a0f7c7b7 100644 --- a/plugins/catalog-backend-module-msgraph/CHANGELOG.md +++ b/plugins/catalog-backend-module-msgraph/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-msgraph +## 0.3.3 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-tasks@0.3.2 + - @backstage/catalog-model@1.0.3 + ## 0.3.3-next.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-msgraph/package.json b/plugins/catalog-backend-module-msgraph/package.json index 723a259d8c..3131dc6daa 100644 --- a/plugins/catalog-backend-module-msgraph/package.json +++ b/plugins/catalog-backend-module-msgraph/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-msgraph", "description": "A Backstage catalog backend module that helps integrate towards Microsoft Graph", - "version": "0.3.3-next.1", + "version": "0.3.3", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ }, "dependencies": { "@azure/msal-node": "^1.1.0", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", + "@backstage/plugin-catalog-backend": "^1.2.0", "@microsoft/microsoft-graph-types": "^2.6.0", "@types/node-fetch": "^2.5.12", "lodash": "^4.17.21", @@ -48,9 +48,9 @@ "qs": "^6.9.4" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151", "msw": "^0.42.0" }, diff --git a/plugins/catalog-backend/CHANGELOG.md b/plugins/catalog-backend/CHANGELOG.md index fece1f8436..f235285617 100644 --- a/plugins/catalog-backend/CHANGELOG.md +++ b/plugins/catalog-backend/CHANGELOG.md @@ -1,5 +1,36 @@ # @backstage/plugin-catalog-backend +## 1.2.0 + +### Minor Changes + +- b594679ae3: Allow array as non-spread arguments at the `CatalogBuilder`. + + ```typescript + builder.addEntityProvider(...getArrayOfProviders()); + ``` + + can be simplified to + + ```typescript + builder.addEntityProvider(getArrayOfProviders()); + ``` + +### Patch Changes + +- 8838b13038: Disallow anything but `'url'` locations from being registered via the location service. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-scaffolder-common@1.1.1 + ## 1.2.0-next.2 ### Patch Changes diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index 92669e914d..c33dccd8a7 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend", "description": "The Backstage backend plugin that provides the Backstage catalog", - "version": "1.2.0-next.2", + "version": "1.2.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,17 +34,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-common": "^1.0.3-next.1", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.2", - "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.2", + "@backstage/plugin-scaffolder-common": "^1.1.1", + "@backstage/plugin-search-common": "^0.3.5", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", "codeowners-utils": "^1.0.2", @@ -68,10 +68,10 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-backend-node": "0.6.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-search-backend-node": "0.6.2", "@types/core-js": "^2.5.4", "@types/git-url-parse": "^9.0.0", "@types/lodash": "^4.14.151", diff --git a/plugins/catalog-common/CHANGELOG.md b/plugins/catalog-common/CHANGELOG.md index 3c777caf44..72002894c4 100644 --- a/plugins/catalog-common/CHANGELOG.md +++ b/plugins/catalog-common/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-common +## 1.0.3 + +### Patch Changes + +- 7d8acfc32e: Replaced all usages of `@backstage/search-common` with `@backstage/plugin-search-common` +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-common@0.6.2 + ## 1.0.3-next.1 ### Patch Changes diff --git a/plugins/catalog-common/package.json b/plugins/catalog-common/package.json index efeb7862ae..27e7764812 100644 --- a/plugins/catalog-common/package.json +++ b/plugins/catalog-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-common", "description": "Common functionalities for the catalog plugin", - "version": "1.0.3-next.1", + "version": "1.0.3", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.1" + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "files": [ "dist", diff --git a/plugins/catalog-graph/CHANGELOG.md b/plugins/catalog-graph/CHANGELOG.md index d93e21d4f9..2afbca45c5 100644 --- a/plugins/catalog-graph/CHANGELOG.md +++ b/plugins/catalog-graph/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-graph +## 0.2.18 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.2.18-next.1 ### Patch Changes diff --git a/plugins/catalog-graph/package.json b/plugins/catalog-graph/package.json index 3ce58dab78..508453b387 100644 --- a/plugins/catalog-graph/package.json +++ b/plugins/catalog-graph/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-graph", - "version": "0.2.18-next.1", + "version": "0.2.18", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,11 +24,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -45,11 +45,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/test-utils": "^1.1.1", "@backstage/types": "^1.0.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", diff --git a/plugins/catalog-graphql/CHANGELOG.md b/plugins/catalog-graphql/CHANGELOG.md index 594044d828..b7c6aa5723 100644 --- a/plugins/catalog-graphql/CHANGELOG.md +++ b/plugins/catalog-graphql/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-catalog-graphql +## 0.3.10 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/catalog-model@1.0.3 + ## 0.3.10-next.0 ### Patch Changes diff --git a/plugins/catalog-graphql/package.json b/plugins/catalog-graphql/package.json index 397cadf720..3e631906a6 100644 --- a/plugins/catalog-graphql/package.json +++ b/plugins/catalog-graphql/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-graphql", "description": "An experimental Backstage catalog GraphQL module", - "version": "0.3.10-next.0", + "version": "0.3.10", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "apollo-server": "^3.0.0", @@ -46,8 +46,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/test-utils": "^1.1.1", "@graphql-codegen/cli": "^2.3.1", "@graphql-codegen/graphql-modules-preset": "^2.3.2", "@graphql-codegen/typescript": "^2.4.2", diff --git a/plugins/catalog-import/CHANGELOG.md b/plugins/catalog-import/CHANGELOG.md index 7bbeff9e80..5ee8857f18 100644 --- a/plugins/catalog-import/CHANGELOG.md +++ b/plugins/catalog-import/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-catalog-import +## 0.8.9 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 05be420971: Updated catalog import page text so they go in the correct hierarchy order +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + ## 0.8.9-next.1 ### Patch Changes diff --git a/plugins/catalog-import/package.json b/plugins/catalog-import/package.json index 7d0e7133dc..0c72baaf9f 100644 --- a/plugins/catalog-import/package.json +++ b/plugins/catalog-import/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-import", "description": "A Backstage plugin the helps you import entities into your catalog", - "version": "0.8.9-next.1", + "version": "0.8.9", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,15 +34,15 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", @@ -60,10 +60,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/catalog-react/CHANGELOG.md b/plugins/catalog-react/CHANGELOG.md index 950bb7e154..ba7f7deb6d 100644 --- a/plugins/catalog-react/CHANGELOG.md +++ b/plugins/catalog-react/CHANGELOG.md @@ -1,5 +1,25 @@ # @backstage/plugin-catalog-react +## 1.1.1 + +### Patch Changes + +- 1f70704580: Accessibility updates: + + - Wrapped the `EntityLifecyclePicker`, `EntityOwnerPicker`, `EntityTagPicker`, in `label` elements + - Changed group name `Typography` component to `span` (from default `h6`), added `aria-label` to the `List` component, and `role` of `menuitem` to the container of the `MenuItem` component + +- 568f2d1e75: Table component no longer has drag and drop columns by default +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + ## 1.1.1-next.1 ### Patch Changes diff --git a/plugins/catalog-react/package.json b/plugins/catalog-react/package.json index ac9fbb1043..47e99f23d8 100644 --- a/plugins/catalog-react/package.json +++ b/plugins/catalog-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-react", "description": "A frontend library that helps other Backstage plugins interact with the catalog", - "version": "1.1.1-next.1", + "version": "1.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,15 +34,15 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-react": "^0.4.2-next.0", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-react": "^0.4.2", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@backstage/version-bridge": "^1.0.1", @@ -63,11 +63,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", - "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-scaffolder-common": "^1.1.1", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/catalog/CHANGELOG.md b/plugins/catalog/CHANGELOG.md index fc8cc1393a..5f4e9809c0 100644 --- a/plugins/catalog/CHANGELOG.md +++ b/plugins/catalog/CHANGELOG.md @@ -1,5 +1,30 @@ # @backstage/plugin-catalog +## 1.3.0 + +### Minor Changes + +- fe7614ea54: Add an optional icon to the Catalog and TechDocs search results + +### Patch Changes + +- 449dcef98e: Updates the `isKind`, `ìsComponentType`, and `isNamespace` to allow an array of possible values +- 1f70704580: Accessibility updates: + + - Added screen reader elements to describe default table `Action` buttons + +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + ## 1.2.1-next.1 ### Patch Changes diff --git a/plugins/catalog/package.json b/plugins/catalog/package.json index decb229c52..792df94e18 100644 --- a/plugins/catalog/package.json +++ b/plugins/catalog/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog", "description": "The Backstage plugin for browsing the Backstage catalog", - "version": "1.2.1-next.1", + "version": "1.3.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", - "@backstage/plugin-search-react": "^0.2.1-next.0", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-search-react": "^0.2.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", @@ -61,11 +61,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/plugin-permission-react": "^0.4.2-next.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/plugin-permission-react": "^0.4.2", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cicd-statistics-module-gitlab/CHANGELOG.md b/plugins/cicd-statistics-module-gitlab/CHANGELOG.md index cc5fcc394b..de73c87469 100644 --- a/plugins/cicd-statistics-module-gitlab/CHANGELOG.md +++ b/plugins/cicd-statistics-module-gitlab/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-cicd-statistics-module-gitlab +## 0.1.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-cicd-statistics@0.1.8 + ## 0.1.2-next.1 ### Patch Changes diff --git a/plugins/cicd-statistics-module-gitlab/package.json b/plugins/cicd-statistics-module-gitlab/package.json index 383925839f..dd48ad7719 100644 --- a/plugins/cicd-statistics-module-gitlab/package.json +++ b/plugins/cicd-statistics-module-gitlab/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cicd-statistics-module-gitlab", "description": "CI/CD Statistics plugin module; Gitlab CICD", - "version": "0.1.2-next.1", + "version": "0.1.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,16 +29,16 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/plugin-cicd-statistics": "^0.1.8-next.1", + "@backstage/plugin-cicd-statistics": "^0.1.8", "@gitbeaker/browser": "^35.6.0", "@gitbeaker/core": "^35.6.0", "luxon": "^2.0.2", "p-limit": "^4.0.0", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0" + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/catalog-model": "^1.0.3" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/plugins/cicd-statistics/CHANGELOG.md b/plugins/cicd-statistics/CHANGELOG.md index 6c09c2f9c1..498cfa47a3 100644 --- a/plugins/cicd-statistics/CHANGELOG.md +++ b/plugins/cicd-statistics/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-cicd-statistics +## 0.1.8 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.8-next.1 ### Patch Changes diff --git a/plugins/cicd-statistics/package.json b/plugins/cicd-statistics/package.json index 756d871dd8..0859afd945 100644 --- a/plugins/cicd-statistics/package.json +++ b/plugins/cicd-statistics/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cicd-statistics", "description": "A frontend plugin visualizing CI/CD pipeline statistics (build time)", - "version": "0.1.8-next.1", + "version": "0.1.8", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -37,9 +37,9 @@ "@types/luxon": "^2.0.5" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@date-io/luxon": "^1.3.13", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.11.2", diff --git a/plugins/circleci/CHANGELOG.md b/plugins/circleci/CHANGELOG.md index 20bb6a16d6..39cfcea568 100644 --- a/plugins/circleci/CHANGELOG.md +++ b/plugins/circleci/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-circleci +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/circleci/package.json b/plugins/circleci/package.json index 19920cd964..3e00add228 100644 --- a/plugins/circleci/package.json +++ b/plugins/circleci/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-circleci", "description": "A Backstage plugin that integrates towards Circle CI", - "version": "0.3.6-next.1", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -55,10 +55,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cloudbuild/CHANGELOG.md b/plugins/cloudbuild/CHANGELOG.md index 18e73ee726..8454cc5cd4 100644 --- a/plugins/cloudbuild/CHANGELOG.md +++ b/plugins/cloudbuild/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-cloudbuild +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/cloudbuild/package.json b/plugins/cloudbuild/package.json index b4885708b1..b1f14356e0 100644 --- a/plugins/cloudbuild/package.json +++ b/plugins/cloudbuild/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cloudbuild", "description": "A Backstage plugin that integrates towards Google Cloud Build", - "version": "0.3.6-next.1", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -52,10 +52,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/code-climate/CHANGELOG.md b/plugins/code-climate/CHANGELOG.md index 5c8e2b05f7..7cc1362a4d 100644 --- a/plugins/code-climate/CHANGELOG.md +++ b/plugins/code-climate/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-code-climate +## 0.1.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.6-next.1 ### Patch Changes diff --git a/plugins/code-climate/package.json b/plugins/code-climate/package.json index bca2ac5099..193fc71f3c 100644 --- a/plugins/code-climate/package.json +++ b/plugins/code-climate/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-code-climate", - "version": "0.1.6-next.1", + "version": "0.1.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,9 +40,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/code-coverage-backend/CHANGELOG.md b/plugins/code-coverage-backend/CHANGELOG.md index be8f95ef65..ebf82cc984 100644 --- a/plugins/code-coverage-backend/CHANGELOG.md +++ b/plugins/code-coverage-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-code-coverage-backend +## 0.1.31 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.31-next.2 ### Patch Changes diff --git a/plugins/code-coverage-backend/package.json b/plugins/code-coverage-backend/package.json index d8c167815e..0bc5281648 100644 --- a/plugins/code-coverage-backend/package.json +++ b/plugins/code-coverage-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-code-coverage-backend", "description": "A Backstage backend plugin that helps you keep track of your code coverage", - "version": "0.1.31-next.2", + "version": "0.1.31", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", + "@backstage/integration": "^1.2.1", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -39,7 +39,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/express-xml-bodyparser": "^0.3.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/code-coverage/CHANGELOG.md b/plugins/code-coverage/CHANGELOG.md index 7e62ee18dc..474c324e98 100644 --- a/plugins/code-coverage/CHANGELOG.md +++ b/plugins/code-coverage/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-code-coverage +## 0.1.33 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.33-next.1 ### Patch Changes diff --git a/plugins/code-coverage/package.json b/plugins/code-coverage/package.json index ae588bf72a..f72d73d293 100644 --- a/plugins/code-coverage/package.json +++ b/plugins/code-coverage/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-code-coverage", "description": "A Backstage plugin that helps you keep track of your code coverage", - "version": "0.1.33-next.1", + "version": "0.1.33", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,12 +24,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -46,10 +46,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/codescene/CHANGELOG.md b/plugins/codescene/CHANGELOG.md index de918465e4..2443fda056 100644 --- a/plugins/codescene/CHANGELOG.md +++ b/plugins/codescene/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-codescene +## 0.1.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.1.1-next.2 ### Patch Changes diff --git a/plugins/codescene/package.json b/plugins/codescene/package.json index b29c172f25..47006c25c7 100644 --- a/plugins/codescene/package.json +++ b/plugins/codescene/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-codescene", - "version": "0.1.1-next.2", + "version": "0.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.10", @@ -38,10 +38,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/config-schema/CHANGELOG.md b/plugins/config-schema/CHANGELOG.md index c2f8b5c20f..1128a525fe 100644 --- a/plugins/config-schema/CHANGELOG.md +++ b/plugins/config-schema/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-config-schema +## 0.1.29 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.1.29-next.1 ### Patch Changes diff --git a/plugins/config-schema/package.json b/plugins/config-schema/package.json index 627902ab5d..0a6c6f2d88 100644 --- a/plugins/config-schema/package.json +++ b/plugins/config-schema/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-config-schema", "description": "A Backstage plugin that lets you browse the configuration schema of your app", - "version": "0.1.29-next.1", + "version": "0.1.29", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,8 +25,8 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -41,10 +41,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cost-insights/CHANGELOG.md b/plugins/cost-insights/CHANGELOG.md index 857c2e68ca..5b726f558c 100644 --- a/plugins/cost-insights/CHANGELOG.md +++ b/plugins/cost-insights/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-cost-insights +## 0.11.28 + +### Patch Changes + +- dea1f32f44: In the README, a old path of the `sidebar` was updated to the current path. +- eb2544b21b: Add missing `export` in configuration schema. +- 2fc98ac50c: Fix broken app-config in the example in the README +- 2297510941: Fixed css to show large tooltips on cost overview graph +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.11.28-next.2 ### Patch Changes diff --git a/plugins/cost-insights/package.json b/plugins/cost-insights/package.json index 160f908708..9cb8d22db9 100644 --- a/plugins/cost-insights/package.json +++ b/plugins/cost-insights/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cost-insights", "description": "A Backstage plugin that helps you keep track of your cloud spend", - "version": "0.11.28-next.2", + "version": "0.11.28", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -60,10 +60,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/dynatrace/CHANGELOG.md b/plugins/dynatrace/CHANGELOG.md new file mode 100644 index 0000000000..fddf3667af --- /dev/null +++ b/plugins/dynatrace/CHANGELOG.md @@ -0,0 +1,14 @@ +# @backstage/plugin-dynatrace + +## 0.1.0 + +### Minor Changes + +- 70027d09aa: Adds Dynatrace plugin + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index 267db810ce..9ee59f38a3 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-dynatrace", - "version": "0.0.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,9 +22,9 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -37,10 +37,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/example-todo-list-backend/CHANGELOG.md b/plugins/example-todo-list-backend/CHANGELOG.md index b0cd112b68..46a980fbe3 100644 --- a/plugins/example-todo-list-backend/CHANGELOG.md +++ b/plugins/example-todo-list-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @internal/plugin-todo-list-backend +## 1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + ## 1.0.2-next.1 ### Patch Changes diff --git a/plugins/example-todo-list-backend/package.json b/plugins/example-todo-list-backend/package.json index cafba4cfdf..7aaed0532b 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.2-next.1", + "version": "1.0.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -20,10 +20,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.2", + "@backstage/plugin-auth-node": "^0.2.2", "@types/express": "^4.17.6", "cross-fetch": "^3.1.5", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", "msw": "^0.42.0", diff --git a/plugins/example-todo-list-common/CHANGELOG.md b/plugins/example-todo-list-common/CHANGELOG.md index f975b866b8..564b1f57eb 100644 --- a/plugins/example-todo-list-common/CHANGELOG.md +++ b/plugins/example-todo-list-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @internal/plugin-todo-list-common +## 1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-permission-common@0.6.2 + ## 1.0.2-next.0 ### Patch Changes diff --git a/plugins/example-todo-list-common/package.json b/plugins/example-todo-list-common/package.json index 3ac1b6692c..596a37b210 100644 --- a/plugins/example-todo-list-common/package.json +++ b/plugins/example-todo-list-common/package.json @@ -1,6 +1,6 @@ { "name": "@internal/plugin-todo-list-common", - "version": "1.0.2-next.0", + "version": "1.0.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,13 +23,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/plugin-permission-common": "^0.6.2-next.0" + "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@types/node": "^16.11.26", "msw": "^0.42.0", "cross-fetch": "^3.1.5" diff --git a/plugins/example-todo-list/CHANGELOG.md b/plugins/example-todo-list/CHANGELOG.md index 683d68947f..31404fa73d 100644 --- a/plugins/example-todo-list/CHANGELOG.md +++ b/plugins/example-todo-list/CHANGELOG.md @@ -1,5 +1,13 @@ # @internal/plugin-todo-list +## 1.0.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 1.0.2-next.1 ### Patch Changes diff --git a/plugins/example-todo-list/package.json b/plugins/example-todo-list/package.json index 4be80a0c33..c80b9a48ea 100644 --- a/plugins/example-todo-list/package.json +++ b/plugins/example-todo-list/package.json @@ -1,6 +1,6 @@ { "name": "@internal/plugin-todo-list", - "version": "1.0.2-next.1", + "version": "1.0.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -21,8 +21,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -33,10 +33,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/explore-react/CHANGELOG.md b/plugins/explore-react/CHANGELOG.md index b73c537371..f42c1dc9fc 100644 --- a/plugins/explore-react/CHANGELOG.md +++ b/plugins/explore-react/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-explore-react +## 0.0.18 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + ## 0.0.18-next.0 ### Patch Changes diff --git a/plugins/explore-react/package.json b/plugins/explore-react/package.json index 919a5e6394..00ec76258d 100644 --- a/plugins/explore-react/package.json +++ b/plugins/explore-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-explore-react", "description": "A frontend library for Backstage plugins that want to interact with the explore plugin", - "version": "0.0.18-next.0", + "version": "0.0.18", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,12 +33,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-plugin-api": "^1.0.3-next.0" + "@backstage/core-plugin-api": "^1.0.3" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/explore/CHANGELOG.md b/plugins/explore/CHANGELOG.md index 728abece0a..712e3203fb 100644 --- a/plugins/explore/CHANGELOG.md +++ b/plugins/explore/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-explore +## 0.3.37 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-explore-react@0.0.18 + - @backstage/catalog-model@1.0.3 + ## 0.3.37-next.1 ### Patch Changes diff --git a/plugins/explore/package.json b/plugins/explore/package.json index 4c6102634b..201be77085 100644 --- a/plugins/explore/package.json +++ b/plugins/explore/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-explore", "description": "A Backstage plugin for building an exploration page of your software ecosystem", - "version": "0.3.37-next.1", + "version": "0.3.37", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-explore-react": "^0.0.18-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-explore-react": "^0.0.18", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/firehydrant/CHANGELOG.md b/plugins/firehydrant/CHANGELOG.md index d222db015e..065d6e0bd5 100644 --- a/plugins/firehydrant/CHANGELOG.md +++ b/plugins/firehydrant/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-firehydrant +## 0.1.23 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.1.23-next.1 ### Patch Changes diff --git a/plugins/firehydrant/package.json b/plugins/firehydrant/package.json index 4ca06743ca..a86a122fd0 100644 --- a/plugins/firehydrant/package.json +++ b/plugins/firehydrant/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-firehydrant", "description": "A Backstage plugin that integrates towards FireHydrant", - "version": "0.1.23-next.1", + "version": "0.1.23", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,9 +25,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -39,10 +39,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/fossa/CHANGELOG.md b/plugins/fossa/CHANGELOG.md index 9ea36dd3c1..07880deb60 100644 --- a/plugins/fossa/CHANGELOG.md +++ b/plugins/fossa/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-fossa +## 0.2.38 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.2.38-next.1 ### Patch Changes diff --git a/plugins/fossa/package.json b/plugins/fossa/package.json index 7c20b13ed6..e97dc7c0f9 100644 --- a/plugins/fossa/package.json +++ b/plugins/fossa/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-fossa", "description": "A Backstage plugin that integrates towards FOSSA", - "version": "0.2.38-next.1", + "version": "0.2.38", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gcalendar/CHANGELOG.md b/plugins/gcalendar/CHANGELOG.md index 69a8812d5f..c5d63a19db 100644 --- a/plugins/gcalendar/CHANGELOG.md +++ b/plugins/gcalendar/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-gcalendar +## 0.3.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.3.2-next.1 ### Patch Changes diff --git a/plugins/gcalendar/package.json b/plugins/gcalendar/package.json index ffd74c5c82..b74129b8bc 100644 --- a/plugins/gcalendar/package.json +++ b/plugins/gcalendar/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-gcalendar", - "version": "0.3.2-next.1", + "version": "0.3.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,8 +22,8 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gcp-projects/CHANGELOG.md b/plugins/gcp-projects/CHANGELOG.md index 8957ff0655..6c95f8ea4d 100644 --- a/plugins/gcp-projects/CHANGELOG.md +++ b/plugins/gcp-projects/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-gcp-projects +## 0.3.25 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.3.25-next.1 ### Patch Changes diff --git a/plugins/gcp-projects/package.json b/plugins/gcp-projects/package.json index 6d43d6516d..0434e6b25a 100644 --- a/plugins/gcp-projects/package.json +++ b/plugins/gcp-projects/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gcp-projects", "description": "A Backstage plugin that helps you manage projects in GCP", - "version": "0.3.25-next.1", + "version": "0.3.25", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,8 +34,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/git-release-manager/CHANGELOG.md b/plugins/git-release-manager/CHANGELOG.md index 2c05fab9b8..7b3a0bc993 100644 --- a/plugins/git-release-manager/CHANGELOG.md +++ b/plugins/git-release-manager/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-git-release-manager +## 0.3.19 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + ## 0.3.19-next.1 ### Patch Changes diff --git a/plugins/git-release-manager/package.json b/plugins/git-release-manager/package.json index 512fccdc27..9ae263b882 100644 --- a/plugins/git-release-manager/package.json +++ b/plugins/git-release-manager/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-git-release-manager", "description": "A Backstage plugin that helps you manage releases in git", - "version": "0.3.19-next.1", + "version": "0.3.19", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,9 +24,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration": "^1.2.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/github-actions/CHANGELOG.md b/plugins/github-actions/CHANGELOG.md index 23eaeb1691..23e66cc1f6 100644 --- a/plugins/github-actions/CHANGELOG.md +++ b/plugins/github-actions/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-github-actions +## 0.5.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.5.6-next.1 ### Patch Changes diff --git a/plugins/github-actions/package.json b/plugins/github-actions/package.json index 002f1af792..f843755e9b 100644 --- a/plugins/github-actions/package.json +++ b/plugins/github-actions/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-actions", "description": "A Backstage plugin that integrates towards GitHub Actions", - "version": "0.5.6-next.1", + "version": "0.5.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,11 +36,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -55,10 +55,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/github-deployments/CHANGELOG.md b/plugins/github-deployments/CHANGELOG.md index c20a3a1297..45a93e3b34 100644 --- a/plugins/github-deployments/CHANGELOG.md +++ b/plugins/github-deployments/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-github-deployments +## 0.1.37 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + ## 0.1.37-next.1 ### Patch Changes diff --git a/plugins/github-deployments/package.json b/plugins/github-deployments/package.json index ddd8fc0107..1a27d21aa2 100644 --- a/plugins/github-deployments/package.json +++ b/plugins/github-deployments/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-deployments", "description": "A Backstage plugin that integrates towards GitHub Deployments", - "version": "0.1.37-next.1", + "version": "0.1.37", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/github-pull-requests-board/CHANGELOG.md b/plugins/github-pull-requests-board/CHANGELOG.md index fd5ec04dd3..629713540e 100644 --- a/plugins/github-pull-requests-board/CHANGELOG.md +++ b/plugins/github-pull-requests-board/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-github-pull-requests-board +## 0.1.0 + +### Minor Changes + +- fc9927c81d: Add Github Pull Requests board plugin + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.0-next.0 ### Minor Changes diff --git a/plugins/github-pull-requests-board/package.json b/plugins/github-pull-requests-board/package.json index 046e465f33..24909c5b5d 100644 --- a/plugins/github-pull-requests-board/package.json +++ b/plugins/github-pull-requests-board/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-pull-requests-board", "description": "A Backstage plugin that allows you to see all open Pull Requests for all the repositories owned by your team", - "version": "0.1.0-next.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,9 +49,9 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gitops-profiles/CHANGELOG.md b/plugins/gitops-profiles/CHANGELOG.md index bb906fa0ef..eea6cc0554 100644 --- a/plugins/gitops-profiles/CHANGELOG.md +++ b/plugins/gitops-profiles/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-gitops-profiles +## 0.3.24 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.3.24-next.1 ### Patch Changes diff --git a/plugins/gitops-profiles/package.json b/plugins/gitops-profiles/package.json index 4564eb6ed1..ee7b3da11b 100644 --- a/plugins/gitops-profiles/package.json +++ b/plugins/gitops-profiles/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gitops-profiles", "description": "A Backstage plugin that helps you manage GitOps profiles", - "version": "0.3.24-next.1", + "version": "0.3.24", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,8 +35,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gocd/CHANGELOG.md b/plugins/gocd/CHANGELOG.md index 1d89e2872f..1df24b97cd 100644 --- a/plugins/gocd/CHANGELOG.md +++ b/plugins/gocd/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-gocd +## 0.1.12 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.12-next.1 ### Patch Changes diff --git a/plugins/gocd/package.json b/plugins/gocd/package.json index 6607d68843..1bf938fb1d 100644 --- a/plugins/gocd/package.json +++ b/plugins/gocd/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gocd", "description": "A Backstage plugin that integrates towards GoCD", - "version": "0.1.12-next.1", + "version": "0.1.12", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -31,11 +31,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/graphiql/CHANGELOG.md b/plugins/graphiql/CHANGELOG.md index bb417d2278..56cc49f3a4 100644 --- a/plugins/graphiql/CHANGELOG.md +++ b/plugins/graphiql/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-graphiql +## 0.2.38 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 464c33f932: Fix for custom headers not being included in requests. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.2.38-next.1 ### Patch Changes diff --git a/plugins/graphiql/package.json b/plugins/graphiql/package.json index 80e0c72b9d..4cbbc7f262 100644 --- a/plugins/graphiql/package.json +++ b/plugins/graphiql/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-graphiql", "description": "Backstage plugin for browsing GraphQL APIs", - "version": "0.2.38-next.1", + "version": "0.2.38", "private": false, "publishConfig": { "access": "public", @@ -34,8 +34,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/graphql-backend/CHANGELOG.md b/plugins/graphql-backend/CHANGELOG.md index d86cb3c336..d1426552e0 100644 --- a/plugins/graphql-backend/CHANGELOG.md +++ b/plugins/graphql-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-graphql-backend +## 0.1.23 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-catalog-graphql@0.3.10 + ## 0.1.23-next.2 ### Patch Changes diff --git a/plugins/graphql-backend/package.json b/plugins/graphql-backend/package.json index 705f760a93..d7b03bddf5 100644 --- a/plugins/graphql-backend/package.json +++ b/plugins/graphql-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-graphql-backend", "description": "An experimental Backstage backend plugin for GraphQL", - "version": "0.1.23-next.2", + "version": "0.1.23", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-catalog-graphql": "^0.3.10-next.0", + "@backstage/plugin-catalog-graphql": "^0.3.10", "@graphql-tools/schema": "^8.3.1", "@types/express": "^4.17.6", "apollo-server": "^3.0.0", @@ -51,7 +51,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/home/CHANGELOG.md b/plugins/home/CHANGELOG.md index 027bbcc096..ef03c3797c 100644 --- a/plugins/home/CHANGELOG.md +++ b/plugins/home/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-home +## 0.4.22 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-stack-overflow@0.1.2 + - @backstage/catalog-model@1.0.3 + ## 0.4.22-next.1 ### Patch Changes diff --git a/plugins/home/package.json b/plugins/home/package.json index c92bcde87c..d1529a37fd 100644 --- a/plugins/home/package.json +++ b/plugins/home/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-home", "description": "A Backstage plugin that helps you build a home page", - "version": "0.4.22-next.1", + "version": "0.4.22", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,12 +34,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-stack-overflow": "^0.1.2-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-stack-overflow": "^0.1.2", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/ilert/CHANGELOG.md b/plugins/ilert/CHANGELOG.md index b1104a9767..cd74af4e74 100644 --- a/plugins/ilert/CHANGELOG.md +++ b/plugins/ilert/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-ilert +## 0.1.32 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.32-next.1 ### Patch Changes diff --git a/plugins/ilert/package.json b/plugins/ilert/package.json index 1593d3b677..341c934836 100644 --- a/plugins/ilert/package.json +++ b/plugins/ilert/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-ilert", "description": "A Backstage plugin that integrates towards iLert", - "version": "0.1.32-next.1", + "version": "0.1.32", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,11 +24,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@date-io/luxon": "1.x", "@material-ui/core": "^4.12.2", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/jenkins-backend/CHANGELOG.md b/plugins/jenkins-backend/CHANGELOG.md index 02b02592c8..ef18b5708d 100644 --- a/plugins/jenkins-backend/CHANGELOG.md +++ b/plugins/jenkins-backend/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-jenkins-backend +## 0.1.23 + +### Patch Changes + +- 83f6a64d2c: bug fix: provide backstage token for rebuild api call +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-jenkins-common@0.1.5 + ## 0.1.23-next.2 ### Patch Changes diff --git a/plugins/jenkins-backend/package.json b/plugins/jenkins-backend/package.json index 79c48454e4..1ab98c3255 100644 --- a/plugins/jenkins-backend/package.json +++ b/plugins/jenkins-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-jenkins-backend", "description": "A Backstage backend plugin that integrates towards Jenkins", - "version": "0.1.23-next.2", + "version": "0.1.23", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,14 +25,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/plugin-jenkins-common": "^0.1.5-next.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-jenkins-common": "^0.1.5", + "@backstage/plugin-permission-common": "^0.6.2", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -41,7 +41,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/jenkins": "^0.23.1", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/jenkins-common/CHANGELOG.md b/plugins/jenkins-common/CHANGELOG.md index bdf23f2abb..53cf222e5a 100644 --- a/plugins/jenkins-common/CHANGELOG.md +++ b/plugins/jenkins-common/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-jenkins-common +## 0.1.5 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + ## 0.1.5-next.0 ### Patch Changes diff --git a/plugins/jenkins-common/package.json b/plugins/jenkins-common/package.json index 418f7f3eca..c47ac94a2b 100644 --- a/plugins/jenkins-common/package.json +++ b/plugins/jenkins-common/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-jenkins-common", - "version": "0.1.5-next.0", + "version": "0.1.5", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,11 +22,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-catalog-common": "^1.0.3-next.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0" + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/plugins/jenkins/CHANGELOG.md b/plugins/jenkins/CHANGELOG.md index 65d0c8931b..fd4e4420e7 100644 --- a/plugins/jenkins/CHANGELOG.md +++ b/plugins/jenkins/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-jenkins +## 0.7.5 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-jenkins-common@0.1.5 + ## 0.7.5-next.1 ### Patch Changes diff --git a/plugins/jenkins/package.json b/plugins/jenkins/package.json index 7354e68150..ae86828505 100644 --- a/plugins/jenkins/package.json +++ b/plugins/jenkins/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-jenkins", "description": "A Backstage plugin that integrates towards Jenkins", - "version": "0.7.5-next.1", + "version": "0.7.5", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,12 +35,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-jenkins-common": "^0.1.5-next.0", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-jenkins-common": "^0.1.5", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -54,10 +54,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/kafka-backend/CHANGELOG.md b/plugins/kafka-backend/CHANGELOG.md index 45f1657be1..32b147ffdd 100644 --- a/plugins/kafka-backend/CHANGELOG.md +++ b/plugins/kafka-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-kafka-backend +## 0.2.26 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/catalog-model@1.0.3 + ## 0.2.26-next.2 ### Patch Changes diff --git a/plugins/kafka-backend/package.json b/plugins/kafka-backend/package.json index aaa6666b1d..965b15bd6b 100644 --- a/plugins/kafka-backend/package.json +++ b/plugins/kafka-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kafka-backend", "description": "A Backstage backend plugin that integrates towards Kafka", - "version": "0.2.26-next.2", + "version": "0.2.26", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,8 +35,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "^4.17.6", @@ -47,7 +47,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/jest-when": "^3.5.0", "@types/lodash": "^4.14.151", "jest-when": "^3.1.0", diff --git a/plugins/kafka/CHANGELOG.md b/plugins/kafka/CHANGELOG.md index 140b2d9d83..c2743bf92b 100644 --- a/plugins/kafka/CHANGELOG.md +++ b/plugins/kafka/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-kafka +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/kafka/package.json b/plugins/kafka/package.json index 893196d629..43f4b8d35c 100644 --- a/plugins/kafka/package.json +++ b/plugins/kafka/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kafka", "description": "A Backstage plugin that integrates towards Kafka", - "version": "0.3.6-next.1", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,10 +24,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -39,10 +39,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/kubernetes-backend/CHANGELOG.md b/plugins/kubernetes-backend/CHANGELOG.md index 99078af649..d829136819 100644 --- a/plugins/kubernetes-backend/CHANGELOG.md +++ b/plugins/kubernetes-backend/CHANGELOG.md @@ -1,5 +1,20 @@ # @backstage/plugin-kubernetes-backend +## 0.6.0 + +### Minor Changes + +- 4328737af6: Add support to fetch data for Stateful Sets from Kubernetes + +### Patch Changes + +- 0c70cd8e1d: cache and refresh Azure tokens to avoid excessive calls to Azure Identity +- 2aedf64ad3: Updated dependency `@google-cloud/container` to `^4.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-kubernetes-common@0.3.0 + - @backstage/catalog-model@1.0.3 + ## 0.6.0-next.2 ### Patch Changes diff --git a/plugins/kubernetes-backend/package.json b/plugins/kubernetes-backend/package.json index 92270de394..33dcc1dfff 100644 --- a/plugins/kubernetes-backend/package.json +++ b/plugins/kubernetes-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes-backend", "description": "A Backstage backend plugin that integrates towards Kubernetes", - "version": "0.6.0-next.2", + "version": "0.6.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,11 +36,11 @@ }, "dependencies": { "@azure/identity": "^2.0.4", - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-kubernetes-common": "^0.3.0-next.1", + "@backstage/plugin-kubernetes-common": "^0.3.0", "@google-cloud/container": "^4.0.0", "@kubernetes/client-node": "^0.16.0", "@types/express": "^4.17.6", @@ -61,7 +61,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/aws4": "^1.5.1", "aws-sdk-mock": "^5.2.1", "supertest": "^6.1.3" diff --git a/plugins/kubernetes-common/CHANGELOG.md b/plugins/kubernetes-common/CHANGELOG.md index 2b405eb244..d9f7e60c13 100644 --- a/plugins/kubernetes-common/CHANGELOG.md +++ b/plugins/kubernetes-common/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-kubernetes-common +## 0.3.0 + +### Minor Changes + +- 4328737af6: Add support to fetch data for Stateful Sets + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.0.3 + ## 0.3.0-next.1 ### Patch Changes diff --git a/plugins/kubernetes-common/package.json b/plugins/kubernetes-common/package.json index 2957e10394..62c9eb9745 100644 --- a/plugins/kubernetes-common/package.json +++ b/plugins/kubernetes-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes-common", "description": "Common functionalities for kubernetes, to be shared between kubernetes and kubernetes-backend plugin", - "version": "0.3.0-next.1", + "version": "0.3.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -38,11 +38,11 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@kubernetes/client-node": "^0.16.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2" }, "jest": { "roots": [ diff --git a/plugins/kubernetes/CHANGELOG.md b/plugins/kubernetes/CHANGELOG.md index 2d2125efc0..29f0ed0241 100644 --- a/plugins/kubernetes/CHANGELOG.md +++ b/plugins/kubernetes/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-kubernetes +## 0.6.6 + +### Patch Changes + +- 4328737af6: Add support to fetch data for Stateful Sets and display an accordion in the same way as with Deployments +- b9b8bbc7d9: show request/limit CPU and Memory on the UI +- 5553f09e80: ability to configure refresh interval on Kubernetes tab +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 81304e3e91: Fix for HPA matching when deploying same HPA in multiple namespaces +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/plugin-kubernetes-common@0.3.0 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.6.6-next.2 ### Patch Changes diff --git a/plugins/kubernetes/package.json b/plugins/kubernetes/package.json index a302f22e48..1b63484224 100644 --- a/plugins/kubernetes/package.json +++ b/plugins/kubernetes/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes", "description": "A Backstage plugin that integrates towards Kubernetes", - "version": "0.6.6-next.2", + "version": "0.6.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,12 +34,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-kubernetes-common": "^0.3.0-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-kubernetes-common": "^0.3.0", "@backstage/theme": "^0.2.15", "@kubernetes/client-node": "^0.16.0", "@material-ui/core": "^4.12.2", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/lighthouse/CHANGELOG.md b/plugins/lighthouse/CHANGELOG.md index e47f3082a8..7dc3e30b1f 100644 --- a/plugins/lighthouse/CHANGELOG.md +++ b/plugins/lighthouse/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-lighthouse +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.6-next.1 ### Patch Changes diff --git a/plugins/lighthouse/package.json b/plugins/lighthouse/package.json index c7e78ecb8f..5f7097c704 100644 --- a/plugins/lighthouse/package.json +++ b/plugins/lighthouse/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-lighthouse", "description": "A Backstage plugin that integrates towards Lighthouse", - "version": "0.3.6-next.1", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -51,10 +51,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/newrelic-dashboard/CHANGELOG.md b/plugins/newrelic-dashboard/CHANGELOG.md index 8527d4a1c4..54a058fcb9 100644 --- a/plugins/newrelic-dashboard/CHANGELOG.md +++ b/plugins/newrelic-dashboard/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-newrelic-dashboard +## 0.1.14 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.14-next.1 ### Patch Changes diff --git a/plugins/newrelic-dashboard/package.json b/plugins/newrelic-dashboard/package.json index 3dc7a5105b..8166928a6a 100644 --- a/plugins/newrelic-dashboard/package.json +++ b/plugins/newrelic-dashboard/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-newrelic-dashboard", - "version": "0.1.14-next.1", + "version": "0.1.14", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,19 +23,19 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", "@testing-library/jest-dom": "^5.10.1", "@types/react": "^16.13.1 || ^17.0.0", "cross-fetch": "^3.1.5" diff --git a/plugins/newrelic/CHANGELOG.md b/plugins/newrelic/CHANGELOG.md index 7c82169c5d..97da241a56 100644 --- a/plugins/newrelic/CHANGELOG.md +++ b/plugins/newrelic/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-newrelic +## 0.3.24 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.3.24-next.1 ### Patch Changes diff --git a/plugins/newrelic/package.json b/plugins/newrelic/package.json index 51ad2fec3b..09f3d3196d 100644 --- a/plugins/newrelic/package.json +++ b/plugins/newrelic/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-newrelic", "description": "A Backstage plugin that integrates towards New Relic", - "version": "0.3.24-next.1", + "version": "0.3.24", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,8 +35,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/org/CHANGELOG.md b/plugins/org/CHANGELOG.md index 8ff62a756c..73129feed6 100644 --- a/plugins/org/CHANGELOG.md +++ b/plugins/org/CHANGELOG.md @@ -1,5 +1,39 @@ # @backstage/plugin-org +## 0.5.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 306d0b4fdd: Added the ability to use an additional `filter` when fetching groups in `MyGroupsSidebarItem` component. Example: + + ```diff + // app/src/components/Root/Root.tsx + + + //... + }> + {/* Global nav, not org-specific */} + //... + + + //... + + + + ``` + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.5.6-next.2 ### Patch Changes diff --git a/plugins/org/package.json b/plugins/org/package.json index 5ca199d76c..2b62e81683 100644 --- a/plugins/org/package.json +++ b/plugins/org/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-org", "description": "A Backstage plugin that helps you create entity pages for your organization", - "version": "0.5.6-next.2", + "version": "0.5.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,10 +29,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,11 +48,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/pagerduty/CHANGELOG.md b/plugins/pagerduty/CHANGELOG.md index 3f5b0bba16..3f6a54f367 100644 --- a/plugins/pagerduty/CHANGELOG.md +++ b/plugins/pagerduty/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-pagerduty +## 0.4.0 + +### Minor Changes + +- b157c2eb1c: **Breaking**: Use identityApi to provide auth token for pagerduty API calls. + +### Patch Changes + +- 76bf6400fe: Fix alert that was not showing after creating an incident. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.4.0-next.2 ### Minor Changes diff --git a/plugins/pagerduty/package.json b/plugins/pagerduty/package.json index 5a8706db15..73a92ed5f7 100644 --- a/plugins/pagerduty/package.json +++ b/plugins/pagerduty/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-pagerduty", "description": "A Backstage plugin that integrates towards PagerDuty", - "version": "0.4.0-next.2", + "version": "0.4.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -52,10 +52,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/periskop-backend/CHANGELOG.md b/plugins/periskop-backend/CHANGELOG.md index 36a577fb22..3a4de21e28 100644 --- a/plugins/periskop-backend/CHANGELOG.md +++ b/plugins/periskop-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-periskop-backend +## 0.1.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.1.4-next.2 ### Patch Changes diff --git a/plugins/periskop-backend/package.json b/plugins/periskop-backend/package.json index 6ed539484b..a555124743 100644 --- a/plugins/periskop-backend/package.json +++ b/plugins/periskop-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-periskop-backend", - "version": "0.1.4-next.2", + "version": "0.1.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@types/express": "*", "cross-fetch": "^3.0.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.6" diff --git a/plugins/periskop/CHANGELOG.md b/plugins/periskop/CHANGELOG.md index 986d03fc08..9c5887509b 100644 --- a/plugins/periskop/CHANGELOG.md +++ b/plugins/periskop/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-periskop +## 0.1.4 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.4-next.1 ### Patch Changes diff --git a/plugins/periskop/package.json b/plugins/periskop/package.json index a6eb2ab005..c7c6af850b 100644 --- a/plugins/periskop/package.json +++ b/plugins/periskop/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-periskop", - "version": "0.1.4-next.1", + "version": "0.1.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,11 +25,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -42,10 +42,10 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/permission-backend/CHANGELOG.md b/plugins/permission-backend/CHANGELOG.md index 5094d9c34d..f0e391d8d8 100644 --- a/plugins/permission-backend/CHANGELOG.md +++ b/plugins/permission-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-permission-backend +## 0.5.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-permission-node@0.6.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-permission-common@0.6.2 + ## 0.5.8-next.2 ### Patch Changes diff --git a/plugins/permission-backend/package.json b/plugins/permission-backend/package.json index 4a59de4467..fd3ce984cc 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.8-next.2", + "version": "0.5.8", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,12 +22,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.2", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.2", "@types/express": "*", "dataloader": "^2.0.0", "express": "^4.17.1", @@ -39,7 +39,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/lodash": "^4.14.151", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/permission-common/CHANGELOG.md b/plugins/permission-common/CHANGELOG.md index be795daef3..b578c1e8fb 100644 --- a/plugins/permission-common/CHANGELOG.md +++ b/plugins/permission-common/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/plugin-permission-common +## 0.6.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. + ## 0.6.2-next.0 ### Patch Changes diff --git a/plugins/permission-common/package.json b/plugins/permission-common/package.json index 540523b3f8..82ab09c853 100644 --- a/plugins/permission-common/package.json +++ b/plugins/permission-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-permission-common", "description": "Isomorphic types and client for Backstage permissions and authorization", - "version": "0.6.2-next.0", + "version": "0.6.2", "main": "src/index.ts", "types": "src/index.ts", "publishConfig": { @@ -48,7 +48,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "msw": "^0.42.0" } diff --git a/plugins/permission-node/CHANGELOG.md b/plugins/permission-node/CHANGELOG.md index ac4c9df7b4..889b3ba374 100644 --- a/plugins/permission-node/CHANGELOG.md +++ b/plugins/permission-node/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-permission-node +## 0.6.2 + +### Patch Changes + +- 58426f9c0f: Added a new endpoint for aggregating permission metadata from a plugin backend: `/.well-known/backstage/permissions/metadata` + + By default, the metadata endpoint will return information about the permission rules supported by the plugin. Plugin authors can also provide an optional `permissions` parameter to `createPermissionIntegrationRouter`. If provided, these `Permission` objects will be included in the metadata returned by this endpoint. The `permissions` parameter will eventually be required in a future breaking change. + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-permission-common@0.6.2 + ## 0.6.2-next.2 ### Patch Changes diff --git a/plugins/permission-node/package.json b/plugins/permission-node/package.json index 0cb25d2949..1281b4ecba 100644 --- a/plugins/permission-node/package.json +++ b/plugins/permission-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-permission-node", "description": "Common permission and authorization utilities for backend plugins", - "version": "0.6.2-next.2", + "version": "0.6.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,18 +33,18 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/plugin-permission-common": "^0.6.2-next.0", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-permission-common": "^0.6.2", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/permission-react/CHANGELOG.md b/plugins/permission-react/CHANGELOG.md index 12c9c8f68a..cd991549bd 100644 --- a/plugins/permission-react/CHANGELOG.md +++ b/plugins/permission-react/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-permission-react +## 0.4.2 + +### Patch Changes + +- Updated dependencies + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + ## 0.4.2-next.0 ### Patch Changes diff --git a/plugins/permission-react/package.json b/plugins/permission-react/package.json index 4e2b54d73d..ffdb72d385 100644 --- a/plugins/permission-react/package.json +++ b/plugins/permission-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-permission-react", - "version": "0.4.2-next.0", + "version": "0.4.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,8 +32,8 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2", "cross-fetch": "^3.1.5", "react-router": "6.0.0-beta.0", "react-use": "^17.2.4", @@ -44,8 +44,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@types/jest": "^26.0.7" diff --git a/plugins/proxy-backend/CHANGELOG.md b/plugins/proxy-backend/CHANGELOG.md index c0372e3a97..b23cce864d 100644 --- a/plugins/proxy-backend/CHANGELOG.md +++ b/plugins/proxy-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-proxy-backend +## 0.2.27 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.2.27-next.1 ### Patch Changes diff --git a/plugins/proxy-backend/package.json b/plugins/proxy-backend/package.json index f996cdbe69..a0f7668e3e 100644 --- a/plugins/proxy-backend/package.json +++ b/plugins/proxy-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-proxy-backend", "description": "A Backstage backend plugin that helps you set up proxy endpoints in the backend", - "version": "0.2.27-next.1", + "version": "0.2.27", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,7 +32,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -46,7 +46,7 @@ "yup": "^0.32.9" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", diff --git a/plugins/rollbar-backend/CHANGELOG.md b/plugins/rollbar-backend/CHANGELOG.md index 0b2b4733a5..75e665c02d 100644 --- a/plugins/rollbar-backend/CHANGELOG.md +++ b/plugins/rollbar-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-rollbar-backend +## 0.1.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.1.30-next.2 ### Patch Changes diff --git a/plugins/rollbar-backend/package.json b/plugins/rollbar-backend/package.json index f4d5e3bdb4..53fba7bfe3 100644 --- a/plugins/rollbar-backend/package.json +++ b/plugins/rollbar-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-rollbar-backend", "description": "A Backstage backend plugin that integrates towards Rollbar", - "version": "0.1.30-next.2", + "version": "0.1.30", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "camelcase-keys": "^7.0.1", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/rollbar/CHANGELOG.md b/plugins/rollbar/CHANGELOG.md index b3554e9c0a..bb55d819a3 100644 --- a/plugins/rollbar/CHANGELOG.md +++ b/plugins/rollbar/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-rollbar +## 0.4.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.4.6-next.1 ### Patch Changes diff --git a/plugins/rollbar/package.json b/plugins/rollbar/package.json index 06b8c4a79f..5633c9b09a 100644 --- a/plugins/rollbar/package.json +++ b/plugins/rollbar/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-rollbar", "description": "A Backstage plugin that integrates towards Rollbar", - "version": "0.4.6-next.1", + "version": "0.4.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md index 7db0dd7428..698a746a2a 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-scaffolder-backend-module-cookiecutter +## 0.2.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + ## 0.2.8-next.2 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-cookiecutter/package.json b/plugins/scaffolder-backend-module-cookiecutter/package.json index 88aab6634e..630f672231 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/package.json +++ b/plugins/scaffolder-backend-module-cookiecutter/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-cookiecutter", "description": "A module for the scaffolder backend that lets you template projects using cookiecutter", - "version": "0.2.8-next.2", + "version": "0.2.8", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-scaffolder-backend": "^1.3.0", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/fs-extra": "^9.0.1", "@types/mock-fs": "^4.13.0", "@types/jest": "^26.0.7", diff --git a/plugins/scaffolder-backend-module-rails/CHANGELOG.md b/plugins/scaffolder-backend-module-rails/CHANGELOG.md index 2b89dc7462..6a1f59ef7e 100644 --- a/plugins/scaffolder-backend-module-rails/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-rails/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-backend-module-rails +## 0.4.1 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + ## 0.4.1-next.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-rails/package.json b/plugins/scaffolder-backend-module-rails/package.json index 485987b4b1..1f755a8f81 100644 --- a/plugins/scaffolder-backend-module-rails/package.json +++ b/plugins/scaffolder-backend-module-rails/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-rails", "description": "A module for the scaffolder backend that lets you template projects using Rails", - "version": "0.4.1-next.1", + "version": "0.4.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,17 +24,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/plugin-scaffolder-backend": "^1.3.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", + "@backstage/integration": "^1.2.1", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", "fs-extra": "^10.0.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "@types/command-exists": "^1.2.0", diff --git a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md index bbb6185429..a6da817ba6 100644 --- a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-scaffolder-backend-module-yeoman +## 0.2.6 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.3.0 + ## 0.2.6-next.0 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-yeoman/package.json b/plugins/scaffolder-backend-module-yeoman/package.json index 4a69a10248..b876b5e87c 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.2.6-next.0", + "version": "0.2.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0-next.2", + "@backstage/plugin-scaffolder-backend": "^1.3.0", "@backstage/types": "^1.0.0", "winston": "^3.2.1", "yeoman-environment": "^3.9.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@types/jest": "^26.0.7" }, "files": [ diff --git a/plugins/scaffolder-backend/CHANGELOG.md b/plugins/scaffolder-backend/CHANGELOG.md index 99a54c1ddf..598de4122f 100644 --- a/plugins/scaffolder-backend/CHANGELOG.md +++ b/plugins/scaffolder-backend/CHANGELOG.md @@ -1,5 +1,50 @@ # @backstage/plugin-scaffolder-backend +## 1.3.0 + +### Minor Changes + +- 35a26131b3: **DEPRECATION**: The `projectid` input parameters to the `publish:gitlab:merge-request`, it's no longer required as it can be decoded from the `repoUrl` input parameter. + **DEPRECATION**: The `projectid` output of the action in favour of `projectPath` +- 72dfcbc8bf: A new scaffolder action has been added: `gerrit:publish` +- ce0d8d7eb1: Fixed a bug in `publish:github` action that didn't permit to add users as collaborators. + This fix required changing the way parameters are passed to the action. + In order to add a team as collaborator, now you must use the `team` field instead of `username`. + In order to add a user as collaborator, you must use the `user` field. + + It's still possible to use the field `username` but is deprecated in favor of `team`. + + ```yaml + - id: publish + name: Publish + action: publish:github + input: + repoUrl: ... + collaborators: + - access: ... + team: my_team + - access: ... + user: my_username + ``` + +- 582003a059: - Added an optional `list` method on the `TaskBroker` and `TaskStore` interface to list tasks by an optional `userEntityRef` + - Implemented a `list` method on the `DatabaseTaskStore` class to list tasks by an optional `userEntityRef` + - Added a route under `/v2/tasks` to list tasks by a `userEntityRef` using the `createdBy` query parameter +- c042c5eaff: Add an option to not protect the default branch. +- f93af969cd: Added the ability to support running of templates that are not in the `default` namespace + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6901f6be4a: Adds more of an explanation when the `publish:github` scaffolder action fails to create a repository. +- Updated dependencies + - @backstage/plugin-catalog-backend@1.2.0 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-scaffolder-common@1.1.1 + ## 1.3.0-next.2 ### Minor Changes diff --git a/plugins/scaffolder-backend/package.json b/plugins/scaffolder-backend/package.json index b69327ae1c..9dfe00672e 100644 --- a/plugins/scaffolder-backend/package.json +++ b/plugins/scaffolder-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend", "description": "The Backstage backend plugin that helps you create new things", - "version": "1.3.0-next.2", + "version": "1.3.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,14 +34,14 @@ "build:assets": "node scripts/build-nunjucks.js" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-backend": "^1.2.0-next.2", - "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/plugin-scaffolder-common": "^1.1.1", "@backstage/types": "^1.0.0", "@gitbeaker/core": "^35.6.0", "@gitbeaker/node": "^35.1.0", @@ -76,8 +76,8 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/command-exists": "^1.2.0", "@types/fs-extra": "^9.0.1", "@types/git-url-parse": "^9.0.0", diff --git a/plugins/scaffolder-common/CHANGELOG.md b/plugins/scaffolder-common/CHANGELOG.md index 05efde68b4..27a1abc7d2 100644 --- a/plugins/scaffolder-common/CHANGELOG.md +++ b/plugins/scaffolder-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-scaffolder-common +## 1.1.1 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.0.3 + ## 1.1.1-next.0 ### Patch Changes diff --git a/plugins/scaffolder-common/package.json b/plugins/scaffolder-common/package.json index a78d368ed1..beeec6430d 100644 --- a/plugins/scaffolder-common/package.json +++ b/plugins/scaffolder-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-common", "description": "Common functionalities for the scaffolder, to be shared between scaffolder and scaffolder-backend plugin", - "version": "1.1.1-next.0", + "version": "1.1.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -39,10 +39,10 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/types": "^1.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1" + "@backstage/cli": "^0.17.2" } } diff --git a/plugins/scaffolder/CHANGELOG.md b/plugins/scaffolder/CHANGELOG.md index 1e8710f96d..617fe95457 100644 --- a/plugins/scaffolder/CHANGELOG.md +++ b/plugins/scaffolder/CHANGELOG.md @@ -1,5 +1,50 @@ # @backstage/plugin-scaffolder +## 1.3.0 + +### Minor Changes + +- dc39366bdb: - Added a new page under `/create/tasks` to show tasks that have been run by the Scaffolder. + - Ability to filter these tasks by the signed in user, and all tasks. + - Added optional method to the `ScaffolderApi` interface called `listTasks` to get tasks with an required `filterByOwnership` parameter. +- 86a4a0f72d: Get data of other fields in Form from a custom field in template Scaffolder. + following: + + ```tsx + const CustomFieldExtensionComponent = (props: FieldExtensionComponentProps) => { + const { formData } = props.formContext; + ... + }; + + const CustomFieldExtension = scaffolderPlugin.provide( + createScaffolderFieldExtension({ + name: ..., + component: CustomFieldExtensionComponent, + validation: ... + }) + ); + ``` + +- 72dfcbc8bf: Gerrit Integration: Implemented a `RepoUrlPicker` for Gerrit. +- f93af969cd: Added the ability to support running of templates that are not in the `default` namespace + +### Patch Changes + +- ac0c7e45ee: Fixes review mask in `MultistepJsonForm` to work as documented. `show: true` no longer needed when mask is set. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- fd505f40c0: Handle binary files and files that are too large during dry-run content upload. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-permission-react@0.4.2 + - @backstage/plugin-scaffolder-common@1.1.1 + ## 1.3.0-next.2 ### Minor Changes diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index af78b55ed5..54824c7699 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder", "description": "The Backstage plugin that helps you create new things", - "version": "1.3.0-next.2", + "version": "1.3.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,18 +35,18 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-common": "^1.0.3-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-permission-react": "^0.4.2-next.0", - "@backstage/plugin-scaffolder-common": "^1.1.1-next.0", + "@backstage/integration": "^1.2.1", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-permission-react": "^0.4.2", + "@backstage/plugin-scaffolder-common": "^1.1.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@codemirror/legacy-modes": "^0.20.0", @@ -81,11 +81,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/search-backend-module-elasticsearch/CHANGELOG.md b/plugins/search-backend-module-elasticsearch/CHANGELOG.md index d279931754..a4247a2210 100644 --- a/plugins/search-backend-module-elasticsearch/CHANGELOG.md +++ b/plugins/search-backend-module-elasticsearch/CHANGELOG.md @@ -1,5 +1,27 @@ # @backstage/plugin-search-backend-module-elasticsearch +## 0.1.5 + +### Patch Changes + +- 281cec1b61: Use more precise matching for query filters +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- ddce23d080: Now possible to set a custom index template on the elasticsearch search engine. +- 7d8acfc32e: Additional types now exported publicly: + + - ElasticSearchAgentOptions + - ElasticSearchConcreteQuery + - ElasticSearchQueryTranslator + - ElasticSearchConnectionConstructor, + - ElasticSearchTransportConstructor, + - ElasticSearchNodeOptions, + - ElasticSearchOptions, + - ElasticSearchAuth, + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-backend-node@0.6.2 + ## 0.1.5-next.2 ### Patch Changes diff --git a/plugins/search-backend-module-elasticsearch/package.json b/plugins/search-backend-module-elasticsearch/package.json index 87cebc3a71..719e923c5b 100644 --- a/plugins/search-backend-module-elasticsearch/package.json +++ b/plugins/search-backend-module-elasticsearch/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-elasticsearch", "description": "A module for the search backend that implements search using ElasticSearch", - "version": "0.1.5-next.2", + "version": "0.1.5", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,8 +25,8 @@ "dependencies": { "@acuris/aws-es-connection": "^2.2.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-search-backend-node": "^0.6.2-next.2", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5", "@elastic/elasticsearch": "7.13.0", "aws-sdk": "^2.948.0", "elastic-builder": "^2.16.0", @@ -35,8 +35,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/cli": "^0.17.2", "@elastic/elasticsearch-mock": "^1.0.0" }, "files": [ diff --git a/plugins/search-backend-module-pg/CHANGELOG.md b/plugins/search-backend-module-pg/CHANGELOG.md index 1744ffae49..fe18f8254b 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.3.4 + +### Patch Changes + +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-search-backend-node@0.6.2 + ## 0.3.4-next.2 ### Patch Changes diff --git a/plugins/search-backend-module-pg/package.json b/plugins/search-backend-module-pg/package.json index 20cf9f561c..b34d2c65b8 100644 --- a/plugins/search-backend-module-pg/package.json +++ b/plugins/search-backend-module-pg/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-pg", "description": "A module for the search backend that implements search using PostgreSQL", - "version": "0.3.4-next.2", + "version": "0.3.4", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,15 +23,15 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/plugin-search-backend-node": "^0.6.2-next.2", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/backend-common": "^0.14.0", + "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5", "lodash": "^4.17.21", "knex": "^1.0.2" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2" + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2" }, "files": [ "dist", diff --git a/plugins/search-backend-node/CHANGELOG.md b/plugins/search-backend-node/CHANGELOG.md index 1482abbee8..82f83436cd 100644 --- a/plugins/search-backend-node/CHANGELOG.md +++ b/plugins/search-backend-node/CHANGELOG.md @@ -1,5 +1,23 @@ # @backstage/plugin-search-backend-node +## 0.6.2 + +### Patch Changes + +- e7794a0aaa: propagate indexing errors so they don't appear successful to the task scheduler +- 3bb25a9acc: Introducing a `NewlineDelimitedJsonCollatorFactory`, which can be used to create search indices from newline delimited JSON files stored in external storage readable via a configured `UrlReader` instance. + + This is useful if you have an independent process periodically generating `*.ndjson` files consisting of `IndexableDocument` objects and want to be able to generate a fresh index based on the latest version of such a file. + +- 3bb25a9acc: Fixed a bug that prevented `TestPipeline.withSubject` from identifying valid `Readable` subjects that were technically transform streams. +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- 7d8acfc32e: Replaced all `@beta` exports with `@public` exports +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-permission-common@0.6.2 + ## 0.6.2-next.2 ### Patch Changes diff --git a/plugins/search-backend-node/package.json b/plugins/search-backend-node/package.json index c0c6804455..3ebfb8782f 100644 --- a/plugins/search-backend-node/package.json +++ b/plugins/search-backend-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-node", "description": "A library for Backstage backend plugins that want to interact with the search backend plugin", - "version": "0.6.2-next.2", + "version": "0.6.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5", "@types/lunr": "^2.3.3", "lodash": "^4.17.21", "lunr": "^2.3.9", @@ -38,8 +38,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-common": "^0.14.0", + "@backstage/cli": "^0.17.2", "@types/ndjson": "^2.0.1" }, "files": [ diff --git a/plugins/search-backend/CHANGELOG.md b/plugins/search-backend/CHANGELOG.md index 3fd518cb01..e214d6bb16 100644 --- a/plugins/search-backend/CHANGELOG.md +++ b/plugins/search-backend/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-search-backend +## 0.5.3 + +### Patch Changes + +- 7d8acfc32e: `RouterOptions` and `createRouter` now marked as public exports +- 915700f64f: The provided search engine now adds a pagination-aware `rank` value to all results. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-permission-node@0.6.2 + - @backstage/backend-common@0.14.0 + - @backstage/plugin-auth-node@0.2.2 + - @backstage/plugin-search-backend-node@0.6.2 + - @backstage/plugin-permission-common@0.6.2 + ## 0.5.3-next.2 ### Patch Changes diff --git a/plugins/search-backend/package.json b/plugins/search-backend/package.json index eeb1f5b194..6daa65bcb4 100644 --- a/plugins/search-backend/package.json +++ b/plugins/search-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend", "description": "The Backstage backend plugin that provides your backstage app with search", - "version": "0.5.3-next.2", + "version": "0.5.3", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,14 +23,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2-next.2", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-permission-node": "^0.6.2-next.2", - "@backstage/plugin-search-backend-node": "^0.6.2-next.2", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.2", + "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", "dataloader": "^2.0.0", @@ -43,7 +43,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/search-common/CHANGELOG.md b/plugins/search-common/CHANGELOG.md index ea383888c4..53a8afb0bf 100644 --- a/plugins/search-common/CHANGELOG.md +++ b/plugins/search-common/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-search-common +## 0.3.5 + +### Patch Changes + +- 7d8acfc32e: `@beta` exports now replaced with `@public` exports +- 484afdf1dc: Added an optional `rank` attribute to the `Result` type. This represents the result rank (starting at 1) for a given result in a result set for a given search. +- Updated dependencies + - @backstage/plugin-permission-common@0.6.2 + ## 0.3.5-next.1 ### Patch Changes diff --git a/plugins/search-common/package.json b/plugins/search-common/package.json index 9144536d47..ae4c65d11e 100644 --- a/plugins/search-common/package.json +++ b/plugins/search-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-common", "description": "Common functionalities for Search, to be shared between various search-enabled plugins", - "version": "0.3.5-next.1", + "version": "0.3.5", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -40,10 +40,10 @@ }, "dependencies": { "@backstage/types": "^1.0.0", - "@backstage/plugin-permission-common": "^0.6.2-next.0" + "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "jest": { "roots": [ diff --git a/plugins/search-react/CHANGELOG.md b/plugins/search-react/CHANGELOG.md index 23622096a9..5f38994eeb 100644 --- a/plugins/search-react/CHANGELOG.md +++ b/plugins/search-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-react +## 0.2.1 + +### Patch Changes + +- 8809159148: Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.2.1-next.0 ### Patch Changes diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index 60cdc479bb..c0914e6409 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-react", - "version": "0.2.1-next.0", + "version": "0.2.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -31,9 +31,9 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/plugin-search-common": "^0.3.5-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/version-bridge": "^1.0.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -48,8 +48,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/core-app-api": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/search/CHANGELOG.md b/plugins/search/CHANGELOG.md index 21b5a76e7f..6283cee29b 100644 --- a/plugins/search/CHANGELOG.md +++ b/plugins/search/CHANGELOG.md @@ -1,5 +1,25 @@ # @backstage/plugin-search +## 0.9.0 + +### Minor Changes + +- 2dc4818541: The pre-alpha ``, ``, `etc...` components have been removed. In the unlikely event you were still using/referencing them, please update to using their non-`*Next` equivalents from either `@backstage/plugin-search-react` or `@backstage/plugin-search`. + +### Patch Changes + +- 8809159148: Components ``, `` (including ``), `` (including `.Checkbox`, `.Select`, and `.Autocomplete` static prop components), ``, and `` are now exported from `@backstage/plugin-search-react`. They are now deprecated in `@backstage/plugin-search` and will be removed in a future release. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 5388e6bdc5: Fixed a bug that could cause analytics events in other parts of Backstage to capture nonsensical values resembling search modal state under some circumstances. +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.8.2-next.2 ### Patch Changes diff --git a/plugins/search/package.json b/plugins/search/package.json index 04c3468c6e..b658490b00 100644 --- a/plugins/search/package.json +++ b/plugins/search/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search", "description": "The Backstage plugin that provides your backstage app with search", - "version": "0.8.2-next.2", + "version": "0.9.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,14 +33,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.1", - "@backstage/plugin-search-react": "^0.2.1-next.0", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-search-react": "^0.2.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@backstage/version-bridge": "^1.0.1", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/sentry/CHANGELOG.md b/plugins/sentry/CHANGELOG.md index 40b1ff9664..1a469a83af 100644 --- a/plugins/sentry/CHANGELOG.md +++ b/plugins/sentry/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-sentry +## 0.3.44 + +### Patch Changes + +- c55f6cb22d: Exported `isSentryAvailable` which can be used to determine if sentry is available. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.44-next.1 ### Patch Changes diff --git a/plugins/sentry/package.json b/plugins/sentry/package.json index f76f69adc8..a75447f0ab 100644 --- a/plugins/sentry/package.json +++ b/plugins/sentry/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-sentry", "description": "A Backstage plugin that integrates towards Sentry", - "version": "0.3.44-next.1", + "version": "0.3.44", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-table/core": "^3.1.0", "@material-ui/core": "^4.12.2", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/shortcuts/CHANGELOG.md b/plugins/shortcuts/CHANGELOG.md index bf2e1f4e18..4513e09dab 100644 --- a/plugins/shortcuts/CHANGELOG.md +++ b/plugins/shortcuts/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-shortcuts +## 0.2.7 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.2.7-next.1 ### Patch Changes diff --git a/plugins/shortcuts/package.json b/plugins/shortcuts/package.json index 9ee1fffbee..d1d3f9fba4 100644 --- a/plugins/shortcuts/package.json +++ b/plugins/shortcuts/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-shortcuts", "description": "A Backstage plugin that provides a shortcuts feature to the sidebar", - "version": "0.2.7-next.1", + "version": "0.2.7", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,8 +24,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", @@ -42,10 +42,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/sonarqube/CHANGELOG.md b/plugins/sonarqube/CHANGELOG.md index 28787ac8b7..2b3d6840da 100644 --- a/plugins/sonarqube/CHANGELOG.md +++ b/plugins/sonarqube/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-sonarqube +## 0.3.6 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- ee2cd642c5: Updated dependency `rc-progress` to `3.3.3`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.6-next.2 ### Patch Changes diff --git a/plugins/sonarqube/package.json b/plugins/sonarqube/package.json index 8fe7e16f30..d9310ffdde 100644 --- a/plugins/sonarqube/package.json +++ b/plugins/sonarqube/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-sonarqube", "description": "", - "version": "0.3.6-next.2", + "version": "0.3.6", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,10 +36,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/splunk-on-call/CHANGELOG.md b/plugins/splunk-on-call/CHANGELOG.md index dd94b235c2..e65afb1285 100644 --- a/plugins/splunk-on-call/CHANGELOG.md +++ b/plugins/splunk-on-call/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-splunk-on-call +## 0.3.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.3.30-next.1 ### Patch Changes diff --git a/plugins/splunk-on-call/package.json b/plugins/splunk-on-call/package.json index b69e747db2..baecd2f9c5 100644 --- a/plugins/splunk-on-call/package.json +++ b/plugins/splunk-on-call/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-splunk-on-call", "description": "A Backstage plugin that integrates towards Splunk On-Call", - "version": "0.3.30-next.1", + "version": "0.3.30", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -51,10 +51,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/stack-overflow-backend/CHANGELOG.md b/plugins/stack-overflow-backend/CHANGELOG.md index 21c01b4265..9f3a2d98a3 100644 --- a/plugins/stack-overflow-backend/CHANGELOG.md +++ b/plugins/stack-overflow-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-stack-overflow-backend +## 0.1.2 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + ## 0.1.2-next.0 ### Patch Changes diff --git a/plugins/stack-overflow-backend/package.json b/plugins/stack-overflow-backend/package.json index a14f429b79..cc41da042e 100644 --- a/plugins/stack-overflow-backend/package.json +++ b/plugins/stack-overflow-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-stack-overflow-backend", - "version": "0.1.2-next.0", + "version": "0.1.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/plugin-search-common": "^0.3.5", "@backstage/config": "^1.0.1", "qs": "^6.9.4", "cross-fetch": "^3.1.5", diff --git a/plugins/stack-overflow/CHANGELOG.md b/plugins/stack-overflow/CHANGELOG.md index 3c4205bf76..d0f5f39f4b 100644 --- a/plugins/stack-overflow/CHANGELOG.md +++ b/plugins/stack-overflow/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-stack-overflow +## 0.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/plugin-home@0.4.22 + ## 0.1.2-next.1 ### Patch Changes diff --git a/plugins/stack-overflow/package.json b/plugins/stack-overflow/package.json index 02a1cb40d4..1438ddcd50 100644 --- a/plugins/stack-overflow/package.json +++ b/plugins/stack-overflow/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-stack-overflow", - "version": "0.1.2-next.1", + "version": "0.1.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,10 +24,10 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-home": "^0.4.22-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-home": "^0.4.22", + "@backstage/plugin-search-common": "^0.3.5", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -42,10 +42,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", "@types/jest": "^26.0.7", diff --git a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md index d59e3686d5..ba2392b5ee 100644 --- a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md +++ b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-tech-insights-backend-module-jsonfc +## 0.1.17 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/plugin-tech-insights-node@0.3.1 + ## 0.1.17-next.1 ### Patch Changes diff --git a/plugins/tech-insights-backend-module-jsonfc/package.json b/plugins/tech-insights-backend-module-jsonfc/package.json index b84c73eed5..a6782c57fb 100644 --- a/plugins/tech-insights-backend-module-jsonfc/package.json +++ b/plugins/tech-insights-backend-module-jsonfc/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend-module-jsonfc", - "version": "0.1.17-next.1", + "version": "0.1.17", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", + "@backstage/plugin-tech-insights-node": "^0.3.1", "ajv": "^8.10.0", "json-rules-engine": "^6.1.2", "lodash": "^4.17.21", @@ -46,7 +46,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/plugins/tech-insights-backend/CHANGELOG.md b/plugins/tech-insights-backend/CHANGELOG.md index 4cc368fbe2..9e496d9046 100644 --- a/plugins/tech-insights-backend/CHANGELOG.md +++ b/plugins/tech-insights-backend/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-tech-insights-backend +## 0.4.1 + +### Patch Changes + +- 4fee8f59e3: Updated tech-insights fetch/latest endpoint to return the actual latest row based on the timestamp +- aa15229ec3: Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks + + Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. + +- Updated dependencies + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-tech-insights-node@0.3.1 + ## 0.4.1-next.2 ### Patch Changes diff --git a/plugins/tech-insights-backend/package.json b/plugins/tech-insights-backend/package.json index f4286a2404..5ae890ae1b 100644 --- a/plugins/tech-insights-backend/package.json +++ b/plugins/tech-insights-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend", - "version": "0.4.1-next.2", + "version": "0.4.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,14 +34,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1-next.1", + "@backstage/plugin-tech-insights-node": "^0.3.1", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -54,8 +54,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "@types/semver": "^7.3.8", "supertest": "^6.1.3", diff --git a/plugins/tech-insights-node/CHANGELOG.md b/plugins/tech-insights-node/CHANGELOG.md index 607548384a..c6af55abd5 100644 --- a/plugins/tech-insights-node/CHANGELOG.md +++ b/plugins/tech-insights-node/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-tech-insights-node +## 0.3.1 + +### Patch Changes + +- aa15229ec3: Introduce additional JsonValue types to be storable as facts. This enables the possibility to store more complex objects for fact checking purposes. The rules engine supports walking keyed object values directly to create rules and checks + + Modify facts database table to have a more restricted timestamp precision for cases where the postgres server isn't configured to contain such value. This fixes the issue where in some cases `maxItems` lifecycle condition didn't work as expected. + +- Updated dependencies + - @backstage/backend-common@0.14.0 + ## 0.3.1-next.1 ### Patch Changes diff --git a/plugins/tech-insights-node/package.json b/plugins/tech-insights-node/package.json index 0312b1d91f..904f149d6c 100644 --- a/plugins/tech-insights-node/package.json +++ b/plugins/tech-insights-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-node", - "version": "0.3.1-next.1", + "version": "0.3.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", + "@backstage/backend-common": "^0.14.0", "@backstage/config": "^1.0.1", "@backstage/plugin-tech-insights-common": "^0.2.4", "@backstage/types": "^1.0.0", @@ -42,7 +42,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2" + "@backstage/cli": "^0.17.2" }, "files": [ "dist" diff --git a/plugins/tech-insights/CHANGELOG.md b/plugins/tech-insights/CHANGELOG.md index f1496fe268..867f639067 100644 --- a/plugins/tech-insights/CHANGELOG.md +++ b/plugins/tech-insights/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-tech-insights +## 0.2.2 + +### Patch Changes + +- 09d2f4d179: Export TechInsightsClient so it may be extended by custom implementations +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.2.2-next.1 ### Patch Changes diff --git a/plugins/tech-insights/package.json b/plugins/tech-insights/package.json index f0f75c5caf..0956db7cf3 100644 --- a/plugins/tech-insights/package.json +++ b/plugins/tech-insights/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights", - "version": "0.2.2-next.1", + "version": "0.2.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,11 +28,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/plugin-tech-insights-common": "^0.2.4", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/tech-radar/CHANGELOG.md b/plugins/tech-radar/CHANGELOG.md index 29c0b48438..049a1b9c4c 100644 --- a/plugins/tech-radar/CHANGELOG.md +++ b/plugins/tech-radar/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-tech-radar +## 0.5.13 + +### Patch Changes + +- bb31e5489c: Updated dependency `d3-force` to `^3.0.0`. + Updated dependency `@types/d3-force` to `^3.0.0`. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.5.13-next.1 ### Patch Changes diff --git a/plugins/tech-radar/package.json b/plugins/tech-radar/package.json index f5278d0710..de2eab6fd1 100644 --- a/plugins/tech-radar/package.json +++ b/plugins/tech-radar/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-tech-radar", "description": "A Backstage plugin that lets you display a Tech Radar for your organization", - "version": "0.5.13-next.1", + "version": "0.5.13", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,8 +34,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-addons-test-utils/CHANGELOG.md b/plugins/techdocs-addons-test-utils/CHANGELOG.md index fd85a88b9c..aabdec8922 100644 --- a/plugins/techdocs-addons-test-utils/CHANGELOG.md +++ b/plugins/techdocs-addons-test-utils/CHANGELOG.md @@ -1,5 +1,22 @@ # @backstage/plugin-techdocs-addons-test-utils +## 1.0.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- d047d81295: Update default mock +- Updated dependencies + - @backstage/plugin-catalog@1.3.0 + - @backstage/plugin-techdocs@1.2.0 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/core-app-api@1.0.3 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/test-utils@1.1.1 + - @backstage/plugin-techdocs-react@1.0.1 + ## 1.0.1-next.1 ### Patch Changes diff --git a/plugins/techdocs-addons-test-utils/package.json b/plugins/techdocs-addons-test-utils/package.json index 3dc0aa94fe..35d176566e 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.1-next.1", + "version": "1.0.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,15 +32,15 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog": "^1.2.1-next.1", - "@backstage/plugin-search-react": "^0.2.1-next.0", - "@backstage/plugin-techdocs": "^1.1.2-next.1", - "@backstage/plugin-techdocs-react": "^1.0.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-app-api": "^1.0.3", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog": "^1.3.0", + "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-techdocs": "^1.2.0", + "@backstage/plugin-techdocs-react": "^1.0.1", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -56,8 +56,8 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/dev-utils": "^1.0.3-next.1", + "@backstage/cli": "^0.17.2", + "@backstage/dev-utils": "^1.0.3", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-backend/CHANGELOG.md b/plugins/techdocs-backend/CHANGELOG.md index a85df108f2..861bf37bef 100644 --- a/plugins/techdocs-backend/CHANGELOG.md +++ b/plugins/techdocs-backend/CHANGELOG.md @@ -1,5 +1,82 @@ # @backstage/plugin-techdocs-backend +## 1.1.2 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 61fba6e50b: In order to ensure a good, stable TechDocs user experience when running TechDocs with `techdocs.builder` set to `local`, the number of concurrent builds has been limited to 10. Any additional builds requested concurrently will be queued and handled as prior builds complete. In the unlikely event that you need to handle more concurrent builds, consider scaling out your TechDocs backend deployment or using the `external` option for `techdocs.builder`. +- 5d66d4ff67: Output logs from a TechDocs build to a logging transport in addition to existing + frontend event stream, for capturing these logs to other sources. + + This allows users to capture debugging information around why tech docs fail to build + without needing to rely on end users capturing information from their web browser. + + The most common use case is to log to the same place as the rest of the backend + application logs. + + Sample usage: + + ``` + import { DockerContainerRunner } from '@backstage/backend-common'; + import { + createRouter, + Generators, + Preparers, + Publisher, + } from '@backstage/plugin-techdocs-backend'; + import Docker from 'dockerode'; + import { Router } from 'express'; + import { PluginEnvironment } from '../types'; + + export default async function createPlugin( + env: PluginEnvironment, + ): Promise { + const preparers = await Preparers.fromConfig(env.config, { + logger: env.logger, + reader: env.reader, + }); + + const dockerClient = new Docker(); + const containerRunner = new DockerContainerRunner({ dockerClient }); + + const generators = await Generators.fromConfig(env.config, { + logger: env.logger, + containerRunner, + }); + + const publisher = await Publisher.fromConfig(env.config, { + logger: env.logger, + discovery: env.discovery, + }); + + await publisher.getReadiness(); + + return await createRouter({ + preparers, + generators, + publisher, + logger: env.logger, + // Passing a buildLogTransport as a parameter in createRouter will enable + // capturing build logs to a backend log stream + buildLogTransport: env.logger, + config: env.config, + discovery: env.discovery, + cache: env.cache, + }); + } + ``` + +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-catalog-common@1.0.3 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/plugin-techdocs-node@1.1.2 + - @backstage/catalog-client@1.0.3 + - @backstage/plugin-permission-common@0.6.2 + - @backstage/catalog-model@1.0.3 + ## 1.1.2-next.2 ### Patch Changes diff --git a/plugins/techdocs-backend/package.json b/plugins/techdocs-backend/package.json index 8c5a6ee703..d7e9326fe5 100644 --- a/plugins/techdocs-backend/package.json +++ b/plugins/techdocs-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-backend", "description": "The Backstage backend plugin that renders technical documentation for your components", - "version": "1.1.2-next.2", + "version": "1.1.2", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-catalog-common": "^1.0.3-next.1", - "@backstage/plugin-permission-common": "^0.6.2-next.0", - "@backstage/plugin-search-common": "^0.3.5-next.1", - "@backstage/plugin-techdocs-node": "^1.1.2-next.2", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-catalog-common": "^1.0.3", + "@backstage/plugin-permission-common": "^0.6.2", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-techdocs-node": "^1.1.2", "@types/express": "^4.17.6", "dockerode": "^3.3.1", "express": "^4.17.1", @@ -56,9 +56,9 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25-next.2", - "@backstage/cli": "^0.17.2-next.2", - "@backstage/plugin-search-backend-node": "0.6.2-next.2", + "@backstage/backend-test-utils": "^0.1.25", + "@backstage/cli": "^0.17.2", + "@backstage/plugin-search-backend-node": "0.6.2", "@types/dockerode": "^3.3.0", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/techdocs-module-addons-contrib/CHANGELOG.md b/plugins/techdocs-module-addons-contrib/CHANGELOG.md index dc74b27562..4219157392 100644 --- a/plugins/techdocs-module-addons-contrib/CHANGELOG.md +++ b/plugins/techdocs-module-addons-contrib/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-techdocs-module-addons-contrib +## 1.0.1 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- 6968b65ba1: Updated dependency `@react-hookz/web` to `^14.0.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/plugin-techdocs-react@1.0.1 + ## 1.0.1-next.1 ### Patch Changes diff --git a/plugins/techdocs-module-addons-contrib/package.json b/plugins/techdocs-module-addons-contrib/package.json index fb5bfa3500..92c0d8d4af 100644 --- a/plugins/techdocs-module-addons-contrib/package.json +++ b/plugins/techdocs-module-addons-contrib/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-module-addons-contrib", "description": "Plugin module for contributed TechDocs Addons", - "version": "1.0.1-next.1", + "version": "1.0.1", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-techdocs-react": "^1.0.1-next.1", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/integration": "^1.2.1", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-techdocs-react": "^1.0.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -51,11 +51,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/plugin-techdocs-addons-test-utils": "^1.0.1-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/plugin-techdocs-addons-test-utils": "^1.0.1", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-node/CHANGELOG.md b/plugins/techdocs-node/CHANGELOG.md index 22ff6f9b79..1902f80171 100644 --- a/plugins/techdocs-node/CHANGELOG.md +++ b/plugins/techdocs-node/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-techdocs-node +## 1.1.2 + +### Patch Changes + +- f5283a42e2: Updated dependency `@google-cloud/storage` to `^6.0.0`. +- 2c048f8b90: Updated deprecated use of `express`' `res.redirect()` method when handling legacy path casing. +- Updated dependencies + - @backstage/plugin-search-common@0.3.5 + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-model@1.0.3 + ## 1.1.2-next.2 ### Patch Changes diff --git a/plugins/techdocs-node/package.json b/plugins/techdocs-node/package.json index 8e133525a4..9cd737db80 100644 --- a/plugins/techdocs-node/package.json +++ b/plugins/techdocs-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-node", "description": "Common node.js functionalities for TechDocs, to be shared between techdocs-backend plugin and techdocs-cli", - "version": "1.1.2-next.2", + "version": "1.1.2", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -42,12 +42,12 @@ "dependencies": { "@azure/identity": "^2.0.1", "@azure/storage-blob": "^12.5.0", - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", - "@backstage/plugin-search-common": "^0.3.5-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/plugin-search-common": "^0.3.5", "@google-cloud/storage": "^6.0.0", "@trendyol-js/openstack-swift-sdk": "^0.0.5", "@types/express": "^4.17.6", @@ -64,7 +64,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/fs-extra": "^9.0.5", "@types/js-yaml": "^4.0.0", "@types/mime-types": "^2.1.0", diff --git a/plugins/techdocs-react/CHANGELOG.md b/plugins/techdocs-react/CHANGELOG.md index 35dca7f851..904eacff26 100644 --- a/plugins/techdocs-react/CHANGELOG.md +++ b/plugins/techdocs-react/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-techdocs-react +## 1.0.1 + +### Patch Changes + +- 3b45ad701f: Creates a `TechDocsShadowDom` component that takes a tree of elements and an `onAppend` handler: + + - Calls the `onAppend` handler when appending the element tree to the shadow root; + - Also dispatches an event when styles are loaded to let transformers know that the computed styles are ready to be consumed. + +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 1.0.1-next.1 ### Patch Changes diff --git a/plugins/techdocs-react/package.json b/plugins/techdocs-react/package.json index 099614da7d..f4a51bfe42 100644 --- a/plugins/techdocs-react/package.json +++ b/plugins/techdocs-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-react", "description": "Shared frontend utilities for TechDocs and Addons", - "version": "1.0.1-next.1", + "version": "1.0.1", "private": false, "publishConfig": { "access": "public", @@ -35,9 +35,9 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/version-bridge": "^1.0.1", "@material-ui/core": "^4.12.2", "@material-ui/lab": "4.0.0-alpha.57", @@ -56,7 +56,7 @@ "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/test-utils": "^1.1.1", "@backstage/theme": "^0.2.15" }, "files": [ diff --git a/plugins/techdocs/CHANGELOG.md b/plugins/techdocs/CHANGELOG.md index 10ca28b3ee..91babd6fba 100644 --- a/plugins/techdocs/CHANGELOG.md +++ b/plugins/techdocs/CHANGELOG.md @@ -1,5 +1,44 @@ # @backstage/plugin-techdocs +## 1.2.0 + +### Minor Changes + +- fe7614ea54: Add an optional icon to the Catalog and TechDocs search results + +### Patch Changes + +- d047d81295: Use entity title as label in `TechDocsReaderPageHeader` if available +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. +- 915700f64f: In order to simplify analytics on top of the search experience in Backstage, the provided `<*ResultListItem />` component now captures a `discover` analytics event instead of a `click` event. This event includes the result rank as its `value` and, like a click, the URL/path clicked to as its `to` attribute. +- 881fbd7e8d: Fix `EntityTechdocsContent` component to use objects instead of `` elements, otherwise "outlet" will be null on sub-pages and add-ons won't render. +- 17c059dfd0: Restructures reader style transformations to improve code readability: + + - Extracts the style rules to separate files; + - Creates a hook that processes each rule; + - And creates another hook that returns a transformer responsible for injecting them into the head tag of a given element. + +- 3b45ad701f: Packages a set of tweaks to the TechDocs addons rendering process: + + - Prevents displaying sidebars until page styles are loaded and the sidebar position is updated; + - Prevents new sidebar locations from being created every time the reader page is rendered if these locations already exist; + - Centers the styles loaded event to avoid having multiple locations setting the opacity style in Shadow Dom causing the screen to flash multiple times. + +- 9b94ade898: Use entity title in `TechDocsSearch` placeholder if available. +- 816f7475ec: Convert `sanitizeDOM` transformer to hook as part of code readability improvements in dom file. +- 50ff56a80f: Change the `EntityDocsPage` path to be more specific and also add integration tests for `sub-routes` on this page. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/plugin-search-common@0.3.5 + - @backstage/plugin-search-react@0.2.1 + - @backstage/core-components@0.9.5 + - @backstage/integration@1.2.1 + - @backstage/core-plugin-api@1.0.3 + - @backstage/integration-react@1.1.1 + - @backstage/catalog-model@1.0.3 + - @backstage/plugin-techdocs-react@1.0.1 + ## 1.1.2-next.1 ### Patch Changes diff --git a/plugins/techdocs/package.json b/plugins/techdocs/package.json index 7b3f688fea..45c6d98aec 100644 --- a/plugins/techdocs/package.json +++ b/plugins/techdocs/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs", "description": "The Backstage plugin that renders technical documentation for your components", - "version": "1.1.2-next.1", + "version": "1.2.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,17 +35,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.1", - "@backstage/integration-react": "^1.1.1-next.1", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", - "@backstage/plugin-search-common": "^0.3.5-next.0", - "@backstage/plugin-search-react": "^0.2.1-next.0", - "@backstage/plugin-techdocs-react": "^1.0.1-next.1", + "@backstage/integration": "^1.2.1", + "@backstage/integration-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-search-common": "^0.3.5", + "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-techdocs-react": "^1.0.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -67,10 +67,10 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/todo-backend/CHANGELOG.md b/plugins/todo-backend/CHANGELOG.md index f82cf165a6..8fc6adbfcb 100644 --- a/plugins/todo-backend/CHANGELOG.md +++ b/plugins/todo-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-todo-backend +## 0.1.30 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/backend-common@0.14.0 + - @backstage/integration@1.2.1 + - @backstage/catalog-client@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.1.30-next.2 ### Patch Changes diff --git a/plugins/todo-backend/package.json b/plugins/todo-backend/package.json index 0f87525304..235e05a93b 100644 --- a/plugins/todo-backend/package.json +++ b/plugins/todo-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-todo-backend", "description": "A Backstage backend plugin that lets you browse TODO comments in your source code", - "version": "0.1.30-next.2", + "version": "0.1.30", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,12 +29,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/catalog-client": "^1.0.3-next.0", - "@backstage/catalog-model": "^1.0.3-next.0", + "@backstage/backend-common": "^0.14.0", + "@backstage/catalog-client": "^1.0.3", + "@backstage/catalog-model": "^1.0.3", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1-next.2", + "@backstage/integration": "^1.2.1", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -43,7 +43,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", + "@backstage/cli": "^0.17.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/todo/CHANGELOG.md b/plugins/todo/CHANGELOG.md index 4a65384d9f..77eda64a68 100644 --- a/plugins/todo/CHANGELOG.md +++ b/plugins/todo/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-todo +## 0.2.8 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 + ## 0.2.8-next.1 ### Patch Changes diff --git a/plugins/todo/package.json b/plugins/todo/package.json index f302a27e79..7fbf79cd3a 100644 --- a/plugins/todo/package.json +++ b/plugins/todo/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-todo", "description": "A Backstage plugin that lets you browse TODO comments in your source code", - "version": "0.2.8-next.1", + "version": "0.2.8", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,11 +30,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -45,10 +45,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/user-settings/CHANGELOG.md b/plugins/user-settings/CHANGELOG.md index 8a3d9927d4..81cc4a891f 100644 --- a/plugins/user-settings/CHANGELOG.md +++ b/plugins/user-settings/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-user-settings +## 0.4.5 + +### Patch Changes + +- 9d2d6a0cea: Added new `` to show the result of the `identityApi.getBackstageIdentity()` call to help debug ownership issues. The new card has been added to the user settings page. +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- bff65e6958: Updated sidebar-related logic to use `` + `useSidebarPinState()` and/or `` + `useSidebarOpenState()` from `@backstage/core-components`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.4.5-next.1 ### Patch Changes diff --git a/plugins/user-settings/package.json b/plugins/user-settings/package.json index 279f711b2f..aa4335856e 100644 --- a/plugins/user-settings/package.json +++ b/plugins/user-settings/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-user-settings", "description": "A Backstage plugin that provides a settings page", - "version": "0.4.5-next.1", + "version": "0.4.5", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,8 +34,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/vault-backend/CHANGELOG.md b/plugins/vault-backend/CHANGELOG.md new file mode 100644 index 0000000000..302b27afa8 --- /dev/null +++ b/plugins/vault-backend/CHANGELOG.md @@ -0,0 +1,14 @@ +# @backstage/plugin-vault-backend + +## 0.1.0 + +### Minor Changes + +- 7c310a5bc2: First implementation for the backend vault plugin. For more information refer to its `README.md`. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-tasks@0.3.2 + - @backstage/backend-common@0.14.0 + - @backstage/backend-test-utils@0.1.25 diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 3ec616aa12..651b95f98c 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault-backend", "description": "A Backstage backend plugin that integrates towards Vault", - "version": "0.0.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0-next.2", - "@backstage/backend-tasks": "^0.3.2-next.1", - "@backstage/backend-test-utils": "^0.1.25-next.1", + "@backstage/backend-common": "^0.14.0", + "@backstage/backend-tasks": "^0.3.2", + "@backstage/backend-test-utils": "^0.1.25", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "*", @@ -50,7 +50,7 @@ "yn": "^5.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", + "@backstage/cli": "^0.17.2", "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/vault/CHANGELOG.md b/plugins/vault/CHANGELOG.md new file mode 100644 index 0000000000..205b537dd4 --- /dev/null +++ b/plugins/vault/CHANGELOG.md @@ -0,0 +1,15 @@ +# @backstage/plugin-vault + +## 0.1.0 + +### Minor Changes + +- 7c310a5bc2: First implementation of the frontend vault plugin. For more information refer to its `README.md`. + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-catalog-react@1.1.1 + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + - @backstage/catalog-model@1.0.3 diff --git a/plugins/vault/package.json b/plugins/vault/package.json index 35f441e65e..54fc7cfc90 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault", "description": "A Backstage plugin that integrates towards Vault", - "version": "0.0.0", + "version": "0.1.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3-next.0", - "@backstage/core-components": "^0.9.5-next.1", - "@backstage/core-plugin-api": "^1.0.3-next.0", - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/catalog-model": "^1.0.3", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", + "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.1", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/xcmetrics/CHANGELOG.md b/plugins/xcmetrics/CHANGELOG.md index 2d460f36ca..01d99a138f 100644 --- a/plugins/xcmetrics/CHANGELOG.md +++ b/plugins/xcmetrics/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-xcmetrics +## 0.2.26 + +### Patch Changes + +- 8f7b1835df: Updated dependency `msw` to `^0.41.0`. +- Updated dependencies + - @backstage/core-components@0.9.5 + - @backstage/core-plugin-api@1.0.3 + ## 0.2.26-next.1 ### Patch Changes diff --git a/plugins/xcmetrics/package.json b/plugins/xcmetrics/package.json index 80ab7ea1fb..1c93a9c8cb 100644 --- a/plugins/xcmetrics/package.json +++ b/plugins/xcmetrics/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-xcmetrics", "description": "A Backstage plugin that shows XCode build metrics for your components", - "version": "0.2.26-next.1", + "version": "0.2.26", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,8 +24,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5-next.2", - "@backstage/core-plugin-api": "^1.0.3-next.0", + "@backstage/core-components": "^0.9.5", + "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.2", - "@backstage/core-app-api": "^1.0.3-next.0", - "@backstage/dev-utils": "^1.0.3-next.1", - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/cli": "^0.17.2", + "@backstage/core-app-api": "^1.0.3", + "@backstage/dev-utils": "^1.0.3", + "@backstage/test-utils": "^1.1.1", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/yarn.lock b/yarn.lock index 0902601073..0d8a9f0a80 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1465,228 +1465,6 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@backstage/catalog-client@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.2.tgz#8450bb09e6e65114053538d1ab855bc8bee09531" - integrity sha512-3983OrSPZQyTHRi78Ot2708h8iKd3bcvG0PSPmtbmQDkgxUUAXJ1w276THNoGA/Vt84NsNBO0Srfm0b4PmegAQ== - dependencies: - "@backstage/catalog-model" "^1.0.2" - "@backstage/errors" "^1.0.0" - cross-fetch "^3.1.5" - -"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.2.tgz#50328068632b452fabed67e53fb7f83ead08f9df" - integrity sha512-0GCTW0XqFoHRiZKRXiru5wVMm0hoPiFAEyBiudWlYAFXtVEoVnrzJ+pa9F96zqtFgcGHmgSybgzjmVqiGUMSlw== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@backstage/types" "^1.0.0" - ajv "^8.10.0" - json-schema "^0.4.0" - lodash "^4.17.21" - uuid "^8.0.0" - -"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.4": - version "0.9.4" - resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.4.tgz#47e9a305f768a951e0cb0ffa9c1e3c141d06b223" - integrity sha512-zg297mSw1BIc/BENrSClmgMx4kp0so0cK+lQ4FVa22+Dg5PDc2/NXWId2qEN2zD2XV/nm9RFBQM02gd6M6q3jQ== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/errors" "^1.0.0" - "@backstage/theme" "^0.2.15" - "@material-table/core" "^3.1.0" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - "@react-hookz/web" "^13.0.0" - "@types/react-sparklines" "^1.7.0" - "@types/react-text-truncate" "^0.14.0" - ansi-regex "^6.0.1" - classnames "^2.2.6" - d3-selection "^3.0.0" - d3-shape "^3.0.0" - d3-zoom "^3.0.0" - dagre "^0.8.5" - history "^5.0.0" - immer "^9.0.1" - lodash "^4.17.21" - pluralize "^8.0.0" - prop-types "^15.7.2" - qs "^6.9.4" - rc-progress "3.3.2" - react-helmet "6.1.0" - react-hook-form "^7.12.2" - react-markdown "^8.0.0" - react-router "6.0.0-beta.0" - react-router-dom "6.0.0-beta.0" - react-sparklines "^1.7.0" - react-syntax-highlighter "^15.4.5" - react-text-truncate "^0.18.0" - react-use "^17.3.2" - react-virtualized-auto-sizer "^1.0.6" - react-window "^1.8.6" - remark-gfm "^3.0.1" - zen-observable "^0.8.15" - zod "^3.11.6" - -"@backstage/core-plugin-api@^1.0.0", "@backstage/core-plugin-api@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/core-plugin-api/-/core-plugin-api-1.0.2.tgz#6ebf52c20df33ee3c128c98937d0d349a805d3eb" - integrity sha512-82bFp3lTW4o4Bske+zLXSzHueLP/mdUPWx6J/6YUfn88Aq93gb4VrdUJ04fXXDNWPqaBzfpynaIbme9QRZqfHQ== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - history "^5.0.0" - prop-types "^15.7.2" - react-router-dom "6.0.0-beta.0" - zen-observable "^0.8.15" - -"@backstage/integration-react@^1.0.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.0.tgz#9d58838e85647540d2de69e40099533260ba2622" - integrity sha512-eNUYHOkz0daMlnsSMxK6ypDptu1pvlxgq1spJUK8zfU9TbhGs4321Vh+59RKyTmWt9quVksdB3lCboV4NVWx4Q== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/integration" "^1.2.0" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - react-use "^17.2.4" - -"@backstage/integration@^1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.0.tgz#89a3fc95c079c541ca6a5cafc613ebefc0463687" - integrity sha512-ZUfaMUUEUlmS2JE4M0Z4fXe269Z+hRGooptgILC21hgXW20hjVrhb7Q6ynH78md0ItcEuHVs2mnCztc7LS8erg== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - "@octokit/auth-app" "^3.4.0" - "@octokit/rest" "^18.5.3" - cross-fetch "^3.1.5" - git-url-parse "^11.6.0" - lodash "^4.17.21" - luxon "^2.0.2" - -"@backstage/plugin-catalog-common@^1.0.2": - version "1.0.2" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-common/-/plugin-catalog-common-1.0.2.tgz#04f45745c0f30a1193d25c2dcf3eef01a97ab6be" - integrity sha512-5YCSZ9b2pMKJxHTJMPMo5qC3KeO4aCJCSV9uez7dHMIxkpEV+YThx3JAjrdj6KMMF0EGK4817fd6tipGUdfwDA== - dependencies: - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/search-common" "^0.3.4" - -"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.1.0.tgz#aa2c479e12fa8cfa5409b563e0a7e7dc665204e5" - integrity sha512-jOVDIcwTwdTPA7wuAMZ/1UHipeo9EMOmSJ0mtGllFP8/ldjxe0tNNjaYb4UazCQgCdUUSuk4ccwZ/EU5GtUfYg== - dependencies: - "@backstage/catalog-client" "^1.0.2" - "@backstage/catalog-model" "^1.0.2" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/errors" "^1.0.0" - "@backstage/integration" "^1.2.0" - "@backstage/plugin-catalog-common" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/plugin-permission-react" "^0.4.1" - "@backstage/theme" "^0.2.15" - "@backstage/types" "^1.0.0" - "@backstage/version-bridge" "^1.0.1" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - classnames "^2.2.6" - jwt-decode "^3.1.0" - lodash "^4.17.21" - qs "^6.9.4" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - yaml "^1.10.0" - zen-observable "^0.8.15" - -"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.21": - version "0.4.21" - resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.21.tgz#798058d9aeead651ff830641cb0222b6bafb5542" - integrity sha512-mdaxdR+76ZNYJiK1NtAGjnfQQKPIsZ2tVfyskWaZov1C6DxTGsguQ5oL2kiDiFj4rF7FgmtwfIxKZqWfivbR5Q== - dependencies: - "@backstage/catalog-model" "^1.0.2" - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-catalog-react" "^1.1.0" - "@backstage/plugin-stack-overflow" "^0.1.1" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@material-ui/lab" "4.0.0-alpha.57" - lodash "^4.17.21" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - -"@backstage/plugin-permission-common@^0.6.1": - version "0.6.1" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-common/-/plugin-permission-common-0.6.1.tgz#fd63ba10b90896e6f8627c569a5f28127821523f" - integrity sha512-abAZEuzhjSuybQ+EjAl6bonDCBRVcNlcAhp/uia+znDyUzLRaOE1rh9y9lyKQco5UCnxXCeR0FzRv592lBmYVw== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/errors" "^1.0.0" - cross-fetch "^3.1.5" - uuid "^8.0.0" - zod "^3.11.6" - -"@backstage/plugin-permission-react@^0.4.1": - version "0.4.1" - resolved "https://registry.npmjs.org/@backstage/plugin-permission-react/-/plugin-permission-react-0.4.1.tgz#18740913a8df06629a32b9c8679caa451c3989ac" - integrity sha512-yCuKGXP1TNJrphdkvBBLf+Jf7KYtW4Z9uV4M7vtBsK9qR2U3YU9T24iRDJ3hhBIr7dj66h4JCMhyrsDqYjMCTQ== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-permission-common" "^0.6.1" - cross-fetch "^3.1.5" - react-router "6.0.0-beta.0" - react-use "^17.2.4" - swr "^1.1.2" - -"@backstage/plugin-search-common@0.3.4", "@backstage/plugin-search-common@^0.3.4": - version "0.3.4" - resolved "https://registry.npmjs.org/@backstage/plugin-search-common/-/plugin-search-common-0.3.4.tgz#04e59618b1bef4c52045b3103c87a570e260cdb3" - integrity sha512-ft3+H8zQevm1QduQBLmP7awO8XHzh4Jlq0V6BdFrZftgyw0MbMz/YVtRwtHL++6qp91xDtQnwntZ5/3B95Hbug== - dependencies: - "@backstage/plugin-permission-common" "^0.6.1" - "@backstage/types" "^1.0.0" - -"@backstage/plugin-stack-overflow@^0.1.1": - version "0.1.1" - resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.1.tgz#238ae82cb5f5732eb343b4f87aa6fc973bb613d2" - integrity sha512-CUSQfrymZw90gWB6SbtRKt/SwgpoAxlClSeEMuDkC1JI9QjyLBNkXwYfesTpuQyBF3J6tyn/02q6r9tKKiObgQ== - dependencies: - "@backstage/config" "^1.0.1" - "@backstage/core-components" "^0.9.4" - "@backstage/core-plugin-api" "^1.0.2" - "@backstage/plugin-home" "^0.4.21" - "@backstage/plugin-search-common" "^0.3.4" - "@backstage/theme" "^0.2.15" - "@material-ui/core" "^4.12.2" - "@material-ui/icons" "^4.9.1" - "@testing-library/jest-dom" "^5.10.1" - cross-fetch "^3.1.5" - lodash "^4.17.21" - qs "^6.9.4" - react-use "^17.2.4" - -"@backstage/search-common@^0.3.4": - version "0.3.4" - resolved "https://registry.npmjs.org/@backstage/search-common/-/search-common-0.3.4.tgz#94235e6bd930c738b41ccc3f5b78ddfad3a105cc" - integrity sha512-lANcEeA++EaZ6lAPuuN7I9DrP4Ij1d/Mb9wyrY01DKnw0wUVKj8wdGwB2KR/LWdxg7dY8BIHU49bUqSTMKl2+w== - dependencies: - "@backstage/plugin-search-common" "0.3.4" - "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -12383,62 +12161,62 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72-next.2" + version "0.2.72" dependencies: - "@backstage/app-defaults" "^1.0.3-next.1" - "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.2" + "@backstage/app-defaults" "^1.0.3" + "@backstage/catalog-model" "^1.0.3" + "@backstage/cli" "^0.17.2" "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.2" - "@backstage/core-plugin-api" "^1.0.3-next.0" - "@backstage/integration-react" "^1.1.1-next.1" - "@backstage/plugin-airbrake" "^0.3.6-next.1" - "@backstage/plugin-apache-airflow" "^0.1.14-next.1" - "@backstage/plugin-api-docs" "^0.8.6-next.1" - "@backstage/plugin-azure-devops" "^0.1.22-next.1" - "@backstage/plugin-badges" "^0.2.30-next.1" - "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-catalog-common" "^1.0.3-next.1" - "@backstage/plugin-catalog-graph" "^0.2.18-next.1" - "@backstage/plugin-catalog-import" "^0.8.9-next.1" - "@backstage/plugin-catalog-react" "^1.1.1-next.1" - "@backstage/plugin-circleci" "^0.3.6-next.1" - "@backstage/plugin-cloudbuild" "^0.3.6-next.1" - "@backstage/plugin-code-coverage" "^0.1.33-next.1" - "@backstage/plugin-cost-insights" "^0.11.28-next.2" - "@backstage/plugin-dynatrace" "^0.0.0" - "@backstage/plugin-explore" "^0.3.37-next.1" - "@backstage/plugin-gcalendar" "^0.3.2-next.1" - "@backstage/plugin-gcp-projects" "^0.3.25-next.1" - "@backstage/plugin-github-actions" "^0.5.6-next.1" - "@backstage/plugin-gocd" "^0.1.12-next.1" - "@backstage/plugin-graphiql" "^0.2.38-next.1" - "@backstage/plugin-home" "^0.4.22-next.1" - "@backstage/plugin-jenkins" "^0.7.5-next.1" - "@backstage/plugin-kafka" "^0.3.6-next.1" - "@backstage/plugin-kubernetes" "^0.6.6-next.2" - "@backstage/plugin-lighthouse" "^0.3.6-next.1" - "@backstage/plugin-newrelic" "^0.3.24-next.1" - "@backstage/plugin-newrelic-dashboard" "^0.1.14-next.1" - "@backstage/plugin-org" "^0.5.6-next.2" - "@backstage/plugin-pagerduty" "0.4.0-next.2" - "@backstage/plugin-permission-react" "^0.4.2-next.0" - "@backstage/plugin-rollbar" "^0.4.6-next.1" - "@backstage/plugin-scaffolder" "^1.3.0-next.2" - "@backstage/plugin-search" "^0.8.2-next.2" - "@backstage/plugin-search-common" "^0.3.5-next.1" - "@backstage/plugin-search-react" "^0.2.1-next.0" - "@backstage/plugin-sentry" "^0.3.44-next.1" - "@backstage/plugin-shortcuts" "^0.2.7-next.1" - "@backstage/plugin-stack-overflow" "^0.1.2-next.1" - "@backstage/plugin-tech-insights" "^0.2.2-next.1" - "@backstage/plugin-tech-radar" "^0.5.13-next.1" - "@backstage/plugin-techdocs" "^1.1.2-next.1" - "@backstage/plugin-techdocs-module-addons-contrib" "^1.0.1-next.1" - "@backstage/plugin-techdocs-react" "^1.0.1-next.1" - "@backstage/plugin-todo" "^0.2.8-next.1" - "@backstage/plugin-user-settings" "^0.4.5-next.1" + "@backstage/core-app-api" "^1.0.3" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/integration-react" "^1.1.1" + "@backstage/plugin-airbrake" "^0.3.6" + "@backstage/plugin-apache-airflow" "^0.1.14" + "@backstage/plugin-api-docs" "^0.8.6" + "@backstage/plugin-azure-devops" "^0.1.22" + "@backstage/plugin-badges" "^0.2.30" + "@backstage/plugin-catalog" "^1.3.0" + "@backstage/plugin-catalog-common" "^1.0.3" + "@backstage/plugin-catalog-graph" "^0.2.18" + "@backstage/plugin-catalog-import" "^0.8.9" + "@backstage/plugin-catalog-react" "^1.1.1" + "@backstage/plugin-circleci" "^0.3.6" + "@backstage/plugin-cloudbuild" "^0.3.6" + "@backstage/plugin-code-coverage" "^0.1.33" + "@backstage/plugin-cost-insights" "^0.11.28" + "@backstage/plugin-dynatrace" "^0.1.0" + "@backstage/plugin-explore" "^0.3.37" + "@backstage/plugin-gcalendar" "^0.3.2" + "@backstage/plugin-gcp-projects" "^0.3.25" + "@backstage/plugin-github-actions" "^0.5.6" + "@backstage/plugin-gocd" "^0.1.12" + "@backstage/plugin-graphiql" "^0.2.38" + "@backstage/plugin-home" "^0.4.22" + "@backstage/plugin-jenkins" "^0.7.5" + "@backstage/plugin-kafka" "^0.3.6" + "@backstage/plugin-kubernetes" "^0.6.6" + "@backstage/plugin-lighthouse" "^0.3.6" + "@backstage/plugin-newrelic" "^0.3.24" + "@backstage/plugin-newrelic-dashboard" "^0.1.14" + "@backstage/plugin-org" "^0.5.6" + "@backstage/plugin-pagerduty" "0.4.0" + "@backstage/plugin-permission-react" "^0.4.2" + "@backstage/plugin-rollbar" "^0.4.6" + "@backstage/plugin-scaffolder" "^1.3.0" + "@backstage/plugin-search" "^0.9.0" + "@backstage/plugin-search-common" "^0.3.5" + "@backstage/plugin-search-react" "^0.2.1" + "@backstage/plugin-sentry" "^0.3.44" + "@backstage/plugin-shortcuts" "^0.2.7" + "@backstage/plugin-stack-overflow" "^0.1.2" + "@backstage/plugin-tech-insights" "^0.2.2" + "@backstage/plugin-tech-radar" "^0.5.13" + "@backstage/plugin-techdocs" "^1.2.0" + "@backstage/plugin-techdocs-module-addons-contrib" "^1.0.1" + "@backstage/plugin-techdocs-react" "^1.0.1" + "@backstage/plugin-todo" "^0.2.8" + "@backstage/plugin-user-settings" "^0.4.5" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.12.2" "@material-ui/icons" "^4.9.1" @@ -21367,15 +21145,6 @@ raw-body@2.5.1, raw-body@^2.4.1: iconv-lite "0.4.24" unpipe "1.0.0" -rc-progress@3.3.2: - version "3.3.2" - resolved "https://registry.npmjs.org/rc-progress/-/rc-progress-3.3.2.tgz#57362d49bb6b7b09fec84bf18220619294bde675" - integrity sha512-m+1LtVlXIomz8lcghfF/kViT5h/NtdWp87hnFL+FlnrxyZCEuB4N5BKNN6ctZa3a1Mae+4SMO8AG5lScjU06Ig== - dependencies: - "@babel/runtime" "^7.10.1" - classnames "^2.2.6" - rc-util "^5.16.1" - rc-progress@3.3.3: version "3.3.3" resolved "https://registry.npmjs.org/rc-progress/-/rc-progress-3.3.3.tgz#eb9bffbacab1534f2542f9f6861ce772254362b1" @@ -21704,13 +21473,6 @@ react-test-renderer@^16.13.1: react-is "^16.8.6" scheduler "^0.19.1" -react-text-truncate@^0.18.0: - version "0.18.0" - resolved "https://registry.npmjs.org/react-text-truncate/-/react-text-truncate-0.18.0.tgz#c65f4be660d24734badb903a4832467eddcf8058" - integrity sha512-0cc07CRPRPm3cTloVbPicVTSosJNauwVcmJb5FPa71u4KtDVgrRPJoxVvLBubl3gLyx1pVUozgREYMHpHM16jg== - dependencies: - prop-types "^15.5.7" - react-text-truncate@^0.19.0: version "0.19.0" resolved "https://registry.npmjs.org/react-text-truncate/-/react-text-truncate-0.19.0.tgz#60bc5ecf29a03ebc256f31f90a2d8402176aac91" @@ -24317,20 +24079,20 @@ tdigest@^0.1.1: bintrees "1.0.1" "techdocs-cli-embedded-app@link:packages/techdocs-cli-embedded-app": - version "0.2.71-next.1" + version "0.2.71" dependencies: - "@backstage/app-defaults" "^1.0.3-next.1" - "@backstage/catalog-model" "^1.0.3-next.0" - "@backstage/cli" "^0.17.2-next.1" + "@backstage/app-defaults" "^1.0.3" + "@backstage/catalog-model" "^1.0.3" + "@backstage/cli" "^0.17.2" "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.3-next.0" - "@backstage/core-components" "^0.9.5-next.1" - "@backstage/core-plugin-api" "^1.0.3-next.0" - "@backstage/integration-react" "^1.1.1-next.1" - "@backstage/plugin-catalog" "^1.2.1-next.1" - "@backstage/plugin-techdocs" "^1.1.2-next.1" - "@backstage/plugin-techdocs-react" "^1.0.1-next.1" - "@backstage/test-utils" "^1.1.1-next.0" + "@backstage/core-app-api" "^1.0.3" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/integration-react" "^1.1.1" + "@backstage/plugin-catalog" "^1.3.0" + "@backstage/plugin-techdocs" "^1.2.0" + "@backstage/plugin-techdocs-react" "^1.0.1" + "@backstage/test-utils" "^1.1.1" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.11.0" "@material-ui/icons" "^4.9.1" From 26bc6680233402ef05a0078a76fccd9e421cd3e8 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Tue, 14 Jun 2022 13:14:24 +0200 Subject: [PATCH 381/550] Enter pre release mode Signed-off-by: Johan Haals --- .changeset/pre.json | 162 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100644 .changeset/pre.json diff --git a/.changeset/pre.json b/.changeset/pre.json new file mode 100644 index 0000000000..500bf4ac83 --- /dev/null +++ b/.changeset/pre.json @@ -0,0 +1,162 @@ +{ + "mode": "pre", + "tag": "next", + "initialVersions": { + "example-app": "0.2.72", + "@backstage/app-defaults": "1.0.3", + "example-backend": "0.2.72", + "@backstage/backend-common": "0.14.0", + "@backstage/backend-tasks": "0.3.2", + "@backstage/backend-test-utils": "0.1.25", + "@backstage/catalog-client": "1.0.3", + "@backstage/catalog-model": "1.0.3", + "@backstage/cli": "0.17.2", + "@backstage/cli-common": "0.1.9", + "@backstage/codemods": "0.1.38", + "@backstage/config": "1.0.1", + "@backstage/config-loader": "1.1.2", + "@backstage/core-app-api": "1.0.3", + "@backstage/core-components": "0.9.5", + "@backstage/core-plugin-api": "1.0.3", + "@backstage/create-app": "0.4.28", + "@backstage/dev-utils": "1.0.3", + "e2e-test": "0.2.0", + "@backstage/errors": "1.0.0", + "@backstage/integration": "1.2.1", + "@backstage/integration-react": "1.1.1", + "@backstage/release-manifests": "0.0.4", + "@techdocs/cli": "1.1.2", + "techdocs-cli-embedded-app": "0.2.71", + "@backstage/test-utils": "1.1.1", + "@backstage/theme": "0.2.15", + "@backstage/types": "1.0.0", + "@backstage/version-bridge": "1.0.1", + "@backstage/plugin-adr": "0.1.1", + "@backstage/plugin-adr-backend": "0.1.1", + "@backstage/plugin-adr-common": "0.1.1", + "@backstage/plugin-airbrake": "0.3.6", + "@backstage/plugin-airbrake-backend": "0.2.6", + "@backstage/plugin-allure": "0.1.22", + "@backstage/plugin-analytics-module-ga": "0.1.17", + "@backstage/plugin-apache-airflow": "0.1.14", + "@backstage/plugin-api-docs": "0.8.6", + "@backstage/plugin-app-backend": "0.3.33", + "@backstage/plugin-auth-backend": "0.14.1", + "@backstage/plugin-auth-node": "0.2.2", + "@backstage/plugin-azure-devops": "0.1.22", + "@backstage/plugin-azure-devops-backend": "0.3.12", + "@backstage/plugin-azure-devops-common": "0.2.3", + "@backstage/plugin-badges": "0.2.30", + "@backstage/plugin-badges-backend": "0.1.27", + "@backstage/plugin-bazaar": "0.1.21", + "@backstage/plugin-bazaar-backend": "0.1.17", + "@backstage/plugin-bitbucket-cloud-common": "0.1.0", + "@backstage/plugin-bitrise": "0.1.33", + "@backstage/plugin-catalog": "1.3.0", + "@backstage/plugin-catalog-backend": "1.2.0", + "@backstage/plugin-catalog-backend-module-aws": "0.1.6", + "@backstage/plugin-catalog-backend-module-azure": "0.1.4", + "@backstage/plugin-catalog-backend-module-bitbucket": "0.2.0", + "@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.1.0", + "@backstage/plugin-catalog-backend-module-gerrit": "0.1.1", + "@backstage/plugin-catalog-backend-module-github": "0.1.4", + "@backstage/plugin-catalog-backend-module-gitlab": "0.1.4", + "@backstage/plugin-catalog-backend-module-ldap": "0.5.0", + "@backstage/plugin-catalog-backend-module-msgraph": "0.3.3", + "@backstage/plugin-catalog-common": "1.0.3", + "@backstage/plugin-catalog-graph": "0.2.18", + "@backstage/plugin-catalog-graphql": "0.3.10", + "@backstage/plugin-catalog-import": "0.8.9", + "@backstage/plugin-catalog-react": "1.1.1", + "@backstage/plugin-cicd-statistics": "0.1.8", + "@backstage/plugin-cicd-statistics-module-gitlab": "0.1.2", + "@backstage/plugin-circleci": "0.3.6", + "@backstage/plugin-cloudbuild": "0.3.6", + "@backstage/plugin-code-climate": "0.1.6", + "@backstage/plugin-code-coverage": "0.1.33", + "@backstage/plugin-code-coverage-backend": "0.1.31", + "@backstage/plugin-codescene": "0.1.1", + "@backstage/plugin-config-schema": "0.1.29", + "@backstage/plugin-cost-insights": "0.11.28", + "@backstage/plugin-dynatrace": "0.1.0", + "@internal/plugin-todo-list": "1.0.2", + "@internal/plugin-todo-list-backend": "1.0.2", + "@internal/plugin-todo-list-common": "1.0.2", + "@backstage/plugin-explore": "0.3.37", + "@backstage/plugin-explore-react": "0.0.18", + "@backstage/plugin-firehydrant": "0.1.23", + "@backstage/plugin-fossa": "0.2.38", + "@backstage/plugin-gcalendar": "0.3.2", + "@backstage/plugin-gcp-projects": "0.3.25", + "@backstage/plugin-git-release-manager": "0.3.19", + "@backstage/plugin-github-actions": "0.5.6", + "@backstage/plugin-github-deployments": "0.1.37", + "@backstage/plugin-github-pull-requests-board": "0.1.0", + "@backstage/plugin-gitops-profiles": "0.3.24", + "@backstage/plugin-gocd": "0.1.12", + "@backstage/plugin-graphiql": "0.2.38", + "@backstage/plugin-graphql-backend": "0.1.23", + "@backstage/plugin-home": "0.4.22", + "@backstage/plugin-ilert": "0.1.32", + "@backstage/plugin-jenkins": "0.7.5", + "@backstage/plugin-jenkins-backend": "0.1.23", + "@backstage/plugin-jenkins-common": "0.1.5", + "@backstage/plugin-kafka": "0.3.6", + "@backstage/plugin-kafka-backend": "0.2.26", + "@backstage/plugin-kubernetes": "0.6.6", + "@backstage/plugin-kubernetes-backend": "0.6.0", + "@backstage/plugin-kubernetes-common": "0.3.0", + "@backstage/plugin-lighthouse": "0.3.6", + "@backstage/plugin-newrelic": "0.3.24", + "@backstage/plugin-newrelic-dashboard": "0.1.14", + "@backstage/plugin-org": "0.5.6", + "@backstage/plugin-pagerduty": "0.4.0", + "@backstage/plugin-periskop": "0.1.4", + "@backstage/plugin-periskop-backend": "0.1.4", + "@backstage/plugin-permission-backend": "0.5.8", + "@backstage/plugin-permission-common": "0.6.2", + "@backstage/plugin-permission-node": "0.6.2", + "@backstage/plugin-permission-react": "0.4.2", + "@backstage/plugin-proxy-backend": "0.2.27", + "@backstage/plugin-rollbar": "0.4.6", + "@backstage/plugin-rollbar-backend": "0.1.30", + "@backstage/plugin-scaffolder": "1.3.0", + "@backstage/plugin-scaffolder-backend": "1.3.0", + "@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.8", + "@backstage/plugin-scaffolder-backend-module-rails": "0.4.1", + "@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.6", + "@backstage/plugin-scaffolder-common": "1.1.1", + "@backstage/plugin-search": "0.9.0", + "@backstage/plugin-search-backend": "0.5.3", + "@backstage/plugin-search-backend-module-elasticsearch": "0.1.5", + "@backstage/plugin-search-backend-module-pg": "0.3.4", + "@backstage/plugin-search-backend-node": "0.6.2", + "@backstage/plugin-search-common": "0.3.5", + "@backstage/plugin-search-react": "0.2.1", + "@backstage/plugin-sentry": "0.3.44", + "@backstage/plugin-shortcuts": "0.2.7", + "@backstage/plugin-sonarqube": "0.3.6", + "@backstage/plugin-splunk-on-call": "0.3.30", + "@backstage/plugin-stack-overflow": "0.1.2", + "@backstage/plugin-stack-overflow-backend": "0.1.2", + "@backstage/plugin-tech-insights": "0.2.2", + "@backstage/plugin-tech-insights-backend": "0.4.1", + "@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.17", + "@backstage/plugin-tech-insights-common": "0.2.4", + "@backstage/plugin-tech-insights-node": "0.3.1", + "@backstage/plugin-tech-radar": "0.5.13", + "@backstage/plugin-techdocs": "1.2.0", + "@backstage/plugin-techdocs-addons-test-utils": "1.0.1", + "@backstage/plugin-techdocs-backend": "1.1.2", + "@backstage/plugin-techdocs-module-addons-contrib": "1.0.1", + "@backstage/plugin-techdocs-node": "1.1.2", + "@backstage/plugin-techdocs-react": "1.0.1", + "@backstage/plugin-todo": "0.2.8", + "@backstage/plugin-todo-backend": "0.1.30", + "@backstage/plugin-user-settings": "0.4.5", + "@backstage/plugin-vault": "0.1.0", + "@backstage/plugin-vault-backend": "0.1.0", + "@backstage/plugin-xcmetrics": "0.2.26" + }, + "changesets": [] +} From 02f15e86b744f64d8d573f8ad969ed20cbccf5bc Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 11:10:54 +0200 Subject: [PATCH 382/550] docs: add release notes for 1.3 Signed-off-by: Patrik Oldsberg --- docs/releases/v1.3.0.md | 65 +++++++++++++++++++++++++++++++++++++++++ microsite/sidebars.json | 7 ++++- 2 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 docs/releases/v1.3.0.md diff --git a/docs/releases/v1.3.0.md b/docs/releases/v1.3.0.md new file mode 100644 index 0000000000..8014e0a121 --- /dev/null +++ b/docs/releases/v1.3.0.md @@ -0,0 +1,65 @@ +--- +id: v1.3.0 +title: v1.3.0 +description: Backstage Release v1.3.0 +--- + +These are the release notes for the v1.3.0 release of [Backstage](https://backstage.io/). + +A huge thanks to the whole team of maintainers and contributors as well as the amazing Backstage Community for the hard work in getting this release developed and done. + +## Highlights + +### Scaffolder Dry Run and Template Editor + +The scaffolder plugin now has a new template editor in addition to the form editor, which is accessible via the context menu on the top right hand corner of the Create page. It allows you to load a template from a local directory, edit it with a preview, execute it in dry-run mode, and view the results. Note that the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) must be supported by your browser for this to be available. + +### TypeScript 4.7 + +The recommended TypeScript version has been bumped to `~4.7.0`, and that’s what the main Backstage repository uses right now for its builds. Each Backstage project manages their version separately however, so there is no rush or immediate effect on users - you can update the `typescript` dependency in your root `package.json` once you feel ready to do so. + +### Expiring Backend Tokens + +In 1.2 we introduced expiry times for server-to-server authentication tokens issued from the standard `TokenManager`. At that point in time, the expiry was only added to tokens and not yet enforced. In this release however, it is now also enforced, meaning that expired tokens are considered invalid and will be rejected. + +### Discovery providers + +Several new [entity providers](https://backstage.io/docs/features/software-catalog/life-of-an-entity) have been contributed as replacements for their corresponding discovery processors. Entity providers allow for more control and are [recommended](https://backstage.io/docs/features/software-catalog/external-integrations) over their processing counterparts. + +- `AzureDevOpsEntityProvider` as replacement for `AzureDevOpsDiscoveryProcessor`. PR [#11604](https://github.com/backstage/backstage/pull/11604) contributed by [@goenning](https://github.com/goenning) +- `GitlabDiscoveryEntityProvider` as replacement for `GitLabDiscoveryProcessor`. PR [#11886](https://github.com/backstage/backstage/pull/11886) contributed by [@ivangonzalezacuna](https://github.com/ivangonzalezacuna) +- `BitbucketCloudEntityProvider` as a replacement for `BitbucketDiscoveryProcessor` (for Bitbucket Cloud only). PR [#11345](https://github.com/backstage/backstage/pull/11345) contributed by [@pjungermann](​​https://github.com/pjungermann) + +### New plugin: Vault + +View secrets from [HashiCorp Vault](https://www.vaultproject.io/) alongside your components. PR [#11423](https://github.com/backstage/backstage/pull/11423) contributed by [@ivangonzalezacuna](https://github.com/ivangonzalezacuna) + +### New plugin: GitHub Pull Requests Board + +GitHub Pull Requests Board Plugin is a board that helps you visualize all open pull requests from all repositories owned by a team, with the main goal of reducing the time from opening a PR to merging it. PR [#11043](https://github.com/backstage/backstage/pull/11043) contributed by [@gregorytalita](https://github.com/gregorytalita) + +### New plugin: Dynatrace + +Displays tracing data from [Dynatrace](https://www.dynatrace.com/) alongside your components. PR [#11754](https://github.com/backstage/backstage/pull/11754) contributed by [@isand3r](https://github.com/isand3r) + +## Security Fixes + +`@backstage/plugin-scaffolder-backend`, please upgrade to the latest version if you are using this module. +`@backstage/plugin-techdocs-node`, please upgrade to the latest version if you are using this module. + +## Upgrade path + +We recommend that you keep your Backstage project up to date with this latest release. For more guidance on how to upgrade, check out the documentation for [keeping Backstage updated](https://backstage.io/docs/getting-started/keeping-backstage-updated). + +## Links and References + +Below you can find a list of links and references to help you learn about and start using this new release. + +- [Backstage official website](https://backstage.io/), [documentation](https://backstage.io/docs/), and [getting started guide](https://backstage.io/docs/getting-started/) +- [GitHub repository](https://github.com/backstage/backstage) +- Backstage's [versioning and support policy](https://backstage.io/docs/overview/versioning-policy) +- [Community Discord](https://discord.gg/bFESRKVt) for discussions and support +- [Changelog](https://github.com/backstage/backstage/tree/master/docs/releases/v1.3.0-changelog.md) +- Backstage [Demos](https://backstage.io/demos), [Blog](https://backstage.io/blog), [Roadmap](https://backstage.io/docs/overview/roadmap), and [Plugins](https://backstage.io/plugins) + +Sign up for our [newsletter](https://mailchi.mp/spotify/backstage-community) if you want to be informed about what is happening in the world of Backstage. diff --git a/microsite/sidebars.json b/microsite/sidebars.json index 8c460c7d3d..29fb3a0534 100644 --- a/microsite/sidebars.json +++ b/microsite/sidebars.json @@ -1,6 +1,11 @@ { "releases": { - "Release Notes": ["releases/v1.2.0", "releases/v1.1.0", "releases/v1.0.0"] + "Release Notes": [ + "releases/v1.3.0", + "releases/v1.2.0", + "releases/v1.1.0", + "releases/v1.0.0" + ] }, "docs": { "Overview": [ From 217f919f0ae9a2a68de62d65a2603f96ba945f12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Tue, 14 Jun 2022 14:21:42 +0200 Subject: [PATCH 383/550] Minor cleanup in gh actions - do not unpack in the signature MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/wet-dolphins-act.md | 5 + plugins/github-actions/api-report.md | 100 +++--------------- .../src/api/GithubActionsApi.ts | 56 +++------- .../src/api/GithubActionsClient.ts | 73 ++++++------- 4 files changed, 68 insertions(+), 166 deletions(-) create mode 100644 .changeset/wet-dolphins-act.md diff --git a/.changeset/wet-dolphins-act.md b/.changeset/wet-dolphins-act.md new file mode 100644 index 0000000000..b975f464cb --- /dev/null +++ b/.changeset/wet-dolphins-act.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-github-actions': patch +--- + +Minor cleanup of the API surface. diff --git a/plugins/github-actions/api-report.md b/plugins/github-actions/api-report.md index ee3e1d679d..08761bad56 100644 --- a/plugins/github-actions/api-report.md +++ b/plugins/github-actions/api-report.md @@ -71,18 +71,9 @@ export const EntityRecentGithubActionsRunsCard: ({ // @public (undocumented) export const GITHUB_ACTIONS_ANNOTATION = 'github.com/project-slug'; -// Warning: (ae-missing-release-tag) "GithubActionsApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export type GithubActionsApi = { - listWorkflowRuns: ({ - hostname, - owner, - repo, - pageSize, - page, - branch, - }: { + listWorkflowRuns: (options: { hostname?: string; owner: string; repo: string; @@ -92,12 +83,7 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['listWorkflowRuns']['response']['data'] >; - getWorkflow: ({ - hostname, - owner, - repo, - id, - }: { + getWorkflow: (options: { hostname?: string; owner: string; repo: string; @@ -105,12 +91,7 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['getWorkflow']['response']['data'] >; - getWorkflowRun: ({ - hostname, - owner, - repo, - id, - }: { + getWorkflowRun: (options: { hostname?: string; owner: string; repo: string; @@ -118,25 +99,13 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['getWorkflowRun']['response']['data'] >; - reRunWorkflow: ({ - hostname, - owner, - repo, - runId, - }: { + reRunWorkflow: (options: { hostname?: string; owner: string; repo: string; runId: number; }) => Promise; - listJobsForWorkflowRun: ({ - hostname, - owner, - repo, - id, - pageSize, - page, - }: { + listJobsForWorkflowRun: (options: { hostname?: string; owner: string; repo: string; @@ -146,12 +115,7 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['listJobsForWorkflowRun']['response']['data'] >; - downloadJobLogsForWorkflowRun: ({ - hostname, - owner, - repo, - runId, - }: { + downloadJobLogsForWorkflowRun: (options: { hostname?: string; owner: string; repo: string; @@ -166,18 +130,11 @@ export type GithubActionsApi = { // @public (undocumented) export const githubActionsApiRef: ApiRef; -// Warning: (ae-missing-release-tag) "GithubActionsClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @public export class GithubActionsClient implements GithubActionsApi { constructor(options: { configApi: ConfigApi; githubAuthApi: OAuthApi }); // (undocumented) - downloadJobLogsForWorkflowRun({ - hostname, - owner, - repo, - runId, - }: { + downloadJobLogsForWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -186,12 +143,7 @@ export class GithubActionsClient implements GithubActionsApi { RestEndpointMethodTypes['actions']['downloadJobLogsForWorkflowRun']['response']['data'] >; // (undocumented) - getWorkflow({ - hostname, - owner, - repo, - id, - }: { + getWorkflow(options: { hostname?: string; owner: string; repo: string; @@ -200,12 +152,7 @@ export class GithubActionsClient implements GithubActionsApi { RestEndpointMethodTypes['actions']['getWorkflow']['response']['data'] >; // (undocumented) - getWorkflowRun({ - hostname, - owner, - repo, - id, - }: { + getWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -214,14 +161,7 @@ export class GithubActionsClient implements GithubActionsApi { RestEndpointMethodTypes['actions']['getWorkflowRun']['response']['data'] >; // (undocumented) - listJobsForWorkflowRun({ - hostname, - owner, - repo, - id, - pageSize, - page, - }: { + listJobsForWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -232,14 +172,7 @@ export class GithubActionsClient implements GithubActionsApi { RestEndpointMethodTypes['actions']['listJobsForWorkflowRun']['response']['data'] >; // (undocumented) - listWorkflowRuns({ - hostname, - owner, - repo, - pageSize, - page, - branch, - }: { + listWorkflowRuns(options: { hostname?: string; owner: string; repo: string; @@ -250,12 +183,7 @@ export class GithubActionsClient implements GithubActionsApi { RestEndpointMethodTypes['actions']['listWorkflowRuns']['response']['data'] >; // (undocumented) - reRunWorkflow({ - hostname, - owner, - repo, - runId, - }: { + reRunWorkflow(options: { hostname?: string; owner: string; repo: string; diff --git a/plugins/github-actions/src/api/GithubActionsApi.ts b/plugins/github-actions/src/api/GithubActionsApi.ts index fe516a0211..25bbf0b809 100644 --- a/plugins/github-actions/src/api/GithubActionsApi.ts +++ b/plugins/github-actions/src/api/GithubActionsApi.ts @@ -21,15 +21,13 @@ export const githubActionsApiRef = createApiRef({ id: 'plugin.githubactions.service', }); +/** + * A client for fetching information about GitHub actions. + * + * @public + */ export type GithubActionsApi = { - listWorkflowRuns: ({ - hostname, - owner, - repo, - pageSize, - page, - branch, - }: { + listWorkflowRuns: (options: { hostname?: string; owner: string; repo: string; @@ -39,12 +37,8 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['listWorkflowRuns']['response']['data'] >; - getWorkflow: ({ - hostname, - owner, - repo, - id, - }: { + + getWorkflow: (options: { hostname?: string; owner: string; repo: string; @@ -52,12 +46,8 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['getWorkflow']['response']['data'] >; - getWorkflowRun: ({ - hostname, - owner, - repo, - id, - }: { + + getWorkflowRun: (options: { hostname?: string; owner: string; repo: string; @@ -65,25 +55,15 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['getWorkflowRun']['response']['data'] >; - reRunWorkflow: ({ - hostname, - owner, - repo, - runId, - }: { + + reRunWorkflow: (options: { hostname?: string; owner: string; repo: string; runId: number; }) => Promise; - listJobsForWorkflowRun: ({ - hostname, - owner, - repo, - id, - pageSize, - page, - }: { + + listJobsForWorkflowRun: (options: { hostname?: string; owner: string; repo: string; @@ -93,12 +73,8 @@ export type GithubActionsApi = { }) => Promise< RestEndpointMethodTypes['actions']['listJobsForWorkflowRun']['response']['data'] >; - downloadJobLogsForWorkflowRun: ({ - hostname, - owner, - repo, - runId, - }: { + + downloadJobLogsForWorkflowRun: (options: { hostname?: string; owner: string; repo: string; diff --git a/plugins/github-actions/src/api/GithubActionsClient.ts b/plugins/github-actions/src/api/GithubActionsClient.ts index 97ee1860a1..ebe3d92c4f 100644 --- a/plugins/github-actions/src/api/GithubActionsClient.ts +++ b/plugins/github-actions/src/api/GithubActionsClient.ts @@ -19,6 +19,11 @@ import { GithubActionsApi } from './GithubActionsApi'; import { Octokit, RestEndpointMethodTypes } from '@octokit/rest'; import { ConfigApi, OAuthApi } from '@backstage/core-plugin-api'; +/** + * A client for fetching information about GitHub actions. + * + * @public + */ export class GithubActionsClient implements GithubActionsApi { private readonly configApi: ConfigApi; private readonly githubAuthApi: OAuthApi; @@ -41,17 +46,14 @@ export class GithubActionsClient implements GithubActionsApi { return new Octokit({ auth: token, baseUrl }); } - async reRunWorkflow({ - hostname, - owner, - repo, - runId, - }: { + async reRunWorkflow(options: { hostname?: string; owner: string; repo: string; runId: number; }): Promise { + const { hostname, owner, repo, runId } = options; + const octokit = await this.getOctokit(hostname); return octokit.actions.reRunWorkflow({ owner, @@ -59,14 +61,8 @@ export class GithubActionsClient implements GithubActionsApi { run_id: runId, }); } - async listWorkflowRuns({ - hostname, - owner, - repo, - pageSize = 100, - page = 0, - branch, - }: { + + async listWorkflowRuns(options: { hostname?: string; owner: string; repo: string; @@ -76,6 +72,8 @@ export class GithubActionsClient implements GithubActionsApi { }): Promise< RestEndpointMethodTypes['actions']['listWorkflowRuns']['response']['data'] > { + const { hostname, owner, repo, pageSize = 100, page = 0, branch } = options; + const octokit = await this.getOctokit(hostname); const workflowRuns = await octokit.actions.listWorkflowRunsForRepo({ owner, @@ -84,14 +82,11 @@ export class GithubActionsClient implements GithubActionsApi { page, ...(branch ? { branch } : {}), }); + return workflowRuns.data; } - async getWorkflow({ - hostname, - owner, - repo, - id, - }: { + + async getWorkflow(options: { hostname?: string; owner: string; repo: string; @@ -99,20 +94,19 @@ export class GithubActionsClient implements GithubActionsApi { }): Promise< RestEndpointMethodTypes['actions']['getWorkflow']['response']['data'] > { + const { hostname, owner, repo, id } = options; + const octokit = await this.getOctokit(hostname); const workflow = await octokit.actions.getWorkflow({ owner, repo, workflow_id: id, }); + return workflow.data; } - async getWorkflowRun({ - hostname, - owner, - repo, - id, - }: { + + async getWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -120,22 +114,19 @@ export class GithubActionsClient implements GithubActionsApi { }): Promise< RestEndpointMethodTypes['actions']['getWorkflowRun']['response']['data'] > { + const { hostname, owner, repo, id } = options; + const octokit = await this.getOctokit(hostname); const run = await octokit.actions.getWorkflowRun({ owner, repo, run_id: id, }); + return run.data; } - async listJobsForWorkflowRun({ - hostname, - owner, - repo, - id, - pageSize = 100, - page = 0, - }: { + + async listJobsForWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -145,6 +136,8 @@ export class GithubActionsClient implements GithubActionsApi { }): Promise< RestEndpointMethodTypes['actions']['listJobsForWorkflowRun']['response']['data'] > { + const { hostname, owner, repo, id, pageSize = 100, page = 0 } = options; + const octokit = await this.getOctokit(hostname); const jobs = await octokit.actions.listJobsForWorkflowRun({ owner, @@ -153,14 +146,11 @@ export class GithubActionsClient implements GithubActionsApi { per_page: pageSize, page, }); + return jobs.data; } - async downloadJobLogsForWorkflowRun({ - hostname, - owner, - repo, - runId, - }: { + + async downloadJobLogsForWorkflowRun(options: { hostname?: string; owner: string; repo: string; @@ -168,12 +158,15 @@ export class GithubActionsClient implements GithubActionsApi { }): Promise< RestEndpointMethodTypes['actions']['downloadJobLogsForWorkflowRun']['response']['data'] > { + const { hostname, owner, repo, runId } = options; + const octokit = await this.getOctokit(hostname); const workflow = await octokit.actions.downloadJobLogsForWorkflowRun({ owner, repo, job_id: runId, }); + return workflow.data; } } From 47502d78e6cd5358982c301e2482e084d198edfb Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 14:57:09 +0200 Subject: [PATCH 384/550] docs: quick start retitle + note with providers link in identity docs Signed-off-by: Patrik Oldsberg --- docs/auth/identity-resolver.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/auth/identity-resolver.md b/docs/auth/identity-resolver.md index 2a256ae8fd..b314954105 100644 --- a/docs/auth/identity-resolver.md +++ b/docs/auth/identity-resolver.md @@ -12,7 +12,10 @@ If you want to use an auth provider to sign in users, you need to explicitly con it have sign-in enabled and also tell it how the external identities should be mapped to user identities within Backstage. -## Guest Sign-In Resolver +## Quick Start + +> See [providers](../reference/plugin-auth-backend.providers.md) +> for a full list of auth providers and their built-in sign-in resolvers. Backstage projects created with `npx @backstage/create-app` come configured with a sign-in resolver for GitHub guest access. This resolver makes all users share From d5b57c78ab490f4e24e88f7c129a0097c8e02f97 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 14:58:04 +0200 Subject: [PATCH 385/550] docs: stronger encouragement to check out proxy sign-in page docs Signed-off-by: Patrik Oldsberg --- docs/auth/oauth2-proxy/provider.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/auth/oauth2-proxy/provider.md b/docs/auth/oauth2-proxy/provider.md index e57ea96b26..ca3c40f5db 100644 --- a/docs/auth/oauth2-proxy/provider.md +++ b/docs/auth/oauth2-proxy/provider.md @@ -71,4 +71,4 @@ installed in `packages/app/src/App.tsx` like this: + SignInPage: props => , ``` -See the [Sign-In with Proxy Providers](../index.md#sign-in-with-proxy-providers) section for more information. +See [Sign-In with Proxy Providers](../index.md#sign-in-with-proxy-providers) for pointers on how to set up the sign-in page to also work smoothly for local development. From 066626f166fe5a794e55c75309446a7a63453858 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Tue, 14 Jun 2022 15:16:38 +0200 Subject: [PATCH 386/550] Fix export Signed-off-by: Olivier Liechti --- plugins/catalog/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/catalog/src/index.ts b/plugins/catalog/src/index.ts index cfe4851d09..f0f94656d5 100644 --- a/plugins/catalog/src/index.ts +++ b/plugins/catalog/src/index.ts @@ -62,6 +62,7 @@ export type { } from './components/EntityLinksCard'; export type { SystemDiagramCardClassKey } from './components/SystemDiagramCard'; export type { DefaultCatalogPageProps } from './components/CatalogPage'; +export type { EntityContextMenuClassKey } from './components/EntityContextMenu'; export type { HasComponentsCardProps } from './components/HasComponentsCard'; export type { HasResourcesCardProps } from './components/HasResourcesCard'; export type { HasSubcomponentsCardProps } from './components/HasSubcomponentsCard'; From 11a4d9157ca1cfd08c21a06b9f498c3dac0a0096 Mon Sep 17 00:00:00 2001 From: Olivier Liechti Date: Tue, 14 Jun 2022 15:33:45 +0200 Subject: [PATCH 387/550] Generate new api-report.md Signed-off-by: Olivier Liechti --- plugins/catalog/api-report.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/plugins/catalog/api-report.md b/plugins/catalog/api-report.md index aea9c2b2c5..d1e8247f90 100644 --- a/plugins/catalog/api-report.md +++ b/plugins/catalog/api-report.md @@ -207,6 +207,9 @@ export interface DependsOnResourcesCardProps { // @public (undocumented) export const EntityAboutCard: (props: AboutCardProps) => JSX.Element; +// @public (undocumented) +export type EntityContextMenuClassKey = 'button'; + // @public (undocumented) export const EntityDependencyOfComponentsCard: ( props: DependencyOfComponentsCardProps, @@ -417,8 +420,4 @@ export type SystemDiagramCardClassKey = | 'componentNode' | 'apiNode' | 'resourceNode'; - -// Warnings were encountered during analysis: -// -// src/overridableComponents.d.ts:10:5 - (ae-forgotten-export) The symbol "EntityContextMenuClassKey" needs to be exported by the entry point index.d.ts ``` From c3cfc83af216ef19c27a44e85f74455d4254dcbe Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Tue, 14 Jun 2022 16:29:17 +0200 Subject: [PATCH 388/550] chore: Make docstrings MDX compatible Signed-off-by: Johan Haals --- .changeset/curvy-weeks-matter.md | 8 ++++++++ packages/backend-common/src/reading/FetchUrlReader.ts | 4 ++-- .../src/validation/CommonValidatorFunctions.ts | 2 +- .../src/components/DependencyGraph/DependencyGraph.tsx | 2 +- .../src/layout/ItemCard/ItemCardHeader.tsx | 2 +- plugins/techdocs-react/src/addons.tsx | 2 +- 6 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 .changeset/curvy-weeks-matter.md diff --git a/.changeset/curvy-weeks-matter.md b/.changeset/curvy-weeks-matter.md new file mode 100644 index 0000000000..3975058afe --- /dev/null +++ b/.changeset/curvy-weeks-matter.md @@ -0,0 +1,8 @@ +--- +'@backstage/backend-common': patch +'@backstage/catalog-model': patch +'@backstage/core-components': patch +'@backstage/plugin-techdocs-react': patch +--- + +Updated docstring to be MDX compatible. diff --git a/packages/backend-common/src/reading/FetchUrlReader.ts b/packages/backend-common/src/reading/FetchUrlReader.ts index b83f08c22f..5734beddcf 100644 --- a/packages/backend-common/src/reading/FetchUrlReader.ts +++ b/packages/backend-common/src/reading/FetchUrlReader.ts @@ -39,8 +39,8 @@ export class FetchUrlReader implements UrlReader { * targets to allow, containing the following fields: * * `host`: - * Either full hostnames to match, or subdomain wildcard matchers with a leading `*`. - * For example `example.com` and `*.example.com` are valid values, `prod.*.example.com` is not. + * Either full hostnames to match, or subdomain wildcard matchers with a leading '*'. + * For example 'example.com' and '*.example.com' are valid values, 'prod.*.example.com' is not. * * `paths`: * An optional list of paths which are allowed. If the list is omitted all paths are allowed. diff --git a/packages/catalog-model/src/validation/CommonValidatorFunctions.ts b/packages/catalog-model/src/validation/CommonValidatorFunctions.ts index 8c814412c1..40a85c5331 100644 --- a/packages/catalog-model/src/validation/CommonValidatorFunctions.ts +++ b/packages/catalog-model/src/validation/CommonValidatorFunctions.ts @@ -24,7 +24,7 @@ import lodash from 'lodash'; */ export class CommonValidatorFunctions { /** - * Checks that the value is on the form or , and validates + * Checks that the value is on the form `` or ``, and validates * those parts separately. * * @param value - The value to check diff --git a/packages/core-components/src/components/DependencyGraph/DependencyGraph.tsx b/packages/core-components/src/components/DependencyGraph/DependencyGraph.tsx index 6db8e2dd02..9f447f80cc 100644 --- a/packages/core-components/src/components/DependencyGraph/DependencyGraph.tsx +++ b/packages/core-components/src/components/DependencyGraph/DependencyGraph.tsx @@ -40,7 +40,7 @@ import { ARROW_MARKER_ID } from './constants'; * * @public * @remarks - * and are useful when rendering custom or edge labels + * `` and `` are useful when rendering custom or edge labels */ export interface DependencyGraphProps extends React.SVGProps { diff --git a/packages/core-components/src/layout/ItemCard/ItemCardHeader.tsx b/packages/core-components/src/layout/ItemCard/ItemCardHeader.tsx index 3209848ecb..a34d773ce3 100644 --- a/packages/core-components/src/layout/ItemCard/ItemCardHeader.tsx +++ b/packages/core-components/src/layout/ItemCard/ItemCardHeader.tsx @@ -64,7 +64,7 @@ export type ItemCardHeaderProps = Partial> & { * A simple card header, rendering a default look for "item cards" - cards that * are arranged in a grid for users to select among several options. * - * This component expects to be placed within a MUI . + * This component expects to be placed within a MUI ``. * * Styles for the header can be overridden using the `classes` prop, e.g.: * diff --git a/plugins/techdocs-react/src/addons.tsx b/plugins/techdocs-react/src/addons.tsx index ce5b3eb5cd..a562007260 100644 --- a/plugins/techdocs-react/src/addons.tsx +++ b/plugins/techdocs-react/src/addons.tsx @@ -30,7 +30,7 @@ import { TechDocsAddonLocations, TechDocsAddonOptions } from './types'; export const TECHDOCS_ADDONS_KEY = 'techdocs.addons.addon.v1'; /** - * Marks the registry component. + * Marks the `` registry component. * @public */ export const TECHDOCS_ADDONS_WRAPPER_KEY = 'techdocs.addons.wrapper.v1'; From 85f2d90543c4274e74b6dba044489b44e50adfd6 Mon Sep 17 00:00:00 2001 From: Maixmilian Ressel Date: Tue, 14 Jun 2022 16:22:54 +0200 Subject: [PATCH 389/550] docs: scaffolder: improve docs to setup the RepoUrlPicker authentication Signed-off-by: Maixmilian Ressel --- docs/auth/index.md | 18 ++++++++++++++++++ .../software-templates/writing-templates.md | 3 +++ microsite/pages/en/link.js | 2 +- 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/docs/auth/index.md b/docs/auth/index.md index c34d244886..e644fb74ed 100644 --- a/docs/auth/index.md +++ b/docs/auth/index.md @@ -185,6 +185,24 @@ const app = createApp({ When using multiple auth providers like this, it's important that you configure the different sign-in resolvers so that they resolve to the same identity regardless of the method used. +## Scaffolder Configuration (Software Templates) + +If you want to use the authentication capabilities of the [Repository Picker](../features/software-templates/writing-templates.md#the-repository-picker) inside your Software Templates you will need to configure the [`ScmAuthApi`](https://backstage.io/docs/reference/integration-react.scmauthapi) alongside your authentication provider. It is an API used to authenticate towards different SCM systems in a generic way, based on what resource is being accessed. + +To set it up, you'll need to add an API factory entry to `packages/app/src/apis.ts`. The example below sets up the `ScmAuthApi` for an already configured GitLab authentication provider: + +```ts +createApiFactory({ + api: scmAuthApiRef, + deps: { + gitlabAuthApi: gitlabAuthApiRef, + }, + factory: ({ gitlabAuthApi }) => ScmAuth.forGitlab(gitlabAuthApi), +}); +``` + +In case you are using a custom authentication providers, you might need to add a [custom `ScmAuthApi` implementation](./index.md#custom-scmauthapi-implementation). + ## For Plugin Developers The Backstage frontend core APIs provide a set of Utility APIs for plugin developers diff --git a/docs/features/software-templates/writing-templates.md b/docs/features/software-templates/writing-templates.md index 27e6e76817..4078b18a2b 100644 --- a/docs/features/software-templates/writing-templates.md +++ b/docs/features/software-templates/writing-templates.md @@ -397,6 +397,9 @@ There's also the ability to pass additional scopes when requesting the `oauth` token from the user, which you can do on a per-provider basis, in case your template can be published to multiple providers. +Note, that you will need to configure an [authentication provider](../../auth/index.md#configuring-authentication-providers), alongside the +[`ScmAuthApi`](../../auth/index.md#scaffolder-configuration-software-templates) for your source code management (scm) service to make this feature work. + ### Accessing the signed-in users details Sometimes when authoring templates, you'll want to access the user that is running the template, and get details from the profile or the users `Entity` in the Catalog. diff --git a/microsite/pages/en/link.js b/microsite/pages/en/link.js index 727b15bfd8..6f56aa768c 100644 --- a/microsite/pages/en/link.js +++ b/microsite/pages/en/link.js @@ -5,7 +5,7 @@ const React = require('react'); const redirects = { 'bind-routes': '/docs/plugins/composability#binding-external-routes-in-the-app', - 'scm-auth': '/docs/auth/#custom-scmauthapi-implementation', + 'scm-auth': '/docs/auth/#scaffolder-configuration-software-templates', }; const fallback = '/docs'; From 8c31785ed078778691db1140d328610b1607e5d1 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Tue, 14 Jun 2022 16:32:53 +0200 Subject: [PATCH 390/550] chore: please vale Signed-off-by: Johan Haals --- .changeset/curvy-weeks-matter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/curvy-weeks-matter.md b/.changeset/curvy-weeks-matter.md index 3975058afe..a0a9c43076 100644 --- a/.changeset/curvy-weeks-matter.md +++ b/.changeset/curvy-weeks-matter.md @@ -5,4 +5,4 @@ '@backstage/plugin-techdocs-react': patch --- -Updated docstring to be MDX compatible. +Updated JSDoc to be MDX compatible. From 1c8469dfd02a17df3f10a6432776482ef2126c9e Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 16:36:29 +0200 Subject: [PATCH 391/550] ADOPTERS.md: add new adopters Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 4e5785b8d5..1ec907fed3 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -161,3 +161,21 @@ _If you're using Backstage in your organization, please try to add your company | [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. | | [Procter & Gamble](https://us.pg.com/) | [Binita Nayak](https://github.com/binitan), [Josh Rose](https://github.com/joshuarose), [RJ Winkler](https://github.com/rjwink) | P&G leverages Backstage to build internal developer portal to ensure developers' happiness. This developer portal shall act as single source of information needed by development teams to seamlessly create, find and maintain their software components/resources/documentation. | | [SANS Institute](https://www.sans.org) | [Christopher Klewin](mailto:cklewin@sans.org) | Developer portal for centralized visibility, reporting, and tooling across multiple organizations. | +| [Kaluza](https://www.kaluza.com) | [James Condren](mailto:james.condron@kaluza.com) | To provide an automated golden path to developers, with a focus on discovery and documentation | +| [LinkedIn](https://linkedin.com) | [Joshua Lawrence](mailto:jlawrence@linkedin.com) | We are building a platform for internal web tools | +| [SANS Institute](https://www.sans.org) | [Justin Selleck](mailto:jselleck@sans.org) | SANS uses backstage to track components in github and to facilitate docs near code. | +| [Forto](https://forto.com) | [Rodolfo Matos](mailto:rodolfo.matos@forto.com) | Still in a experimental phase/assessing the organisational fit. We will be using it mostly a developer portal -- pretty standard use case. | +| [BetterUp](https://betterup.com) | [Jordan Hochenbaum](mailto:jordan.hochenbaum@betterup.co) | We're starting to use Backstage as the central hub for service discovery, documentation, and develop experience. | +| [warung pintar](https://warungpintar.co.id/) | [Muhammad Rafly Andrianza](mailto:rafly.andrianza@warungpintar.co) | Initial Work Developer Portal with TechRadar, Service Catalogue, TechDocs, anything about platform & infrastructure resources. | +| [RD](https://rd.com.br/) | [Michael Silva](mailto:midsilva@rd.com.br) | We are building our developer portal. Software catalog, Tech Radar and Scaffolding are among the initial features. | +| [AEB](https://www.aeb.com/) | [David Fankhänel](mailto:dfl@aeb.com) | Central developer platform for creating new apps via templates, getting an overview via software catalog, etc | +| [SALTO Systems](https://saltosystems.com) | [Ian Cowley](mailto:i.cowley@saltosystems.com) | Currently using Backstage as an internal documentation portal. | +| [Lummo](https://lummo.com) | [Anjul Sahu](mailto:anjul@lummo.com) | We are building the internal developer portal using Backstage and bringing up all integrations and service information at one place. | +| [Frontside](https://frontside.com) | [Taras Mankovski](mailto:taras@frontside.com) | +| [Stepstone](https://www.stepstone.com/en/) | [Neil Kennedy](mailto:neil.kennedy@stepstone.com) | StepStone is using Backstage to solve problems around ownership and visibility of our applications. We have thousands of repos, multiple legacy systems and a growing platform that is hard to maintain. Backstage is forming the centre of our push to embrace the chaos. | +| [idwall](https://idwall.co) | [Rodrigo Catão Araujo](mailto:rodrigo@idwall.co) | Developer Portal for internal engineers to access service catalog, documentation, observability, infrastructure and internal tooling. | +| [Jaguar Land Rover](https://www.jaguarlandrover.com) | [Josh Walker](mailto:jwalke18@jaguarlandrover.com) | Users can request a Gitlab user, which creates a commit with the Terraform code. | +| [GlovoApp](http://glovoapp.com/) | [Chris Biancucci](mailto:christian.biancucci@glovoapp.com) | We have recently adopted Backstage and we are using it to improve our Developer Experience: simplifying, automating, and keeping things in order for every existing and new service developed. | +| [Dixa](https://dixa.com) | [Jens Møller](mailto:jsc@dixa.com) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. | +| [Notino](https://notino.com) | [Jan Remunda](mailto:jan.remunda@notino.com) | Backstage is our developer portal. We use it as service catalog and for technical documentation. | +| [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | From 8fe235710154a4f6deaf6173ef15b421a37a62ee Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 14 Jun 2022 17:53:16 +0200 Subject: [PATCH 392/550] core-app-api: navigate to app base URL on signout Signed-off-by: Patrik Oldsberg --- .changeset/nervous-humans-sip.md | 5 ++ .../IdentityApi/AppIdentityProxy.test.ts | 16 +++++- .../IdentityApi/AppIdentityProxy.ts | 9 +++- packages/core-app-api/src/app/AppManager.tsx | 50 +++++++++++-------- 4 files changed, 55 insertions(+), 25 deletions(-) create mode 100644 .changeset/nervous-humans-sip.md diff --git a/.changeset/nervous-humans-sip.md b/.changeset/nervous-humans-sip.md new file mode 100644 index 0000000000..aa1ca2c60a --- /dev/null +++ b/.changeset/nervous-humans-sip.md @@ -0,0 +1,5 @@ +--- +'@backstage/core-app-api': patch +--- + +The `signOut` method of the `IdentityApi` will now navigate the user back to the base URL of the app as indicated by the `app.baseUrl` config. diff --git a/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.test.ts b/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.test.ts index aa15182499..3d4f83b05d 100644 --- a/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.test.ts +++ b/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.test.ts @@ -31,7 +31,7 @@ describe('AppIdentityProxy', () => { it('should forward user identities', async () => { const proxy = new AppIdentityProxy(); - proxy.setTarget(mockIdentityApi); + proxy.setTarget(mockIdentityApi, { signOutTargetUrl: '/' }); const logs = await withLogCollector(async () => { mockIdentityApi.getBackstageIdentity.mockResolvedValueOnce({ @@ -55,7 +55,7 @@ describe('AppIdentityProxy', () => { it('should warn about invalid user entity refs', async () => { const proxy = new AppIdentityProxy(); - proxy.setTarget(mockIdentityApi); + proxy.setTarget(mockIdentityApi, { signOutTargetUrl: '/' }); const logs = await withLogCollector(async () => { mockIdentityApi.getBackstageIdentity.mockResolvedValueOnce({ @@ -79,4 +79,16 @@ describe('AppIdentityProxy', () => { error: [], }); }); + + it('should navigate to target URL on sign out', async () => { + const proxy = new AppIdentityProxy(); + proxy.setTarget(mockIdentityApi, { signOutTargetUrl: '/foo' }); + Object.defineProperty(window, 'location', { + writable: true, + value: {}, + }); + + await proxy.signOut(); + expect(location.href).toBe('/foo'); + }); }); diff --git a/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.ts b/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.ts index 3ef3a1f6d3..2df351bc18 100644 --- a/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.ts +++ b/packages/core-app-api/src/apis/implementations/IdentityApi/AppIdentityProxy.ts @@ -49,6 +49,7 @@ export class AppIdentityProxy implements IdentityApi { private target?: CompatibilityIdentityApi; private waitForTarget: Promise; private resolveTarget: (api: CompatibilityIdentityApi) => void = () => {}; + private signOutTargetUrl = '/'; constructor() { this.waitForTarget = new Promise(resolve => { @@ -57,8 +58,12 @@ export class AppIdentityProxy implements IdentityApi { } // This is called by the app manager once the sign-in page provides us with an implementation - setTarget(identityApi: CompatibilityIdentityApi) { + setTarget( + identityApi: CompatibilityIdentityApi, + targetOptions: { signOutTargetUrl: string }, + ) { this.target = identityApi; + this.signOutTargetUrl = targetOptions.signOutTargetUrl; this.resolveTarget(identityApi); } @@ -119,6 +124,6 @@ export class AppIdentityProxy implements IdentityApi { async signOut(): Promise { await this.waitForTarget.then(target => target.signOut()); - location.reload(); + location.href = this.signOutTargetUrl; } } diff --git a/packages/core-app-api/src/app/AppManager.tsx b/packages/core-app-api/src/app/AppManager.tsx index 75bab5c2df..f47ddf676a 100644 --- a/packages/core-app-api/src/app/AppManager.tsx +++ b/packages/core-app-api/src/app/AppManager.tsx @@ -334,41 +334,49 @@ export class AppManager implements BackstageApp { children: ReactElement; }) => { const [identityApi, setIdentityApi] = useState(); + const configApi = useApi(configApiRef); + const basePath = getBasePath(configApi); if (!identityApi) { return ; } - this.appIdentityProxy.setTarget(identityApi); + this.appIdentityProxy.setTarget(identityApi, { + signOutTargetUrl: basePath || '/', + }); return children; }; const AppRouter = ({ children }: PropsWithChildren<{}>) => { const configApi = useApi(configApiRef); - const mountPath = `${getBasePath(configApi)}/*`; + const basePath = getBasePath(configApi); + const mountPath = `${basePath}/*`; const { routeObjects } = useContext(InternalAppContext); // If the app hasn't configured a sign-in page, we just continue as guest. if (!SignInPageComponent) { - this.appIdentityProxy.setTarget({ - getUserId: () => 'guest', - getIdToken: async () => undefined, - getProfile: () => ({ - email: 'guest@example.com', - displayName: 'Guest', - }), - getProfileInfo: async () => ({ - email: 'guest@example.com', - displayName: 'Guest', - }), - getBackstageIdentity: async () => ({ - type: 'user', - userEntityRef: 'user:default/guest', - ownershipEntityRefs: ['user:default/guest'], - }), - getCredentials: async () => ({}), - signOut: async () => {}, - }); + this.appIdentityProxy.setTarget( + { + getUserId: () => 'guest', + getIdToken: async () => undefined, + getProfile: () => ({ + email: 'guest@example.com', + displayName: 'Guest', + }), + getProfileInfo: async () => ({ + email: 'guest@example.com', + displayName: 'Guest', + }), + getBackstageIdentity: async () => ({ + type: 'user', + userEntityRef: 'user:default/guest', + ownershipEntityRefs: ['user:default/guest'], + }), + getCredentials: async () => ({}), + signOut: async () => {}, + }, + { signOutTargetUrl: basePath || '/' }, + ); return ( From f306c2e842882669fc9925a813e71ad727d8b4ff Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 00:30:31 -0400 Subject: [PATCH 393/550] Add type to EntityLinks Add an optional type field to entity links that will allow developers to group and categorize links based on types. closes #10404 Signed-off-by: James Russo --- packages/catalog-model/src/entity/Entity.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/catalog-model/src/entity/Entity.ts b/packages/catalog-model/src/entity/Entity.ts index 96f19b2c8a..80c9adaffb 100644 --- a/packages/catalog-model/src/entity/Entity.ts +++ b/packages/catalog-model/src/entity/Entity.ts @@ -210,4 +210,9 @@ export type EntityLink = { * An optional semantic key that represents a visual icon. */ icon?: string; + + /** + * An optional value to categorize links into specific groups + */ + type?: string; }; From 1380b389dc99bbb04e660a80ab9121599ab60f1b Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 00:32:32 -0400 Subject: [PATCH 394/550] add changeset Signed-off-by: James Russo --- .changeset/shaggy-melons-drive.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/shaggy-melons-drive.md diff --git a/.changeset/shaggy-melons-drive.md b/.changeset/shaggy-melons-drive.md new file mode 100644 index 0000000000..cff45954fe --- /dev/null +++ b/.changeset/shaggy-melons-drive.md @@ -0,0 +1,5 @@ +--- +'@backstage/catalog-model': patch +--- + +Adding an optional type field to entity links to group and categorize links From 8447b7dbb73bdd8b7cb84f60dc52352f9974c526 Mon Sep 17 00:00:00 2001 From: tomasrb Date: Tue, 14 Jun 2022 23:25:05 -0700 Subject: [PATCH 395/550] Add Okay to adopters Signed-off-by: tomasrb --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 4e5785b8d5..d182b2549b 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -161,3 +161,4 @@ _If you're using Backstage in your organization, please try to add your company | [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. | | [Procter & Gamble](https://us.pg.com/) | [Binita Nayak](https://github.com/binitan), [Josh Rose](https://github.com/joshuarose), [RJ Winkler](https://github.com/rjwink) | P&G leverages Backstage to build internal developer portal to ensure developers' happiness. This developer portal shall act as single source of information needed by development teams to seamlessly create, find and maintain their software components/resources/documentation. | | [SANS Institute](https://www.sans.org) | [Christopher Klewin](mailto:cklewin@sans.org) | Developer portal for centralized visibility, reporting, and tooling across multiple organizations. | +| [Okay](https://www.okayhq.com/) | [Tomas Barreto](mailto:tomas@okayhq.com) | Service catalog, developer portal, and technical documentation | \ No newline at end of file From e636a012276519e4277c94f721c3924d64643a73 Mon Sep 17 00:00:00 2001 From: Patrick Jungermann Date: Wed, 15 Jun 2022 11:47:17 +0200 Subject: [PATCH 396/550] chore: replace `integrations.bitbucket` with `[..].bitbucketCloud` in `app-config.yaml` Replace `integrations.bitbucket` with `integrations.bitbucketCloud` in `app-config.yaml` (local dev, demo). Signed-off-by: Patrick Jungermann --- app-config.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index 5919deb1ee..2f9f6e4f9a 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -182,9 +182,8 @@ integrations: gitlab: - host: gitlab.com token: ${GITLAB_TOKEN} - bitbucket: - - host: bitbucket.org - username: ${BITBUCKET_USERNAME} + bitbucketCloud: + - username: ${BITBUCKET_USERNAME} appPassword: ${BITBUCKET_APP_PASSWORD} ### Example for how to add your bitbucket server instance using the API: # - host: server.bitbucket.com From d40b199c487c0aa8344d6982c1143c221fe6e7ab Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 15 Jun 2022 12:13:28 +0200 Subject: [PATCH 397/550] ADOPTERS.md: remove duplicate adopter Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 4df952be6d..c66bab4266 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -161,10 +161,9 @@ _If you're using Backstage in your organization, please try to add your company | [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. | | [Procter & Gamble](https://us.pg.com/) | [Binita Nayak](https://github.com/binitan), [Josh Rose](https://github.com/joshuarose), [RJ Winkler](https://github.com/rjwink) | P&G leverages Backstage to build internal developer portal to ensure developers' happiness. This developer portal shall act as single source of information needed by development teams to seamlessly create, find and maintain their software components/resources/documentation. | | [SANS Institute](https://www.sans.org) | [Christopher Klewin](mailto:cklewin@sans.org) | Developer portal for centralized visibility, reporting, and tooling across multiple organizations. | -| [Okay](https://www.okayhq.com/) | [Tomas Barreto](mailto:tomas@okayhq.com) +| [Okay](https://www.okayhq.com/) | [Tomas Barreto](mailto:tomas@okayhq.com) | [Kaluza](https://www.kaluza.com) | [James Condren](mailto:james.condron@kaluza.com) | To provide an automated golden path to developers, with a focus on discovery and documentation | | [LinkedIn](https://linkedin.com) | [Joshua Lawrence](mailto:jlawrence@linkedin.com) | We are building a platform for internal web tools | -| [SANS Institute](https://www.sans.org) | [Justin Selleck](mailto:jselleck@sans.org) | SANS uses backstage to track components in github and to facilitate docs near code. | | [Forto](https://forto.com) | [Rodolfo Matos](mailto:rodolfo.matos@forto.com) | Still in a experimental phase/assessing the organisational fit. We will be using it mostly a developer portal -- pretty standard use case. | | [BetterUp](https://betterup.com) | [Jordan Hochenbaum](mailto:jordan.hochenbaum@betterup.co) | We're starting to use Backstage as the central hub for service discovery, documentation, and develop experience. | | [warung pintar](https://warungpintar.co.id/) | [Muhammad Rafly Andrianza](mailto:rafly.andrianza@warungpintar.co) | Initial Work Developer Portal with TechRadar, Service Catalogue, TechDocs, anything about platform & infrastructure resources. | From 8829e175f2cd8334373ba6971b181631a660a050 Mon Sep 17 00:00:00 2001 From: Patrick Jungermann Date: Wed, 15 Jun 2022 13:15:52 +0200 Subject: [PATCH 398/550] fix: allow frontend visibility for `integrations` itself Currently, `integrations` is retrieved at catalog-import to check configured integrations. This could fail if there was no config below `integrations` which has `@visibility frontend`. This happened if no integration or only non-Github integrations without frontend visible properties like `integrations.bitbucketCloud` are used. After this change, at least `integrations` will always be visible to the frontend. Closes: #11700 Signed-off-by: Patrick Jungermann --- .changeset/sweet-plants-sparkle.md | 5 +++++ packages/integration/config.d.ts | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .changeset/sweet-plants-sparkle.md diff --git a/.changeset/sweet-plants-sparkle.md b/.changeset/sweet-plants-sparkle.md new file mode 100644 index 0000000000..69e7647849 --- /dev/null +++ b/.changeset/sweet-plants-sparkle.md @@ -0,0 +1,5 @@ +--- +'@backstage/integration': patch +--- + +Allow frontend visibility for `integrations` itself. diff --git a/packages/integration/config.d.ts b/packages/integration/config.d.ts index c14f5c76cd..22acc5cd70 100644 --- a/packages/integration/config.d.ts +++ b/packages/integration/config.d.ts @@ -15,7 +15,10 @@ */ export interface Config { - /** Configuration for integrations towards various external repository provider systems */ + /** + * Configuration for integrations towards various external repository provider systems + * @visibility frontend + */ integrations?: { /** Integration configuration for Azure */ azure?: Array<{ From 272106fdad56a6a8930349ef84d9aa13e70f2a5d Mon Sep 17 00:00:00 2001 From: Patrick Jungermann Date: Wed, 15 Jun 2022 13:07:14 +0200 Subject: [PATCH 399/550] fix: check for `integrations.github` without retrieving `integrations` Support use without `integrations` or only integrations without frontend visible properties (e.g., `bitbucketCloud`) being configured by checking `integrations.github` directly without attempting to load `integrations`. Previously, `integrations` was retrieved first and then the existence of the key `github` was checked. This could fail if there was no config below `integrations` which has `@visibility frontend`. This happened if no integration or only non-Github integrations without frontend visible properties like `integrations.bitbucketCloud` are used. After this change, we will check `integrations.github` directly. Closes: #11700 Signed-off-by: Patrick Jungermann --- .changeset/unlucky-stingrays-juggle.md | 5 +++++ .../src/components/ImportInfoCard/ImportInfoCard.tsx | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 .changeset/unlucky-stingrays-juggle.md diff --git a/.changeset/unlucky-stingrays-juggle.md b/.changeset/unlucky-stingrays-juggle.md new file mode 100644 index 0000000000..f2e83f7163 --- /dev/null +++ b/.changeset/unlucky-stingrays-juggle.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-catalog-import': patch +--- + +Support use without `integrations` or only integrations without frontend visible properties (e.g., `bitbucketCloud`) being configured by checking `integrations.github` directly without attempting to load `integrations`. diff --git a/plugins/catalog-import/src/components/ImportInfoCard/ImportInfoCard.tsx b/plugins/catalog-import/src/components/ImportInfoCard/ImportInfoCard.tsx index 7fa6b13a82..4779e2d64b 100644 --- a/plugins/catalog-import/src/components/ImportInfoCard/ImportInfoCard.tsx +++ b/plugins/catalog-import/src/components/ImportInfoCard/ImportInfoCard.tsx @@ -46,8 +46,7 @@ export const ImportInfoCard = (props: ImportInfoCardProps) => { const appTitle = configApi.getOptional('app.title') || 'Backstage'; const catalogImportApi = useApi(catalogImportApiRef); - const integrations = configApi.getConfig('integrations'); - const hasGithubIntegration = integrations.has('github'); + const hasGithubIntegration = configApi.has('integrations.github'); const catalogFilename = useCatalogFilename(); From b1edb5cfd9e2761a5715152e06532a6c6f8b85b7 Mon Sep 17 00:00:00 2001 From: Patrick Jungermann Date: Wed, 15 Jun 2022 14:25:19 +0200 Subject: [PATCH 400/550] fix: fix parsing of S3 URLs for the default region Closes: #11913 Signed-off-by: Patrick Jungermann --- .changeset/chilled-mirrors-grab.md | 5 +++++ .../backend-common/src/reading/AwsS3UrlReader.test.ts | 9 +++++++++ packages/backend-common/src/reading/AwsS3UrlReader.ts | 8 +++++--- 3 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 .changeset/chilled-mirrors-grab.md diff --git a/.changeset/chilled-mirrors-grab.md b/.changeset/chilled-mirrors-grab.md new file mode 100644 index 0000000000..ecc95680e2 --- /dev/null +++ b/.changeset/chilled-mirrors-grab.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-common': patch +--- + +Fix parsing of S3 URLs for the default region. diff --git a/packages/backend-common/src/reading/AwsS3UrlReader.test.ts b/packages/backend-common/src/reading/AwsS3UrlReader.test.ts index 0ae64e9404..454b8a2c5a 100644 --- a/packages/backend-common/src/reading/AwsS3UrlReader.test.ts +++ b/packages/backend-common/src/reading/AwsS3UrlReader.test.ts @@ -39,6 +39,15 @@ const treeResponseFactory = DefaultReadTreeResponseFactory.create({ describe('parseUrl', () => { it('supports all aws formats', () => { + expect( + parseUrl('https://s3.amazonaws.com/my.bucket-3/a/puppy.jpg', { + host: 'amazonaws.com', + }), + ).toEqual({ + path: 'a/puppy.jpg', + bucket: 'my.bucket-3', + region: 'us-east-1', + }); expect( parseUrl('https://s3.us-west-2.amazonaws.com/my.bucket-3/a/puppy.jpg', { host: 'amazonaws.com', diff --git a/packages/backend-common/src/reading/AwsS3UrlReader.ts b/packages/backend-common/src/reading/AwsS3UrlReader.ts index b0ac81676a..7c314cf036 100644 --- a/packages/backend-common/src/reading/AwsS3UrlReader.ts +++ b/packages/backend-common/src/reading/AwsS3UrlReader.ts @@ -35,6 +35,8 @@ import { ForwardedError, NotModifiedError } from '@backstage/errors'; import { ListObjectsV2Output, ObjectList } from 'aws-sdk/clients/s3'; import { ReadUrlResponseFactory } from './ReadUrlResponseFactory'; +const DEFAULT_REGION = 'us-east-1'; + /** * Path style URLs: https://s3.(region).amazonaws.com/(bucket)/(key) * The region can also be on the old form: https://s3-(region).amazonaws.com/(bucket)/(key) @@ -57,7 +59,7 @@ export function parseUrl( // Treat Amazon hosted separately because it has special region logic if (config.host === 'amazonaws.com') { const match = host.match( - /^(?:([a-z0-9.-]+)\.)?s3[.-]([a-z0-9-]+)\.amazonaws\.com$/, + /^(?:([a-z0-9.-]+)\.)?s3(?:[.-]([a-z0-9-]+))?\.amazonaws\.com$/, ); if (!match) { throw new Error(`Invalid AWS S3 URL ${url}`); @@ -76,14 +78,14 @@ export function parseUrl( return { path: pathname.substring(slashIndex + 1), bucket: pathname.substring(0, slashIndex), - region: hostRegion, + region: hostRegion ?? DEFAULT_REGION, }; } return { path: pathname, bucket: hostBucket, - region: hostRegion, + region: hostRegion ?? DEFAULT_REGION, }; } From ee3c232c60d3dd5aab28f9dcbcf4633a83b3ae17 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 15 Jun 2022 14:29:21 +0200 Subject: [PATCH 401/550] e2e-test: make sure workspace dep packages are clean Signed-off-by: Patrik Oldsberg --- packages/e2e-test/src/commands/run.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/e2e-test/src/commands/run.ts b/packages/e2e-test/src/commands/run.ts index e1477d98d7..d324aeafaf 100644 --- a/packages/e2e-test/src/commands/run.ts +++ b/packages/e2e-test/src/commands/run.ts @@ -235,6 +235,18 @@ async function createApp( print('Rewriting module resolutions of app to use workspace packages'); await overrideModuleResolutions(appDir, workspaceDir); + // Yarn does not clean up node_module folders in the linked in dependencies by itself + print('Cleaning up node_modules in workspace'); + await fs.remove(resolvePath(workspaceDir, 'node_modules')); + for (const wsDir of ['packages', 'plugins']) { + for (const dir of await fs.readdir(resolvePath(workspaceDir, wsDir))) { + const moduleDir = resolvePath(workspaceDir, wsDir, dir, 'node_modules'); + if (await fs.pathExists(moduleDir)) { + await fs.remove(moduleDir); + } + } + } + print('Pinning yarn version and registry in app'); await pinYarnVersion(appDir); await fs.writeFile( From 82f052e74bc21948feb3e45793b94e6cc31e4d55 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 10:24:34 +0200 Subject: [PATCH 402/550] move widget to its own package Signed-off-by: Kiss Miklos --- plugins/api-docs-react/.eslintrc.js | 1 + plugins/api-docs-react/README.md | 40 +++++ plugins/api-docs-react/package.json | 48 ++++++ plugins/api-docs-react/src/index.ts | 23 +++ plugins/api-docs-react/src/setupTests.ts | 17 +++ plugins/api-docs-react/src/widgets.tsx | 28 ++++ yarn.lock | 181 ++++++++++++++++++++++- 7 files changed, 331 insertions(+), 7 deletions(-) create mode 100644 plugins/api-docs-react/.eslintrc.js create mode 100644 plugins/api-docs-react/README.md create mode 100644 plugins/api-docs-react/package.json create mode 100644 plugins/api-docs-react/src/index.ts create mode 100644 plugins/api-docs-react/src/setupTests.ts create mode 100644 plugins/api-docs-react/src/widgets.tsx diff --git a/plugins/api-docs-react/.eslintrc.js b/plugins/api-docs-react/.eslintrc.js new file mode 100644 index 0000000000..e2a53a6ad2 --- /dev/null +++ b/plugins/api-docs-react/.eslintrc.js @@ -0,0 +1 @@ +module.exports = require('@backstage/cli/config/eslint-factory')(__dirname); diff --git a/plugins/api-docs-react/README.md b/plugins/api-docs-react/README.md new file mode 100644 index 0000000000..f5e88314e9 --- /dev/null +++ b/plugins/api-docs-react/README.md @@ -0,0 +1,40 @@ +# @backstage/plugin-api-docs-react + +### Setup + +This widget will render the generated `protoc-gen-doc` descriptors with the `grpc-docs` package. For this make sure you use the `grpc-docs` as the type in the API catalog file. + +```yaml +spec: + type: grpc-docs + owner: foo + definition: + $text: https://fetch-my-json.com/awesome-resource.json +``` + +### Add the GrpcDocsApiWidget to your apis + +Add the widget to your `apiDocsConfigRef` in the following way. Make sure the `apiEntity.spec.type` is compared to `grpc-docs` + +```ts +// packages/app/apis.ts + createApiFactory({ + api: apiDocsConfigRef, + deps: {}, + factory: () => { + // load the default widgets + const definitionWidgets = defaultDefinitionWidgets(); + return { + getApiDefinitionWidget: (apiEntity: ApiEntity) => { + // custom rendering for grpc-docs + if (apiEntity.spec.type === 'grpc-docs') { + return grpcDocsApiWidget(); + } + + // fallback to the defaults + return definitionWidgets.find(d => d.type === apiEntity.spec.type); + }, + }; + }, + }), +``` diff --git a/plugins/api-docs-react/package.json b/plugins/api-docs-react/package.json new file mode 100644 index 0000000000..f29153488e --- /dev/null +++ b/plugins/api-docs-react/package.json @@ -0,0 +1,48 @@ +{ + "name": "@backstage/plugin-api-docs-react", + "description": "Common functionalities for the api-docs-react plugin", + "version": "0.0.0", + "main": "src/index.ts", + "types": "src/index.ts", + "license": "Apache-2.0", + "private": true, + "publishConfig": { + "access": "public", + "main": "dist/index.esm.js", + "types": "dist/index.d.ts" + }, + "backstage": { + "role": "web-library" + }, + "homepage": "https://backstage.io", + "repository": { + "type": "git", + "url": "https://github.com/backstage/backstage", + "directory": "plugins/permission-react" + }, + "keywords": [ + "backstage" + ], + "scripts": { + "build": "backstage-cli package build", + "lint": "backstage-cli package lint", + "test": "backstage-cli package test", + "clean": "backstage-cli package clean", + "prepack": "backstage-cli package prepack", + "postpack": "backstage-cli package postpack" + }, + "dependencies": { + "grpc-docs": "^1.1.2" + }, + "peerDependencies": { + "@types/react": "^16.13.1 || ^17.0.0", + "react": "^16.13.1 || ^17.0.0" + }, + "devDependencies": { + "@backstage/cli": "^0.17.2-next.0", + "@testing-library/jest-dom": "^5.16.4" + }, + "files": [ + "dist" + ] +} diff --git a/plugins/api-docs-react/src/index.ts b/plugins/api-docs-react/src/index.ts new file mode 100644 index 0000000000..8cca60ac60 --- /dev/null +++ b/plugins/api-docs-react/src/index.ts @@ -0,0 +1,23 @@ +/* + * Copyright 2022 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. + */ + +/** + * Package encapsulating utilities to be shared by frontend TechDocs plugins. + * + * @packageDocumentation + */ + +export { grpcDocsApiWidget } from './widgets'; diff --git a/plugins/api-docs-react/src/setupTests.ts b/plugins/api-docs-react/src/setupTests.ts new file mode 100644 index 0000000000..7a459ed24e --- /dev/null +++ b/plugins/api-docs-react/src/setupTests.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2022 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 '@testing-library/jest-dom'; diff --git a/plugins/api-docs-react/src/widgets.tsx b/plugins/api-docs-react/src/widgets.tsx new file mode 100644 index 0000000000..7365c4d73a --- /dev/null +++ b/plugins/api-docs-react/src/widgets.tsx @@ -0,0 +1,28 @@ +/* + * Copyright 2022 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 from 'react'; +import { GRPCSelfGeneratedAPIReference } from 'grpc-docs'; + +export function grpcDocsApiWidget() { + return { + type: 'grpc-docs', + title: 'gRPC', + component: (definition: string) => ( + + ), + }; +} diff --git a/yarn.lock b/yarn.lock index 0d8a9f0a80..7ec3615686 100644 --- a/yarn.lock +++ b/yarn.lock @@ -409,7 +409,7 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.16.7": +"@babel/helper-annotate-as-pure@^7.16.0", "@babel/helper-annotate-as-pure@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" integrity sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw== @@ -523,7 +523,7 @@ dependencies: "@babel/types" "^7.16.7" -"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7": +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.0", "@babel/helper-module-imports@^7.16.7": version "7.16.7" resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== @@ -1873,6 +1873,28 @@ resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== +"@emotion/is-prop-valid@^1.1.0": + version "1.1.2" + resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.2.tgz#34ad6e98e871aa6f7a20469b602911b8b11b3a95" + integrity sha512-3QnhqeL+WW88YjYbQL5gUIkthuMw7a0NGbZ7wfFVk2kg/CK5w8w5FFa0RzWjyY1+sujN0NWbtSHH6OJmWHtJpQ== + dependencies: + "@emotion/memoize" "^0.7.4" + +"@emotion/memoize@^0.7.4": + version "0.7.5" + resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" + integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ== + +"@emotion/stylis@^0.8.4": + version "0.8.5" + resolved "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" + integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== + +"@emotion/unitless@^0.7.4": + version "0.7.5" + resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" + integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== + "@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2": version "3.0.2" resolved "https://registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz#eea4635828dde372838b0909693ebd9aafeec22d" @@ -2550,6 +2572,20 @@ resolved "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c" integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== +"@improbable-eng/grpc-web@^0.14.0": + version "0.14.1" + resolved "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.14.1.tgz#f4662f64dc89c0f956a94bb8a3b576556c74589c" + integrity sha512-XaIYuunepPxoiGVLLHmlnVminUGzBTnXr8Wv7khzmLWbNw4TCwJKX09GSMJlKhu/TRk6gms0ySFxewaETSBqgw== + dependencies: + browser-headers "^0.4.1" + +"@improbable-eng/grpc-web@^0.15.0": + version "0.15.0" + resolved "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.15.0.tgz#3e47e9fdd90381a74abd4b7d26e67422a2a04bef" + integrity sha512-ERft9/0/8CmYalqOVnJnpdDry28q+j+nAlFFARdjyxXDJ+Mhgv9+F600QC8BR9ygOfrXRlAk6CvST2j+JCpQPg== + dependencies: + browser-headers "^0.4.1" + "@ioredis/commands@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@ioredis/commands/-/commands-1.1.1.tgz#2ba4299ea624a6bfac15b35f6df90b0015691ec3" @@ -5387,7 +5423,7 @@ lz-string "^1.4.4" pretty-format "^27.0.2" -"@testing-library/jest-dom@^5.10.1": +"@testing-library/jest-dom@^5.10.1", "@testing-library/jest-dom@^5.16.4": version "5.16.4" resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.16.4.tgz#938302d7b8b483963a3ae821f1c0808f872245cd" integrity sha512-Gy+IoFutbMQcky0k+bqqumXZ1cTGswLsFqmNLzNdSKkU9KGV2u9oXhukCbbJ9/LRPKiqwxEE8VpV/+YZlfkPUA== @@ -8109,6 +8145,22 @@ babel-plugin-polyfill-regenerator@^0.3.0: dependencies: "@babel/helper-define-polyfill-provider" "^0.3.1" +"babel-plugin-styled-components@>= 1.12.0": + version "2.0.7" + resolved "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz#c81ef34b713f9da2b7d3f5550df0d1e19e798086" + integrity sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.0" + "@babel/helper-module-imports" "^7.16.0" + babel-plugin-syntax-jsx "^6.18.0" + lodash "^4.17.11" + picomatch "^2.3.0" + +babel-plugin-syntax-jsx@^6.18.0: + version "6.18.0" + resolved "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + integrity sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw== + babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: version "7.0.0-beta.0" resolved "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" @@ -8322,6 +8374,11 @@ big.js@^5.2.2: resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +big.js@^6.1.1: + version "6.2.0" + resolved "https://registry.npmjs.org/big.js/-/big.js-6.2.0.tgz#39c60822aecb0f34a1d79a90fe9908a0ddf45e1d" + integrity sha512-paIKvJiAaOYdLt6MfnvxkDo64lTOV257XYJyX3oJnJQocIclUn+48k6ZerH/c5FxWE6DGJu1TKDYis7tqHg9kg== + bignumber.js@^9.0.0: version "9.0.1" resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz#8d7ba124c882bfd8e43260c67475518d0689e4e5" @@ -8550,6 +8607,11 @@ brorand@^1.0.1, brorand@^1.1.0: resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= +browser-headers@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/browser-headers/-/browser-headers-0.4.1.tgz#4308a7ad3b240f4203dbb45acedb38dc2d65dd02" + integrity sha512-CA9hsySZVo9371qEHjHZtYxV2cFtVj5Wj/ZHi8ooEsrtm4vOnl9Y9HmyYWk9q+05d7K3rdoAE0j3MVEFVvtQtg== + browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -8908,6 +8970,11 @@ camelcase@^6.2.0, camelcase@^6.3.0: resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== +camelize@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" + integrity sha512-W2lPwkBkMZwFlPCXhIlYgxu+7gC/NUlCtdK652DAJ1JdgV0sTrvuPFshNPrFa1TY2JOkLhgdeEBplB4ezEa+xg== + caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -10178,6 +10245,11 @@ css-color-converter@^2.0.0: color-name "^1.1.4" css-unit-converter "^1.1.2" +css-color-keywords@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== + css-declaration-sorter@^6.0.3: version "6.1.3" resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.1.3.tgz#e9852e4cf940ba79f509d9425b137d1f94438dc2" @@ -10218,6 +10290,15 @@ css-select@^4.1.3: domutils "^2.6.0" nth-check "^2.0.0" +css-to-react-native@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz#62dbe678072a824a689bcfee011fc96e02a7d756" + integrity sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ== + dependencies: + camelize "^1.0.0" + css-color-keywords "^1.0.0" + postcss-value-parser "^4.0.2" + css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" @@ -13235,6 +13316,14 @@ gcp-metadata@^5.0.0: gaxios "^5.0.0" json-bigint "^1.0.0" +gendocu-public-apis@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/gendocu-public-apis/-/gendocu-public-apis-1.0.0.tgz#ba9212207c6b4c9ba131b6cafb82deb07f068010" + integrity sha512-2XbY+joWdhBK2Z7b5NaP8+3NkOYZjHkqux83lpgdShp1QN9eu10s/MojCaJ7WiCTB7ZKIkfqUtWgWipDxDPjpw== + dependencies: + "@improbable-eng/grpc-web" "^0.14.0" + google-protobuf "^3.15.8" + generate-function@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" @@ -13634,6 +13723,11 @@ google-p12-pem@^3.1.3: dependencies: node-forge "^1.3.1" +google-protobuf@^3.15.8, google-protobuf@^3.19.1: + version "3.20.1" + resolved "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.20.1.tgz#1b255c2b59bcda7c399df46c65206aa3c7a0ce8b" + integrity sha512-XMf1+O32FjYIV3CYu6Tuh5PNbfNEU5Xu22X+Xkdb/DUexFlCzhvv7d5Iirm4AOwn8lv4al1YvIhzGrg2j9Zfzw== + got@11.8.3, got@^11.8.0: version "11.8.3" resolved "https://registry.npmjs.org/got/-/got-11.8.3.tgz#f496c8fdda5d729a90b4905d2b07dbd148170770" @@ -13777,6 +13871,26 @@ grouped-queue@^2.0.0: resolved "https://registry.npmjs.org/grouped-queue/-/grouped-queue-2.0.0.tgz#a2c6713f2171e45db2c300a3a9d7c119d694dac8" integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== +grpc-docs@^1.0.6, grpc-docs@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/grpc-docs/-/grpc-docs-1.1.2.tgz#021d065f8a386bdc07d16f80a8ab604cddefba06" + integrity sha512-IUQJpDNgCgq5aL1OWkcvK2Yeky0tscEOI0rDLb4fNxXAOgamrsEI/14aNX+DRzGq3gs/NTF9xU7YqN2kj3OiFA== + dependencies: + "@improbable-eng/grpc-web" "^0.15.0" + "@types/minimatch" "^3.0.5" + gendocu-public-apis "^1.0.0" + google-protobuf "^3.19.1" + grpc-docs "^1.0.6" + js-yaml "^4.1.0" + minimatch "^3.0.4" + react-copy-to-clipboard "^5.0.4" + react-dom "^16.13.1" + react-is "^16.8.0" + react-syntax-highlighter "^15.4.5" + rollup "^0.60" + rollup-plugin-smart-asset "^2.1.2" + styled-components "^5.3.3" + gtoken@^5.0.4: version "5.1.0" resolved "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz#4ba8d2fc9a8459098f76e7e8fd7beaa39fda9fe4" @@ -14053,7 +14167,7 @@ hogan.js@^3.0.2: mkdirp "0.3.0" nopt "1.0.10" -hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: +hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: version "3.3.2" resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -17176,7 +17290,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@4.17.21, lodash@^4.17.10, lodash@^4.17.13, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.7.0, lodash@~4.17.0, lodash@~4.17.15, lodash@~4.17.4: +lodash@4.17.21, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.7.0, lodash@~4.17.0, lodash@~4.17.15, lodash@~4.17.4: version "4.17.21" resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -18150,7 +18264,7 @@ mime@1.6.0, mime@^1.3.4, mime@^1.4.1: resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.2.0, mime@^2.5.0: +mime@^2.2.0, mime@^2.5.0, mime@^2.5.2: version "2.6.0" resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== @@ -20163,7 +20277,7 @@ picocolors@^1.0.0: resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.0, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -21194,6 +21308,14 @@ react-copy-to-clipboard@5.0.4: copy-to-clipboard "^3" prop-types "^15.5.8" +react-copy-to-clipboard@^5.0.4: + version "5.1.0" + resolved "https://registry.npmjs.org/react-copy-to-clipboard/-/react-copy-to-clipboard-5.1.0.tgz#09aae5ec4c62750ccb2e6421a58725eabc41255c" + integrity sha512-k61RsNgAayIJNoy9yDsYzDe/yAZAzEbEgcz3DZMhF686LEyukcE1hzurxe85JandPUG+yTfGVFzuEw3xt8WP/A== + dependencies: + copy-to-clipboard "^3.3.1" + prop-types "^15.8.1" + react-debounce-input@=3.2.4: version "3.2.4" resolved "https://registry.npmjs.org/react-debounce-input/-/react-debounce-input-3.2.4.tgz#8204373a6498776536a2fcc7e467d054c3b729d4" @@ -21232,6 +21354,16 @@ react-dev-utils@^12.0.0-next.60: strip-ansi "^6.0.1" text-table "^0.2.0" +react-dom@^16.13.1: + version "16.14.0" + resolved "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89" + integrity sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.19.1" + react-dom@^17.0.2: version "17.0.2" resolved "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" @@ -22390,6 +22522,17 @@ rollup-plugin-postcss@*, rollup-plugin-postcss@^4.0.0: safe-identifier "^0.4.2" style-inject "^0.3.0" +rollup-plugin-smart-asset@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/rollup-plugin-smart-asset/-/rollup-plugin-smart-asset-2.1.2.tgz#08c171122395b848c0c342eb344d2ffcd87261bc" + integrity sha512-Y/gD3abliw3F20uY6ILpmH6sokXKntuTFKvDdLEJxHFcyQRsTb12u2KbsapqPZDa4JN/Nxx7BslYlZ/KmYAtPg== + dependencies: + big.js "^6.1.1" + magic-string "^0.25.7" + mime "^2.5.2" + mkdirp "^1.0.4" + rollup-pluginutils "^2.8.2" + rollup-pluginutils@^2.8.2: version "2.8.2" resolved "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" @@ -22397,6 +22540,14 @@ rollup-pluginutils@^2.8.2: dependencies: estree-walker "^0.6.1" +rollup@^0.60: + version "0.60.7" + resolved "https://registry.npmjs.org/rollup/-/rollup-0.60.7.tgz#2b62ef9306f719b1ab85a7814b3e6596ac51fae8" + integrity sha512-Uj5I1A2PnDgA79P+v1dsNs1IHVydNgeJdKWRfoEJJdNMmyx07TRYqUtPUINaZ/gDusncFy1SZsT3lJnBBI8CGw== + dependencies: + "@types/estree" "0.0.39" + "@types/node" "*" + rollup@^0.63.4: version "0.63.5" resolved "https://registry.npmjs.org/rollup/-/rollup-0.63.5.tgz#5543eecac9a1b83b7e1be598b5be84c9c0a089db" @@ -23794,6 +23945,22 @@ style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" +styled-components@^5.3.3: + version "5.3.5" + resolved "https://registry.npmjs.org/styled-components/-/styled-components-5.3.5.tgz#a750a398d01f1ca73af16a241dec3da6deae5ec4" + integrity sha512-ndETJ9RKaaL6q41B69WudeqLzOpY1A/ET/glXkNZ2T7dPjPqpPCXXQjDFYZWwNnE5co0wX+gTCqx9mfxTmSIPg== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/traverse" "^7.4.5" + "@emotion/is-prop-valid" "^1.1.0" + "@emotion/stylis" "^0.8.4" + "@emotion/unitless" "^0.7.4" + babel-plugin-styled-components ">= 1.12.0" + css-to-react-native "^3.0.0" + hoist-non-react-statics "^3.0.0" + shallowequal "^1.1.0" + supports-color "^5.5.0" + stylehacks@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb" From 3a086ef50c8db162a49c109d644def6dc74cd4d3 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 11:57:40 +0200 Subject: [PATCH 403/550] fix directory name Signed-off-by: Kiss Miklos --- plugins/api-docs-react/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/api-docs-react/package.json b/plugins/api-docs-react/package.json index f29153488e..f6bdf00267 100644 --- a/plugins/api-docs-react/package.json +++ b/plugins/api-docs-react/package.json @@ -18,7 +18,7 @@ "repository": { "type": "git", "url": "https://github.com/backstage/backstage", - "directory": "plugins/permission-react" + "directory": "plugins/api-docs-react" }, "keywords": [ "backstage" From e0328f2107f7aacc779f30f06680ef70cc5b85e0 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 12:58:14 +0200 Subject: [PATCH 404/550] update readme Signed-off-by: Kiss Miklos --- .changeset/red-games-decide.md | 5 +++ plugins/api-docs-react/README.md | 44 ++++++++++++++++---------- plugins/api-docs-react/src/widgets.tsx | 16 ++++------ 3 files changed, 40 insertions(+), 25 deletions(-) create mode 100644 .changeset/red-games-decide.md diff --git a/.changeset/red-games-decide.md b/.changeset/red-games-decide.md new file mode 100644 index 0000000000..cbf36de833 --- /dev/null +++ b/.changeset/red-games-decide.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-api-docs-react': major +--- + +Adds an api widget to render protoc-gen-doc generated descriptors by the grpc-docs package diff --git a/plugins/api-docs-react/README.md b/plugins/api-docs-react/README.md index f5e88314e9..3a8e099e11 100644 --- a/plugins/api-docs-react/README.md +++ b/plugins/api-docs-react/README.md @@ -1,40 +1,52 @@ # @backstage/plugin-api-docs-react -### Setup +## Setup -This widget will render the generated `protoc-gen-doc` descriptors with the `grpc-docs` package. For this make sure you use the `grpc-docs` as the type in the API catalog file. - -```yaml -spec: - type: grpc-docs - owner: foo - definition: - $text: https://fetch-my-json.com/awesome-resource.json +``` +yarn add @backstage/plugin-api-docs-react ``` -### Add the GrpcDocsApiWidget to your apis +## Add the GrpcDocsApiWidget to your apis Add the widget to your `apiDocsConfigRef` in the following way. Make sure the `apiEntity.spec.type` is compared to `grpc-docs` ```ts +import { grpcDocsApiWidget } from '@backstage/plugin-api-docs-react'; // packages/app/apis.ts +export const apis: AnyApiFactory[] = [ createApiFactory({ api: apiDocsConfigRef, deps: {}, factory: () => { // load the default widgets const definitionWidgets = defaultDefinitionWidgets(); + // add the grpc-docs api widget to the definition widgets + definitionWidgets.push(grpcDocsApiWidget); return { getApiDefinitionWidget: (apiEntity: ApiEntity) => { - // custom rendering for grpc-docs - if (apiEntity.spec.type === 'grpc-docs') { - return grpcDocsApiWidget(); - } - - // fallback to the defaults + // find the widget for the type of api entity return definitionWidgets.find(d => d.type === apiEntity.spec.type); }, }; }, }), +]; +``` + +### Set the type in your api entities + +This widget will render the generated `protoc-gen-doc` descriptors with the `grpc-docs` package. For this make sure you use the `grpc-docs` as the type in the API catalog file. + +```yaml +apiVersion: backstage.io/v1alpha1 +kind: API +metadata: + name: hello-world + description: Hello World example for gRPC +spec: + type: grpc-docs + lifecycle: deprecated + owner: foo + definition: + $text: https://fetch-my-json.com/awesome-resource.json ``` diff --git a/plugins/api-docs-react/src/widgets.tsx b/plugins/api-docs-react/src/widgets.tsx index 7365c4d73a..cb0dadf787 100644 --- a/plugins/api-docs-react/src/widgets.tsx +++ b/plugins/api-docs-react/src/widgets.tsx @@ -17,12 +17,10 @@ import React from 'react'; import { GRPCSelfGeneratedAPIReference } from 'grpc-docs'; -export function grpcDocsApiWidget() { - return { - type: 'grpc-docs', - title: 'gRPC', - component: (definition: string) => ( - - ), - }; -} +export const grpcDocsApiWidget = { + type: 'grpc-docs', + title: 'gRPC', + component: (definition: string) => ( + + ), +}; From b9aeb42e659670d9712d060cab841ffc4b9abb3c Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 13:01:11 +0200 Subject: [PATCH 405/550] update readme Signed-off-by: Kiss Miklos --- plugins/api-docs-react/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/api-docs-react/README.md b/plugins/api-docs-react/README.md index 3a8e099e11..d030aba222 100644 --- a/plugins/api-docs-react/README.md +++ b/plugins/api-docs-react/README.md @@ -1,5 +1,9 @@ # @backstage/plugin-api-docs-react +This package contains ApiDefinitionWidgets for the following projects: + +- [grpc-docs](https://github.com/gendocu-com/grpc-docs) + ## Setup ``` @@ -8,7 +12,7 @@ yarn add @backstage/plugin-api-docs-react ## Add the GrpcDocsApiWidget to your apis -Add the widget to your `apiDocsConfigRef` in the following way. Make sure the `apiEntity.spec.type` is compared to `grpc-docs` +Add the widget to your `apiDocsConfigRef`. ```ts import { grpcDocsApiWidget } from '@backstage/plugin-api-docs-react'; From 3c1d596425c08b7ecace0347217fe17fcb0b7ef1 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 13:30:57 +0200 Subject: [PATCH 406/550] remove private prop Signed-off-by: Kiss Miklos --- plugins/api-docs-react/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/api-docs-react/package.json b/plugins/api-docs-react/package.json index f6bdf00267..64ff6e9785 100644 --- a/plugins/api-docs-react/package.json +++ b/plugins/api-docs-react/package.json @@ -5,7 +5,6 @@ "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", - "private": true, "publishConfig": { "access": "public", "main": "dist/index.esm.js", From 425dc3ae57afcb090498059f3df046e5a06ec5e7 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 8 Jun 2022 13:44:47 +0200 Subject: [PATCH 407/550] add api-report.md Signed-off-by: Kiss Miklos --- plugins/api-docs-react/api-report.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 plugins/api-docs-react/api-report.md diff --git a/plugins/api-docs-react/api-report.md b/plugins/api-docs-react/api-report.md new file mode 100644 index 0000000000..2f7c6db7c1 --- /dev/null +++ b/plugins/api-docs-react/api-report.md @@ -0,0 +1,16 @@ +## API Report File for "@backstage/plugin-api-docs-react" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts +/// + +// Warning: (ae-missing-release-tag) "grpcDocsApiWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const grpcDocsApiWidget: { + type: string; + title: string; + component: (definition: string) => JSX.Element; +}; +``` From 3605d0b691d0272827f416e27c64dcb37c5611c6 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Thu, 9 Jun 2022 00:41:48 +0200 Subject: [PATCH 408/550] move type deps to devDeps Signed-off-by: Kiss Miklos --- plugins/api-docs-react/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/api-docs-react/package.json b/plugins/api-docs-react/package.json index 64ff6e9785..dfea494ced 100644 --- a/plugins/api-docs-react/package.json +++ b/plugins/api-docs-react/package.json @@ -34,12 +34,12 @@ "grpc-docs": "^1.1.2" }, "peerDependencies": { - "@types/react": "^16.13.1 || ^17.0.0", "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { "@backstage/cli": "^0.17.2-next.0", - "@testing-library/jest-dom": "^5.16.4" + "@testing-library/jest-dom": "^5.16.4", + "@types/react": "^16.13.1 || ^17.0.0" }, "files": [ "dist" From 3c705f93095cc201fa292273c86008b5085a2edb Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 15 Jun 2022 12:55:18 +0200 Subject: [PATCH 409/550] rename package Signed-off-by: Kiss Miklos --- .changeset/red-games-decide.md | 4 ++-- .../.eslintrc.js | 0 .../README.md | 6 +++--- .../api-report.md | 2 +- .../package.json | 8 ++++---- .../src/index.ts | 0 .../src/setupTests.ts | 0 .../src/widgets.tsx | 0 8 files changed, 10 insertions(+), 10 deletions(-) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/.eslintrc.js (100%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/README.md (87%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/api-report.md (85%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/package.json (78%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/src/index.ts (100%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/src/setupTests.ts (100%) rename plugins/{api-docs-react => api-docs-module-protoc-gen-doc}/src/widgets.tsx (100%) diff --git a/.changeset/red-games-decide.md b/.changeset/red-games-decide.md index cbf36de833..ca5ff580b4 100644 --- a/.changeset/red-games-decide.md +++ b/.changeset/red-games-decide.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-api-docs-react': major +'@backstage/plugin-api-docs-module-protoc-gen-doc': major --- -Adds an api widget to render protoc-gen-doc generated descriptors by the grpc-docs package +Added the new `grpcDocsApiWidget` to render `protoc-gen-doc` generated descriptors by the `grpc-docs` package. diff --git a/plugins/api-docs-react/.eslintrc.js b/plugins/api-docs-module-protoc-gen-doc/.eslintrc.js similarity index 100% rename from plugins/api-docs-react/.eslintrc.js rename to plugins/api-docs-module-protoc-gen-doc/.eslintrc.js diff --git a/plugins/api-docs-react/README.md b/plugins/api-docs-module-protoc-gen-doc/README.md similarity index 87% rename from plugins/api-docs-react/README.md rename to plugins/api-docs-module-protoc-gen-doc/README.md index d030aba222..4d90cd74c2 100644 --- a/plugins/api-docs-react/README.md +++ b/plugins/api-docs-module-protoc-gen-doc/README.md @@ -1,4 +1,4 @@ -# @backstage/plugin-api-docs-react +# @backstage/plugin-api-docs-module-protoc-gen-doc This package contains ApiDefinitionWidgets for the following projects: @@ -7,7 +7,7 @@ This package contains ApiDefinitionWidgets for the following projects: ## Setup ``` -yarn add @backstage/plugin-api-docs-react +yarn add @backstage/plugin-api-docs-module-protoc-gen-doc ``` ## Add the GrpcDocsApiWidget to your apis @@ -15,7 +15,7 @@ yarn add @backstage/plugin-api-docs-react Add the widget to your `apiDocsConfigRef`. ```ts -import { grpcDocsApiWidget } from '@backstage/plugin-api-docs-react'; +import { grpcDocsApiWidget } from '@backstage/plugin-api-docs-module-protoc-gen-doc'; // packages/app/apis.ts export const apis: AnyApiFactory[] = [ createApiFactory({ diff --git a/plugins/api-docs-react/api-report.md b/plugins/api-docs-module-protoc-gen-doc/api-report.md similarity index 85% rename from plugins/api-docs-react/api-report.md rename to plugins/api-docs-module-protoc-gen-doc/api-report.md index 2f7c6db7c1..0573573682 100644 --- a/plugins/api-docs-react/api-report.md +++ b/plugins/api-docs-module-protoc-gen-doc/api-report.md @@ -1,4 +1,4 @@ -## API Report File for "@backstage/plugin-api-docs-react" +## API Report File for "@backstage/plugin-api-docs-module-protoc-gen-doc" > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). diff --git a/plugins/api-docs-react/package.json b/plugins/api-docs-module-protoc-gen-doc/package.json similarity index 78% rename from plugins/api-docs-react/package.json rename to plugins/api-docs-module-protoc-gen-doc/package.json index dfea494ced..81e7b7ea45 100644 --- a/plugins/api-docs-react/package.json +++ b/plugins/api-docs-module-protoc-gen-doc/package.json @@ -1,6 +1,6 @@ { - "name": "@backstage/plugin-api-docs-react", - "description": "Common functionalities for the api-docs-react plugin", + "name": "@backstage/plugin-api-docs-module-protoc-gen-doc", + "description": "Additional functionalities for the api-docs plugin that renders the output of the protoc-gen-doc", "version": "0.0.0", "main": "src/index.ts", "types": "src/index.ts", @@ -11,13 +11,13 @@ "types": "dist/index.d.ts" }, "backstage": { - "role": "web-library" + "role": "frontend-plugin-module" }, "homepage": "https://backstage.io", "repository": { "type": "git", "url": "https://github.com/backstage/backstage", - "directory": "plugins/api-docs-react" + "directory": "plugins/api-docs-module-protoc-gen-doc" }, "keywords": [ "backstage" diff --git a/plugins/api-docs-react/src/index.ts b/plugins/api-docs-module-protoc-gen-doc/src/index.ts similarity index 100% rename from plugins/api-docs-react/src/index.ts rename to plugins/api-docs-module-protoc-gen-doc/src/index.ts diff --git a/plugins/api-docs-react/src/setupTests.ts b/plugins/api-docs-module-protoc-gen-doc/src/setupTests.ts similarity index 100% rename from plugins/api-docs-react/src/setupTests.ts rename to plugins/api-docs-module-protoc-gen-doc/src/setupTests.ts diff --git a/plugins/api-docs-react/src/widgets.tsx b/plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx similarity index 100% rename from plugins/api-docs-react/src/widgets.tsx rename to plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx From 90fb26a514f034d44c7deda2db87805ff6a01e6f Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 10:03:37 -0400 Subject: [PATCH 410/550] update additional files Signed-off-by: James Russo --- docs/features/software-catalog/descriptor-format.md | 5 ++++- packages/catalog-model/src/schema/EntityMeta.schema.json | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/features/software-catalog/descriptor-format.md b/docs/features/software-catalog/descriptor-format.md index 86c832e3d2..bb79f18738 100644 --- a/docs/features/software-catalog/descriptor-format.md +++ b/docs/features/software-catalog/descriptor-format.md @@ -55,6 +55,7 @@ metadata: - url: https://admin.example-org.com title: Admin Dashboard icon: dashboard + type: admin-dashboard spec: type: website lifecycle: production @@ -83,7 +84,8 @@ This is the same entity as returned in JSON from the software catalog API: { "url": "https://admin.example-org.com", "title": "Admin Dashboard", - "icon": "dashboard" + "icon": "dashboard", + "type": "admin-dashboard" } ], "tags": ["java"], @@ -353,6 +355,7 @@ Fields of a link are: | `url` | String | [Required] A `url` in a standard `uri` format (e.g. `https://example.com/some/page`) | | `title` | String | [Optional] A user friendly display name for the link. | | `icon` | String | [Optional] A key representing a visual icon to be displayed in the UI. | +| `type` | String | [Optional] An optional value to categorize links into specific groups. | _NOTE_: The `icon` field value is meant to be a semantic key that will map to a specific icon that may be provided by an icon library (e.g. `material-ui` diff --git a/packages/catalog-model/src/schema/EntityMeta.schema.json b/packages/catalog-model/src/schema/EntityMeta.schema.json index cfdf9539c2..483e69f672 100644 --- a/packages/catalog-model/src/schema/EntityMeta.schema.json +++ b/packages/catalog-model/src/schema/EntityMeta.schema.json @@ -108,6 +108,12 @@ "description": "A key representing a visual icon to be displayed in the UI.", "examples": ["dashboard"], "minLength": 1 + }, + "type": { + "type": "string", + "description": "An optional value to categorize links into specific groups.", + "examples": ["runbook", "documentation", "logs", "dashboard"], + "minLength": 1 } } } From f4f6d51b31ddaa4bfd9474ca521f8384e6f40e8a Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 10:05:36 -0400 Subject: [PATCH 411/550] update api-reports Signed-off-by: James Russo --- packages/catalog-model/api-report.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/catalog-model/api-report.md b/packages/catalog-model/api-report.md index fca23d6ab9..8427ef4112 100644 --- a/packages/catalog-model/api-report.md +++ b/packages/catalog-model/api-report.md @@ -159,6 +159,7 @@ export type EntityLink = { url: string; title?: string; icon?: string; + type?: string; }; // @public From 14ce0d9347d9c2d3f28c80a14a67bda99bb8daaa Mon Sep 17 00:00:00 2001 From: Eric Peterson Date: Wed, 15 Jun 2022 16:13:01 +0200 Subject: [PATCH 412/550] Pull by default, don't pull on --no-pull Signed-off-by: Eric Peterson --- .changeset/techdocs-the-whole-pulse.md | 5 +++++ packages/techdocs-cli/src/commands/index.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/techdocs-the-whole-pulse.md diff --git a/.changeset/techdocs-the-whole-pulse.md b/.changeset/techdocs-the-whole-pulse.md new file mode 100644 index 0000000000..b54fb080ae --- /dev/null +++ b/.changeset/techdocs-the-whole-pulse.md @@ -0,0 +1,5 @@ +--- +'@techdocs/cli': patch +--- + +Fixed a bug that prevented docker images from being pulled by default when generating TechDocs. diff --git a/packages/techdocs-cli/src/commands/index.ts b/packages/techdocs-cli/src/commands/index.ts index 85a218eb54..68e8f88c0b 100644 --- a/packages/techdocs-cli/src/commands/index.ts +++ b/packages/techdocs-cli/src/commands/index.ts @@ -38,7 +38,7 @@ export function registerCommands(program: Command) { 'The mkdocs docker container to use', defaultDockerImage, ) - .option('--no-pull', 'Do not pull the latest docker image', false) + .option('--no-pull', 'Do not pull the latest docker image') .option( '--no-docker', 'Do not use Docker, use MkDocs executable and plugins in current user environment.', From 5df7a4bdbe65010498dbf15745432e167330e2fd Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Wed, 15 Jun 2022 16:45:35 +0200 Subject: [PATCH 413/550] add release tag to widget Signed-off-by: Kiss Miklos --- plugins/api-docs-module-protoc-gen-doc/api-report.md | 2 -- plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/api-docs-module-protoc-gen-doc/api-report.md b/plugins/api-docs-module-protoc-gen-doc/api-report.md index 0573573682..696fee2a20 100644 --- a/plugins/api-docs-module-protoc-gen-doc/api-report.md +++ b/plugins/api-docs-module-protoc-gen-doc/api-report.md @@ -5,8 +5,6 @@ ```ts /// -// Warning: (ae-missing-release-tag) "grpcDocsApiWidget" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public (undocumented) export const grpcDocsApiWidget: { type: string; diff --git a/plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx b/plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx index cb0dadf787..5f35c8d9b3 100644 --- a/plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx +++ b/plugins/api-docs-module-protoc-gen-doc/src/widgets.tsx @@ -17,6 +17,9 @@ import React from 'react'; import { GRPCSelfGeneratedAPIReference } from 'grpc-docs'; +/** + * @public + */ export const grpcDocsApiWidget = { type: 'grpc-docs', title: 'gRPC', From 279fa6b116967c237677a759f9c0323c4ac3ecf7 Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 10:46:32 -0400 Subject: [PATCH 414/550] update docs again Signed-off-by: James Russo --- docs/features/software-catalog/descriptor-format.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/features/software-catalog/descriptor-format.md b/docs/features/software-catalog/descriptor-format.md index bb79f18738..81e3604ffe 100644 --- a/docs/features/software-catalog/descriptor-format.md +++ b/docs/features/software-catalog/descriptor-format.md @@ -365,6 +365,8 @@ Backstage integrator will ultimately be left to provide the appropriate icon component mappings. A generic fallback icon would be provided if a mapping cannot be resolved. +The semantics of the `type` field are undefined. The adopter is free to define their own set of types and utilize them as they wish. Some potential use cases can be to utilize the type field to validate certain links exist on entities or to create customized UI components for specific link types. + ## Common to All Kinds: Relations The `relations` root field is a read-only list of relations, between the current From 62d3912f1d9ef66fe62c00ed7efc6dc403d74832 Mon Sep 17 00:00:00 2001 From: James Russo Date: Wed, 15 Jun 2022 10:49:09 -0400 Subject: [PATCH 415/550] update to minor Signed-off-by: James Russo --- .changeset/shaggy-melons-drive.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/shaggy-melons-drive.md b/.changeset/shaggy-melons-drive.md index cff45954fe..b5674493f4 100644 --- a/.changeset/shaggy-melons-drive.md +++ b/.changeset/shaggy-melons-drive.md @@ -1,5 +1,5 @@ --- -'@backstage/catalog-model': patch +'@backstage/catalog-model': minor --- Adding an optional type field to entity links to group and categorize links From 7fdb8eb4fc3c07f57bc9403450062969f6cb1be7 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Wed, 25 May 2022 11:30:00 -0700 Subject: [PATCH 416/550] feat(plugins/pagerduty): add constant for service id annotation annotation: 'pagerduty.com/service-id' Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/components/constants.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/pagerduty/src/components/constants.ts b/plugins/pagerduty/src/components/constants.ts index bfe1aea298..01308590f1 100644 --- a/plugins/pagerduty/src/components/constants.ts +++ b/plugins/pagerduty/src/components/constants.ts @@ -14,3 +14,4 @@ * limitations under the License. */ export const PAGERDUTY_INTEGRATION_KEY = 'pagerduty.com/integration-key'; +export const PAGERDUTY_SERVICE_ID = 'pagerduty.com/service-id'; From 0e8fc434923321248bcd4ee09c3c90119f997c04 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Wed, 25 May 2022 15:49:45 -0700 Subject: [PATCH 417/550] feat(plugins/pagerduty): add serviceId to pager duty entity Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/hooks/index.ts | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/plugins/pagerduty/src/hooks/index.ts b/plugins/pagerduty/src/hooks/index.ts index 40a34788f0..a5fa462e02 100644 --- a/plugins/pagerduty/src/hooks/index.ts +++ b/plugins/pagerduty/src/hooks/index.ts @@ -16,13 +16,18 @@ import { useEntity } from '@backstage/plugin-catalog-react'; -import { PAGERDUTY_INTEGRATION_KEY } from '../components/constants'; +import { + PAGERDUTY_INTEGRATION_KEY, + PAGERDUTY_SERVICE_ID, +} from '../components/constants'; export function usePagerdutyEntity() { const { entity } = useEntity(); - const integrationKey = - entity.metadata.annotations?.[PAGERDUTY_INTEGRATION_KEY]; + const { + [PAGERDUTY_INTEGRATION_KEY]: integrationKey, + [PAGERDUTY_SERVICE_ID]: serviceId, + } = entity.metadata.annotations || ({} as Record); const name = entity.metadata.name; - return { integrationKey, name }; + return { integrationKey, serviceId, name }; } From 7959a35cc14d1954ee06fa43806dd4e3b6c5d168 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Wed, 25 May 2022 15:52:34 -0700 Subject: [PATCH 418/550] feat(plugins/pagerduty): check for service id annotation for applicable entities Signed-off-by: Alec Jacobs --- .../components/PagerDutyCard/index.test.tsx | 65 ++++++++++++++++++- .../src/components/PagerDutyCard/index.tsx | 7 +- 2 files changed, 67 insertions(+), 5 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index e0a857ccc7..1195d6e7ee 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; import { render, waitFor, fireEvent, act } from '@testing-library/react'; -import { PagerDutyCard } from '../PagerDutyCard'; +import { PagerDutyCard, isPluginApplicableToEntity } from '../PagerDutyCard'; import { Entity } from '@backstage/catalog-model'; import { EntityProvider } from '@backstage/plugin-catalog-react'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; @@ -35,6 +35,7 @@ const apis = TestApiRegistry.from( [pagerDutyApiRef, mockPagerDutyApi], [alertApiRef, {}], ); + const entity: Entity = { apiVersion: 'backstage.io/v1alpha1', kind: 'Component', @@ -46,6 +47,38 @@ const entity: Entity = { }, }; +const entityWithoutAnnotations: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: {}, + }, +}; + +const entityWithServiceId: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/service-id': 'def456', + }, + }, +}; + +const entityWithAllAnnotations: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/integration-key': 'abc123', + 'pagerduty.com/service-id': 'def456', + }, + }, +}; + const user: User = { name: 'person1', id: 'p1', @@ -55,7 +88,7 @@ const user: User = { }; const service: Service = { - id: 'abc', + id: 'def456', name: 'pagerduty-name', html_url: 'www.example.com', escalation_policy: { @@ -63,9 +96,35 @@ const service: Service = { user: user, html_url: 'http://a.com/id1', }, - integrationKey: 'abcd', + integrationKey: 'abc123', }; +describe('isPluginApplicableToEntity', () => { + describe('when entity has no annotations', () => { + it('returns false', () => { + expect(isPluginApplicableToEntity(entityWithoutAnnotations)).toBe(false); + }); + }); + + describe('when entity has the pagerduty.com/integration-key annotation', () => { + it('returns true', () => { + expect(isPluginApplicableToEntity(entity)).toBe(true); + }); + }); + + describe('when entity has the pagerduty.com/service-id annotation', () => { + it('returns true', () => { + expect(isPluginApplicableToEntity(entityWithServiceId)).toBe(true); + }); + }); + + describe('when entity has all annotations', () => { + it('returns true', () => { + expect(isPluginApplicableToEntity(entityWithAllAnnotations)).toBe(true); + }); + }); +}); + describe('PageDutyCard', () => { it('Render pagerduty', async () => { mockPagerDutyApi.getServiceByIntegrationKey = jest diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index bbade09e51..0938f7288b 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -26,7 +26,7 @@ import { MissingTokenError } from '../Errors/MissingTokenError'; import WebIcon from '@material-ui/icons/Web'; import DateRangeIcon from '@material-ui/icons/DateRange'; import { usePagerdutyEntity } from '../../hooks'; -import { PAGERDUTY_INTEGRATION_KEY } from '../constants'; +import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID } from '../constants'; import { TriggerDialog } from '../TriggerDialog'; import { ChangeEvents } from '../ChangeEvents'; @@ -40,7 +40,10 @@ import { } from '@backstage/core-components'; export const isPluginApplicableToEntity = (entity: Entity) => - Boolean(entity.metadata.annotations?.[PAGERDUTY_INTEGRATION_KEY]); + Boolean( + entity.metadata.annotations?.[PAGERDUTY_INTEGRATION_KEY] || + entity.metadata.annotations?.[PAGERDUTY_SERVICE_ID], + ); export const PagerDutyCard = () => { const { integrationKey } = usePagerdutyEntity(); From e5af087fb5917bd58041557a5e7f1a49cbac1395 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Thu, 26 May 2022 10:19:12 -0700 Subject: [PATCH 419/550] feat(plugins/pagerduty): add getServiceByServiceId to PagerDutyClient * extract common params to helper constant Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 16 +++++++++++++++- plugins/pagerduty/src/api/types.ts | 10 ++++++++++ .../src/components/PagerDutyCard/index.test.tsx | 1 + 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 43c6165c91..db883e8e35 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -19,6 +19,7 @@ import { PagerDutyApi, TriggerAlarmRequest, ServicesResponse, + ServiceResponse, IncidentsResponse, OnCallsResponse, ClientApiConfig, @@ -38,6 +39,9 @@ export const pagerDutyApiRef = createApiRef({ id: 'plugin.pagerduty.api', }); +const commonGetServiceParams = + 'time_zone=UTC&include[]=integrations&include[]=escalation_policies'; + export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, @@ -56,7 +60,7 @@ export class PagerDutyClient implements PagerDutyApi { constructor(private readonly config: ClientApiConfig) {} async getServiceByIntegrationKey(integrationKey: string): Promise { - const params = `time_zone=UTC&include[]=integrations&include[]=escalation_policies&query=${integrationKey}`; + const params = `${commonGetServiceParams}&query=${integrationKey}`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/services?${params}`; @@ -65,6 +69,16 @@ export class PagerDutyClient implements PagerDutyApi { return services; } + async getServiceByServiceId(serviceId: string): Promise { + const params = commonGetServiceParams; + const url = `${await this.config.discoveryApi.getBaseUrl( + 'proxy', + )}/pagerduty/services/${serviceId}?${params}`; + const { service } = await this.getByUrl(url); + + return service; + } + async getIncidentsByServiceId(serviceId: string): Promise { const params = `time_zone=UTC&sort_by=created_at&statuses[]=triggered&statuses[]=acknowledged&service_ids[]=${serviceId}`; const url = `${await this.config.discoveryApi.getBaseUrl( diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 8acd24f033..e473529980 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -31,6 +31,12 @@ export interface PagerDutyApi { */ getServiceByIntegrationKey(integrationKey: string): Promise; + /** + * Fetches the service for the provided service id. + * + */ + getServiceByServiceId(serviceId: string): Promise; + /** * Fetches a list of incidents a provided service has. * @@ -59,6 +65,10 @@ export type ServicesResponse = { services: Service[]; }; +export type ServiceResponse = { + service: Service; +}; + export type IncidentsResponse = { incidents: Incident[]; }; diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 1195d6e7ee..e633dde0c8 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -27,6 +27,7 @@ import { ApiProvider } from '@backstage/core-app-api'; const mockPagerDutyApi: Partial = { getServiceByIntegrationKey: async () => [], + getServiceByServiceId: async () => service, getOnCallByPolicyId: async () => [], getIncidentsByServiceId: async () => [], }; From ff30bc3f061007200b0716d8e087da7785cf7343 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Thu, 26 May 2022 14:57:09 -0700 Subject: [PATCH 420/550] fix(plugins/pagerduty): use FetchApi over raw fetch with IdentityApi Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 10 ++++------ plugins/pagerduty/src/api/types.ts | 4 ++-- plugins/pagerduty/src/plugin.ts | 8 ++++---- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index db883e8e35..78d1c048f2 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -30,7 +30,7 @@ import { createApiRef, DiscoveryApi, ConfigApi, - IdentityApi, + FetchApi, } from '@backstage/core-plugin-api'; export class UnauthorizedError extends Error {} @@ -46,7 +46,7 @@ export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, discoveryApi: DiscoveryApi, - identityApi: IdentityApi, + fetchApi: FetchApi, ) { const eventsBaseUrl: string = configApi.getOptionalString('pagerDuty.eventsBaseUrl') ?? @@ -54,7 +54,7 @@ export class PagerDutyClient implements PagerDutyApi { return new PagerDutyClient({ eventsBaseUrl, discoveryApi, - identityApi, + fetchApi, }); } constructor(private readonly config: ClientApiConfig) {} @@ -144,13 +144,11 @@ export class PagerDutyClient implements PagerDutyApi { } private async getByUrl(url: string): Promise { - const { token: idToken } = await this.config.identityApi.getCredentials(); const options = { method: 'GET', headers: { Accept: 'application/vnd.pagerduty+json;version=2', 'Content-Type': 'application/json', - ...(idToken && { Authorization: `Bearer ${idToken}` }), }, }; const response = await this.request(url, options); @@ -161,7 +159,7 @@ export class PagerDutyClient implements PagerDutyApi { url: string, options: RequestOptions, ): Promise { - const response = await fetch(url, options); + const response = await this.config.fetchApi.fetch(url, options); if (response.status === 401) { throw new UnauthorizedError(); } diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index e473529980..e747fd40fe 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -15,7 +15,7 @@ */ import { Incident, ChangeEvent, OnCall, Service } from '../components/types'; -import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; +import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; export type TriggerAlarmRequest = { integrationKey: string; @@ -84,7 +84,7 @@ export type OnCallsResponse = { export type ClientApiConfig = { eventsBaseUrl?: string; discoveryApi: DiscoveryApi; - identityApi: IdentityApi; + fetchApi: FetchApi; }; export type RequestOptions = { diff --git a/plugins/pagerduty/src/plugin.ts b/plugins/pagerduty/src/plugin.ts index 32093015ff..3baa36a50e 100644 --- a/plugins/pagerduty/src/plugin.ts +++ b/plugins/pagerduty/src/plugin.ts @@ -19,9 +19,9 @@ import { createPlugin, createRouteRef, discoveryApiRef, + fetchApiRef, configApiRef, createComponentExtension, - identityApiRef, } from '@backstage/core-plugin-api'; export const rootRouteRef = createRouteRef({ @@ -36,10 +36,10 @@ export const pagerDutyPlugin = createPlugin({ deps: { discoveryApi: discoveryApiRef, configApi: configApiRef, - identityApi: identityApiRef, + fetchApi: fetchApiRef, }, - factory: ({ configApi, discoveryApi, identityApi }) => - PagerDutyClient.fromConfig(configApi, discoveryApi, identityApi), + factory: ({ configApi, discoveryApi, fetchApi }) => + PagerDutyClient.fromConfig(configApi, discoveryApi, fetchApi), }), ], }); From 525641fc02aea84e0772f8bb8e7c149eecfcb483 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Thu, 26 May 2022 14:58:31 -0700 Subject: [PATCH 421/550] feat(plugins/pagerduty): add ServiceNotFoundError empty state Signed-off-by: Alec Jacobs --- .../Errors/ServiceNotFoundError.tsx | 35 +++++++++++++++++++ .../pagerduty/src/components/Errors/index.ts | 1 + 2 files changed, 36 insertions(+) create mode 100644 plugins/pagerduty/src/components/Errors/ServiceNotFoundError.tsx diff --git a/plugins/pagerduty/src/components/Errors/ServiceNotFoundError.tsx b/plugins/pagerduty/src/components/Errors/ServiceNotFoundError.tsx new file mode 100644 index 0000000000..d8b61ef7cd --- /dev/null +++ b/plugins/pagerduty/src/components/Errors/ServiceNotFoundError.tsx @@ -0,0 +1,35 @@ +/* + * Copyright 2020 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 from 'react'; +import { Button } from '@material-ui/core'; +import { EmptyState } from '@backstage/core-components'; + +export const ServiceNotFoundError = () => ( + + Read More + + } + /> +); diff --git a/plugins/pagerduty/src/components/Errors/index.ts b/plugins/pagerduty/src/components/Errors/index.ts index df255749e0..6c35e0bfd1 100644 --- a/plugins/pagerduty/src/components/Errors/index.ts +++ b/plugins/pagerduty/src/components/Errors/index.ts @@ -15,3 +15,4 @@ */ export { MissingTokenError } from './MissingTokenError'; +export { ServiceNotFoundError } from './ServiceNotFoundError'; From 845c7f88523c4f2f2c89e70da7ac14c7a370b2c4 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 10:14:20 -0700 Subject: [PATCH 422/550] feat(plugins/pagerduty): add NotFoundError Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 1 + plugins/pagerduty/src/api/index.ts | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 78d1c048f2..ddf4248934 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -34,6 +34,7 @@ import { } from '@backstage/core-plugin-api'; export class UnauthorizedError extends Error {} +export class NotFoundError extends Error {} export const pagerDutyApiRef = createApiRef({ id: 'plugin.pagerduty.api', diff --git a/plugins/pagerduty/src/api/index.ts b/plugins/pagerduty/src/api/index.ts index 015204b1e8..e23ee0c9a4 100644 --- a/plugins/pagerduty/src/api/index.ts +++ b/plugins/pagerduty/src/api/index.ts @@ -14,5 +14,10 @@ * limitations under the License. */ -export { PagerDutyClient, pagerDutyApiRef, UnauthorizedError } from './client'; +export { + PagerDutyClient, + pagerDutyApiRef, + UnauthorizedError, + NotFoundError, +} from './client'; export type { PagerDutyApi } from './types'; From 3cf02b6e9c968e8cb598a92d058b11a93b97e616 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 10:22:01 -0700 Subject: [PATCH 423/550] feat(plugins/pagerduty): handle 404 error code in Api Client * raise NotFoundError Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index ddf4248934..6c31f2a5d0 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -164,6 +164,11 @@ export class PagerDutyClient implements PagerDutyApi { if (response.status === 401) { throw new UnauthorizedError(); } + + if (response.status === 404) { + throw new NotFoundError(); + } + if (!response.ok) { const payload = await response.json(); const errors = payload.errors.map((error: string) => error).join(' '); From bb4fb80dac1d4c29728a2cc52112181c7f414495 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 10:39:06 -0700 Subject: [PATCH 424/550] feat(plugins/pagerduty): add wrapper BasicCard component * ensures errors and progress bar have consistent styling with the rest of the Overview Page components Signed-off-by: Alec Jacobs --- .../src/components/PagerDutyCard/index.tsx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index 0938f7288b..e5c7eab071 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import React, { useState, useCallback } from 'react'; +import React, { ReactNode, useState, useCallback } from 'react'; import { Entity } from '@backstage/catalog-model'; import { Card, CardHeader, Divider, CardContent } from '@material-ui/core'; import { Incidents } from '../Incident'; @@ -37,8 +37,13 @@ import { IconLinkVerticalProps, TabbedCard, CardTab, + InfoCard, } from '@backstage/core-components'; +const BasicCard = ({ children }: { children: ReactNode }) => ( + {children} +); + export const isPluginApplicableToEntity = (entity: Entity) => Boolean( entity.metadata.annotations?.[PAGERDUTY_INTEGRATION_KEY] || @@ -96,7 +101,11 @@ export const PagerDutyCard = () => { } if (loading) { - return ; + return ( + + + + ); } const serviceLink: IconLinkVerticalProps = { From 02c2978b79d8f09873fa4bfb3b806080edf772dc Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 10:43:28 -0700 Subject: [PATCH 425/550] feat(plugins/pagerduty): handle empty response when querying services * raise NotFoundError in async hook * show ServiceNotFoundError empty state when async hook errors Signed-off-by: Alec Jacobs --- .../components/PagerDutyCard/index.test.tsx | 44 +++++++++++++++++- .../src/components/PagerDutyCard/index.tsx | 46 ++++++++++++------- 2 files changed, 73 insertions(+), 17 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index e633dde0c8..2b309533ed 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -19,7 +19,12 @@ import { PagerDutyCard, isPluginApplicableToEntity } from '../PagerDutyCard'; import { Entity } from '@backstage/catalog-model'; import { EntityProvider } from '@backstage/plugin-catalog-react'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; -import { pagerDutyApiRef, UnauthorizedError, PagerDutyClient } from '../../api'; +import { + pagerDutyApiRef, + UnauthorizedError, + NotFoundError, + PagerDutyClient, +} from '../../api'; import { Service, User } from '../types'; import { alertApiRef } from '@backstage/core-plugin-api'; @@ -166,6 +171,24 @@ describe('PageDutyCard', () => { expect(getByText('Missing or invalid PagerDuty Token')).toBeInTheDocument(); }); + it('Handles custom NotFoundError', async () => { + mockPagerDutyApi.getServiceByIntegrationKey = jest + .fn() + .mockRejectedValueOnce(new NotFoundError()); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(getByText('PagerDuty Service Not Found')).toBeInTheDocument(); + }); + it('handles general error', async () => { mockPagerDutyApi.getServiceByIntegrationKey = jest .fn() @@ -187,6 +210,25 @@ describe('PageDutyCard', () => { ), ).toBeInTheDocument(); }); + + it('handles empty response from getServiceByIntegrationKey', async () => { + mockPagerDutyApi.getServiceByIntegrationKey = jest + .fn() + .mockImplementationOnce(async () => []); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(getByText('PagerDuty Service Not Found')).toBeInTheDocument(); + }); + it('opens the dialog when trigger button is clicked', async () => { mockPagerDutyApi.getServiceByIntegrationKey = jest .fn() diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index e5c7eab071..b4b20fb25b 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -20,15 +20,16 @@ import { Incidents } from '../Incident'; import { EscalationPolicy } from '../Escalation'; import useAsync from 'react-use/lib/useAsync'; import { Alert } from '@material-ui/lab'; -import { pagerDutyApiRef, UnauthorizedError } from '../../api'; +import { pagerDutyApiRef, UnauthorizedError, NotFoundError } from '../../api'; import AlarmAddIcon from '@material-ui/icons/AlarmAdd'; -import { MissingTokenError } from '../Errors/MissingTokenError'; +import { MissingTokenError, ServiceNotFoundError } from '../Errors'; import WebIcon from '@material-ui/icons/Web'; import DateRangeIcon from '@material-ui/icons/DateRange'; import { usePagerdutyEntity } from '../../hooks'; import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID } from '../constants'; import { TriggerDialog } from '../TriggerDialog'; import { ChangeEvents } from '../ChangeEvents'; +import { Service } from '../types'; import { useApi } from '@backstage/core-plugin-api'; import { @@ -75,29 +76,42 @@ export const PagerDutyCard = () => { loading, error, } = useAsync(async () => { + let service: Service; const services = await api.getServiceByIntegrationKey( integrationKey as string, ); + service = services[0]; + if (!service) throw new NotFoundError(); + return { - id: services[0].id, - name: services[0].name, - url: services[0].html_url, - policyId: services[0].escalation_policy.id, - policyLink: services[0].escalation_policy.html_url, + id: service.id, + name: service.name, + url: service.html_url, + policyId: service.escalation_policy.id, + policyLink: service.escalation_policy.html_url, }; }); - if (error instanceof UnauthorizedError) { - return ; - } - if (error) { - return ( - - Error encountered while fetching information. {error.message} - - ); + let errorNode: ReactNode; + + switch (error.constructor) { + case UnauthorizedError: + errorNode = ; + break; + case NotFoundError: + errorNode = ; + break; + default: + errorNode = ( + + Error encountered while fetching information. {error.message} + + ); + } + + return {errorNode}; } if (loading) { From 707191bf6f10a5a8e4dcfe3d0c77adf7d12e70b3 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 11:03:06 -0700 Subject: [PATCH 426/550] feat(plugins/pagerduty): lookup by service-id if that is available * prefer integration-key value over service-id * disable creation of incidents if integration-key is not available Signed-off-by: Alec Jacobs --- .../components/PagerDutyCard/index.test.tsx | 130 ++++++++++++++++++ .../src/components/PagerDutyCard/index.tsx | 40 ++++-- 2 files changed, 158 insertions(+), 12 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 2b309533ed..54b58489be 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -252,4 +252,134 @@ describe('PageDutyCard', () => { }); expect(getByRole('dialog')).toBeInTheDocument(); }); + + describe('when entity has the pagerduty.com/service-id annotation', () => { + it('Renders PagerDuty service information', async () => { + mockPagerDutyApi.getServiceByServiceId = jest + .fn() + .mockImplementationOnce(async () => service); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(getByText('Service Directory')).toBeInTheDocument(); + expect(getByText('Create Incident')).toBeInTheDocument(); + expect(getByText('Nice! No incidents found!')).toBeInTheDocument(); + expect(getByText('Empty escalation policy')).toBeInTheDocument(); + }); + + it('Handles custom error for missing token', async () => { + mockPagerDutyApi.getServiceByServiceId = jest + .fn() + .mockRejectedValueOnce(new UnauthorizedError()); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect( + getByText('Missing or invalid PagerDuty Token'), + ).toBeInTheDocument(); + }); + + it('Handles custom NotFoundError', async () => { + mockPagerDutyApi.getServiceByServiceId = jest + .fn() + .mockRejectedValueOnce(new NotFoundError()); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(getByText('PagerDuty Service Not Found')).toBeInTheDocument(); + }); + + it('handles general error', async () => { + mockPagerDutyApi.getServiceByServiceId = jest + .fn() + .mockRejectedValueOnce(new Error('An error occurred')); + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + + expect( + getByText( + 'Error encountered while fetching information. An error occurred', + ), + ).toBeInTheDocument(); + }); + + it('disables the Create Incident button', async () => { + mockPagerDutyApi.getServiceByServiceId = jest + .fn() + .mockImplementationOnce(async () => service); + + const { queryByTestId, getByTitle } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(queryByTestId('trigger-dialoger')).not.toBeInTheDocument(); + expect( + getByTitle('Must provide an integration-key to create incidents') + .className, + ).toMatch('disabled'); + }); + }); + + describe('when entity has all annotations', () => { + it('queries by integration key', async () => { + mockPagerDutyApi.getServiceByIntegrationKey = jest + .fn() + .mockImplementationOnce(async () => [service]); + mockPagerDutyApi.getServiceByServiceId = jest.fn(); + + const { getByText, queryByTestId } = render( + wrapInTestApp( + + + + + , + ), + ); + await waitFor(() => !queryByTestId('progress')); + expect(mockPagerDutyApi.getServiceByServiceId).not.toHaveBeenCalled(); + expect(getByText('Service Directory')).toBeInTheDocument(); + expect(getByText('Create Incident')).toBeInTheDocument(); + expect(getByText('Nice! No incidents found!')).toBeInTheDocument(); + expect(getByText('Empty escalation policy')).toBeInTheDocument(); + }); + }); }); diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index b4b20fb25b..308d17a08d 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -52,7 +52,7 @@ export const isPluginApplicableToEntity = (entity: Entity) => ); export const PagerDutyCard = () => { - const { integrationKey } = usePagerdutyEntity(); + const { integrationKey, serviceId } = usePagerdutyEntity(); const api = useApi(pagerDutyApiRef); const [refreshIncidents, setRefreshIncidents] = useState(false); const [refreshChangeEvents, setRefreshChangeEvents] = @@ -77,12 +77,16 @@ export const PagerDutyCard = () => { error, } = useAsync(async () => { let service: Service; - const services = await api.getServiceByIntegrationKey( - integrationKey as string, - ); - service = services[0]; - if (!service) throw new NotFoundError(); + if (integrationKey) { + const services = await api.getServiceByIntegrationKey( + integrationKey as string, + ); + service = services[0]; + if (!service) throw new NotFoundError(); + } else { + service = await api.getServiceByServiceId(serviceId); + } return { id: service.id, @@ -128,11 +132,21 @@ export const PagerDutyCard = () => { icon: , }; + /** + * In order to create incidents using the REST API, a valid user email address must be present. + * There is no guarantee the current user entity has a valid email association, so instead just + * only allow triggering incidents when an integration key is present. + */ + const createIncidentDisabled = !integrationKey; const triggerLink: IconLinkVerticalProps = { label: 'Create Incident', onClick: showDialog, icon: , color: 'secondary', + disabled: createIncidentDisabled, + title: createIncidentDisabled + ? 'Must provide an integration-key to create incidents' + : '', }; const escalationPolicyLink: IconLinkVerticalProps = { @@ -171,12 +185,14 @@ export const PagerDutyCard = () => { - + {!createIncidentDisabled && ( + + )} ); }; From 8901c1d28540f6c2b0e0d648f05da17f06d059a8 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 11:38:38 -0700 Subject: [PATCH 427/550] docs(plugins/pagerduty): regenerate api-report Signed-off-by: Alec Jacobs --- plugins/pagerduty/api-report.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index 86b917c6eb..c708a1ca4e 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -10,7 +10,7 @@ import { BackstagePlugin } from '@backstage/core-plugin-api'; import { ConfigApi } from '@backstage/core-plugin-api'; import { DiscoveryApi } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; -import { IdentityApi } from '@backstage/core-plugin-api'; +import { FetchApi } from '@backstage/core-plugin-api'; import { ReactNode } from 'react'; // Warning: (ae-missing-release-tag) "EntityPagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) @@ -46,7 +46,7 @@ export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, discoveryApi: DiscoveryApi, - identityApi: IdentityApi, + fetchApi: FetchApi, ): PagerDutyClient; // Warning: (ae-forgotten-export) The symbol "ChangeEvent" needs to be exported by the entry point index.d.ts // @@ -64,6 +64,8 @@ export class PagerDutyClient implements PagerDutyApi { // // (undocumented) getServiceByIntegrationKey(integrationKey: string): Promise; + // (undocumented) + getServiceByServiceId(serviceId: string): Promise; // Warning: (ae-forgotten-export) The symbol "TriggerAlarmRequest" needs to be exported by the entry point index.d.ts // // (undocumented) From 946c11ad03c21363de665e2c2ad0eb895197dcf6 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 12:06:32 -0700 Subject: [PATCH 428/550] docs(plugins/pagerduty): update README for new annotation support Signed-off-by: Alec Jacobs --- plugins/pagerduty/README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plugins/pagerduty/README.md b/plugins/pagerduty/README.md index 71050dc54b..7b3124ab0f 100644 --- a/plugins/pagerduty/README.md +++ b/plugins/pagerduty/README.md @@ -7,6 +7,7 @@ - The Backstage PagerDuty plugin allows PagerDuty information about a Backstage entity to be displayed within Backstage. This includes active incidents, recent change events, as well as the current on-call responders' names, email addresses, and links to their profiles in PagerDuty. - Incidents can be manually triggered via the plugin with a user-provided description, which will in turn notify the current on-call responders. + - _Note: This feature is only available when providing the `pagerduty.com/integration-key` annotation_ - Change events will be displayed in a separate tab. If the change event payload has additional links the first link only will be rendered. # Requirements @@ -117,6 +118,26 @@ This will proxy the request by adding an `Authorization` header with the provide ### Optional configuration +#### Annotating with Service ID + +If you want to integrate a PagerDuty service with Backstage but don't want to use an integration key, you can also [annotate](https://backstage.io/docs/features/software-catalog/descriptor-format#annotations-optional) the appropriate entity with a PagerDuty Service ID instead + +```yaml +annotations: + pagerduty.com/service-id: [SERVICE_ID] +``` + +This service ID can be found by navigating to a Service within PagerDuty and pulling the ID value out of the URL. + +1. From the **Configuration** menu within PagerDuty, select **Services**. +2. Click the **name** of the service you want to represent for your Entity. + +Your browser URL should now be located at `https://pagerduty.com/service-directory/[SERVICE_ID]`. + +_Note: When annotating with `pagerduty.com/service-id`, the feature to Create Incidents is not currently supported_ + +#### Custom Events URL + If you want to override the default URL used for events, you can add it to `app-config.yaml`: ```yaml From 8798f8d93f6328834573d5d321215f833e5ac82c Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 27 May 2022 11:49:06 -0700 Subject: [PATCH 429/550] chore: generate changeset Signed-off-by: Alec Jacobs --- .changeset/weak-bananas-deliver.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .changeset/weak-bananas-deliver.md diff --git a/.changeset/weak-bananas-deliver.md b/.changeset/weak-bananas-deliver.md new file mode 100644 index 0000000000..db76f396a8 --- /dev/null +++ b/.changeset/weak-bananas-deliver.md @@ -0,0 +1,16 @@ +--- +'@backstage/plugin-pagerduty': minor +--- + +Introduces a new annotation `pagerduty.com/service-id` that can be used instead of the `pagerduty.com/integration-key` annotation. +_Note: If both annotations are specified on a given Entity, then the `pagerduty.com/integration-key` annotation will be prefered_ + +**BREAKING** The `PagerDutyClient.fromConfig` static method now expects a `FetchApi` compatible object as a third argument. +The `PagerDutyClient` now relies on a `fetchApi` being available to execute `fetch` requests. + +In addition, various enhancements/bug fixes were introduced: + +- The `PagerDutyCard` component now wraps error and loading messages with an `InfoCard` to contain errors/messages. This enforces a consistent experience on the EntityPage +- If no service can be found for the provided integration key, a new Error Message Empty State component will be shown instead of an error alert +- Introduces the `fetchApi` to replace standard `window.fetch` + - ensures that Identity Authorization is respected and provided in API requests From f13bf8b510cb94f3922f1157efd5fb57186b853c Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Mon, 30 May 2022 07:31:01 -0700 Subject: [PATCH 430/550] feat(plugins/pagerduty): add @backstage/errors package Signed-off-by: Alec Jacobs --- plugins/pagerduty/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/pagerduty/package.json b/plugins/pagerduty/package.json index 73a92ed5f7..6d11ee8d69 100644 --- a/plugins/pagerduty/package.json +++ b/plugins/pagerduty/package.json @@ -37,6 +37,7 @@ "@backstage/catalog-model": "^1.0.3", "@backstage/core-components": "^0.9.5", "@backstage/core-plugin-api": "^1.0.3", + "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", From aba92d8f6aa7e07eabd185024c0766a5f72f5726 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Mon, 30 May 2022 07:26:42 -0700 Subject: [PATCH 431/550] fix(plugins/pagerduty): use NotFoundError from @backstage/errors Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 2 +- plugins/pagerduty/src/api/index.ts | 7 +------ .../pagerduty/src/components/PagerDutyCard/index.test.tsx | 2 +- plugins/pagerduty/src/components/PagerDutyCard/index.tsx | 3 ++- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 6c31f2a5d0..8ab0bcdc31 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -32,9 +32,9 @@ import { ConfigApi, FetchApi, } from '@backstage/core-plugin-api'; +import { NotFoundError } from '@backstage/errors'; export class UnauthorizedError extends Error {} -export class NotFoundError extends Error {} export const pagerDutyApiRef = createApiRef({ id: 'plugin.pagerduty.api', diff --git a/plugins/pagerduty/src/api/index.ts b/plugins/pagerduty/src/api/index.ts index e23ee0c9a4..015204b1e8 100644 --- a/plugins/pagerduty/src/api/index.ts +++ b/plugins/pagerduty/src/api/index.ts @@ -14,10 +14,5 @@ * limitations under the License. */ -export { - PagerDutyClient, - pagerDutyApiRef, - UnauthorizedError, - NotFoundError, -} from './client'; +export { PagerDutyClient, pagerDutyApiRef, UnauthorizedError } from './client'; export type { PagerDutyApi } from './types'; diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 54b58489be..041f76fb8c 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -18,11 +18,11 @@ import { render, waitFor, fireEvent, act } from '@testing-library/react'; import { PagerDutyCard, isPluginApplicableToEntity } from '../PagerDutyCard'; import { Entity } from '@backstage/catalog-model'; import { EntityProvider } from '@backstage/plugin-catalog-react'; +import { NotFoundError } from '@backstage/errors'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; import { pagerDutyApiRef, UnauthorizedError, - NotFoundError, PagerDutyClient, } from '../../api'; import { Service, User } from '../types'; diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index 308d17a08d..48a7f69e3c 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -20,7 +20,7 @@ import { Incidents } from '../Incident'; import { EscalationPolicy } from '../Escalation'; import useAsync from 'react-use/lib/useAsync'; import { Alert } from '@material-ui/lab'; -import { pagerDutyApiRef, UnauthorizedError, NotFoundError } from '../../api'; +import { pagerDutyApiRef, UnauthorizedError } from '../../api'; import AlarmAddIcon from '@material-ui/icons/AlarmAdd'; import { MissingTokenError, ServiceNotFoundError } from '../Errors'; import WebIcon from '@material-ui/icons/Web'; @@ -32,6 +32,7 @@ import { ChangeEvents } from '../ChangeEvents'; import { Service } from '../types'; import { useApi } from '@backstage/core-plugin-api'; +import { NotFoundError } from '@backstage/errors'; import { Progress, HeaderIconLinkRow, From d8abae2ce6a2f1d10b56728da68edc4ce0c9202d Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Mon, 30 May 2022 07:21:52 -0700 Subject: [PATCH 432/550] chore(plugins/pagerduty): dont shadow outer variable Signed-off-by: Alec Jacobs --- .../src/components/PagerDutyCard/index.tsx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index 48a7f69e3c..2edc8cbd44 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -77,24 +77,24 @@ export const PagerDutyCard = () => { loading, error, } = useAsync(async () => { - let service: Service; + let foundService: Service; if (integrationKey) { const services = await api.getServiceByIntegrationKey( integrationKey as string, ); - service = services[0]; - if (!service) throw new NotFoundError(); + foundService = services[0]; + if (!foundService) throw new NotFoundError(); } else { - service = await api.getServiceByServiceId(serviceId); + foundService = await api.getServiceByServiceId(serviceId); } return { - id: service.id, - name: service.name, - url: service.html_url, - policyId: service.escalation_policy.id, - policyLink: service.escalation_policy.html_url, + id: foundService.id, + name: foundService.name, + url: foundService.html_url, + policyId: foundService.escalation_policy.id, + policyLink: foundService.escalation_policy.html_url, }; }); From 56926b6f1e365209f5079086820754222b88c82b Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Mon, 30 May 2022 07:28:51 -0700 Subject: [PATCH 433/550] chore(plugins/pagerduty): move mockPagerDutyApi to not reference const before it is defined Signed-off-by: Alec Jacobs --- .../components/PagerDutyCard/index.test.tsx | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 041f76fb8c..fbb19c9897 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -20,28 +20,12 @@ import { Entity } from '@backstage/catalog-model'; import { EntityProvider } from '@backstage/plugin-catalog-react'; import { NotFoundError } from '@backstage/errors'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; -import { - pagerDutyApiRef, - UnauthorizedError, - PagerDutyClient, -} from '../../api'; +import { pagerDutyApiRef, UnauthorizedError, PagerDutyClient } from '../../api'; import { Service, User } from '../types'; import { alertApiRef } from '@backstage/core-plugin-api'; import { ApiProvider } from '@backstage/core-app-api'; -const mockPagerDutyApi: Partial = { - getServiceByIntegrationKey: async () => [], - getServiceByServiceId: async () => service, - getOnCallByPolicyId: async () => [], - getIncidentsByServiceId: async () => [], -}; - -const apis = TestApiRegistry.from( - [pagerDutyApiRef, mockPagerDutyApi], - [alertApiRef, {}], -); - const entity: Entity = { apiVersion: 'backstage.io/v1alpha1', kind: 'Component', @@ -105,6 +89,18 @@ const service: Service = { integrationKey: 'abc123', }; +const mockPagerDutyApi: Partial = { + getServiceByIntegrationKey: async () => [], + getServiceByServiceId: async () => service, + getOnCallByPolicyId: async () => [], + getIncidentsByServiceId: async () => [], +}; + +const apis = TestApiRegistry.from( + [pagerDutyApiRef, mockPagerDutyApi], + [alertApiRef, {}], +); + describe('isPluginApplicableToEntity', () => { describe('when entity has no annotations', () => { it('returns false', () => { From 67bfd75de1396cddce6d3e8a7be6787c111c6847 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 09:46:39 -0700 Subject: [PATCH 434/550] feat(plugins/pagerduty): add ClientApiDependencies type * have ClientApiConfig join ClientApiDependencies with custom configuration Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/types.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index e747fd40fe..4f80d39816 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -81,12 +81,15 @@ export type OnCallsResponse = { oncalls: OnCall[]; }; -export type ClientApiConfig = { - eventsBaseUrl?: string; +export type ClientApiDependencies = { discoveryApi: DiscoveryApi; fetchApi: FetchApi; }; +export type ClientApiConfig = ClientApiDependencies & { + eventsBaseUrl?: string; +}; + export type RequestOptions = { method: string; headers: HeadersInit; From 89f596bb4a671659492e6c796c60292badd23709 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 09:50:33 -0700 Subject: [PATCH 435/550] feat(plugins/pagerduty): refactor PagerDutyClient.fromConfig to accept second argument of ClientApiDependencies Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 12 ++++-------- plugins/pagerduty/src/plugin.ts | 2 +- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 8ab0bcdc31..9bfd6a5594 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -22,16 +22,12 @@ import { ServiceResponse, IncidentsResponse, OnCallsResponse, + ClientApiDependencies, ClientApiConfig, RequestOptions, ChangeEventsResponse, } from './types'; -import { - createApiRef, - DiscoveryApi, - ConfigApi, - FetchApi, -} from '@backstage/core-plugin-api'; +import { createApiRef, ConfigApi } from '@backstage/core-plugin-api'; import { NotFoundError } from '@backstage/errors'; export class UnauthorizedError extends Error {} @@ -46,12 +42,12 @@ const commonGetServiceParams = export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, - discoveryApi: DiscoveryApi, - fetchApi: FetchApi, + { discoveryApi, fetchApi }: ClientApiDependencies, ) { const eventsBaseUrl: string = configApi.getOptionalString('pagerDuty.eventsBaseUrl') ?? 'https://events.pagerduty.com/v2'; + return new PagerDutyClient({ eventsBaseUrl, discoveryApi, diff --git a/plugins/pagerduty/src/plugin.ts b/plugins/pagerduty/src/plugin.ts index 3baa36a50e..d49de29416 100644 --- a/plugins/pagerduty/src/plugin.ts +++ b/plugins/pagerduty/src/plugin.ts @@ -39,7 +39,7 @@ export const pagerDutyPlugin = createPlugin({ fetchApi: fetchApiRef, }, factory: ({ configApi, discoveryApi, fetchApi }) => - PagerDutyClient.fromConfig(configApi, discoveryApi, fetchApi), + PagerDutyClient.fromConfig(configApi, { discoveryApi, fetchApi }), }), ], }); From 1b0ab057575e9e3b08742464798ffa919cb382b1 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 10:46:59 -0700 Subject: [PATCH 436/550] feat(plugins/pagerduty): add PagerDutyEntity type Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/types.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 plugins/pagerduty/src/types.ts diff --git a/plugins/pagerduty/src/types.ts b/plugins/pagerduty/src/types.ts new file mode 100644 index 0000000000..07f7f2bbe3 --- /dev/null +++ b/plugins/pagerduty/src/types.ts @@ -0,0 +1,21 @@ +/* + * Copyright 2020 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 type PagerDutyEntity = { + integrationKey?: string; + serviceId?: string; + name: string; +}; From 05da90db84104fd67541f644407d5d41974b05bd Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 10:56:29 -0700 Subject: [PATCH 437/550] feat(plugins/pagerduty): enforce PagerDutyEntity type from usePagerdutyEntity Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/components/PagerDutyCard/index.tsx | 2 +- plugins/pagerduty/src/hooks/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index 2edc8cbd44..e089cf817c 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -86,7 +86,7 @@ export const PagerDutyCard = () => { foundService = services[0]; if (!foundService) throw new NotFoundError(); } else { - foundService = await api.getServiceByServiceId(serviceId); + foundService = await api.getServiceByServiceId(serviceId!); } return { diff --git a/plugins/pagerduty/src/hooks/index.ts b/plugins/pagerduty/src/hooks/index.ts index a5fa462e02..503597a69e 100644 --- a/plugins/pagerduty/src/hooks/index.ts +++ b/plugins/pagerduty/src/hooks/index.ts @@ -15,13 +15,14 @@ */ import { useEntity } from '@backstage/plugin-catalog-react'; +import { PagerDutyEntity } from '../types'; import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID, } from '../components/constants'; -export function usePagerdutyEntity() { +export function usePagerdutyEntity(): PagerDutyEntity { const { entity } = useEntity(); const { [PAGERDUTY_INTEGRATION_KEY]: integrationKey, From 4d755224cc572b7440a0c3f29f5102e41b7e8293 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 14:30:22 -0700 Subject: [PATCH 438/550] feat(plugins/pagerduty): add getServiceByEntity client function Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.test.ts | 359 +++++++++++++++++++++++ plugins/pagerduty/src/api/client.ts | 32 ++ plugins/pagerduty/src/api/types.ts | 9 + 3 files changed, 400 insertions(+) create mode 100644 plugins/pagerduty/src/api/client.test.ts diff --git a/plugins/pagerduty/src/api/client.test.ts b/plugins/pagerduty/src/api/client.test.ts new file mode 100644 index 0000000000..d3e9b58542 --- /dev/null +++ b/plugins/pagerduty/src/api/client.test.ts @@ -0,0 +1,359 @@ +/* + * Copyright 2020 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 { MockFetchApi } from '@backstage/test-utils'; +import { DiscoveryApi } from '@backstage/core-plugin-api'; +import { PagerDutyClient, UnauthorizedError } from './client'; +import { PagerDutyEntity } from '../types'; +import { Service, User } from '../components/types'; +import { NotFoundError } from '@backstage/errors'; + +const mockFetch = jest.fn().mockName('fetch'); +const mockDiscoveryApi: jest.Mocked = { + getBaseUrl: jest + .fn() + .mockName('discoveryApi') + .mockResolvedValue('http://localhost:7007/proxy'), +}; +const mockFetchApi: MockFetchApi = new MockFetchApi({ + baseImplementation: mockFetch, +}); + +let client: PagerDutyClient; +let pagerDutyEntity: PagerDutyEntity; + +const user: User = { + name: 'person1', + id: 'p1', + summary: 'person1', + email: 'person1@example.com', + html_url: 'http://a.com/id1', +}; + +const service: Service = { + id: 'def456', + name: 'pagerduty-name', + html_url: 'www.example.com', + escalation_policy: { + id: 'def', + user: user, + html_url: 'http://a.com/id1', + }, + integrationKey: 'abc123', +}; + +const requestHeaders = { + headers: { + Accept: 'application/vnd.pagerduty+json;version=2', + 'Content-Type': 'application/json', + }, + method: 'GET', +}; + +describe('PagerDutyClient', () => { + beforeEach(() => { + mockFetch.mockReset(); + + client = new PagerDutyClient({ + eventsBaseUrl: 'https://events.pagerduty.com/v2', + discoveryApi: mockDiscoveryApi, + fetchApi: mockFetchApi, + }); + }); + + describe('getServiceByEntity', () => { + describe('when provided entity has an integrationKey value', () => { + beforeEach(() => { + pagerDutyEntity = { + name: 'pagerduty-test', + integrationKey: 'abc123', + }; + }); + + it('queries proxy path by integration id', async () => { + mockFetch.mockResolvedValueOnce({ + status: 200, + ok: true, + json: () => Promise.resolve({ services: [service] }), + }); + + expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + service, + }); + expect(mockFetch).toHaveBeenCalledWith( + 'http://localhost:7007/proxy/pagerduty/services?time_zone=UTC&include[]=integrations&include[]=escalation_policies&query=abc123', + requestHeaders, + ); + }); + + describe('on 401 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 401, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws UnauthorizedError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(UnauthorizedError); + }); + }); + + describe('on 404 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 404, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + }); + }); + + describe('on other non-ok response', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 500, + ok: false, + json: () => + Promise.resolve({ + errors: ['Not valid request', 'internal error occurred'], + }), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError( + 'Request failed with 500, Not valid request internal error occurred', + ); + }); + }); + + describe('when services response is empty', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 200, + ok: true, + json: () => Promise.resolve({ services: [] }), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + }); + }); + }); + + describe('when provided entity has a serviceId value', () => { + beforeEach(() => { + pagerDutyEntity = { + name: 'pagerduty-test', + serviceId: 'def456', + }; + }); + + it('queries proxy path by integration id', async () => { + mockFetch.mockResolvedValueOnce({ + status: 200, + ok: true, + json: () => Promise.resolve({ service }), + }); + + expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + service, + }); + expect(mockFetch).toHaveBeenCalledWith( + 'http://localhost:7007/proxy/pagerduty/services/def456?time_zone=UTC&include[]=integrations&include[]=escalation_policies', + requestHeaders, + ); + }); + + describe('on 401 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 401, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws UnauthorizedError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(UnauthorizedError); + }); + }); + + describe('on 404 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 404, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + }); + }); + + describe('on other non-ok response', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 500, + ok: false, + json: () => + Promise.resolve({ + errors: ['Not valid request', 'internal error occurred'], + }), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError( + 'Request failed with 500, Not valid request internal error occurred', + ); + }); + }); + }); + + describe('when provided entity has both integrationKey and serviceId', () => { + beforeEach(() => { + pagerDutyEntity = { + name: 'pagerduty-test', + integrationKey: 'abc123', + serviceId: 'def456', + }; + }); + + it('queries proxy path by integration id', async () => { + mockFetch.mockResolvedValueOnce({ + status: 200, + ok: true, + json: () => Promise.resolve({ services: [service] }), + }); + + expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + service, + }); + expect(mockFetch).toHaveBeenCalledWith( + 'http://localhost:7007/proxy/pagerduty/services?time_zone=UTC&include[]=integrations&include[]=escalation_policies&query=abc123', + requestHeaders, + ); + }); + + describe('on 401 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 401, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws UnauthorizedError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(UnauthorizedError); + }); + }); + + describe('on 404 response code', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 404, + ok: false, + json: () => Promise.resolve({}), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + }); + }); + + describe('on other non-ok response', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 500, + ok: false, + json: () => + Promise.resolve({ + errors: ['Not valid request', 'internal error occurred'], + }), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError( + 'Request failed with 500, Not valid request internal error occurred', + ); + }); + }); + + describe('when services response is empty', () => { + beforeEach(() => { + mockFetch.mockResolvedValueOnce({ + status: 200, + ok: true, + json: () => Promise.resolve({ services: [] }), + }); + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + }); + }); + }); + + describe('when provided entity has no integrationKey or serviceId values', () => { + beforeEach(() => { + pagerDutyEntity = { + name: 'pagerduty-test', + }; + }); + + it('throws NotFoundError', async () => { + await expect( + client.getServiceByEntity(pagerDutyEntity), + ).rejects.toThrowError(NotFoundError); + expect(mockFetch).not.toHaveBeenCalled(); + }); + }); + }); +}); diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 9bfd6a5594..e6f4eb4aef 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -29,6 +29,7 @@ import { } from './types'; import { createApiRef, ConfigApi } from '@backstage/core-plugin-api'; import { NotFoundError } from '@backstage/errors'; +import { PagerDutyEntity } from '../types'; export class UnauthorizedError extends Error {} @@ -76,6 +77,37 @@ export class PagerDutyClient implements PagerDutyApi { return service; } + async getServiceByEntity( + pagerDutyEntity: PagerDutyEntity, + ): Promise { + const { integrationKey, serviceId } = pagerDutyEntity; + + let response: ServiceResponse; + let url: string; + + if (integrationKey) { + url = `${await this.config.discoveryApi.getBaseUrl( + 'proxy', + )}/pagerduty/services?${commonGetServiceParams}&query=${integrationKey}`; + const { services } = await this.getByUrl(url); + const service = services[0]; + + if (!service) throw new NotFoundError(); + + response = { service }; + } else if (serviceId) { + url = `${await this.config.discoveryApi.getBaseUrl( + 'proxy', + )}/pagerduty/services/${serviceId}?${commonGetServiceParams}`; + + response = await this.getByUrl(url); + } else { + throw new NotFoundError(); + } + + return response; + } + async getIncidentsByServiceId(serviceId: string): Promise { const params = `time_zone=UTC&sort_by=created_at&statuses[]=triggered&statuses[]=acknowledged&service_ids[]=${serviceId}`; const url = `${await this.config.discoveryApi.getBaseUrl( diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 4f80d39816..a0736304f0 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -16,6 +16,7 @@ import { Incident, ChangeEvent, OnCall, Service } from '../components/types'; import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; +import { PagerDutyEntity } from '../types'; export type TriggerAlarmRequest = { integrationKey: string; @@ -37,6 +38,14 @@ export interface PagerDutyApi { */ getServiceByServiceId(serviceId: string): Promise; + /** + * Fetches the service for the provided PagerDutyEntity. + * + */ + getServiceByEntity( + pagerDutyEntity: PagerDutyEntity, + ): Promise; + /** * Fetches a list of incidents a provided service has. * From 71cc97f207760d2cf6ad402c7e771e9c20eca362 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 15:13:02 -0700 Subject: [PATCH 439/550] feat(plugins/pagerduty): refactor to use PagerDutyClient.getServiceByEntity Signed-off-by: Alec Jacobs --- .../components/PagerDutyCard/index.test.tsx | 58 ++++++------------- .../src/components/PagerDutyCard/index.tsx | 19 ++---- 2 files changed, 23 insertions(+), 54 deletions(-) diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index fbb19c9897..68eea5990c 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -90,8 +90,7 @@ const service: Service = { }; const mockPagerDutyApi: Partial = { - getServiceByIntegrationKey: async () => [], - getServiceByServiceId: async () => service, + getServiceByEntity: async () => ({ service }), getOnCallByPolicyId: async () => [], getIncidentsByServiceId: async () => [], }; @@ -129,9 +128,9 @@ describe('isPluginApplicableToEntity', () => { describe('PageDutyCard', () => { it('Render pagerduty', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() - .mockImplementationOnce(async () => [service]); + .mockImplementationOnce(async () => ({ service })); const { getByText, queryByTestId } = render( wrapInTestApp( @@ -150,7 +149,7 @@ describe('PageDutyCard', () => { }); it('Handles custom error for missing token', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new UnauthorizedError()); @@ -168,7 +167,7 @@ describe('PageDutyCard', () => { }); it('Handles custom NotFoundError', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new NotFoundError()); @@ -186,7 +185,7 @@ describe('PageDutyCard', () => { }); it('handles general error', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new Error('An error occurred')); const { getByText, queryByTestId } = render( @@ -207,28 +206,10 @@ describe('PageDutyCard', () => { ).toBeInTheDocument(); }); - it('handles empty response from getServiceByIntegrationKey', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest - .fn() - .mockImplementationOnce(async () => []); - - const { getByText, queryByTestId } = render( - wrapInTestApp( - - - - - , - ), - ); - await waitFor(() => !queryByTestId('progress')); - expect(getByText('PagerDuty Service Not Found')).toBeInTheDocument(); - }); - it('opens the dialog when trigger button is clicked', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() - .mockImplementationOnce(async () => [service]); + .mockImplementationOnce(async () => ({ service })); const { getByText, queryByTestId, getByRole } = render( wrapInTestApp( @@ -251,9 +232,9 @@ describe('PageDutyCard', () => { describe('when entity has the pagerduty.com/service-id annotation', () => { it('Renders PagerDuty service information', async () => { - mockPagerDutyApi.getServiceByServiceId = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() - .mockImplementationOnce(async () => service); + .mockImplementationOnce(async () => ({ service })); const { getByText, queryByTestId } = render( wrapInTestApp( @@ -272,7 +253,7 @@ describe('PageDutyCard', () => { }); it('Handles custom error for missing token', async () => { - mockPagerDutyApi.getServiceByServiceId = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new UnauthorizedError()); @@ -292,7 +273,7 @@ describe('PageDutyCard', () => { }); it('Handles custom NotFoundError', async () => { - mockPagerDutyApi.getServiceByServiceId = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new NotFoundError()); @@ -310,7 +291,7 @@ describe('PageDutyCard', () => { }); it('handles general error', async () => { - mockPagerDutyApi.getServiceByServiceId = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() .mockRejectedValueOnce(new Error('An error occurred')); const { getByText, queryByTestId } = render( @@ -332,9 +313,9 @@ describe('PageDutyCard', () => { }); it('disables the Create Incident button', async () => { - mockPagerDutyApi.getServiceByServiceId = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() - .mockImplementationOnce(async () => service); + .mockImplementationOnce(async () => ({ service })); const { queryByTestId, getByTitle } = render( wrapInTestApp( @@ -346,7 +327,6 @@ describe('PageDutyCard', () => { ), ); await waitFor(() => !queryByTestId('progress')); - expect(queryByTestId('trigger-dialoger')).not.toBeInTheDocument(); expect( getByTitle('Must provide an integration-key to create incidents') .className, @@ -356,22 +336,20 @@ describe('PageDutyCard', () => { describe('when entity has all annotations', () => { it('queries by integration key', async () => { - mockPagerDutyApi.getServiceByIntegrationKey = jest + mockPagerDutyApi.getServiceByEntity = jest .fn() - .mockImplementationOnce(async () => [service]); - mockPagerDutyApi.getServiceByServiceId = jest.fn(); + .mockImplementationOnce(async () => ({ service })); const { getByText, queryByTestId } = render( wrapInTestApp( - + , ), ); await waitFor(() => !queryByTestId('progress')); - expect(mockPagerDutyApi.getServiceByServiceId).not.toHaveBeenCalled(); expect(getByText('Service Directory')).toBeInTheDocument(); expect(getByText('Create Incident')).toBeInTheDocument(); expect(getByText('Nice! No incidents found!')).toBeInTheDocument(); diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index e089cf817c..174caf4900 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -29,7 +29,6 @@ import { usePagerdutyEntity } from '../../hooks'; import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID } from '../constants'; import { TriggerDialog } from '../TriggerDialog'; import { ChangeEvents } from '../ChangeEvents'; -import { Service } from '../types'; import { useApi } from '@backstage/core-plugin-api'; import { NotFoundError } from '@backstage/errors'; @@ -53,7 +52,7 @@ export const isPluginApplicableToEntity = (entity: Entity) => ); export const PagerDutyCard = () => { - const { integrationKey, serviceId } = usePagerdutyEntity(); + const pagerDutyEntity = usePagerdutyEntity(); const api = useApi(pagerDutyApiRef); const [refreshIncidents, setRefreshIncidents] = useState(false); const [refreshChangeEvents, setRefreshChangeEvents] = @@ -77,17 +76,9 @@ export const PagerDutyCard = () => { loading, error, } = useAsync(async () => { - let foundService: Service; - - if (integrationKey) { - const services = await api.getServiceByIntegrationKey( - integrationKey as string, - ); - foundService = services[0]; - if (!foundService) throw new NotFoundError(); - } else { - foundService = await api.getServiceByServiceId(serviceId!); - } + const { service: foundService } = await api.getServiceByEntity( + pagerDutyEntity, + ); return { id: foundService.id, @@ -138,7 +129,7 @@ export const PagerDutyCard = () => { * There is no guarantee the current user entity has a valid email association, so instead just * only allow triggering incidents when an integration key is present. */ - const createIncidentDisabled = !integrationKey; + const createIncidentDisabled = !pagerDutyEntity.integrationKey; const triggerLink: IconLinkVerticalProps = { label: 'Create Incident', onClick: showDialog, From 8fe1113c96468277217cc59f9d886babc779aedb Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 15:14:53 -0700 Subject: [PATCH 440/550] feat(plugins/pagerduty): remove unused getServiceByServiceId Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 10 ---------- plugins/pagerduty/src/api/types.ts | 6 ------ 2 files changed, 16 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index e6f4eb4aef..50428e0a18 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -67,16 +67,6 @@ export class PagerDutyClient implements PagerDutyApi { return services; } - async getServiceByServiceId(serviceId: string): Promise { - const params = commonGetServiceParams; - const url = `${await this.config.discoveryApi.getBaseUrl( - 'proxy', - )}/pagerduty/services/${serviceId}?${params}`; - const { service } = await this.getByUrl(url); - - return service; - } - async getServiceByEntity( pagerDutyEntity: PagerDutyEntity, ): Promise { diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index a0736304f0..421a0f9772 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -32,12 +32,6 @@ export interface PagerDutyApi { */ getServiceByIntegrationKey(integrationKey: string): Promise; - /** - * Fetches the service for the provided service id. - * - */ - getServiceByServiceId(serviceId: string): Promise; - /** * Fetches the service for the provided PagerDutyEntity. * From 9b8438fd7216cffe8376213b9ee454c0e126e14b Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 15:15:29 -0700 Subject: [PATCH 441/550] feat(plugins/pagerduty): remove unused getServiceByIntegrationKey Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 10 ---------- plugins/pagerduty/src/api/types.ts | 6 ------ 2 files changed, 16 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 50428e0a18..50d9c7cdd9 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -57,16 +57,6 @@ export class PagerDutyClient implements PagerDutyApi { } constructor(private readonly config: ClientApiConfig) {} - async getServiceByIntegrationKey(integrationKey: string): Promise { - const params = `${commonGetServiceParams}&query=${integrationKey}`; - const url = `${await this.config.discoveryApi.getBaseUrl( - 'proxy', - )}/pagerduty/services?${params}`; - const { services } = await this.getByUrl(url); - - return services; - } - async getServiceByEntity( pagerDutyEntity: PagerDutyEntity, ): Promise { diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 421a0f9772..8ec95c285b 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -26,12 +26,6 @@ export type TriggerAlarmRequest = { }; export interface PagerDutyApi { - /** - * Fetches a list of services, filtered by the provided integration key. - * - */ - getServiceByIntegrationKey(integrationKey: string): Promise; - /** * Fetches the service for the provided PagerDutyEntity. * From 206fc1f60199ad0fd9042761a072fcaff40ef5ce Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 15:27:48 -0700 Subject: [PATCH 442/550] feat(plugins/pagerduty): update getIncidentsByServiceId response to be Promise Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 5 ++--- plugins/pagerduty/src/api/types.ts | 2 +- .../src/components/Incident/Incidents.test.tsx | 11 ++++++----- .../pagerduty/src/components/Incident/Incidents.tsx | 7 ++++++- .../src/components/PagerDutyCard/index.test.tsx | 2 +- 5 files changed, 16 insertions(+), 11 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 50d9c7cdd9..ac5afdae79 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -88,14 +88,13 @@ export class PagerDutyClient implements PagerDutyApi { return response; } - async getIncidentsByServiceId(serviceId: string): Promise { + async getIncidentsByServiceId(serviceId: string): Promise { const params = `time_zone=UTC&sort_by=created_at&statuses[]=triggered&statuses[]=acknowledged&service_ids[]=${serviceId}`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/incidents?${params}`; - const { incidents } = await this.getByUrl(url); - return incidents; + return await this.getByUrl(url); } async getChangeEventsByServiceId(serviceId: string): Promise { diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 8ec95c285b..9ecd233bab 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -38,7 +38,7 @@ export interface PagerDutyApi { * Fetches a list of incidents a provided service has. * */ - getIncidentsByServiceId(serviceId: string): Promise; + getIncidentsByServiceId(serviceId: string): Promise; /** * Fetches a list of change events a provided service has. diff --git a/plugins/pagerduty/src/components/Incident/Incidents.test.tsx b/plugins/pagerduty/src/components/Incident/Incidents.test.tsx index 74e7d82e8b..ad69bc083e 100644 --- a/plugins/pagerduty/src/components/Incident/Incidents.test.tsx +++ b/plugins/pagerduty/src/components/Incident/Incidents.test.tsx @@ -30,7 +30,7 @@ describe('Incidents', () => { it('Renders an empty state when there are no incidents', async () => { mockPagerDutyApi.getIncidentsByServiceId = jest .fn() - .mockImplementationOnce(async () => []); + .mockImplementationOnce(async () => ({ incidents: [] })); const { getByText, queryByTestId } = render( wrapInTestApp( @@ -44,9 +44,10 @@ describe('Incidents', () => { }); it('Renders all incidents', async () => { - mockPagerDutyApi.getIncidentsByServiceId = jest.fn().mockImplementationOnce( - async () => - [ + mockPagerDutyApi.getIncidentsByServiceId = jest + .fn() + .mockImplementationOnce(async () => ({ + incidents: [ { id: 'id1', status: 'triggered', @@ -83,7 +84,7 @@ describe('Incidents', () => { serviceId: 'sId2', }, ] as Incident[], - ); + })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( diff --git a/plugins/pagerduty/src/components/Incident/Incidents.tsx b/plugins/pagerduty/src/components/Incident/Incidents.tsx index 06dd50bdaa..2e0e201c79 100644 --- a/plugins/pagerduty/src/components/Incident/Incidents.tsx +++ b/plugins/pagerduty/src/components/Incident/Incidents.tsx @@ -34,7 +34,12 @@ export const Incidents = ({ serviceId, refreshIncidents }: Props) => { const api = useApi(pagerDutyApiRef); const [{ value: incidents, loading, error }, getIncidents] = useAsyncFn( - async () => await api.getIncidentsByServiceId(serviceId), + async () => { + const { incidents: foundIncidents } = await api.getIncidentsByServiceId( + serviceId, + ); + return foundIncidents; + }, ); useEffect(() => { diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 68eea5990c..dce1bb536a 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -92,7 +92,7 @@ const service: Service = { const mockPagerDutyApi: Partial = { getServiceByEntity: async () => ({ service }), getOnCallByPolicyId: async () => [], - getIncidentsByServiceId: async () => [], + getIncidentsByServiceId: async () => ({ incidents: [] }), }; const apis = TestApiRegistry.from( From 7378e1710cb3430d33b4a163a8a2b0afdecd43c5 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 16:59:59 -0700 Subject: [PATCH 443/550] feat(plugins/pagerduty): update getChangeEventsByServiceId response to be Promise Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 8 +- plugins/pagerduty/src/api/types.ts | 2 +- .../ChangeEvents/ChangeEvents.test.tsx | 122 +++++++++--------- .../components/ChangeEvents/ChangeEvents.tsx | 5 +- 4 files changed, 69 insertions(+), 68 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index ac5afdae79..bf6835ec2a 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -97,15 +97,15 @@ export class PagerDutyClient implements PagerDutyApi { return await this.getByUrl(url); } - async getChangeEventsByServiceId(serviceId: string): Promise { + async getChangeEventsByServiceId( + serviceId: string, + ): Promise { const params = `limit=5&time_zone=UTC&sort_by=timestamp`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/services/${serviceId}/change_events?${params}`; - const { change_events } = await this.getByUrl(url); - - return change_events; + return await this.getByUrl(url); } async getOnCallByPolicyId(policyId: string): Promise { diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 9ecd233bab..8914c4ed97 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -44,7 +44,7 @@ export interface PagerDutyApi { * Fetches a list of change events a provided service has. * */ - getChangeEventsByServiceId(serviceId: string): Promise; + getChangeEventsByServiceId(serviceId: string): Promise; /** * Fetches the list of users in an escalation policy. diff --git a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx index fca2422198..017e394de0 100644 --- a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx +++ b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx @@ -30,7 +30,7 @@ describe('Incidents', () => { it('Renders an empty state when there are no change events', async () => { mockPagerDutyApi.getChangeEventsByServiceId = jest .fn() - .mockImplementationOnce(async () => []); + .mockImplementationOnce(async () => ({ change_events: [] })); const { getByText, queryByTestId } = render( wrapInTestApp( @@ -46,37 +46,36 @@ describe('Incidents', () => { it('Renders all change events', async () => { mockPagerDutyApi.getChangeEventsByServiceId = jest .fn() - .mockImplementationOnce( - async () => - [ - { - id: 'id1', - source: 'changeSource1', - html_url: 'www.pdlink.com', - links: [ - { - href: 'www.externalLink1.com', - text: 'link1', - }, - ], - summary: 'summary of event', - timestamp: '2020-07-17T08:42:58.315+0000', - }, - { - id: 'id2', - source: 'changeSource1', - html_url: 'www.pdlink.com/link', - links: [ - { - href: 'www.externalLink1.com', - text: 'link1', - }, - ], - summary: 'sum of EVENT', - timestamp: '2020-07-18T08:42:58.315+0000', - }, - ] as ChangeEvent[], - ); + .mockImplementationOnce(async () => ({ + change_events: [ + { + id: 'id1', + source: 'changeSource1', + html_url: 'www.pdlink.com', + links: [ + { + href: 'www.externalLink1.com', + text: 'link1', + }, + ], + summary: 'summary of event', + timestamp: '2020-07-17T08:42:58.315+0000', + }, + { + id: 'id2', + source: 'changeSource1', + html_url: 'www.pdlink.com/link', + links: [ + { + href: 'www.externalLink1.com', + text: 'link1', + }, + ], + summary: 'sum of EVENT', + timestamp: '2020-07-18T08:42:58.315+0000', + }, + ] as ChangeEvent[], + })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( @@ -95,36 +94,35 @@ describe('Incidents', () => { it('Does not render a pagerduty link when html_url is not present in response', async () => { mockPagerDutyApi.getChangeEventsByServiceId = jest .fn() - .mockImplementationOnce( - async () => - [ - { - id: 'id1', - source: 'changeSource1', - links: [ - { - href: 'www.externalLink1.com', - text: 'link1', - }, - ], - summary: 'summary of event', - timestamp: '2020-07-17T08:42:58.315+0000', - }, - { - id: 'id2', - source: 'changeSource1', - html_url: 'www.pdlink.com/link', - links: [ - { - href: 'www.externalLink1.com', - text: 'link1', - }, - ], - summary: 'sum of EVENT', - timestamp: '2020-07-18T08:42:58.315+0000', - }, - ] as ChangeEvent[], - ); + .mockImplementationOnce(async () => ({ + change_events: [ + { + id: 'id1', + source: 'changeSource1', + links: [ + { + href: 'www.externalLink1.com', + text: 'link1', + }, + ], + summary: 'summary of event', + timestamp: '2020-07-17T08:42:58.315+0000', + }, + { + id: 'id2', + source: 'changeSource1', + html_url: 'www.pdlink.com/link', + links: [ + { + href: 'www.externalLink1.com', + text: 'link1', + }, + ], + summary: 'sum of EVENT', + timestamp: '2020-07-18T08:42:58.315+0000', + }, + ] as ChangeEvent[], + })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( diff --git a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.tsx b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.tsx index 58b4dd6acf..4b19257cdc 100644 --- a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.tsx +++ b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.tsx @@ -33,7 +33,10 @@ export const ChangeEvents = ({ serviceId, refreshEvents }: Props) => { const api = useApi(pagerDutyApiRef); const [{ value: changeEvents, loading, error }, getChangeEvents] = useAsyncFn( - async () => await api.getChangeEventsByServiceId(serviceId), + async () => { + const { change_events } = await api.getChangeEventsByServiceId(serviceId); + return change_events; + }, ); useEffect(() => { From 48a7d96e7270fdce9728823b1d864aa9f2c9e221 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 17:05:34 -0700 Subject: [PATCH 444/550] feat(plugins/pagerduty): update getOnCallByPolicyId response to be Promise Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 5 ++-- plugins/pagerduty/src/api/types.ts | 2 +- .../components/Escalation/Escalation.test.tsx | 26 ++++++++++--------- .../Escalation/EscalationPolicy.tsx | 2 +- .../components/PagerDutyCard/index.test.tsx | 2 +- 5 files changed, 19 insertions(+), 18 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index bf6835ec2a..7f9f3d6c59 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -108,14 +108,13 @@ export class PagerDutyClient implements PagerDutyApi { return await this.getByUrl(url); } - async getOnCallByPolicyId(policyId: string): Promise { + async getOnCallByPolicyId(policyId: string): Promise { const params = `time_zone=UTC&include[]=users&escalation_policy_ids[]=${policyId}`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/oncalls?${params}`; - const { oncalls } = await this.getByUrl(url); - return oncalls; + return await this.getByUrl(url); } triggerAlarm(request: TriggerAlarmRequest): Promise { diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 8914c4ed97..d2ab0290d3 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -50,7 +50,7 @@ export interface PagerDutyApi { * Fetches the list of users in an escalation policy. * */ - getOnCallByPolicyId(policyId: string): Promise; + getOnCallByPolicyId(policyId: string): Promise; /** * Triggers an incident to whoever is on-call. diff --git a/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx b/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx index 47f18002fe..33e8865f59 100644 --- a/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx +++ b/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx @@ -30,7 +30,7 @@ describe('Escalation', () => { it('Handles an empty response', async () => { mockPagerDutyApi.getOnCallByPolicyId = jest .fn() - .mockImplementationOnce(async () => []); + .mockImplementationOnce(async () => ({ oncalls: [] })); const { getByText, queryByTestId } = render( wrapInTestApp( @@ -48,17 +48,19 @@ describe('Escalation', () => { it('Render a list of users', async () => { mockPagerDutyApi.getOnCallByPolicyId = jest .fn() - .mockImplementationOnce(async () => [ - { - user: { - name: 'person1', - id: 'p1', - summary: 'person1', - email: 'person1@example.com', - html_url: 'http://a.com/id1', - } as User, - }, - ]); + .mockImplementationOnce(async () => ({ + oncalls: [ + { + user: { + name: 'person1', + id: 'p1', + summary: 'person1', + email: 'person1@example.com', + html_url: 'http://a.com/id1', + } as User, + }, + ], + })); const { getByText, queryByTestId } = render( wrapInTestApp( diff --git a/plugins/pagerduty/src/components/Escalation/EscalationPolicy.tsx b/plugins/pagerduty/src/components/Escalation/EscalationPolicy.tsx index 704887be58..8602733ee3 100644 --- a/plugins/pagerduty/src/components/Escalation/EscalationPolicy.tsx +++ b/plugins/pagerduty/src/components/Escalation/EscalationPolicy.tsx @@ -37,7 +37,7 @@ export const EscalationPolicy = ({ policyId }: Props) => { loading, error, } = useAsync(async () => { - const oncalls = await api.getOnCallByPolicyId(policyId); + const { oncalls } = await api.getOnCallByPolicyId(policyId); const usersItem = oncalls .sort((a, b) => a.escalation_level - b.escalation_level) .map(oncall => oncall.user); diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index dce1bb536a..9a6e9a3ed2 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -91,7 +91,7 @@ const service: Service = { const mockPagerDutyApi: Partial = { getServiceByEntity: async () => ({ service }), - getOnCallByPolicyId: async () => [], + getOnCallByPolicyId: async () => ({ oncalls: [] }), getIncidentsByServiceId: async () => ({ incidents: [] }), }; From 0be087f637a58c382930e26d9f3b3b7c72e1b52e Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 17:07:32 -0700 Subject: [PATCH 445/550] fix(plugins/pagerduty): define responses types before utilizing them Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.ts | 1 - plugins/pagerduty/src/api/types.ts | 40 ++++++++++++++--------------- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index 7f9f3d6c59..ebf350add2 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -14,7 +14,6 @@ * limitations under the License. */ -import { Service, Incident, ChangeEvent, OnCall } from '../components/types'; import { PagerDutyApi, TriggerAlarmRequest, diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index d2ab0290d3..ed6c1f222a 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -18,6 +18,26 @@ import { Incident, ChangeEvent, OnCall, Service } from '../components/types'; import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; import { PagerDutyEntity } from '../types'; +export type ServicesResponse = { + services: Service[]; +}; + +export type ServiceResponse = { + service: Service; +}; + +export type IncidentsResponse = { + incidents: Incident[]; +}; + +export type ChangeEventsResponse = { + change_events: ChangeEvent[]; +}; + +export type OnCallsResponse = { + oncalls: OnCall[]; +}; + export type TriggerAlarmRequest = { integrationKey: string; source: string; @@ -58,26 +78,6 @@ export interface PagerDutyApi { triggerAlarm(request: TriggerAlarmRequest): Promise; } -export type ServicesResponse = { - services: Service[]; -}; - -export type ServiceResponse = { - service: Service; -}; - -export type IncidentsResponse = { - incidents: Incident[]; -}; - -export type ChangeEventsResponse = { - change_events: ChangeEvent[]; -}; - -export type OnCallsResponse = { - oncalls: OnCall[]; -}; - export type ClientApiDependencies = { discoveryApi: DiscoveryApi; fetchApi: FetchApi; From f22f6050b4fcfada1823953afa83887fd752a748 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 17:31:01 -0700 Subject: [PATCH 446/550] feat(plugins/pagerduty): ensure proper types are exported and regenerate api-report Signed-off-by: Alec Jacobs --- plugins/pagerduty/api-report.md | 170 +++++++++++++++++++--- plugins/pagerduty/src/api/index.ts | 10 +- plugins/pagerduty/src/components/index.ts | 32 ++++ plugins/pagerduty/src/index.ts | 16 +- 4 files changed, 197 insertions(+), 31 deletions(-) create mode 100644 plugins/pagerduty/src/components/index.ts diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index c708a1ca4e..dd6155521b 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -13,11 +13,88 @@ import { Entity } from '@backstage/catalog-model'; import { FetchApi } from '@backstage/core-plugin-api'; import { ReactNode } from 'react'; +// Warning: (ae-missing-release-tag) "Assignee" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type Assignee = { + id: string; + summary: string; + html_url: string; +}; + +// Warning: (ae-missing-release-tag) "ChangeEvent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type ChangeEvent = { + id: string; + integration: [ + { + service: Service; + }, + ]; + source: string; + html_url: string; + links: [ + { + href: string; + text: string; + }, + ]; + summary: string; + timestamp: string; +}; + +// Warning: (ae-missing-release-tag) "ChangeEventsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type ChangeEventsResponse = { + change_events: ChangeEvent[]; +}; + +// Warning: (ae-missing-release-tag) "ClientApiConfig" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type ClientApiConfig = ClientApiDependencies & { + eventsBaseUrl?: string; +}; + +// Warning: (ae-missing-release-tag) "ClientApiDependencies" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type ClientApiDependencies = { + discoveryApi: DiscoveryApi; + fetchApi: FetchApi; +}; + // Warning: (ae-missing-release-tag) "EntityPagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) export const EntityPagerDutyCard: () => JSX.Element; +// Warning: (ae-missing-release-tag) "Incident" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type Incident = { + id: string; + title: string; + status: string; + html_url: string; + assignments: [ + { + assignee: Assignee; + }, + ]; + serviceId: string; + created_at: string; +}; + +// Warning: (ae-missing-release-tag) "IncidentsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type IncidentsResponse = { + incidents: Incident[]; +}; + // Warning: (ae-missing-release-tag) "isPluginApplicableToEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -25,6 +102,21 @@ const isPluginApplicableToEntity: (entity: Entity) => boolean; export { isPluginApplicableToEntity as isPagerDutyAvailable }; export { isPluginApplicableToEntity }; +// Warning: (ae-missing-release-tag) "OnCall" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type OnCall = { + user: User; + escalation_level: number; +}; + +// Warning: (ae-missing-release-tag) "OnCallsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type OnCallsResponse = { + oncalls: OnCall[]; +}; + // Warning: (ae-forgotten-export) The symbol "PagerDutyApi" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "pagerDutyApiRef" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -40,38 +132,35 @@ export const PagerDutyCard: () => JSX.Element; // // @public (undocumented) export class PagerDutyClient implements PagerDutyApi { - // Warning: (ae-forgotten-export) The symbol "ClientApiConfig" needs to be exported by the entry point index.d.ts constructor(config: ClientApiConfig); // (undocumented) static fromConfig( configApi: ConfigApi, - discoveryApi: DiscoveryApi, - fetchApi: FetchApi, + { discoveryApi, fetchApi }: ClientApiDependencies, ): PagerDutyClient; - // Warning: (ae-forgotten-export) The symbol "ChangeEvent" needs to be exported by the entry point index.d.ts - // // (undocumented) - getChangeEventsByServiceId(serviceId: string): Promise; - // Warning: (ae-forgotten-export) The symbol "Incident" needs to be exported by the entry point index.d.ts - // + getChangeEventsByServiceId(serviceId: string): Promise; // (undocumented) - getIncidentsByServiceId(serviceId: string): Promise; - // Warning: (ae-forgotten-export) The symbol "OnCall" needs to be exported by the entry point index.d.ts - // + getIncidentsByServiceId(serviceId: string): Promise; // (undocumented) - getOnCallByPolicyId(policyId: string): Promise; - // Warning: (ae-forgotten-export) The symbol "Service" needs to be exported by the entry point index.d.ts - // + getOnCallByPolicyId(policyId: string): Promise; // (undocumented) - getServiceByIntegrationKey(integrationKey: string): Promise; - // (undocumented) - getServiceByServiceId(serviceId: string): Promise; - // Warning: (ae-forgotten-export) The symbol "TriggerAlarmRequest" needs to be exported by the entry point index.d.ts - // + getServiceByEntity( + pagerDutyEntity: PagerDutyEntity, + ): Promise; // (undocumented) triggerAlarm(request: TriggerAlarmRequest): Promise; } +// Warning: (ae-missing-release-tag) "PagerDutyEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyEntity = { + integrationKey?: string; + serviceId?: string; + name: string; +}; + // Warning: (ae-missing-release-tag) "pagerDutyPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -79,6 +168,38 @@ const pagerDutyPlugin: BackstagePlugin<{}, {}>; export { pagerDutyPlugin }; export { pagerDutyPlugin as plugin }; +// Warning: (ae-missing-release-tag) "Service" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type Service = { + id: string; + name: string; + html_url: string; + integrationKey: string; + escalation_policy: { + id: string; + user: User; + html_url: string; + }; +}; + +// Warning: (ae-missing-release-tag) "ServiceResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type ServiceResponse = { + service: Service; +}; + +// Warning: (ae-missing-release-tag) "TriggerAlarmRequest" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type TriggerAlarmRequest = { + integrationKey: string; + source: string; + description: string; + userName: string; +}; + // Warning: (ae-forgotten-export) The symbol "TriggerButtonProps" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "TriggerButton" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -89,4 +210,15 @@ export function TriggerButton(props: TriggerButtonProps): JSX.Element; // // @public (undocumented) export class UnauthorizedError extends Error {} + +// Warning: (ae-missing-release-tag) "User" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type User = { + id: string; + summary: string; + email: string; + html_url: string; + name: string; +}; ``` diff --git a/plugins/pagerduty/src/api/index.ts b/plugins/pagerduty/src/api/index.ts index 015204b1e8..a88137b979 100644 --- a/plugins/pagerduty/src/api/index.ts +++ b/plugins/pagerduty/src/api/index.ts @@ -15,4 +15,12 @@ */ export { PagerDutyClient, pagerDutyApiRef, UnauthorizedError } from './client'; -export type { PagerDutyApi } from './types'; +export type { + ServiceResponse, + IncidentsResponse, + ChangeEventsResponse, + OnCallsResponse, + TriggerAlarmRequest, + ClientApiDependencies, + ClientApiConfig, +} from './types'; diff --git a/plugins/pagerduty/src/components/index.ts b/plugins/pagerduty/src/components/index.ts new file mode 100644 index 0000000000..a452c12e12 --- /dev/null +++ b/plugins/pagerduty/src/components/index.ts @@ -0,0 +1,32 @@ +/* + * Copyright 2020 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 type { + ChangeEvent, + Incident, + Service, + OnCall, + Assignee, + User, +} from './types'; + +export { + isPluginApplicableToEntity, + isPluginApplicableToEntity as isPagerDutyAvailable, + PagerDutyCard, +} from './PagerDutyCard'; + +export { TriggerButton } from './TriggerButton'; diff --git a/plugins/pagerduty/src/index.ts b/plugins/pagerduty/src/index.ts index 8c970c01bb..2e0eddc9a8 100644 --- a/plugins/pagerduty/src/index.ts +++ b/plugins/pagerduty/src/index.ts @@ -25,14 +25,8 @@ export { pagerDutyPlugin as plugin, EntityPagerDutyCard, } from './plugin'; -export { - isPluginApplicableToEntity, - isPluginApplicableToEntity as isPagerDutyAvailable, - PagerDutyCard, -} from './components/PagerDutyCard'; -export { TriggerButton } from './components/TriggerButton'; -export { - PagerDutyClient, - pagerDutyApiRef, - UnauthorizedError, -} from './api/client'; + +export * from './components'; +export * from './api'; + +export type { PagerDutyEntity } from './types'; From 24511a3beb3f23959d0025cda1b618c163ca96f2 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 3 Jun 2022 17:42:49 -0700 Subject: [PATCH 447/550] chore: enhance changeset definition to call out all new breaking changes Signed-off-by: Alec Jacobs --- .changeset/weak-bananas-deliver.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.changeset/weak-bananas-deliver.md b/.changeset/weak-bananas-deliver.md index db76f396a8..2be1e87d29 100644 --- a/.changeset/weak-bananas-deliver.md +++ b/.changeset/weak-bananas-deliver.md @@ -5,9 +5,19 @@ Introduces a new annotation `pagerduty.com/service-id` that can be used instead of the `pagerduty.com/integration-key` annotation. _Note: If both annotations are specified on a given Entity, then the `pagerduty.com/integration-key` annotation will be prefered_ -**BREAKING** The `PagerDutyClient.fromConfig` static method now expects a `FetchApi` compatible object as a third argument. +**BREAKING** The `PagerDutyClient.fromConfig` static method now expects a `FetchApi` compatible object and has been refactored to +accept 2 arguments: config and ClientApiDependencies The `PagerDutyClient` now relies on a `fetchApi` being available to execute `fetch` requests. +**BREAKING** A new query method `getServiceByEntity` that is used to query for Services by either the `integrationKey` or `serviceId` +annotation values if they are defined. The `integrationKey` value is preferred currently over `serviceId`. As such, the previous +`getServiceByIntegrationKey` method has been removed. + +**BREAKING** The return values for each Client query method has been changed to return an object instead of raw values. +For example, the `getIncidentsByServiceId` query method now returns an object in the shape of `{ incidents: Incident[] }` +instead of just `Incident[]`. +This same pattern goes for `getChangeEventsByServiceId` and `getOnCallByPolicyId` functions. + In addition, various enhancements/bug fixes were introduced: - The `PagerDutyCard` component now wraps error and loading messages with an `InfoCard` to contain errors/messages. This enforces a consistent experience on the EntityPage From 67f4f1bcc6a38b644c99decd188b95fe109c4d12 Mon Sep 17 00:00:00 2001 From: Quentin Rousseau Date: Wed, 15 Jun 2022 09:00:41 -0700 Subject: [PATCH 448/550] Add Rootly plugin to marketplace Signed-off-by: Quentin Rousseau --- microsite/data/plugins/rootly.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 microsite/data/plugins/rootly.yaml diff --git a/microsite/data/plugins/rootly.yaml b/microsite/data/plugins/rootly.yaml new file mode 100644 index 0000000000..6c5cfdf715 --- /dev/null +++ b/microsite/data/plugins/rootly.yaml @@ -0,0 +1,9 @@ +--- +title: Rootly +author: Rootly +authorUrl: https://rootly.com/ +category: Incident Management +description: Import your Backstage entities into Rootly services and view incidents & analytics. +documentation: https://github.com/backstage/backstage/blob/master/plugins/rootly/README.md +iconUrl: https://raw.githubusercontent.com/backstage/backstage/master/plugins/rootly/doc/logo.png +npmPackageName: '@backstage/plugin-rootly' From 99b222eea502e9545172835a4ea1f2ceb63cd2f8 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 16:17:17 +0000 Subject: [PATCH 449/550] chore(deps): update dependency @types/node to v16.11.41 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 54c6f689de..200141f110 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6301,9 +6301,9 @@ integrity sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A== "@types/node@^16.0.0", "@types/node@^16.11.26", "@types/node@^16.9.2": - version "16.11.39" - resolved "https://registry.npmjs.org/@types/node/-/node-16.11.39.tgz#07223cd2bc332ad9d92135e3a522eebdee3b060e" - integrity sha512-K0MsdV42vPwm9L6UwhIxMAOmcvH/1OoVkZyCgEtVu4Wx7sElGloy/W7kMBNe/oJ7V/jW9BVt1F6RahH6e7tPXw== + version "16.11.41" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.41.tgz#88eb485b1bfdb4c224d878b7832239536aa2f813" + integrity sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ== "@types/normalize-package-data@^2.4.0": version "2.4.1" From bbf3e1393283e9ab82f1c1d5b07bf4ecdd1e849a Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 16:33:52 +0000 Subject: [PATCH 450/550] chore(deps): update dependency @types/semver to v7.3.10 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 11549172c3..43b5864306 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6624,9 +6624,9 @@ integrity sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA== "@types/semver@^7.3.8": - version "7.3.9" - resolved "https://registry.npmjs.org/@types/semver/-/semver-7.3.9.tgz#152c6c20a7688c30b967ec1841d31ace569863fc" - integrity sha512-L/TMpyURfBkf+o/526Zb6kd/tchUP3iBDEPjqjb+U2MAJhVRxxrmr2fwpe08E7QsV7YLcpq0tUaQ9O9x97ZIxQ== + version "7.3.10" + resolved "https://registry.npmjs.org/@types/semver/-/semver-7.3.10.tgz#5f19ee40cbeff87d916eedc8c2bfe2305d957f73" + integrity sha512-zsv3fsC7S84NN6nPK06u79oWgrPVd0NvOyqgghV1haPaFcVxIrP4DLomRwGAXk0ui4HZA7mOcSFL98sMVW9viw== "@types/serve-handler@^6.1.0": version "6.1.1" From 7d47e7e512fba82c1ea9ee74bb378909d6964b4f Mon Sep 17 00:00:00 2001 From: Phil Kuang Date: Wed, 15 Jun 2022 12:33:41 -0400 Subject: [PATCH 451/550] feat(adrs): track discover event and result rank in AdrSearchResultListItem Signed-off-by: Phil Kuang --- .changeset/thick-radios-drive.md | 5 +++++ plugins/adr/api-report.md | 2 ++ plugins/adr/src/search/AdrSearchResultListItem.tsx | 13 ++++++++++++- 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 .changeset/thick-radios-drive.md diff --git a/.changeset/thick-radios-drive.md b/.changeset/thick-radios-drive.md new file mode 100644 index 0000000000..130030be59 --- /dev/null +++ b/.changeset/thick-radios-drive.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-adr': patch +--- + +Track discover event and result rank for `AdrSearchResultListItem` diff --git a/plugins/adr/api-report.md b/plugins/adr/api-report.md index 61cf231784..fbe04b1dc4 100644 --- a/plugins/adr/api-report.md +++ b/plugins/adr/api-report.md @@ -47,10 +47,12 @@ export const AdrReader: { export const AdrSearchResultListItem: ({ lineClamp, highlight, + rank, result, }: { lineClamp?: number | undefined; highlight?: ResultHighlight | undefined; + rank?: number | undefined; result: AdrDocument; }) => JSX.Element; diff --git a/plugins/adr/src/search/AdrSearchResultListItem.tsx b/plugins/adr/src/search/AdrSearchResultListItem.tsx index 484bac336e..677e39fc11 100644 --- a/plugins/adr/src/search/AdrSearchResultListItem.tsx +++ b/plugins/adr/src/search/AdrSearchResultListItem.tsx @@ -24,6 +24,7 @@ import { makeStyles, } from '@material-ui/core'; import { Link } from '@backstage/core-components'; +import { useAnalytics } from '@backstage/core-plugin-api'; import { AdrDocument } from '@backstage/plugin-adr-common'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { HighlightedSearchResultText } from '@backstage/plugin-search-react'; @@ -46,16 +47,26 @@ const useStyles = makeStyles({ export const AdrSearchResultListItem = ({ lineClamp = 5, highlight, + rank, result, }: { lineClamp?: number; highlight?: ResultHighlight; + rank?: number; result: AdrDocument; }) => { const classes = useStyles(); + const analytics = useAnalytics(); + + const handleClick = () => { + analytics.captureEvent('discover', result.title, { + attributes: { to: result.location }, + value: rank, + }); + }; return ( - + Date: Wed, 15 Jun 2022 18:59:43 +0200 Subject: [PATCH 452/550] Revert "fix(deps): update dependency glob to v8" Signed-off-by: Patrik Oldsberg --- .changeset/renovate-5618e69.md | 6 ------ packages/cli/package.json | 2 +- plugins/catalog-backend/package.json | 2 +- yarn.lock | 11 ----------- 4 files changed, 2 insertions(+), 19 deletions(-) delete mode 100644 .changeset/renovate-5618e69.md diff --git a/.changeset/renovate-5618e69.md b/.changeset/renovate-5618e69.md deleted file mode 100644 index 7745c5e157..0000000000 --- a/.changeset/renovate-5618e69.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@backstage/cli': patch -'@backstage/plugin-catalog-backend': patch ---- - -Updated dependency `glob` to `^8.0.0`. diff --git a/packages/cli/package.json b/packages/cli/package.json index 8387217861..071fc74f97 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -82,7 +82,7 @@ "express": "^4.17.1", "fork-ts-checker-webpack-plugin": "^7.0.0-alpha.8", "fs-extra": "10.1.0", - "glob": "^8.0.0", + "glob": "^7.1.7", "global-agent": "^3.0.0", "handlebars": "^4.7.3", "html-webpack-plugin": "^5.3.1", diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index fa2312b881..c33dccd8a7 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -54,7 +54,7 @@ "fast-json-stable-stringify": "^2.1.0", "fs-extra": "10.1.0", "git-url-parse": "^11.6.0", - "glob": "^8.0.0", + "glob": "^7.1.6", "knex": "^1.0.2", "lodash": "^4.17.21", "luxon": "^2.0.2", diff --git a/yarn.lock b/yarn.lock index 11549172c3..a190f8e765 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13543,17 +13543,6 @@ glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, gl once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.0.0: - version "8.0.3" - resolved "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" - integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^5.0.1" - once "^1.3.0" - glob@^8.0.1: version "8.0.1" resolved "https://registry.npmjs.org/glob/-/glob-8.0.1.tgz#00308f5c035aa0b2a447cd37ead267ddff1577d3" From bc87604c26f012fdd5d60f1b4365fc98f30243cc Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Wed, 15 Jun 2022 19:17:16 +0200 Subject: [PATCH 453/550] create-app: added explicit node-gyp dependency Signed-off-by: Patrik Oldsberg --- .changeset/large-kangaroos-poke.md | 13 +++++++++++++ .../templates/default-app/package.json.hbs | 3 ++- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 .changeset/large-kangaroos-poke.md diff --git a/.changeset/large-kangaroos-poke.md b/.changeset/large-kangaroos-poke.md new file mode 100644 index 0000000000..3a9444cfa1 --- /dev/null +++ b/.changeset/large-kangaroos-poke.md @@ -0,0 +1,13 @@ +--- +'@backstage/create-app': patch +--- + +Added an explicit `node-gyp` dependency to the root `package.json`. This is to work around a bug in older versions of `node-gyp` that causes Python execution to fail on macOS. + +You can add this workaround to your existing project by adding `node-gyp` as a `devDependency` in your root `package.json` file: + +```diff + "devDependencies": { ++ "node-gyp": "^9.0.0" + }, +``` diff --git a/packages/create-app/templates/default-app/package.json.hbs b/packages/create-app/templates/default-app/package.json.hbs index d4cf4fb5fe..47fb0d622f 100644 --- a/packages/create-app/templates/default-app/package.json.hbs +++ b/packages/create-app/templates/default-app/package.json.hbs @@ -35,7 +35,8 @@ "concurrently": "^6.0.0", "lerna": "^4.0.0", "prettier": "^2.3.2", - "typescript": "~4.6.4" + "typescript": "~4.6.4", + "node-gyp": "^9.0.0" }, "resolutions": { "@types/react": "^17", From a906f6ce240b51210ad6c1d22d3e68cd4f6b6eba Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Tue, 14 Jun 2022 15:56:27 +0200 Subject: [PATCH 454/550] add stack overflow plugin to marketplace Signed-off-by: Emma Indal --- microsite/data/plugins/stack-overflow.yaml | 9 +++++++++ microsite/static/img/stack-overflow-logo.svg | 1 + plugins/stack-overflow/README.md | 2 ++ 3 files changed, 12 insertions(+) create mode 100644 microsite/data/plugins/stack-overflow.yaml create mode 100644 microsite/static/img/stack-overflow-logo.svg diff --git a/microsite/data/plugins/stack-overflow.yaml b/microsite/data/plugins/stack-overflow.yaml new file mode 100644 index 0000000000..23b952e93f --- /dev/null +++ b/microsite/data/plugins/stack-overflow.yaml @@ -0,0 +1,9 @@ +--- +title: Stack Overflow +author: Spotify +authorUrl: https://github.com/spotify +category: Discovery +description: Provides Stack Overflow specific functionality that can be used in different ways (e.g. for homepage and search) to compose your Backstage App. +documentation: https://github.com/backstage/backstage/blob/master/plugins/stack-overflow +iconUrl: img/stack-overflow-logo.svg +npmPackageName: '@backstage/plugin-adr' diff --git a/microsite/static/img/stack-overflow-logo.svg b/microsite/static/img/stack-overflow-logo.svg new file mode 100644 index 0000000000..d2fba99094 --- /dev/null +++ b/microsite/static/img/stack-overflow-logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/plugins/stack-overflow/README.md b/plugins/stack-overflow/README.md index 6beb843c7d..96a8f524e3 100644 --- a/plugins/stack-overflow/README.md +++ b/plugins/stack-overflow/README.md @@ -23,6 +23,8 @@ This stack overflow frontend plugin is primarily responsible for the following: #### Use specific search result list item for Stack Overflow Question +> Note: For Stack Overflow specific search results to be returned, it needs to be indexed. Use the [stack-overflow-backend plugin](https://github.com/backstage/backstage/blob/master/plugins/stack-overflow-backend/README.md) to index Stack Overflow Questions to search. + When you have your `packages/app/src/components/search/SearchPage.tsx` file ready to make modifications, add the following code snippet to add the `StackOverflowSearchResultListItem` when the type of the search results are `stack-overflow`. ```tsx From c9ca0e917d9452eadbabc2cf539b0de51fef7705 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Tue, 14 Jun 2022 15:58:15 +0200 Subject: [PATCH 455/550] add support for icon property for StackOverflowQuestions homepage component Signed-off-by: Emma Indal --- .../home/StackOverflowQuestions/Content.tsx | 10 +++--- .../StackOverflowQuestions.stories.tsx | 16 +++++++++ .../src/icons/StackOverflowIcon.tsx | 34 +++++++++++++++++++ plugins/stack-overflow/src/icons/index.ts | 16 +++++++++ plugins/stack-overflow/src/index.ts | 2 ++ plugins/stack-overflow/src/types.ts | 1 + 6 files changed, 75 insertions(+), 4 deletions(-) create mode 100644 plugins/stack-overflow/src/icons/StackOverflowIcon.tsx create mode 100644 plugins/stack-overflow/src/icons/index.ts diff --git a/plugins/stack-overflow/src/home/StackOverflowQuestions/Content.tsx b/plugins/stack-overflow/src/home/StackOverflowQuestions/Content.tsx index c347399474..fbc3a90a9d 100644 --- a/plugins/stack-overflow/src/home/StackOverflowQuestions/Content.tsx +++ b/plugins/stack-overflow/src/home/StackOverflowQuestions/Content.tsx @@ -22,6 +22,7 @@ import { ListItem, ListItemText, ListItemSecondaryAction, + ListItemIcon, } from '@material-ui/core'; import OpenInNewIcon from '@material-ui/icons/OpenInNew'; import useAsync from 'react-use/lib/useAsync'; @@ -68,8 +69,9 @@ export const Content = (props: StackOverflowQuestionsContentProps) => { return ( {value.map(question => ( - - + + + {props.icon && {props.icon}} { - - + + ))} ); diff --git a/plugins/stack-overflow/src/home/StackOverflowQuestions/StackOverflowQuestions.stories.tsx b/plugins/stack-overflow/src/home/StackOverflowQuestions/StackOverflowQuestions.stories.tsx index e19e0f807b..35ace44c14 100644 --- a/plugins/stack-overflow/src/home/StackOverflowQuestions/StackOverflowQuestions.stories.tsx +++ b/plugins/stack-overflow/src/home/StackOverflowQuestions/StackOverflowQuestions.stories.tsx @@ -20,6 +20,7 @@ import { configApiRef } from '@backstage/core-plugin-api'; import { ConfigReader } from '@backstage/config'; import { Grid } from '@material-ui/core'; import React, { ComponentType } from 'react'; +import { StackOverflowIcon } from '../../icons'; export default { title: 'Plugins/Home/Components/StackOverflow', @@ -60,3 +61,18 @@ export const Default = () => {
); }; + +export const WithIcon = () => { + return ( + + } + /> + + ); +}; diff --git a/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx b/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx new file mode 100644 index 0000000000..5e2139b4a8 --- /dev/null +++ b/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx @@ -0,0 +1,34 @@ +/* + * Copyright 2022 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 from 'react'; + +export const StackOverflowIcon = () => { + return ( + + + + + ); +}; diff --git a/plugins/stack-overflow/src/icons/index.ts b/plugins/stack-overflow/src/icons/index.ts new file mode 100644 index 0000000000..141d87d7b1 --- /dev/null +++ b/plugins/stack-overflow/src/icons/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright 2022 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 './StackOverflowIcon'; diff --git a/plugins/stack-overflow/src/index.ts b/plugins/stack-overflow/src/index.ts index 264a0d5d7c..5965d66983 100644 --- a/plugins/stack-overflow/src/index.ts +++ b/plugins/stack-overflow/src/index.ts @@ -18,11 +18,13 @@ * * @packageDocumentation */ + export { stackOverflowPlugin, StackOverflowSearchResultListItem, HomePageStackOverflowQuestions, } from './plugin'; +export { StackOverflowIcon } from './icons'; export type { StackOverflowQuestion, StackOverflowQuestionsContentProps, diff --git a/plugins/stack-overflow/src/types.ts b/plugins/stack-overflow/src/types.ts index c3fa08cc4f..8f2d8847ec 100644 --- a/plugins/stack-overflow/src/types.ts +++ b/plugins/stack-overflow/src/types.ts @@ -34,6 +34,7 @@ export type StackOverflowQuestion = { */ export type StackOverflowQuestionsContentProps = { requestParams: StackOverflowQuestionsRequestParams; + icon?: React.ReactNode; }; /** From 8d9f6bbe81f4f4c4b1ea47019a1b86311cece0dd Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Tue, 14 Jun 2022 16:06:18 +0200 Subject: [PATCH 456/550] add storybook example of stack overflow search result with icon Signed-off-by: Emma Indal --- ...StackOverflowSearchResultListItem.stories.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/plugins/stack-overflow/src/search/StackOverflowSearchResultListItem/StackOverflowSearchResultListItem.stories.tsx b/plugins/stack-overflow/src/search/StackOverflowSearchResultListItem/StackOverflowSearchResultListItem.stories.tsx index 1239cabcbe..df5b8038b0 100644 --- a/plugins/stack-overflow/src/search/StackOverflowSearchResultListItem/StackOverflowSearchResultListItem.stories.tsx +++ b/plugins/stack-overflow/src/search/StackOverflowSearchResultListItem/StackOverflowSearchResultListItem.stories.tsx @@ -17,6 +17,7 @@ import { StackOverflowSearchResultListItem } from '../../plugin'; import { wrapInTestApp } from '@backstage/test-utils'; import React, { ComponentType } from 'react'; +import { StackOverflowIcon } from '../../icons'; export default { title: 'Plugins/Search/StackOverflowResultListItem', @@ -37,3 +38,18 @@ export const Default = () => { /> ); }; + +export const WithIcon = () => { + return ( + } + /> + ); +}; From 5907499e67c13bf62b65398ffb1560ddd1e30518 Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Tue, 14 Jun 2022 16:24:16 +0200 Subject: [PATCH 457/550] update api report Signed-off-by: Emma Indal --- plugins/stack-overflow/api-report.md | 4 ++++ plugins/stack-overflow/src/icons/StackOverflowIcon.tsx | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/plugins/stack-overflow/api-report.md b/plugins/stack-overflow/api-report.md index 277b0272d1..e4912fcd18 100644 --- a/plugins/stack-overflow/api-report.md +++ b/plugins/stack-overflow/api-report.md @@ -16,6 +16,9 @@ export const HomePageStackOverflowQuestions: ( } & StackOverflowQuestionsContentProps, ) => JSX.Element; +// @public +export const StackOverflowIcon: () => JSX.Element; + // @public export const stackOverflowPlugin: BackstagePlugin<{}, {}>; @@ -31,6 +34,7 @@ export type StackOverflowQuestion = { // @public export type StackOverflowQuestionsContentProps = { requestParams: StackOverflowQuestionsRequestParams; + icon?: React.ReactNode; }; // @public diff --git a/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx b/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx index 5e2139b4a8..8befe53177 100644 --- a/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx +++ b/plugins/stack-overflow/src/icons/StackOverflowIcon.tsx @@ -15,6 +15,10 @@ */ import React from 'react'; +/** + * Stack Overflow Icon + * @public + */ export const StackOverflowIcon = () => { return ( Date: Tue, 14 Jun 2022 16:38:30 +0200 Subject: [PATCH 458/550] fixup Signed-off-by: Emma Indal --- microsite/data/plugins/stack-overflow.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/stack-overflow.yaml b/microsite/data/plugins/stack-overflow.yaml index 23b952e93f..0d734446d7 100644 --- a/microsite/data/plugins/stack-overflow.yaml +++ b/microsite/data/plugins/stack-overflow.yaml @@ -6,4 +6,4 @@ category: Discovery description: Provides Stack Overflow specific functionality that can be used in different ways (e.g. for homepage and search) to compose your Backstage App. documentation: https://github.com/backstage/backstage/blob/master/plugins/stack-overflow iconUrl: img/stack-overflow-logo.svg -npmPackageName: '@backstage/plugin-adr' +npmPackageName: '@backstage/plugin-stack-overflow' From 12ae3eed2f873a53ef1f16207031a117533632ec Mon Sep 17 00:00:00 2001 From: Emma Indal Date: Tue, 14 Jun 2022 16:42:37 +0200 Subject: [PATCH 459/550] add changeset Signed-off-by: Emma Indal --- .changeset/modern-ducks-lay.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/modern-ducks-lay.md diff --git a/.changeset/modern-ducks-lay.md b/.changeset/modern-ducks-lay.md new file mode 100644 index 0000000000..bd62c309ba --- /dev/null +++ b/.changeset/modern-ducks-lay.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-stack-overflow': patch +--- + +- Publicly exports `StackOverflowIcon`. +- `HomePageStackOverflowQuestions` accepts optional icon property. From b8409a0d972b7506da6921ee40d1877487564257 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 17:44:22 +0000 Subject: [PATCH 460/550] chore(deps): update dependency concurrently to v7.2.2 Signed-off-by: Renovate Bot --- yarn.lock | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/yarn.lock b/yarn.lock index 43b5864306..66cb6493e2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9772,14 +9772,14 @@ concurrently@6.5.1: yargs "^16.2.0" concurrently@^7.0.0: - version "7.2.1" - resolved "https://registry.npmjs.org/concurrently/-/concurrently-7.2.1.tgz#88b144060443403060aad46f837dd17451f7e55e" - integrity sha512-7cab/QyqipqghrVr9qZmoWbidu0nHsmxrpNqQ7r/67vfl1DWJElexehQnTH1p+87tDkihaAjM79xTZyBQh7HLw== + version "7.2.2" + resolved "https://registry.npmjs.org/concurrently/-/concurrently-7.2.2.tgz#4ad4a4dfd3945f668d727379de2a29502e6a531c" + integrity sha512-DcQkI0ruil5BA/g7Xy3EWySGrFJovF5RYAYxwGvv9Jf9q9B1v3jPFP2tl6axExNf1qgF30kjoNYrangZ0ey4Aw== dependencies: chalk "^4.1.0" date-fns "^2.16.1" lodash "^4.17.21" - rxjs "^6.6.3" + rxjs "^7.0.0" shell-quote "^1.7.3" spawn-command "^0.0.2-1" supports-color "^8.1.0" @@ -22260,7 +22260,7 @@ request@^2.88.0: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@^2.0.2: version "2.0.2" @@ -22598,7 +22598,7 @@ run-script-webpack-plugin@^0.0.14: resolved "https://registry.npmjs.org/run-script-webpack-plugin/-/run-script-webpack-plugin-0.0.14.tgz#fe2362b32c1dab7a8af7a6f1246fc043690cedd7" integrity sha512-DXe6lzzEVXjBr/74zd4m4yOfmz5P6GMjzhQxDDsViOmwG7cap8UCE6RgD5rT7zf4wM83a+ToHnpB3v4efUv5IA== -rxjs@7.5.5, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: +rxjs@7.5.5, rxjs@^7.0.0, rxjs@^7.1.0, rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5: version "7.5.5" resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f" integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw== @@ -23361,7 +23361,7 @@ space-separated-tokens@^2.0.0: spawn-command@^0.0.2-1: version "0.0.2-1" resolved "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= + integrity sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg== spawndamnit@^2.0.0: version "2.0.0" From a7c0b34d706051b15dfb4f0d24f951ecf126870c Mon Sep 17 00:00:00 2001 From: Phil Kuang Date: Wed, 15 Jun 2022 13:22:47 -0400 Subject: [PATCH 461/550] refactor(ListTasksPage): swap MaterialTable with Table Signed-off-by: Phil Kuang --- .changeset/wicked-icons-grin.md | 5 +++++ plugins/scaffolder/package.json | 3 +-- .../src/components/ListTasksPage/ListTasksPage.tsx | 5 +++-- 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 .changeset/wicked-icons-grin.md diff --git a/.changeset/wicked-icons-grin.md b/.changeset/wicked-icons-grin.md new file mode 100644 index 0000000000..8d26a9255e --- /dev/null +++ b/.changeset/wicked-icons-grin.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +Swap usage of `MaterialTable` with `Table` from `core-components` diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index 54824c7699..fd8161646c 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -49,15 +49,14 @@ "@backstage/plugin-scaffolder-common": "^1.1.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", - "@codemirror/legacy-modes": "^0.20.0", "@codemirror/language": "^0.20.0", + "@codemirror/legacy-modes": "^0.20.0", "@codemirror/view": "^0.20.2", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "@react-hookz/web": "^13.0.0", "@rjsf/core": "^3.2.1", - "@material-table/core": "^3.1.0", "@rjsf/material-ui": "^3.2.1", "@types/json-schema": "^7.0.9", "@uiw/react-codemirror": "^4.7.0", diff --git a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx index d45d6f1ae7..0b00879d43 100644 --- a/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx +++ b/plugins/scaffolder/src/components/ListTasksPage/ListTasksPage.tsx @@ -22,14 +22,15 @@ import { Link, Page, Progress, + Table, } from '@backstage/core-components'; import { useApi, useRouteRef } from '@backstage/core-plugin-api'; import { CatalogFilterLayout } from '@backstage/plugin-catalog-react'; import useAsync from 'react-use/lib/useAsync'; -import MaterialTable from '@material-table/core'; import React, { useState } from 'react'; import { scaffolderApiRef } from '../../api'; import { rootRouteRef } from '../../routes'; +import { ScaffolderTask } from '../../types'; import { OwnerListPicker } from './OwnerListPicker'; import { CreatedAtColumn, @@ -88,7 +89,7 @@ const ListTaskPageContent = (props: MyTaskPageProps) => { /> - data={value?.tasks ?? []} title="Tasks" columns={[ From d93c357018c17fcfb652968130643378d0807304 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 18:51:38 +0000 Subject: [PATCH 462/550] chore(deps): update graphqlcodegenerator monorepo Signed-off-by: Renovate Bot --- yarn.lock | 112 +++++++++++++++++++++++++++--------------------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/yarn.lock b/yarn.lock index 66cb6493e2..a11a80e574 100644 --- a/yarn.lock +++ b/yarn.lock @@ -100,6 +100,29 @@ dependencies: xss "^1.0.8" +"@ardatan/relay-compiler@12.0.0": + version "12.0.0" + resolved "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz#2e4cca43088e807adc63450e8cab037020e91106" + integrity sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q== + dependencies: + "@babel/core" "^7.14.0" + "@babel/generator" "^7.14.0" + "@babel/parser" "^7.14.0" + "@babel/runtime" "^7.0.0" + "@babel/traverse" "^7.14.0" + "@babel/types" "^7.0.0" + babel-preset-fbjs "^3.4.0" + chalk "^4.0.0" + fb-watchman "^2.0.0" + fbjs "^3.0.0" + glob "^7.1.1" + immutable "~3.7.6" + invariant "^2.2.4" + nullthrows "^1.1.1" + relay-runtime "12.0.0" + signedsource "^1.0.0" + yargs "^15.3.1" + "@asyncapi/avro-schema-parser@^0.3.0": version "0.3.0" resolved "https://registry.npmjs.org/@asyncapi/avro-schema-parser/-/avro-schema-parser-0.3.0.tgz#6922acc559ef999c57e81297d78ffe680fc92b3c" @@ -2150,13 +2173,13 @@ tslib "~2.3.0" "@graphql-codegen/graphql-modules-preset@^2.3.2": - version "2.3.12" - resolved "https://registry.npmjs.org/@graphql-codegen/graphql-modules-preset/-/graphql-modules-preset-2.3.12.tgz#e2e128eaab2ca5600bb137c8fec9e3f52c5f243b" - integrity sha512-Xz5RsiythN/6ivt+9n43ciHWZ6ngUK1mpBBG/0EYISfUUVaTBLBVKoAhqPHcquqrsByppE0Nclw5sUuOLQUjiA== + version "2.3.13" + resolved "https://registry.npmjs.org/@graphql-codegen/graphql-modules-preset/-/graphql-modules-preset-2.3.13.tgz#181ab8acacf376c38d572d6d50aad609aba3cd3d" + integrity sha512-hi/vKUrVa62d5W2euSapUqTNf2ysfq4RjRc0Pcren7zPqMzD3QgbYRLjDtPsXXQntZDmDxoJVd1BEzjpPGD2/g== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" - "@graphql-codegen/visitor-plugin-common" "2.9.0" - "@graphql-tools/utils" "8.6.12" + "@graphql-codegen/visitor-plugin-common" "2.9.1" + "@graphql-tools/utils" "8.6.13" change-case-all "1.0.14" parse-filepath "^1.0.2" tslib "~2.4.0" @@ -2183,36 +2206,36 @@ tslib "~2.3.0" "@graphql-codegen/typescript-resolvers@^2.4.3": - version "2.6.5" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript-resolvers/-/typescript-resolvers-2.6.5.tgz#f22635ae76218dbc12c39d32f84a3979a791c764" - integrity sha512-vzREbHyiYHhy/C90V8HKnfD7hnJIeioqZIYssX9WTQ5pVHqdeO/k4Gbw9ljcFe4OsP5d9GFHzhtU+/GnQlCyaA== + version "2.6.6" + resolved "https://registry.npmjs.org/@graphql-codegen/typescript-resolvers/-/typescript-resolvers-2.6.6.tgz#c42cabbc05103b44a29df5ac4a015f2a8e8ab4aa" + integrity sha512-6yVU0rojI64qZbAtGy4+5kA1xJbolcWbefd4y/nwLOn2g99QBHt9nQRCVl96rppfBNinLPkiJCtQ0thOHu9glg== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" - "@graphql-codegen/typescript" "^2.5.0" - "@graphql-codegen/visitor-plugin-common" "2.9.0" + "@graphql-codegen/typescript" "^2.5.1" + "@graphql-codegen/visitor-plugin-common" "2.9.1" "@graphql-tools/utils" "^8.1.1" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/typescript@^2.4.2", "@graphql-codegen/typescript@^2.5.0": - version "2.5.0" - resolved "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-2.5.0.tgz#5ae121db92120fecb6badb34aa361ac464bc23d3" - integrity sha512-eCCebNyhV5NcNyfrNOdur1b4zPSyj2o89yaSliEMSShf4WolfFOv4aYpL4tFXjhkw3n2pR7MYFDUnrzmDpfmNw== +"@graphql-codegen/typescript@^2.4.2", "@graphql-codegen/typescript@^2.5.1": + version "2.5.1" + resolved "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-2.5.1.tgz#5131485ff3ac83d5bc0aae11a2af0c9bdc08854c" + integrity sha512-D/9V2VfVIE4Mu5UiMGQtxyFU5xe1ZkAZi8g/IsqymW8rqlhTwsGhtk4JR55qPfOYxR8G94RJSJpzgNakRneytw== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" "@graphql-codegen/schema-ast" "^2.4.1" - "@graphql-codegen/visitor-plugin-common" "2.9.0" + "@graphql-codegen/visitor-plugin-common" "2.9.1" auto-bind "~4.0.0" tslib "~2.4.0" -"@graphql-codegen/visitor-plugin-common@2.9.0": - version "2.9.0" - resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.9.0.tgz#a13556c805e72b63ee9d80fb437b9ba2eb0a9fa2" - integrity sha512-w353lPpXlgsQT6dxfcHw3hQdodGnfSwsxofHVfROqrIBZIjH0kNiFHOt8rnewYkLGEa75bWDVaM1ofyXEaN+3w== +"@graphql-codegen/visitor-plugin-common@2.9.1": + version "2.9.1" + resolved "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.9.1.tgz#17dfe33e19e846e7475ab9d4ff43de5130e18397" + integrity sha512-j9eGOSGt+sJcwv0ijhZiQ2cF/0ponscekNVoF+vHdOT4RB0qgOQxykPBk6EbKxIHECnkdV8ARdPVTA21A93/QQ== dependencies: "@graphql-codegen/plugin-helpers" "^2.4.0" "@graphql-tools/optimize" "^1.0.1" - "@graphql-tools/relay-operation-optimizer" "^6.3.7" + "@graphql-tools/relay-operation-optimizer" "^6.4.14" "@graphql-tools/utils" "^8.3.0" auto-bind "~4.0.0" change-case-all "1.0.14" @@ -2390,14 +2413,14 @@ tslib "~2.3.0" yaml-ast-parser "^0.0.43" -"@graphql-tools/relay-operation-optimizer@^6.3.7": - version "6.4.9" - resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.9.tgz#f3e1960ac8e6429a09156836701a03ebf523f0e1" - integrity sha512-fHMR1bNyx+ryBnmtXWnYmxvQLEx0O3yIG0MTVB1Mp6GlsyKTGI3O9njvjv0EI2JmCszs1uakT/6BW0LO37E6tQ== +"@graphql-tools/relay-operation-optimizer@^6.4.14": + version "6.4.14" + resolved "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.4.14.tgz#812f32123a1351615a72b4e832852daac7bd64b3" + integrity sha512-vqch2M/sIUfMmlRJ4eCupiHlVPXWOPVpHX9yCZwRrpNg0Eaokyc57NSjJuKVV3KcvcJKf03qfMK2PxFbfDvN9A== dependencies: - "@graphql-tools/utils" "8.6.9" - relay-compiler "12.0.0" - tslib "~2.3.0" + "@ardatan/relay-compiler" "12.0.0" + "@graphql-tools/utils" "8.6.13" + tslib "^2.4.0" "@graphql-tools/schema@8.3.10", "@graphql-tools/schema@^8.0.0", "@graphql-tools/schema@^8.1.1", "@graphql-tools/schema@^8.1.2", "@graphql-tools/schema@^8.3.1": version "8.3.10" @@ -2431,12 +2454,12 @@ value-or-promise "^1.0.11" ws "^8.3.0" -"@graphql-tools/utils@8.6.12": - version "8.6.12" - resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.12.tgz#0a550dc0331fd9b097fe7223d65cbbee720556e4" - integrity sha512-WQ91O40RC+UJgZ9K+IzevSf8oolR1QE+WQ21Oyc2fgDYYiqT0eSf+HVyhZr/8x9rVjn3N9HeqCsywbdmbljg0w== +"@graphql-tools/utils@8.6.13": + version "8.6.13" + resolved "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.13.tgz#2b4fb7f9f8a29b25eecd44551fb95974de32f969" + integrity sha512-FiVqrQzj4cgz0HcZ3CxUs8NtBGPZFpmsVyIgwmL6YCwIhjJQnT72h8G3/vk5zVfjfesht85YGp0inWWuoCKWzg== dependencies: - tslib "~2.4.0" + tslib "^2.4.0" "@graphql-tools/utils@8.6.9", "@graphql-tools/utils@^8.1.1", "@graphql-tools/utils@^8.3.0", "@graphql-tools/utils@^8.5.1", "@graphql-tools/utils@^8.5.2", "@graphql-tools/utils@^8.6.0": version "8.6.9" @@ -22095,29 +22118,6 @@ relateurl@^0.2.7: resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= -relay-compiler@12.0.0: - version "12.0.0" - resolved "https://registry.npmjs.org/relay-compiler/-/relay-compiler-12.0.0.tgz#9f292d483fb871976018704138423a96c8a45439" - integrity sha512-SWqeSQZ+AMU/Cr7iZsHi1e78Z7oh00I5SvR092iCJq79aupqJ6Ds+I1Pz/Vzo5uY5PY0jvC4rBJXzlIN5g9boQ== - dependencies: - "@babel/core" "^7.14.0" - "@babel/generator" "^7.14.0" - "@babel/parser" "^7.14.0" - "@babel/runtime" "^7.0.0" - "@babel/traverse" "^7.14.0" - "@babel/types" "^7.0.0" - babel-preset-fbjs "^3.4.0" - chalk "^4.0.0" - fb-watchman "^2.0.0" - fbjs "^3.0.0" - glob "^7.1.1" - immutable "~3.7.6" - invariant "^2.2.4" - nullthrows "^1.1.1" - relay-runtime "12.0.0" - signedsource "^1.0.0" - yargs "^15.3.1" - relay-runtime@12.0.0: version "12.0.0" resolved "https://registry.npmjs.org/relay-runtime/-/relay-runtime-12.0.0.tgz#1e039282bdb5e0c1b9a7dc7f6b9a09d4f4ff8237" @@ -24776,7 +24776,7 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.1.0, tslib@~2.4.0: +tslib@^2.1.0, tslib@^2.4.0, tslib@~2.4.0: version "2.4.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== From 0791af993f7eb861c2b73d781d39aedd9cce6d75 Mon Sep 17 00:00:00 2001 From: Matthew Clarke Date: Wed, 15 Jun 2022 15:18:35 -0400 Subject: [PATCH 463/550] refactor: prepare kubernetes backend fan out handler for new endpoint (#11952) * refactor: prepare kubernetes backend fan out handler for new endpoint Signed-off-by: Matthew Clarke * add changeset Signed-off-by: Matthew Clarke * PR api report feedback Signed-off-by: Matthew Clarke * update api docs Signed-off-by: Matthew Clarke * fix api report warnings Signed-off-by: Matthew Clarke --- .changeset/short-olives-train.md | 6 + plugins/kubernetes-backend/api-report.md | 119 +++++------- .../GoogleKubernetesAuthTranslator.ts | 6 +- .../KubernetesAuthTranslatorGenerator.test.ts | 6 +- .../KubernetesAuthTranslatorGenerator.ts | 4 +- ...tor.ts => NoopKubernetesAuthTranslator.ts} | 6 +- .../OidcKubernetesAuthTranslator.test.ts | 15 +- .../OidcKubernetesAuthTranslator.ts | 7 +- .../src/kubernetes-auth-translator/types.ts | 4 +- .../MultiTenantServiceLocator.test.ts | 55 +++--- .../MultiTenantServiceLocator.ts | 8 +- .../src/service/KubernetesBuilder.test.ts | 17 +- .../src/service/KubernetesBuilder.ts | 17 +- .../service/KubernetesFanOutHandler.test.ts | 172 ++++++++++-------- .../src/service/KubernetesFanOutHandler.ts | 101 +++++++--- .../kubernetes-backend/src/service/router.ts | 6 + plugins/kubernetes-backend/src/types/types.ts | 110 ++++++++++- plugins/kubernetes-common/api-report.md | 19 +- plugins/kubernetes-common/src/types.ts | 14 +- 19 files changed, 430 insertions(+), 262 deletions(-) create mode 100644 .changeset/short-olives-train.md rename plugins/kubernetes-backend/src/kubernetes-auth-translator/{ServiceAccountKubernetesAuthTranslator.ts => NoopKubernetesAuthTranslator.ts} (80%) diff --git a/.changeset/short-olives-train.md b/.changeset/short-olives-train.md new file mode 100644 index 0000000000..594d95f073 --- /dev/null +++ b/.changeset/short-olives-train.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-kubernetes-backend': minor +'@backstage/plugin-kubernetes-common': minor +--- + +Refactor `KubernetesObjectsProvider` with new methods, `KubernetesServiceLocator` now takes an `Entity` instead of `serviceId` diff --git a/plugins/kubernetes-backend/api-report.md b/plugins/kubernetes-backend/api-report.md index be81b4d5dd..41748f240b 100644 --- a/plugins/kubernetes-backend/api-report.md +++ b/plugins/kubernetes-backend/api-report.md @@ -5,18 +5,18 @@ ```ts import { Config } from '@backstage/config'; import { Duration } from 'luxon'; +import { Entity } from '@backstage/catalog-model'; import express from 'express'; import type { FetchResponse } from '@backstage/plugin-kubernetes-common'; import type { JsonObject } from '@backstage/types'; import type { KubernetesFetchError } from '@backstage/plugin-kubernetes-common'; +import type { KubernetesRequestAuth } from '@backstage/plugin-kubernetes-common'; import type { KubernetesRequestBody } from '@backstage/plugin-kubernetes-common'; import { Logger } from 'winston'; import type { ObjectsByEntityResponse } from '@backstage/plugin-kubernetes-common'; import { PodStatus } from '@kubernetes/client-node/dist/top'; -// Warning: (ae-missing-release-tag) "AWSClusterDetails" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface AWSClusterDetails extends ClusterDetails { // (undocumented) assumeRole?: string; @@ -24,14 +24,10 @@ export interface AWSClusterDetails extends ClusterDetails { externalId?: string; } -// Warning: (ae-missing-release-tag) "AzureClusterDetails" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface AzureClusterDetails extends ClusterDetails {} -// Warning: (ae-missing-release-tag) "ClusterDetails" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface ClusterDetails { // (undocumented) authProvider: string; @@ -51,27 +47,28 @@ export interface ClusterDetails { url: string; } -// Warning: (ae-missing-release-tag) "createRouter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public @deprecated +// @alpha @deprecated export function createRouter(options: RouterOptions): Promise; -// Warning: (ae-missing-release-tag) "CustomResource" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface CustomResource extends ObjectToFetch { // (undocumented) objectType: 'customresources'; } -// Warning: (ae-missing-release-tag) "DEFAULT_OBJECTS" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) +export type CustomResourceMatcher = Omit; + +// @alpha (undocumented) +export interface CustomResourcesByEntity extends KubernetesObjectsByEntity { + // (undocumented) + customResources: CustomResourceMatcher[]; +} + +// @alpha (undocumented) export const DEFAULT_OBJECTS: ObjectToFetch[]; -// Warning: (ae-missing-release-tag) "FetchResponseWrapper" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface FetchResponseWrapper { // (undocumented) errors: KubernetesFetchError[]; @@ -79,14 +76,10 @@ export interface FetchResponseWrapper { responses: FetchResponse[]; } -// Warning: (ae-missing-release-tag) "GKEClusterDetails" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface GKEClusterDetails extends ClusterDetails {} -// Warning: (ae-missing-release-tag) "KubernetesBuilder" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export class KubernetesBuilder { constructor(env: KubernetesEnvironment); // (undocumented) @@ -145,7 +138,7 @@ export class KubernetesBuilder { setServiceLocator(serviceLocator?: KubernetesServiceLocator): this; } -// @public +// @alpha export type KubernetesBuilderReturn = Promise<{ router: express.Router; clusterSupplier: KubernetesClustersSupplier; @@ -155,16 +148,12 @@ export type KubernetesBuilderReturn = Promise<{ serviceLocator: KubernetesServiceLocator; }>; -// Warning: (ae-missing-release-tag) "KubernetesClustersSupplier" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha export interface KubernetesClustersSupplier { getClusters(): Promise; } -// Warning: (ae-missing-release-tag) "KubernetesEnvironment" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface KubernetesEnvironment { // (undocumented) config: Config; @@ -172,9 +161,7 @@ export interface KubernetesEnvironment { logger: Logger; } -// Warning: (ae-missing-release-tag) "KubernetesFetcher" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha export interface KubernetesFetcher { // (undocumented) fetchObjectsForService( @@ -187,19 +174,27 @@ export interface KubernetesFetcher { ): Promise; } -// Warning: (ae-missing-release-tag) "KubernetesObjectsProvider" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) +export interface KubernetesObjectsByEntity { + // (undocumented) + auth: KubernetesRequestAuth; + // (undocumented) + entity: Entity; +} + +// @alpha (undocumented) export interface KubernetesObjectsProvider { + // (undocumented) + getCustomResourcesByEntity( + customResourcesByEntity: CustomResourcesByEntity, + ): Promise; // (undocumented) getKubernetesObjectsByEntity( - request: ObjectsByEntityRequest, + kubernetesObjectsByEntity: KubernetesObjectsByEntity, ): Promise; } -// Warning: (ae-missing-release-tag) "KubernetesObjectsProviderOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface KubernetesObjectsProviderOptions { // (undocumented) customResources: CustomResource[]; @@ -213,9 +208,7 @@ export interface KubernetesObjectsProviderOptions { serviceLocator: KubernetesServiceLocator; } -// Warning: (ae-missing-release-tag) "KubernetesObjectTypes" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export type KubernetesObjectTypes = | 'pods' | 'services' @@ -229,17 +222,15 @@ export type KubernetesObjectTypes = | 'customresources' | 'statefulsets'; -// Warning: (ae-missing-release-tag) "KubernetesServiceLocator" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha export interface KubernetesServiceLocator { // (undocumented) - getClustersByServiceId(serviceId: string): Promise; + getClustersByEntity(entity: Entity): Promise<{ + clusters: ClusterDetails[]; + }>; } -// Warning: (ae-missing-release-tag) "ObjectFetchParams" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface ObjectFetchParams { // (undocumented) clusterDetails: @@ -259,14 +250,10 @@ export interface ObjectFetchParams { serviceId: string; } -// Warning: (ae-missing-release-tag) "ObjectsByEntityRequest" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export type ObjectsByEntityRequest = KubernetesRequestBody; -// Warning: (ae-missing-release-tag) "ObjectToFetch" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface ObjectToFetch { // (undocumented) apiVersion: string; @@ -278,9 +265,7 @@ export interface ObjectToFetch { plural: string; } -// Warning: (ae-missing-release-tag) "RouterOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface RouterOptions { // (undocumented) clusterSupplier?: KubernetesClustersSupplier; @@ -290,13 +275,9 @@ export interface RouterOptions { logger: Logger; } -// Warning: (ae-missing-release-tag) "ServiceAccountClusterDetails" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export interface ServiceAccountClusterDetails extends ClusterDetails {} -// Warning: (ae-missing-release-tag) "ServiceLocatorMethod" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) +// @alpha (undocumented) export type ServiceLocatorMethod = 'multiTenant' | 'http'; ``` diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/GoogleKubernetesAuthTranslator.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/GoogleKubernetesAuthTranslator.ts index 8c74945ec7..741e6b2533 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/GoogleKubernetesAuthTranslator.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/GoogleKubernetesAuthTranslator.ts @@ -16,20 +16,20 @@ import { KubernetesAuthTranslator } from './types'; import { GKEClusterDetails } from '../types/types'; -import { KubernetesRequestBody } from '@backstage/plugin-kubernetes-common'; +import { KubernetesRequestAuth } from '@backstage/plugin-kubernetes-common'; export class GoogleKubernetesAuthTranslator implements KubernetesAuthTranslator { async decorateClusterDetailsWithAuth( clusterDetails: GKEClusterDetails, - requestBody: KubernetesRequestBody, + authConfig: KubernetesRequestAuth, ): Promise { const clusterDetailsWithAuthToken: GKEClusterDetails = Object.assign( {}, clusterDetails, ); - const authToken: string | undefined = requestBody.auth?.google; + const authToken: string | undefined = authConfig.google; if (authToken) { clusterDetailsWithAuthToken.serviceAccountToken = authToken; diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.test.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.test.ts index 123b05456c..f8abdde9cf 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.test.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.test.ts @@ -17,7 +17,7 @@ import { KubernetesAuthTranslator } from './types'; import { GoogleKubernetesAuthTranslator } from './GoogleKubernetesAuthTranslator'; import { KubernetesAuthTranslatorGenerator } from './KubernetesAuthTranslatorGenerator'; -import { ServiceAccountKubernetesAuthTranslator } from './ServiceAccountKubernetesAuthTranslator'; +import { NoopKubernetesAuthTranslator } from './NoopKubernetesAuthTranslator'; import { AwsIamKubernetesAuthTranslator } from './AwsIamKubernetesAuthTranslator'; import { OidcKubernetesAuthTranslator } from './OidcKubernetesAuthTranslator'; import { getVoidLogger } from '@backstage/backend-common'; @@ -42,9 +42,7 @@ describe('getKubernetesAuthTranslatorInstance', () => { it('can return an auth translator for serviceAccount auth', () => { const authTranslator: KubernetesAuthTranslator = sut.getKubernetesAuthTranslatorInstance('serviceAccount', { logger }); - expect( - authTranslator instanceof ServiceAccountKubernetesAuthTranslator, - ).toBe(true); + expect(authTranslator instanceof NoopKubernetesAuthTranslator).toBe(true); }); it('can return an auth translator for oidc auth', () => { diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.ts index fa69ad42b5..c2df3e6c23 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/KubernetesAuthTranslatorGenerator.ts @@ -17,7 +17,7 @@ import { Logger } from 'winston'; import { KubernetesAuthTranslator } from './types'; import { GoogleKubernetesAuthTranslator } from './GoogleKubernetesAuthTranslator'; -import { ServiceAccountKubernetesAuthTranslator } from './ServiceAccountKubernetesAuthTranslator'; +import { NoopKubernetesAuthTranslator } from './NoopKubernetesAuthTranslator'; import { AwsIamKubernetesAuthTranslator } from './AwsIamKubernetesAuthTranslator'; import { GoogleServiceAccountAuthTranslator } from './GoogleServiceAccountAuthProvider'; import { AzureIdentityKubernetesAuthTranslator } from './AzureIdentityKubernetesAuthTranslator'; @@ -41,7 +41,7 @@ export class KubernetesAuthTranslatorGenerator { return new AzureIdentityKubernetesAuthTranslator(options.logger); } case 'serviceAccount': { - return new ServiceAccountKubernetesAuthTranslator(); + return new NoopKubernetesAuthTranslator(); } case 'googleServiceAccount': { return new GoogleServiceAccountAuthTranslator(); diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/ServiceAccountKubernetesAuthTranslator.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/NoopKubernetesAuthTranslator.ts similarity index 80% rename from plugins/kubernetes-backend/src/kubernetes-auth-translator/ServiceAccountKubernetesAuthTranslator.ts rename to plugins/kubernetes-backend/src/kubernetes-auth-translator/NoopKubernetesAuthTranslator.ts index ec90f82c91..d68b1a4365 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/ServiceAccountKubernetesAuthTranslator.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/NoopKubernetesAuthTranslator.ts @@ -16,14 +16,10 @@ import { KubernetesAuthTranslator } from './types'; import { ServiceAccountClusterDetails } from '../types/types'; -import { KubernetesRequestBody } from '@backstage/plugin-kubernetes-common'; -export class ServiceAccountKubernetesAuthTranslator - implements KubernetesAuthTranslator -{ +export class NoopKubernetesAuthTranslator implements KubernetesAuthTranslator { async decorateClusterDetailsWithAuth( clusterDetails: ServiceAccountClusterDetails, - _requestBody: KubernetesRequestBody, ): Promise { return clusterDetails; } diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.test.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.test.ts index 9f983aedc3..68f24bd020 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.test.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.test.ts @@ -16,15 +16,9 @@ import { OidcKubernetesAuthTranslator } from './OidcKubernetesAuthTranslator'; import { ClusterDetails } from '../types/types'; -import { Entity } from '@backstage/catalog-model'; describe('OidcKubernetesAuthTranslator tests', () => { const at = new OidcKubernetesAuthTranslator(); - const entity: Entity = { - apiVersion: 'v1', - kind: 'service', - metadata: { name: 'test' }, - }; const baseClusterDetails: ClusterDetails = { name: 'test', authProvider: 'oidc', @@ -38,10 +32,7 @@ describe('OidcKubernetesAuthTranslator tests', () => { ...baseClusterDetails, }, { - auth: { - oidc: { okta: 'fakeToken' }, - }, - entity, + oidc: { okta: 'fakeToken' }, }, ); @@ -50,7 +41,7 @@ describe('OidcKubernetesAuthTranslator tests', () => { it('returns error when oidcTokenProvider is not configured', async () => { await expect( - at.decorateClusterDetailsWithAuth(baseClusterDetails, { entity }), + at.decorateClusterDetailsWithAuth(baseClusterDetails, {}), ).rejects.toThrow( 'oidc authProvider requires a configured oidcTokenProvider', ); @@ -60,7 +51,7 @@ describe('OidcKubernetesAuthTranslator tests', () => { await expect( at.decorateClusterDetailsWithAuth( { oidcTokenProvider: 'okta', ...baseClusterDetails }, - { entity }, + {}, ), ).rejects.toThrow('Auth token not found under oidc.okta in request body'); }); diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.ts index c53269abf3..8ca546a25b 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/OidcKubernetesAuthTranslator.ts @@ -16,12 +16,12 @@ import { KubernetesAuthTranslator } from './types'; import { ClusterDetails } from '../types/types'; -import { KubernetesRequestBody } from '@backstage/plugin-kubernetes-common'; +import { KubernetesRequestAuth } from '@backstage/plugin-kubernetes-common'; export class OidcKubernetesAuthTranslator implements KubernetesAuthTranslator { async decorateClusterDetailsWithAuth( clusterDetails: ClusterDetails, - requestBody: KubernetesRequestBody, + authConfig: KubernetesRequestAuth, ): Promise { const clusterDetailsWithAuthToken: ClusterDetails = Object.assign( {}, @@ -36,8 +36,7 @@ export class OidcKubernetesAuthTranslator implements KubernetesAuthTranslator { ); } - const authToken: string | undefined = - requestBody.auth?.oidc?.[oidcTokenProvider]; + const authToken: string | undefined = authConfig.oidc?.[oidcTokenProvider]; if (authToken) { clusterDetailsWithAuthToken.serviceAccountToken = authToken; diff --git a/plugins/kubernetes-backend/src/kubernetes-auth-translator/types.ts b/plugins/kubernetes-backend/src/kubernetes-auth-translator/types.ts index f14ba877b7..640a20303e 100644 --- a/plugins/kubernetes-backend/src/kubernetes-auth-translator/types.ts +++ b/plugins/kubernetes-backend/src/kubernetes-auth-translator/types.ts @@ -15,11 +15,11 @@ */ import { ClusterDetails } from '../types/types'; -import { KubernetesRequestBody } from '@backstage/plugin-kubernetes-common'; +import { KubernetesRequestAuth } from '@backstage/plugin-kubernetes-common'; export interface KubernetesAuthTranslator { decorateClusterDetailsWithAuth( clusterDetails: ClusterDetails, - requestBody: KubernetesRequestBody, + authConfig: KubernetesRequestAuth, ): Promise; } diff --git a/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.test.ts b/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.test.ts index 0dce2305bf..2ead460848 100644 --- a/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.test.ts +++ b/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.test.ts @@ -15,6 +15,7 @@ */ import '@backstage/backend-common'; +import { Entity } from '@backstage/catalog-model'; import { MultiTenantServiceLocator } from './MultiTenantServiceLocator'; describe('MultiTenantConfigClusterLocator', () => { @@ -23,9 +24,9 @@ describe('MultiTenantConfigClusterLocator', () => { getClusters: async () => [], }); - const result = await sut.getClustersByServiceId('ignored'); + const result = await sut.getClustersByEntity({} as Entity); - expect(result).toStrictEqual([]); + expect(result).toStrictEqual({ clusters: [] }); }); it('one clusters returns one cluster details', async () => { @@ -42,16 +43,18 @@ describe('MultiTenantConfigClusterLocator', () => { }, }); - const result = await sut.getClustersByServiceId('ignored'); + const result = await sut.getClustersByEntity({} as Entity); - expect(result).toStrictEqual([ - { - name: 'cluster1', - serviceAccountToken: '12345', - url: 'http://localhost:8080', - authProvider: 'serviceAccount', - }, - ]); + expect(result).toStrictEqual({ + clusters: [ + { + name: 'cluster1', + serviceAccountToken: '12345', + url: 'http://localhost:8080', + authProvider: 'serviceAccount', + }, + ], + }); }); it('two clusters returns two cluster details', async () => { @@ -73,20 +76,22 @@ describe('MultiTenantConfigClusterLocator', () => { }, }); - const result = await sut.getClustersByServiceId('ignored'); + const result = await sut.getClustersByEntity({} as Entity); - expect(result).toStrictEqual([ - { - name: 'cluster1', - serviceAccountToken: 'token', - url: 'http://localhost:8080', - authProvider: 'serviceAccount', - }, - { - name: 'cluster2', - url: 'http://localhost:8081', - authProvider: 'google', - }, - ]); + expect(result).toStrictEqual({ + clusters: [ + { + name: 'cluster1', + serviceAccountToken: 'token', + url: 'http://localhost:8080', + authProvider: 'serviceAccount', + }, + { + name: 'cluster2', + url: 'http://localhost:8081', + authProvider: 'google', + }, + ], + }); }); }); diff --git a/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.ts b/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.ts index 30c66a38d1..7bafbb10f3 100644 --- a/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.ts +++ b/plugins/kubernetes-backend/src/service-locator/MultiTenantServiceLocator.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { Entity } from '@backstage/catalog-model'; import { ClusterDetails, KubernetesClustersSupplier, @@ -30,8 +31,9 @@ export class MultiTenantServiceLocator implements KubernetesServiceLocator { } // As this implementation always returns all clusters serviceId is ignored here - // eslint-disable-next-line @typescript-eslint/no-unused-vars - async getClustersByServiceId(_serviceId: string): Promise { - return this.clusterSupplier.getClusters(); + getClustersByEntity( + _entity: Entity, + ): Promise<{ clusters: ClusterDetails[] }> { + return this.clusterSupplier.getClusters().then(clusters => ({ clusters })); } } diff --git a/plugins/kubernetes-backend/src/service/KubernetesBuilder.test.ts b/plugins/kubernetes-backend/src/service/KubernetesBuilder.test.ts index 37dad8c3e4..ecaf9f3095 100644 --- a/plugins/kubernetes-backend/src/service/KubernetesBuilder.test.ts +++ b/plugins/kubernetes-backend/src/service/KubernetesBuilder.test.ts @@ -15,6 +15,7 @@ */ import { getVoidLogger } from '@backstage/backend-common'; +import { Entity } from '@backstage/catalog-model'; import { Config, ConfigReader } from '@backstage/config'; import { ObjectsByEntityResponse } from '@backstage/plugin-kubernetes-common'; import express from 'express'; @@ -207,8 +208,10 @@ describe('KubernetesBuilder', () => { }; const serviceLocator: KubernetesServiceLocator = { - getClustersByServiceId(_serviceId: string): Promise { - return Promise.resolve([someCluster]); + getClustersByEntity( + _entity: Entity, + ): Promise<{ clusters: ClusterDetails[] }> { + return Promise.resolve({ clusters: [someCluster] }); }, }; @@ -244,7 +247,15 @@ describe('KubernetesBuilder', () => { .build(); app = express().use(router); - const response = await request(app).post('/services/test-service'); + const response = await request(app) + .post('/services/test-service') + .send({ + entity: { + metadata: { + name: 'thing', + }, + }, + }); expect(response.body).toEqual(result); expect(response.status).toEqual(200); diff --git a/plugins/kubernetes-backend/src/service/KubernetesBuilder.ts b/plugins/kubernetes-backend/src/service/KubernetesBuilder.ts index 18c3fdc931..1b058752c9 100644 --- a/plugins/kubernetes-backend/src/service/KubernetesBuilder.ts +++ b/plugins/kubernetes-backend/src/service/KubernetesBuilder.ts @@ -38,6 +38,10 @@ import { } from './KubernetesFanOutHandler'; import { KubernetesClientBasedFetcher } from './KubernetesFetcher'; +/** + * + * @alpha + */ export interface KubernetesEnvironment { logger: Logger; config: Config; @@ -46,7 +50,7 @@ export interface KubernetesEnvironment { /** * The return type of the `KubernetesBuilder.build` method * - * @public + * @alpha */ export type KubernetesBuilderReturn = Promise<{ router: express.Router; @@ -57,6 +61,10 @@ export type KubernetesBuilderReturn = Promise<{ serviceLocator: KubernetesServiceLocator; }>; +/** + * + * @alpha + */ export class KubernetesBuilder { private clusterSupplier?: KubernetesClustersSupplier; private defaultClusterRefreshInterval: Duration = Duration.fromObject({ @@ -227,9 +235,10 @@ export class KubernetesBuilder { const serviceId = req.params.serviceId; const requestBody: ObjectsByEntityRequest = req.body; try { - const response = await objectsProvider.getKubernetesObjectsByEntity( - requestBody, - ); + const response = await objectsProvider.getKubernetesObjectsByEntity({ + entity: requestBody.entity, + auth: requestBody.auth || {}, + }); res.json(response); } catch (e) { logger.error( diff --git a/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.test.ts b/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.test.ts index da8f703ba0..176498839d 100644 --- a/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.test.ts +++ b/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.test.ts @@ -22,7 +22,7 @@ import { PodStatus } from '@kubernetes/client-node/dist/top'; const fetchObjectsForService = jest.fn(); const fetchPodMetricsByNamespace = jest.fn(); -const getClustersByServiceId = jest.fn(); +const getClustersByEntity = jest.fn(); const POD_METRICS_FIXTURE = { containers: [], @@ -166,13 +166,15 @@ describe('handleGetKubernetesObjectsForService', () => { }); it('retrieve objects for one cluster', async () => { - getClustersByServiceId.mockImplementation(() => - Promise.resolve([ - { - name: 'test-cluster', - authProvider: 'serviceAccount', - }, - ]), + getClustersByEntity.mockImplementation(() => + Promise.resolve({ + clusters: [ + { + name: 'test-cluster', + authProvider: 'serviceAccount', + }, + ], + }), ); mockFetch(fetchObjectsForService); @@ -185,7 +187,7 @@ describe('handleGetKubernetesObjectsForService', () => { fetchPodMetricsByNamespace, }, serviceLocator: { - getClustersByServiceId, + getClustersByEntity, }, customResources: [], }); @@ -207,9 +209,10 @@ describe('handleGetKubernetesObjectsForService', () => { owner: 'joe', }, }, + auth: {}, }); - expect(getClustersByServiceId.mock.calls.length).toBe(1); + expect(getClustersByEntity.mock.calls.length).toBe(1); expect(fetchObjectsForService.mock.calls.length).toBe(1); expect(fetchPodMetricsByNamespace.mock.calls.length).toBe(1); expect(fetchPodMetricsByNamespace.mock.calls[0][1]).toBe( @@ -265,13 +268,15 @@ describe('handleGetKubernetesObjectsForService', () => { }); it('dont call top for the same namespace twice', async () => { - getClustersByServiceId.mockImplementation(() => - Promise.resolve([ - { - name: 'test-cluster', - authProvider: 'serviceAccount', - }, - ]), + getClustersByEntity.mockImplementation(() => + Promise.resolve({ + clusters: [ + { + name: 'test-cluster', + authProvider: 'serviceAccount', + }, + ], + }), ); fetchObjectsForService.mockImplementation((_: ObjectFetchParams) => @@ -314,7 +319,7 @@ describe('handleGetKubernetesObjectsForService', () => { fetchPodMetricsByNamespace, }, serviceLocator: { - getClustersByServiceId, + getClustersByEntity, }, customResources: [], }); @@ -336,9 +341,10 @@ describe('handleGetKubernetesObjectsForService', () => { owner: 'joe', }, }, + auth: {}, }); - expect(getClustersByServiceId.mock.calls.length).toBe(1); + expect(getClustersByEntity.mock.calls.length).toBe(1); expect(fetchObjectsForService.mock.calls.length).toBe(1); expect(fetchPodMetricsByNamespace.mock.calls.length).toBe(2); expect(fetchPodMetricsByNamespace.mock.calls[0][1]).toBe('ns-a'); @@ -383,18 +389,20 @@ describe('handleGetKubernetesObjectsForService', () => { }); it('retrieve objects for two clusters', async () => { - getClustersByServiceId.mockImplementation(() => - Promise.resolve([ - { - name: 'test-cluster', - authProvider: 'serviceAccount', - dashboardUrl: 'https://k8s.foo.coom', - }, - { - name: 'other-cluster', - authProvider: 'google', - }, - ]), + getClustersByEntity.mockImplementation(() => + Promise.resolve({ + clusters: [ + { + name: 'test-cluster', + authProvider: 'serviceAccount', + dashboardUrl: 'https://k8s.foo.coom', + }, + { + name: 'other-cluster', + authProvider: 'google', + }, + ], + }), ); mockFetch(fetchObjectsForService); @@ -407,15 +415,12 @@ describe('handleGetKubernetesObjectsForService', () => { fetchPodMetricsByNamespace, }, serviceLocator: { - getClustersByServiceId, + getClustersByEntity, }, customResources: [], }); const result = await sut.getKubernetesObjectsByEntity({ - auth: { - google: 'google_token_123', - }, entity: { apiVersion: 'backstage.io/v1beta1', kind: 'Component', @@ -432,9 +437,12 @@ describe('handleGetKubernetesObjectsForService', () => { owner: 'joe', }, }, + auth: { + google: 'google_token_123', + }, }); - expect(getClustersByServiceId.mock.calls.length).toBe(1); + expect(getClustersByEntity.mock.calls.length).toBe(1); expect(fetchObjectsForService.mock.calls.length).toBe(2); expect(result).toStrictEqual({ items: [ @@ -527,21 +535,23 @@ describe('handleGetKubernetesObjectsForService', () => { }); }); it('retrieve objects for three clusters, only two have resources and show in ui', async () => { - getClustersByServiceId.mockImplementation(() => - Promise.resolve([ - { - name: 'test-cluster', - authProvider: 'serviceAccount', - }, - { - name: 'other-cluster', - authProvider: 'google', - }, - { - name: 'empty-cluster', - authProvider: 'google', - }, - ]), + getClustersByEntity.mockImplementation(() => + Promise.resolve({ + clusters: [ + { + name: 'test-cluster', + authProvider: 'serviceAccount', + }, + { + name: 'other-cluster', + authProvider: 'google', + }, + { + name: 'empty-cluster', + authProvider: 'google', + }, + ], + }), ); mockFetch(fetchObjectsForService); @@ -554,15 +564,12 @@ describe('handleGetKubernetesObjectsForService', () => { fetchPodMetricsByNamespace, }, serviceLocator: { - getClustersByServiceId, + getClustersByEntity, }, customResources: [], }); const result = await sut.getKubernetesObjectsByEntity({ - auth: { - google: 'google_token_123', - }, entity: { apiVersion: 'backstage.io/v1beta1', kind: 'Component', @@ -579,9 +586,12 @@ describe('handleGetKubernetesObjectsForService', () => { owner: 'joe', }, }, + auth: { + google: 'google_token_123', + }, }); - expect(getClustersByServiceId.mock.calls.length).toBe(1); + expect(getClustersByEntity.mock.calls.length).toBe(1); expect(fetchObjectsForService.mock.calls.length).toBe(3); expect(result).toStrictEqual({ items: [ @@ -673,25 +683,27 @@ describe('handleGetKubernetesObjectsForService', () => { }); }); it('retrieve objects for four clusters, two have resources and one error cluster', async () => { - getClustersByServiceId.mockImplementation(() => - Promise.resolve([ - { - name: 'test-cluster', - authProvider: 'serviceAccount', - }, - { - name: 'other-cluster', - authProvider: 'google', - }, - { - name: 'empty-cluster', - authProvider: 'google', - }, - { - name: 'error-cluster', - authProvider: 'google', - }, - ]), + getClustersByEntity.mockImplementation(() => + Promise.resolve({ + clusters: [ + { + name: 'test-cluster', + authProvider: 'serviceAccount', + }, + { + name: 'other-cluster', + authProvider: 'google', + }, + { + name: 'empty-cluster', + authProvider: 'google', + }, + { + name: 'error-cluster', + authProvider: 'google', + }, + ], + }), ); mockFetch(fetchObjectsForService); @@ -704,15 +716,12 @@ describe('handleGetKubernetesObjectsForService', () => { fetchPodMetricsByNamespace, }, serviceLocator: { - getClustersByServiceId, + getClustersByEntity, }, customResources: [], }); const result = await sut.getKubernetesObjectsByEntity({ - auth: { - google: 'google_token_123', - }, entity: { apiVersion: 'backstage.io/v1beta1', kind: 'Component', @@ -729,9 +738,12 @@ describe('handleGetKubernetesObjectsForService', () => { owner: 'joe', }, }, + auth: { + google: 'google_token_123', + }, }); - expect(getClustersByServiceId.mock.calls.length).toBe(1); + expect(getClustersByEntity.mock.calls.length).toBe(1); expect(fetchObjectsForService.mock.calls.length).toBe(4); expect(result).toStrictEqual({ items: [ diff --git a/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.ts b/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.ts index 427165e4f1..ac2ffaf2ed 100644 --- a/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.ts +++ b/plugins/kubernetes-backend/src/service/KubernetesFanOutHandler.ts @@ -14,16 +14,20 @@ * limitations under the License. */ +import { Entity } from '@backstage/catalog-model'; import { Logger } from 'winston'; import { ClusterDetails, - CustomResource, KubernetesFetcher, KubernetesObjectsProviderOptions, KubernetesServiceLocator, ObjectsByEntityRequest, FetchResponseWrapper, ObjectToFetch, + CustomResource, + CustomResourceMatcher, + CustomResourcesByEntity, + KubernetesObjectsByEntity, } from '../types/types'; import { KubernetesAuthTranslator } from '../kubernetes-auth-translator/types'; import { KubernetesAuthTranslatorGenerator } from '../kubernetes-auth-translator/KubernetesAuthTranslatorGenerator'; @@ -35,6 +39,7 @@ import { FetchResponse, ObjectsByEntityResponse, PodFetchResponse, + KubernetesRequestAuth, } from '@backstage/plugin-kubernetes-common'; import { ContainerStatus, @@ -42,6 +47,10 @@ import { PodStatus, } from '@kubernetes/client-node'; +/** + * + * @alpha + */ export const DEFAULT_OBJECTS: ObjectToFetch[] = [ { group: '', @@ -178,26 +187,44 @@ export class KubernetesFanOutHandler { this.authTranslators = {}; } - async getKubernetesObjectsByEntity( - requestBody: KubernetesRequestBody, - ): Promise { - const entityName = - requestBody.entity?.metadata?.annotations?.[ - 'backstage.io/kubernetes-id' - ] || requestBody.entity?.metadata?.name; - - const clusterDetails: ClusterDetails[] = - await this.serviceLocator.getClustersByServiceId(entityName); - - // Execute all of these async actions simultaneously/without blocking sequentially as no common object is modified by them - const promises: Promise[] = clusterDetails.map(cd => { - return this.getAuthTranslator( - cd.authProvider, - ).decorateClusterDetailsWithAuth(cd, requestBody); - }); - const clusterDetailsDecoratedForAuth: ClusterDetails[] = await Promise.all( - promises, + async getCustomResourcesByEntity({ + entity, + auth, + customResources, + }: CustomResourcesByEntity): Promise { + // Don't fetch the default object types only the provided custom resources + return this.fanOutRequests( + entity, + auth, + new Set(), + customResources, ); + } + + async getKubernetesObjectsByEntity({ + entity, + auth, + }: KubernetesObjectsByEntity): Promise { + return this.fanOutRequests( + entity, + auth, + this.objectTypesToFetch, + this.customResources, + ); + } + + private async fanOutRequests( + entity: Entity, + auth: KubernetesRequestAuth, + objectTypesToFetch: Set, + customResources: CustomResourceMatcher[], + ) { + const entityName = + entity.metadata?.annotations?.['backstage.io/kubernetes-id'] || + entity.metadata?.name; + + const clusterDetailsDecoratedForAuth: ClusterDetails[] = + await this.decorateClusterDetailsWithAuth(entity, auth); this.logger.info( `entity.metadata.name=${entityName} clusterDetails=[${clusterDetailsDecoratedForAuth @@ -206,14 +233,12 @@ export class KubernetesFanOutHandler { ); const labelSelector: string = - requestBody.entity?.metadata?.annotations?.[ + entity.metadata?.annotations?.[ 'backstage.io/kubernetes-label-selector' ] || `backstage.io/kubernetes-id=${entityName}`; const namespace = - requestBody.entity?.metadata?.annotations?.[ - 'backstage.io/kubernetes-namespace' - ]; + entity.metadata?.annotations?.['backstage.io/kubernetes-namespace']; return Promise.all( clusterDetailsDecoratedForAuth.map(clusterDetailsItem => { @@ -221,9 +246,12 @@ export class KubernetesFanOutHandler { .fetchObjectsForService({ serviceId: entityName, clusterDetails: clusterDetailsItem, - objectTypesToFetch: this.objectTypesToFetch, + objectTypesToFetch: objectTypesToFetch, labelSelector, - customResources: this.customResources, + customResources: customResources.map(c => ({ + ...c, + objectType: 'customresources', + })), namespace, }) .then(result => this.getMetricsForPods(clusterDetailsItem, result)) @@ -232,6 +260,27 @@ export class KubernetesFanOutHandler { ).then(this.toObjectsByEntityResponse); } + private async decorateClusterDetailsWithAuth( + entity: Entity, + auth: KubernetesRequestAuth, + ) { + const clusterDetails: ClusterDetails[] = await ( + await this.serviceLocator.getClustersByEntity(entity) + ).clusters; + + // Execute all of these async actions simultaneously/without blocking sequentially as no common object is modified by them + return await Promise.all( + clusterDetails.map(cd => { + const kubernetesAuthTranslator: KubernetesAuthTranslator = + this.getAuthTranslator(cd.authProvider); + return kubernetesAuthTranslator.decorateClusterDetailsWithAuth( + cd, + auth, + ); + }), + ); + } + toObjectsByEntityResponse( clusterObjects: ClusterObjects[], ): ObjectsByEntityResponse { diff --git a/plugins/kubernetes-backend/src/service/router.ts b/plugins/kubernetes-backend/src/service/router.ts index 61082267be..7bd7cca8a9 100644 --- a/plugins/kubernetes-backend/src/service/router.ts +++ b/plugins/kubernetes-backend/src/service/router.ts @@ -20,6 +20,10 @@ import { KubernetesClustersSupplier } from '../types/types'; import express from 'express'; import { KubernetesBuilder } from './KubernetesBuilder'; +/** + * + * @alpha + */ export interface RouterOptions { logger: Logger; config: Config; @@ -38,6 +42,8 @@ export interface RouterOptions { * config, * }).build(); * ``` + * + * @alpha */ export async function createRouter( options: RouterOptions, diff --git a/plugins/kubernetes-backend/src/types/types.ts b/plugins/kubernetes-backend/src/types/types.ts index 67456d12c8..6302a49fa5 100644 --- a/plugins/kubernetes-backend/src/types/types.ts +++ b/plugins/kubernetes-backend/src/types/types.ts @@ -14,16 +14,22 @@ * limitations under the License. */ +import { Entity } from '@backstage/catalog-model'; import { Logger } from 'winston'; import type { JsonObject } from '@backstage/types'; import type { FetchResponse, KubernetesFetchError, + KubernetesRequestAuth, KubernetesRequestBody, ObjectsByEntityResponse, } from '@backstage/plugin-kubernetes-common'; import { PodStatus } from '@kubernetes/client-node/dist/top'; +/** + * + * @alpha + */ export interface ObjectFetchParams { serviceId: string; clusterDetails: @@ -37,8 +43,11 @@ export interface ObjectFetchParams { namespace?: string; } -// Fetches information from a kubernetes cluster using the cluster details object -// to target a specific cluster +/** + * Fetches information from a kubernetes cluster using the cluster details object to target a specific cluster + * + * @alpha + */ export interface KubernetesFetcher { fetchObjectsForService( params: ObjectFetchParams, @@ -49,13 +58,19 @@ export interface KubernetesFetcher { ): Promise; } +/** + * + * @alpha + */ export interface FetchResponseWrapper { errors: KubernetesFetchError[]; responses: FetchResponse[]; } -// TODO fairly sure there's a easier way to do this - +/** + * + * @alpha + */ export interface ObjectToFetch { objectType: KubernetesObjectTypes; group: string; @@ -63,10 +78,24 @@ export interface ObjectToFetch { plural: string; } +/** + * + * @alpha + */ export interface CustomResource extends ObjectToFetch { objectType: 'customresources'; } +/** + * + * @alpha + */ +export type CustomResourceMatcher = Omit; + +/** + * + * @alpha + */ export type KubernetesObjectTypes = | 'pods' | 'services' @@ -80,7 +109,10 @@ export type KubernetesObjectTypes = | 'customresources' | 'statefulsets'; -// Used to load cluster details from different sources +/** + * Used to load cluster details from different sources + * @alpha + */ export interface KubernetesClustersSupplier { /** * Returns the cached list of clusters. @@ -91,13 +123,24 @@ export interface KubernetesClustersSupplier { getClusters(): Promise; } -// Used to locate which cluster(s) a service is running on +/** + * Used to locate which cluster(s) a service is running on + * @alpha + */ export interface KubernetesServiceLocator { - getClustersByServiceId(serviceId: string): Promise; + getClustersByEntity(entity: Entity): Promise<{ clusters: ClusterDetails[] }>; } +/** + * + * @alpha + */ export type ServiceLocatorMethod = 'multiTenant' | 'http'; // TODO implement http +/** + * + * @alpha + */ export interface ClusterDetails { /** * Specifies the name of the Kubernetes cluster. @@ -151,14 +194,37 @@ export interface ClusterDetails { dashboardParameters?: JsonObject; } +/** + * + * @alpha + */ export interface GKEClusterDetails extends ClusterDetails {} + +/** + * + * @alpha + */ export interface AzureClusterDetails extends ClusterDetails {} + +/** + * + * @alpha + */ export interface ServiceAccountClusterDetails extends ClusterDetails {} + +/** + * + * @alpha + */ export interface AWSClusterDetails extends ClusterDetails { assumeRole?: string; externalId?: string; } +/** + * + * @alpha + */ export interface KubernetesObjectsProviderOptions { logger: Logger; fetcher: KubernetesFetcher; @@ -167,10 +233,38 @@ export interface KubernetesObjectsProviderOptions { objectTypesToFetch?: ObjectToFetch[]; } +/** + * + * @alpha + */ export type ObjectsByEntityRequest = KubernetesRequestBody; +/** + * + * @alpha + */ +export interface KubernetesObjectsByEntity { + entity: Entity; + auth: KubernetesRequestAuth; +} + +/** + * + * @alpha + */ +export interface CustomResourcesByEntity extends KubernetesObjectsByEntity { + customResources: CustomResourceMatcher[]; +} + +/** + * + * @alpha + */ export interface KubernetesObjectsProvider { getKubernetesObjectsByEntity( - request: ObjectsByEntityRequest, + kubernetesObjectsByEntity: KubernetesObjectsByEntity, + ): Promise; + getCustomResourcesByEntity( + customResourcesByEntity: CustomResourcesByEntity, ): Promise; } diff --git a/plugins/kubernetes-common/api-report.md b/plugins/kubernetes-common/api-report.md index cca4a9760f..d59db7422f 100644 --- a/plugins/kubernetes-common/api-report.md +++ b/plugins/kubernetes-common/api-report.md @@ -190,17 +190,24 @@ export interface KubernetesFetchError { statusCode?: number; } +// Warning: (ae-missing-release-tag) "KubernetesRequestAuth" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export interface KubernetesRequestAuth { + // (undocumented) + google?: string; + // (undocumented) + oidc?: { + [key: string]: string; + }; +} + // Warning: (ae-missing-release-tag) "KubernetesRequestBody" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) export interface KubernetesRequestBody { // (undocumented) - auth?: { - google?: string; - oidc?: { - [key: string]: string; - }; - }; + auth?: KubernetesRequestAuth; // (undocumented) entity: Entity; } diff --git a/plugins/kubernetes-common/src/types.ts b/plugins/kubernetes-common/src/types.ts index 3d4746ca44..68fbe09301 100644 --- a/plugins/kubernetes-common/src/types.ts +++ b/plugins/kubernetes-common/src/types.ts @@ -29,13 +29,15 @@ import { } from '@kubernetes/client-node'; import { Entity } from '@backstage/catalog-model'; -export interface KubernetesRequestBody { - auth?: { - google?: string; - oidc?: { - [key: string]: string; - }; +export interface KubernetesRequestAuth { + google?: string; + oidc?: { + [key: string]: string; }; +} + +export interface KubernetesRequestBody { + auth?: KubernetesRequestAuth; entity: Entity; } From c216659278f7a5ee0d6b8b59ebf9106af72bc23d Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 19:45:53 +0000 Subject: [PATCH 464/550] chore(deps): update storybook monorepo to v6.5.9 Signed-off-by: Renovate Bot --- storybook/yarn.lock | 682 ++++++++++++++++++++++---------------------- 1 file changed, 344 insertions(+), 338 deletions(-) diff --git a/storybook/yarn.lock b/storybook/yarn.lock index 91530cccf6..39d0e2725f 100644 --- a/storybook/yarn.lock +++ b/storybook/yarn.lock @@ -18,9 +18,9 @@ "@babel/highlight" "^7.16.7" "@babel/compat-data@^7.13.11", "@babel/compat-data@^7.17.10": - version "7.17.10" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" - integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw== + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.5.tgz#acac0c839e317038c73137fbb6ef71a1d6238471" + integrity sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg== "@babel/core@7.12.9": version "7.12.9" @@ -45,9 +45,9 @@ source-map "^0.5.0" "@babel/core@^7.12.10", "@babel/core@^7.7.5": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.18.2.tgz#87b2fcd7cce9becaa7f5acebdc4f09f3dd19d876" - integrity sha512-A8pri1YJiC5UnkdrWcmfZTJTV85b4UXTAfImGmCfYmax4TR9Cw8sDS0MOk++Gp2mE/BefVJ5nwy5yzqNJbP/DQ== + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz#c597fa680e58d571c28dda9827669c78cdd7f000" + integrity sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ== dependencies: "@ampproject/remapping" "^2.1.0" "@babel/code-frame" "^7.16.7" @@ -55,10 +55,10 @@ "@babel/helper-compilation-targets" "^7.18.2" "@babel/helper-module-transforms" "^7.18.0" "@babel/helpers" "^7.18.2" - "@babel/parser" "^7.18.0" + "@babel/parser" "^7.18.5" "@babel/template" "^7.16.7" - "@babel/traverse" "^7.18.2" - "@babel/types" "^7.18.2" + "@babel/traverse" "^7.18.5" + "@babel/types" "^7.18.4" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -299,10 +299,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.16.7", "@babel/parser@^7.18.0": - version "7.18.4" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.18.4.tgz#6774231779dd700e0af29f6ad8d479582d7ce5ef" - integrity sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow== +"@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.16.7", "@babel/parser@^7.18.5": + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz#337062363436a893a2d22faa60be5bb37091c83c" + integrity sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw== "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.17.12": version "7.17.12" @@ -763,9 +763,9 @@ babel-plugin-dynamic-import-node "^2.3.3" "@babel/plugin-transform-modules-systemjs@^7.18.0": - version "7.18.4" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.4.tgz#3d6fd9868c735cce8f38d6ae3a407fb7e61e6d46" - integrity sha512-lH2UaQaHVOAeYrUUuZ8i38o76J/FnO8vu21OE+tD1MyP9lxdZoSfz+pDbWkq46GogUrdrMz3tiz/FYGB+bVThg== + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.5.tgz#87f11c44fbfd3657be000d4897e192d9cb535996" + integrity sha512-SEewrhPpcqMF1V7DhnEbhVJLrC+nnYfe1E0piZMZXBpxi9WvZqWGwpsk7JYP7wPWeqaBh4gyKlBhHJu3uz5g4Q== dependencies: "@babel/helper-hoist-variables" "^7.16.7" "@babel/helper-module-transforms" "^7.18.0" @@ -790,9 +790,9 @@ "@babel/helper-plugin-utils" "^7.17.12" "@babel/plugin-transform-new-target@^7.17.12": - version "7.17.12" - resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.17.12.tgz#10842cd605a620944e81ea6060e9e65c265742e3" - integrity sha512-CaOtzk2fDYisbjAD4Sd1MTKGVIpRtx9bWLyj24Y/k6p4s4gQ3CqDGJauFJxt8M/LEx003d0i3klVqnN73qvK3w== + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.5.tgz#8c228c4a07501dd12c95c5f23d1622131cc23931" + integrity sha512-TuRL5uGW4KXU6OsRj+mLp9BM7pO8e7SGNTEokQRRxHFkXYMFiy2jlKSZPFtI/mKORDzciH+hneskcSOp0gU8hg== dependencies: "@babel/helper-plugin-utils" "^7.17.12" @@ -1075,10 +1075,10 @@ "@babel/parser" "^7.16.7" "@babel/types" "^7.16.7" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.18.0", "@babel/traverse@^7.18.2": - version "7.18.2" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.2.tgz#b77a52604b5cc836a9e1e08dca01cba67a12d2e8" - integrity sha512-9eNwoeovJ6KH9zcCNnENY7DMFwTU9JdGCFtqNLfUAqtUHRCOsTOqWoffosP8vKmNYeSBUv3yVJXjfd8ucwOjUA== +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.18.0", "@babel/traverse@^7.18.2", "@babel/traverse@^7.18.5": + version "7.18.5" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz#94a8195ad9642801837988ab77f36e992d9a20cd" + integrity sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA== dependencies: "@babel/code-frame" "^7.16.7" "@babel/generator" "^7.18.2" @@ -1086,12 +1086,12 @@ "@babel/helper-function-name" "^7.17.9" "@babel/helper-hoist-variables" "^7.16.7" "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/parser" "^7.18.0" - "@babel/types" "^7.18.2" + "@babel/parser" "^7.18.5" + "@babel/types" "^7.18.4" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.17.12", "@babel/types@^7.18.0", "@babel/types@^7.18.2", "@babel/types@^7.2.0", "@babel/types@^7.4.4": +"@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0", "@babel/types@^7.17.12", "@babel/types@^7.18.0", "@babel/types@^7.18.2", "@babel/types@^7.18.4", "@babel/types@^7.2.0", "@babel/types@^7.4.4": version "7.18.4" resolved "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz#27eae9b9fd18e9dccc3f9d6ad051336f307be354" integrity sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw== @@ -1273,18 +1273,18 @@ source-map "^0.7.3" "@storybook/addon-a11y@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.8.tgz#90ecf3490f0e7e2096ae04d6d6386bae5182fb94" - integrity sha512-nBP8t7wADsKoDLqeH4S4YbxuE+t9Xw9T+XpeG94xn9oJPE1Tj4A0x0X91sTIPbi/FF07lCiaUP+eq92Y1bAV+Q== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-6.5.9.tgz#191fb8ea9be4feee67fd11553b98ab56ecfc1295" + integrity sha512-jRiuJ2xlN8quVq2lOqpxqyuwAj8xLcgVBPy+Mf220u7AZmmbS/0sONyHKROfEBjJoHQAQYqn2vSAeuQZuTWyVA== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.8" + "@storybook/theming" "6.5.9" axe-core "^4.2.0" core-js "^3.8.2" global "^4.4.0" @@ -1295,17 +1295,17 @@ util-deprecate "^1.0.2" "@storybook/addon-actions@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.8.tgz#c1f544acc016a4a0d5dcb373535dc991b5737c5f" - integrity sha512-9ciR1iWBTzQNBDlq0iQs9+TV7gng+FbQxW5mHNxNvT9SxY1dt02wCPHZeVE/5la61wBXZs/zpEepZA93VzVBDw== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-6.5.9.tgz#d50d65631403e1a5b680961429d9c0d7bd383e68" + integrity sha512-wDYm3M1bN+zcYZV3Q24M03b/P8DDpvj1oSoY6VLlxDAi56h8qZB/voeIS2I6vWXOB79C5tbwljYNQO0GsufS0g== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.8" + "@storybook/theming" "6.5.9" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1320,33 +1320,33 @@ uuid-browser "^3.1.0" "@storybook/addon-controls@^6.4.22": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.8.tgz#779407655d990f88e1d3bb734cf116bc419ab6ba" - integrity sha512-fB6p5DgVHUnJKUzOlT2mtvaSCincnO+vuYLyf++f+l4BlYK1Es9HNl/puaRoMgdW+LoGJjXPTIMcMByeHVIt6Q== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-6.5.9.tgz#8f6ef939c87b3dbad98f8bda7e124f0b34f668d2" + integrity sha512-VvjkgK32bGURKyWU2No6Q2B0RQZjLZk8D3neVNCnrWxwrl1G82StegxjRPn/UZm9+MZVPvTvI46nj1VdgOktnw== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/core-common" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/core-common" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/node-logger" "6.5.8" - "@storybook/store" "6.5.8" - "@storybook/theming" "6.5.8" + "@storybook/node-logger" "6.5.9" + "@storybook/store" "6.5.9" + "@storybook/theming" "6.5.9" core-js "^3.8.2" lodash "^4.17.21" ts-dedent "^2.0.0" "@storybook/addon-links@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.8.tgz#ec4b640bf89dbb653592e6f05968ba771bb10b4a" - integrity sha512-UxzEPnT1PLPsuy3tt+o3UJTbI4Kihec+/yzpzzGKreUnCC8EWTsOhtMQAVVit2t4BMl4vNrxKO0mKSc8saT3Gw== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-6.5.9.tgz#91cbca0c044796badf2498723fdd10dacea5748b" + integrity sha512-4BYC7pkxL3NLRnEgTA9jpIkObQKril+XFj1WtmY/lngF90vvK0Kc/TtvTA2/5tSgrHfxEuPevIdxMIyLJ4ejWQ== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.8" + "@storybook/router" "6.5.9" "@types/qs" "^6.9.5" core-js "^3.8.2" global "^4.4.0" @@ -1356,17 +1356,17 @@ ts-dedent "^2.0.0" "@storybook/addon-storysource@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.8.tgz#6754b19b714fc19e6601fe5385fcf05c648a8f36" - integrity sha512-BujH4Xdhvegi4WvI1foBfrnUGnyJ18sLn47xJ2D26kQQXgC3qiGaUiQuEfGeETYgDuIxoxTkv5N4Y1ocjoOSkA== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addon-storysource/-/addon-storysource-6.5.9.tgz#8e5fb76b9314a69831a3b5e08e8570407c39de75" + integrity sha512-7KLw03mE1JJSJQrqNDftoVVp2BBq8wltd0qo7WHkpRVfir9dMO3g7Wy6S6UPsrb9th47ZjonwBJEc28GwAq0yg== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/router" "6.5.8" - "@storybook/source-loader" "6.5.8" - "@storybook/theming" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/router" "6.5.9" + "@storybook/source-loader" "6.5.9" + "@storybook/theming" "6.5.9" core-js "^3.8.2" estraverse "^5.2.0" loader-utils "^2.0.0" @@ -1374,35 +1374,35 @@ react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" -"@storybook/addons@6.5.8", "@storybook/addons@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.8.tgz#c529a2989830a09d26308277a3e356228479053d" - integrity sha512-L3LmbsYP9tDHHvpr/yv8YuEkzym7SXp/jZ0km31tpG3EuZmgGu7MXPrZ2ymEw4PkAhQzztgRr23VTfKobGUojA== +"@storybook/addons@6.5.9", "@storybook/addons@^6.4.21": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/addons/-/addons-6.5.9.tgz#5a9d7395c579a9cbc44dfc122362fb3c95dfb9d5" + integrity sha512-adwdiXg+mntfPocLc1KXjZXyLgGk7Aac699Fwe+OUYPEC5tW347Rm/kFatcE556d42o5czcRiq3ZSIGWnm9ieQ== dependencies: - "@storybook/api" "6.5.8" - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/api" "6.5.9" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.8" - "@storybook/theming" "6.5.8" + "@storybook/router" "6.5.9" + "@storybook/theming" "6.5.9" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" global "^4.4.0" regenerator-runtime "^0.13.7" -"@storybook/api@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.8.tgz#8bd400b8a5b18ec6bff5d35a898593d9c1c630f9" - integrity sha512-/MueV+wLCvy9gFA3ih4g7QYjDmn14i+D2ydonfaEC7R+agFGXxXwJGPKkz3yBNrRpNkBwcbY9mAmv8lE2AqgqQ== +"@storybook/api@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/api/-/api-6.5.9.tgz#303733214c9de0422d162f7c54ae05d088b89bf9" + integrity sha512-9ylztnty4Y+ALU/ehW3BML9czjCAFsWvrwuCi6UgcwNjswwjSX3VRLhfD1KT3pl16ho//95LgZ0LnSwROCcPOA== dependencies: - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/router" "6.5.8" + "@storybook/router" "6.5.9" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.8" + "@storybook/theming" "6.5.9" core-js "^3.8.2" fast-deep-equal "^3.1.3" global "^4.4.0" @@ -1414,28 +1414,28 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/builder-webpack4@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.8.tgz#adfb4b91bd442c2f256d93649d50ca138c30663a" - integrity sha512-4/CVp/AlOxCeWZ/DF1TVS/TuzHao4l9KCq7DhL+utFEVl9c/dpgoZXc0Gy2FfHa2RXHKckrH/VUfV2KQk4TNSw== +"@storybook/builder-webpack4@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/builder-webpack4/-/builder-webpack4-6.5.9.tgz#4b37e1fa23a25aa4bfeaba640e5d318fcd511f95" + integrity sha512-YOeA4++9uRZ8Hog1wC60yjaxBOiI1FRQNtax7b9E7g+kP8UlSCPCGcv4gls9hFmzbzTOPfQTWnToA9Oa6jzRVw== dependencies: "@babel/core" "^7.12.10" - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/channel-postmessage" "6.5.8" - "@storybook/channels" "6.5.8" - "@storybook/client-api" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/core-common" "6.5.8" - "@storybook/core-events" "6.5.8" - "@storybook/node-logger" "6.5.8" - "@storybook/preview-web" "6.5.8" - "@storybook/router" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/channel-postmessage" "6.5.9" + "@storybook/channels" "6.5.9" + "@storybook/client-api" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/core-common" "6.5.9" + "@storybook/core-events" "6.5.9" + "@storybook/node-logger" "6.5.9" + "@storybook/preview-web" "6.5.9" + "@storybook/router" "6.5.9" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.8" - "@storybook/theming" "6.5.8" - "@storybook/ui" "6.5.8" + "@storybook/store" "6.5.9" + "@storybook/theming" "6.5.9" + "@storybook/ui" "6.5.9" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" autoprefixer "^9.8.6" @@ -1467,51 +1467,51 @@ webpack-hot-middleware "^2.25.1" webpack-virtual-modules "^0.2.2" -"@storybook/channel-postmessage@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.8.tgz#989af9a55eba391b64487640f6b5b0cfd1fde2f9" - integrity sha512-6IkIKk+UMYKk05vN8gWHvvOV/EZNXpQG/5gesGDALjkCyvRmcktHak1a9tHpoihZ3L7/gDwXOZraCZmuy8vBcQ== +"@storybook/channel-postmessage@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.5.9.tgz#9cf4530f0364cee0d5e58f92d6fb5ce98e10257b" + integrity sha512-pX/0R8UW7ezBhCrafRaL20OvMRcmESYvQQCDgjqSzJyHkcG51GOhsd6Ge93eJ6QvRMm9+w0Zs93N2VKjVtz0Qw== dependencies: - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" core-js "^3.8.2" global "^4.4.0" qs "^6.10.0" telejson "^6.0.8" -"@storybook/channel-websocket@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.8.tgz#722743619f86ebc9325bbff026acf6eba13b21ca" - integrity sha512-lAtvgO0FWsyS3u7uFbsGIYp2aSWJfWU/LOtc3x1K5c84JJAd9fncYkyZMwP1gMbdNgYxJoxe8HXtVtfeNegPuQ== +"@storybook/channel-websocket@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-6.5.9.tgz#6b7a0127fec58ee5be4f6aebcf460adc564f2f34" + integrity sha512-xtHvSNwuOhkgALwVshKWsoFhDmuvcosdYfxcfFGEiYKXIu46tRS5ZXmpmgEC/0JAVkVoFj5nL8bV7IY5np6oaA== dependencies: - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" core-js "^3.8.2" global "^4.4.0" telejson "^6.0.8" -"@storybook/channels@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.8.tgz#e85ffd2076813b67336b1b9b274c37aa5f1b80e0" - integrity sha512-fNql1lEIvWlI1NiRtwFMWOOvfW6qxgeSP6xoqiAJ0b+QYegEFG9UxJDuEvVHq++S81FulgQ5U+p+5R9XSV19tQ== +"@storybook/channels@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/channels/-/channels-6.5.9.tgz#abfab89a6587a2688e9926d4aafeb11c9d8b2e79" + integrity sha512-FvGA35nV38UPXWOl9ERapFTJaxwSTamQ339s2Ev7E9riyRG+GRkgTWzf5kECJgS1PAYKd/7m/RqKJT9BVv6A5g== dependencies: core-js "^3.8.2" ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-api@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.8.tgz#cf1b3d4a71a3a156636a9b6b51acc4239b259d86" - integrity sha512-mdU+qQ4+T2OUbEnl+3MWRKxEPju/EOIUg66hMgmif8c5u7YFYBFulUMUYLICMjll8Jlu+37+g+qO3K2eEz6CEw== +"@storybook/client-api@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.5.9.tgz#3e4a8ec1d277fd81325c5d959c553161a85fa182" + integrity sha512-pc7JKJoWLesixUKvG2nV36HukUuYoGRyAgD3PpIV7qSBS4JixqZ3VAHFUtqV1UzfOSQTovLSl4a0rIRnpie6gA== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/channel-postmessage" "6.5.8" - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/channel-postmessage" "6.5.9" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.8" + "@storybook/store" "6.5.9" "@types/qs" "^6.9.5" "@types/webpack-env" "^1.16.0" core-js "^3.8.2" @@ -1526,44 +1526,45 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/client-logger@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.8.tgz#551f818c4448ef6e6adf9c3ad256e1ae61e2d75c" - integrity sha512-dH6HSaVuOIMHy1+rpsqcD3SJxVZEEbuEtsNpdUGwLJaIuduhUJJpM2xQfUW0siZDyrgwoa+znll+G0YNUbv7sg== +"@storybook/client-logger@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.5.9.tgz#dc1669abe8c45af1cc38f74c6f4b15ff33e63014" + integrity sha512-DOHL6p0uiDd3gV/Sb2FR+Vh6OiPrrf8BrA06uvXWsMRIIvEEvnparxv9EvPg7FlmUX0T3nq7d3juwjx4F8Wbcg== dependencies: core-js "^3.8.2" global "^4.4.0" -"@storybook/components@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.8.tgz#eb18cfcc4e88b7f4081b20b8a81b92d7ae9eaeac" - integrity sha512-YE+LZ1/GXoqertxodsf+L9ehcohbICRAxgE/iNqc7MZfk95SD3XRSUbxhCpGe8QTIZJpzs1tK4LFZ3Fg5w/+Lg== +"@storybook/components@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/components/-/components-6.5.9.tgz#97e07ffe11ab76c01ccee380888991bd161f75b2" + integrity sha512-BhfX980O9zn/1J4FNMeDo8ZvL1m5Ml3T4HRpfYmEBnf8oW5b5BeF6S2K2cwFStZRjWqm1feUcwNpZxCBVMkQnQ== dependencies: - "@storybook/client-logger" "6.5.8" + "@storybook/client-logger" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/theming" "6.5.8" + "@storybook/theming" "6.5.9" "@types/react-syntax-highlighter" "11.0.5" core-js "^3.8.2" + memoizerific "^1.11.3" qs "^6.10.0" react-syntax-highlighter "^15.4.5" regenerator-runtime "^0.13.7" util-deprecate "^1.0.2" -"@storybook/core-client@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.8.tgz#4be4ce024a74b51c0650d346f1f3a11a0f921952" - integrity sha512-8x8qKQ2clvpfDcoWrNBmQ8Xt9z/i32TFIBp4PEZMcbB7eqo517nzfllLiXDipiJgO7BGxKtY5CRHQ9pAU9G27A== +"@storybook/core-client@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/core-client/-/core-client-6.5.9.tgz#ea6035d1c90d2c68e860e3cf629979491856cd88" + integrity sha512-LY0QbhShowO+PQx3gao3wdVjpKMH1AaSLmuI95FrcjoMmSXGf96jVLKQp9mJRGeHIsAa93EQBYuCihZycM3Kbg== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/channel-postmessage" "6.5.8" - "@storybook/channel-websocket" "6.5.8" - "@storybook/client-api" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/channel-postmessage" "6.5.9" + "@storybook/channel-websocket" "6.5.9" + "@storybook/client-api" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/preview-web" "6.5.8" - "@storybook/store" "6.5.8" - "@storybook/ui" "6.5.8" + "@storybook/preview-web" "6.5.9" + "@storybook/store" "6.5.9" + "@storybook/ui" "6.5.9" airbnb-js-shims "^2.2.1" ansi-to-html "^0.6.11" core-js "^3.8.2" @@ -1575,10 +1576,10 @@ unfetch "^4.2.0" util-deprecate "^1.0.2" -"@storybook/core-common@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.8.tgz#6972c7109477914f9ed72bedbe3769cec0eb8c56" - integrity sha512-ELGKLMx1d0oEA2LT+fsmo85X2RNE1EO+It7B1bw//g7jyf1hmZ7t3lXMZUCqt7eml1qy1N72LDkfmmU+H9H6ww== +"@storybook/core-common@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/core-common/-/core-common-6.5.9.tgz#7ca8258ea2634b1d64695c1e4262f71cc7457989" + integrity sha512-NxOK0mrOCo0TWZ7Npc5HU66EKoRHlrtg18/ZixblLDWQMIqY9XCck8K1kJ8QYpYCHla+aHIsYUArFe2vhlEfZA== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-proposal-class-properties" "^7.12.1" @@ -1602,7 +1603,7 @@ "@babel/preset-react" "^7.12.10" "@babel/preset-typescript" "^7.12.7" "@babel/register" "^7.12.1" - "@storybook/node-logger" "6.5.8" + "@storybook/node-logger" "6.5.9" "@storybook/semver" "^7.3.2" "@types/node" "^14.0.10 || ^16.0.0" "@types/pretty-hrtime" "^1.0.0" @@ -1631,30 +1632,30 @@ util-deprecate "^1.0.2" webpack "4" -"@storybook/core-events@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.8.tgz#bc405d37d0ed1a6eafa2682fc085b2a7a992233c" - integrity sha512-lzG4Lg65WFYvjs2k/E3CP4+eyPexEGrDyRMO9Pbj9H9x+eosYptauEbT/wXF83bmUWZKLWWVUAZX7hDcxBO8cw== +"@storybook/core-events@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.5.9.tgz#5b0783c7d22a586c0f5e927a61fe1b1223e19637" + integrity sha512-tXt7a3ZvJOCeEKpNa/B5rQM5VI7UJLlOh3IHOImWn4HqoBRrZvbourmac+PRZAtXpos0h3c6554Hjapj/Sny5Q== dependencies: core-js "^3.8.2" -"@storybook/core-server@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.8.tgz#3ef53c4b0437e83c310f9e545607a0b1ce512ab6" - integrity sha512-ti7+MW1xzD9O0JLwgZTwulxhJx5YGPNu+hRpGhJSjKrqGX1h6K6ilmkBSHvyLqpiE+F4mxvqb5Rx3KBIEdEgbw== +"@storybook/core-server@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/core-server/-/core-server-6.5.9.tgz#749a881c1a81d7cf1a69f3782c06a7f0c39a505c" + integrity sha512-YeePGUrd5fQPvGzMhowh124KrcZURFpFXg1VB0Op3ESqCIsInoMZeObci4Gc+binMXC7vcv7aw3EwSLU37qJzQ== dependencies: "@discoveryjs/json-ext" "^0.5.3" - "@storybook/builder-webpack4" "6.5.8" - "@storybook/core-client" "6.5.8" - "@storybook/core-common" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/builder-webpack4" "6.5.9" + "@storybook/core-client" "6.5.9" + "@storybook/core-common" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/csf-tools" "6.5.8" - "@storybook/manager-webpack4" "6.5.8" - "@storybook/node-logger" "6.5.8" + "@storybook/csf-tools" "6.5.9" + "@storybook/manager-webpack4" "6.5.9" + "@storybook/node-logger" "6.5.9" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.8" - "@storybook/telemetry" "6.5.8" + "@storybook/store" "6.5.9" + "@storybook/telemetry" "6.5.9" "@types/node" "^14.0.10 || ^16.0.0" "@types/node-fetch" "^2.5.7" "@types/pretty-hrtime" "^1.0.0" @@ -1689,18 +1690,18 @@ ws "^8.2.3" x-default-browser "^0.4.0" -"@storybook/core@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.8.tgz#cbe6acaf587e9ef66963bb104a067c213aeea990" - integrity sha512-+Fv4n1E5N4Avty9GcRbz4vB2IWH//se2OUU+RTT3vneCOGjyus5bj0Or6GU5wef5UGuvHF78mHg/frhWpguzsw== +"@storybook/core@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/core/-/core-6.5.9.tgz#da4f237391d99aed1228323f24b335cafbdf3499" + integrity sha512-Mt3TTQnjQt2/pa60A+bqDsAOrYpohapdtt4DDZEbS8h0V6u11KyYYh3w7FCySlL+sPEyogj63l5Ec76Jah3l2w== dependencies: - "@storybook/core-client" "6.5.8" - "@storybook/core-server" "6.5.8" + "@storybook/core-client" "6.5.9" + "@storybook/core-server" "6.5.9" -"@storybook/csf-tools@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.8.tgz#5788aa1e862ee613d11d6528f27c8e267e4dd3a7" - integrity sha512-4VrjIMxKcp29OFSMDub52aQOMP4EvtZ5eWZkPeORRNQoJsnQaxhF9GGf71QdSaAQZhMoxdvmpA47ehrFk8Rnfw== +"@storybook/csf-tools@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-6.5.9.tgz#8e01df2305b53e228229f0b45ada3720e6e42a1c" + integrity sha512-RAdhsO2XmEDyWy0qNQvdKMLeIZAuyfD+tYlUwBHRU6DbByDucvwgMOGy5dF97YNJFmyo93EUYJzXjUrJs3U1LQ== dependencies: "@babel/core" "^7.12.10" "@babel/generator" "^7.12.11" @@ -1724,33 +1725,33 @@ dependencies: lodash "^4.17.15" -"@storybook/docs-tools@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.8.tgz#6189fd20fafa9eb2aa4a19e311d65295992dd105" - integrity sha512-CWMW+3LSstvQmHKV5ggPR1beQZTpwCXEhfysZ9u4Yp/4fcoDIuQ7DTOK5uNFynGCGl1FG3lATriEOhEZ3bZCvQ== +"@storybook/docs-tools@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-6.5.9.tgz#5ff304f881e972ce14923a5ffcfed3f052094889" + integrity sha512-UoTaXLvec8x+q+4oYIk/t8DBju9C3ZTGklqOxDIt+0kS3TFAqEgI3JhKXqQOXgN5zDcvLVSxi8dbVAeSxk2ktA== dependencies: "@babel/core" "^7.12.10" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.8" + "@storybook/store" "6.5.9" core-js "^3.8.2" doctrine "^3.0.0" lodash "^4.17.21" regenerator-runtime "^0.13.7" -"@storybook/manager-webpack4@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.8.tgz#9e4d3dcebac9bd0b07abd630632dc15130ae03f1" - integrity sha512-qW5/L3cJHvtNi5ylDxObALZWaAHMsWQlPP8GRxm95NHpff4CfRo/qs7puY9ZeLmJSic0KchoHEH/8AScflLOgA== +"@storybook/manager-webpack4@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/manager-webpack4/-/manager-webpack4-6.5.9.tgz#c75d2cced4550c8a786f00b0e57b203d613e706c" + integrity sha512-49LZlHqWc7zj9tQfOOANixPYmLxqWTTZceA6DSXnKd9xDiO2Gl23Y+l/CSPXNZGDB8QFAwpimwqyKJj/NLH45A== dependencies: "@babel/core" "^7.12.10" "@babel/plugin-transform-template-literals" "^7.12.1" "@babel/preset-react" "^7.12.10" - "@storybook/addons" "6.5.8" - "@storybook/core-client" "6.5.8" - "@storybook/core-common" "6.5.8" - "@storybook/node-logger" "6.5.8" - "@storybook/theming" "6.5.8" - "@storybook/ui" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/core-client" "6.5.9" + "@storybook/core-common" "6.5.9" + "@storybook/node-logger" "6.5.9" + "@storybook/theming" "6.5.9" + "@storybook/ui" "6.5.9" "@types/node" "^14.0.10 || ^16.0.0" "@types/webpack" "^4.41.26" babel-loader "^8.0.0" @@ -1795,10 +1796,10 @@ prettier ">=2.2.1 <=2.3.0" ts-dedent "^2.0.0" -"@storybook/node-logger@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.8.tgz#d1244c846da5a296a7432444f8682f77853fb81e" - integrity sha512-BHdkSipgjnfsh4FRYbV2R0npM5gVx9JLRsDQ0KiTolRpN4SU98kT/6885zb9jZg6I0EY+UG9Qdr3fvL9VLpY1g== +"@storybook/node-logger@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-6.5.9.tgz#129cfe0d0f79cab4f6a2ba194d39516680b1626f" + integrity sha512-nZZNZG2Wtwv6Trxi3FrnIqUmB55xO+X/WQGPT5iKlqNjdRIu/T72mE7addcp4rbuWCQfZUhcDDGpBOwKtBxaGg== dependencies: "@types/npmlog" "^4.1.2" chalk "^4.1.0" @@ -1806,17 +1807,17 @@ npmlog "^5.0.1" pretty-hrtime "^1.0.3" -"@storybook/preview-web@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.8.tgz#b1c86d56e99032c02ba47bab628c36d76a0385b6" - integrity sha512-jEEAgvTVZfFA0B20mRJfLW6dPA5mG5PxUJtjMx6wH4Yw4+i3Sld/U63hTRt7ktpKdrcu4lX9E+PuaRLPq7S2kg== +"@storybook/preview-web@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/preview-web/-/preview-web-6.5.9.tgz#557d919e6df50d66259521aa36ebf4055bbd236e" + integrity sha512-4eMrO2HJyZUYyL/j+gUaDvry6iGedshwT5MQqe7J9FaA+Q2pNARQRB1X53f410w7S4sObRmYIAIluWPYdWym9w== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/channel-postmessage" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/channel-postmessage" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/store" "6.5.8" + "@storybook/store" "6.5.9" ansi-to-html "^0.6.11" core-js "^3.8.2" global "^4.4.0" @@ -1842,23 +1843,23 @@ tslib "^2.0.0" "@storybook/react@^6.4.21": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.8.tgz#8a9e15416a18ceb5c11c89ffe9f38357d442efa9" - integrity sha512-LdObfhhPb9gAFBtRNb3awYJe1qMiYeda1ppkj0ZvccbV04YrmbW5bzYvfOCvU6D34ugbQJhJyWuvraO/0EJK6w== + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/react/-/react-6.5.9.tgz#687ec1f6b785822a392b7ac115b61800f69fb7cd" + integrity sha512-Rp+QaTQAzxJhwuzJXVd49mnIBLQRlF8llTxPT2YoGHdrGkku/zl/HblQ6H2yzEf15367VyzaAv/BpLsO9Jlfxg== dependencies: "@babel/preset-flow" "^7.12.1" "@babel/preset-react" "^7.12.10" "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" - "@storybook/addons" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core" "6.5.8" - "@storybook/core-common" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core" "6.5.9" + "@storybook/core-common" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" - "@storybook/docs-tools" "6.5.8" - "@storybook/node-logger" "6.5.8" + "@storybook/docs-tools" "6.5.9" + "@storybook/node-logger" "6.5.9" "@storybook/react-docgen-typescript-plugin" "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0" "@storybook/semver" "^7.3.2" - "@storybook/store" "6.5.8" + "@storybook/store" "6.5.9" "@types/estree" "^0.0.51" "@types/node" "^14.14.20 || ^16.0.0" "@types/webpack-env" "^1.16.0" @@ -1882,13 +1883,15 @@ util-deprecate "^1.0.2" webpack ">=4.43.0 <6.0.0" -"@storybook/router@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.8.tgz#241e3842bdd174e0eeeb9d1de6adb2975615884d" - integrity sha512-tseNJpZ2ZzVYowjekUMpGJVVRMrwOkttieD9mRbHrhh+2n7b+SoMKnuLi3ow0xeOyPL8ZDng2FgRjQzQHXA5Sw== +"@storybook/router@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/router/-/router-6.5.9.tgz#4740248f8517425b2056273fb366ace8a17c65e8" + integrity sha512-G2Xp/2r8vU2O34eelE+G5VbEEVFDeHcCURrVJEROh6dq2asFJAPbzslVXSeCqgOTNLSpRDJ2NcN5BckkNqmqJg== dependencies: - "@storybook/client-logger" "6.5.8" + "@storybook/client-logger" "6.5.9" core-js "^3.8.2" + memoizerific "^1.11.3" + qs "^6.10.0" regenerator-runtime "^0.13.7" "@storybook/semver@^7.3.2": @@ -1899,13 +1902,13 @@ core-js "^3.6.5" find-up "^4.1.0" -"@storybook/source-loader@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.8.tgz#106694fe821f5e42abc4e8e653e5f268a043e470" - integrity sha512-3bVxXKE2o6lS4WGga/S7WwgITxPQ96qsY+pQ1I7A+e4/cKSmZxlVWM9qfMW2ScmHTVoZE0Ujsmn6DWftxzCyrQ== +"@storybook/source-loader@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/source-loader/-/source-loader-6.5.9.tgz#7b6f065c6a6108c4b4ca7e45bfd78707373d84ac" + integrity sha512-H03nFKaP6borfWMTTa9igBA+Jm2ph+FoVJImWC/X+LAmLSJYYSXuqSgmiZ/DZvbjxS4k8vccE2HXogne1IvaRA== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/client-logger" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/client-logger" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" estraverse "^5.2.0" @@ -1915,14 +1918,14 @@ prettier ">=2.2.1 <=2.3.0" regenerator-runtime "^0.13.7" -"@storybook/store@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.8.tgz#528bf9a2decf5121045fb0a19b8caf795b4a5647" - integrity sha512-5rhGjN/O0oLebRv947B0vgapq48qBBBYYOgq4krRUYU2ecS6LUgtAHR/kTa324o9aBO8cnIXHH78jZcSvMiJlQ== +"@storybook/store@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/store/-/store-6.5.9.tgz#dc9963fc013636569082bd8f7200804866373735" + integrity sha512-80pcDTcCwK6wUA63aWOp13urI77jfipIVee9mpVvbNyfrNN8kGv1BS0z/JHDxuV6rC4g7LG1fb+BurR0yki7BA== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/core-events" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/core-events" "6.5.9" "@storybook/csf" "0.0.2--canary.4566f4d.1" core-js "^3.8.2" fast-deep-equal "^3.1.3" @@ -1936,13 +1939,13 @@ ts-dedent "^2.0.0" util-deprecate "^1.0.2" -"@storybook/telemetry@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.8.tgz#2acf9734292d421f84f7f2ac6c17d887c2cb0df4" - integrity sha512-QnAhYF8CwcjC1bT2PK7Zqvo6E42TPl0MY6JS+H6qSZU/BmYeS0It8ZURNfPsA/OzVVLHUkQs96CisKh3N0WWaw== +"@storybook/telemetry@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-6.5.9.tgz#8e1e0d4a89fc2387620045e5ea96c109d16a7247" + integrity sha512-JluoHCRhHAr4X0eUNVBSBi1JIBA92404Tu1TPdbN7x6gCZxHXXPTSUTAnspXp/21cTdMhY2x+kfZQ8fmlGK4MQ== dependencies: - "@storybook/client-logger" "6.5.8" - "@storybook/core-common" "6.5.8" + "@storybook/client-logger" "6.5.9" + "@storybook/core-common" "6.5.9" chalk "^4.1.0" core-js "^3.8.2" detect-package-manager "^2.0.1" @@ -1954,30 +1957,33 @@ read-pkg-up "^7.0.1" regenerator-runtime "^0.13.7" -"@storybook/theming@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.8.tgz#240a3c83ea53a9c7b1f3a2c47d6324f38ecb8771" - integrity sha512-1VaKHqj38Ls1bJwDpg3+aEOlvVib/DCFkP6WYrP/AQtNAzxiyw5WkaoRlTVJZvCdu5TxjpG4O6/Ai5TI9QftIg== +"@storybook/theming@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/theming/-/theming-6.5.9.tgz#13f60a3a3cd73ceb5caf9f188e1627e79f1891aa" + integrity sha512-KM0AMP5jMQPAdaO8tlbFCYqx9uYM/hZXGSVUhznhLYu7bhNAIK7ZVmXxyE/z/khM++8eUHzRoZGiO/cwCkg9Xw== dependencies: - "@storybook/client-logger" "6.5.8" + "@storybook/client-logger" "6.5.9" core-js "^3.8.2" + memoizerific "^1.11.3" regenerator-runtime "^0.13.7" -"@storybook/ui@6.5.8": - version "6.5.8" - resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.8.tgz#acd8dadd221c68f65c4963c4ab86b4a757860591" - integrity sha512-rL09kxgY9pCVbxr/VUK4b5FL5VbALfciZR+50sNT1EcTDb9k0OPeqx7a4Ptc+KNkgyPdSTxUGvhzVqH5PYrhZQ== +"@storybook/ui@6.5.9": + version "6.5.9" + resolved "https://registry.npmjs.org/@storybook/ui/-/ui-6.5.9.tgz#41e59279323cccc0d613974ec9782d797220c8a7" + integrity sha512-ryuPxJgtbb0gPXKGgGAUC+Z185xGAd1IvQ0jM5fJ0SisHXI8jteG3RaWhntOehi9qCg+64Vv6eH/cj9QYNHt1Q== dependencies: - "@storybook/addons" "6.5.8" - "@storybook/api" "6.5.8" - "@storybook/channels" "6.5.8" - "@storybook/client-logger" "6.5.8" - "@storybook/components" "6.5.8" - "@storybook/core-events" "6.5.8" - "@storybook/router" "6.5.8" + "@storybook/addons" "6.5.9" + "@storybook/api" "6.5.9" + "@storybook/channels" "6.5.9" + "@storybook/client-logger" "6.5.9" + "@storybook/components" "6.5.9" + "@storybook/core-events" "6.5.9" + "@storybook/router" "6.5.9" "@storybook/semver" "^7.3.2" - "@storybook/theming" "6.5.8" + "@storybook/theming" "6.5.9" core-js "^3.8.2" + memoizerific "^1.11.3" + qs "^6.10.0" regenerator-runtime "^0.13.7" resolve-from "^5.0.0" @@ -2070,14 +2076,14 @@ form-data "^3.0.0" "@types/node@*": - version "17.0.41" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.41.tgz#1607b2fd3da014ae5d4d1b31bc792a39348dfb9b" - integrity sha512-xA6drNNeqb5YyV5fO3OAEsnXLfO7uF0whiOfPTz5AeDo8KeZFmODKnvwPymMNO8qE/an8pVY/O50tig2SQCrGw== + version "17.0.44" + resolved "https://registry.npmjs.org/@types/node/-/node-17.0.44.tgz#16dd0bb5338f016d8ca10631789f0d0612fe5d5b" + integrity sha512-gWYiOlu6Y4oyLYBvsJAPlwHbC8H4tX+tLsHy6Ee976wedwwZKrG2hFl3Y/HiH6bIyLTbDWQexQF/ohwKkOpUCg== "@types/node@^14.0.10 || ^16.0.0", "@types/node@^14.14.20 || ^16.0.0": - version "16.11.39" - resolved "https://registry.npmjs.org/@types/node/-/node-16.11.39.tgz#07223cd2bc332ad9d92135e3a522eebdee3b060e" - integrity sha512-K0MsdV42vPwm9L6UwhIxMAOmcvH/1OoVkZyCgEtVu4Wx7sElGloy/W7kMBNe/oJ7V/jW9BVt1F6RahH6e7tPXw== + version "16.11.41" + resolved "https://registry.npmjs.org/@types/node/-/node-16.11.41.tgz#88eb485b1bfdb4c224d878b7832239536aa2f813" + integrity sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -2146,9 +2152,9 @@ integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== "@types/uglify-js@*": - version "3.13.3" - resolved "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.3.tgz#556fd2ac75cc649aba21f87e0be7b1a7e9915bfe" - integrity sha512-9dmBYXt/rKxedUXfCvXSxyiPvpDXLkiRlv17DnqdhS+pRustL1967rI1jZVt1xysTO+xJGMoZzcy3cWC9+b6Tw== + version "3.16.0" + resolved "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.16.0.tgz#2cf74a0e6ebb6cd54c0d48e509d5bd91160a9602" + integrity sha512-0yeUr92L3r0GLRnBOvtYK1v2SjqMIqQDHMl7GLb+l2L8+6LSFWEEWEIgVsPdMn5ImLM8qzWT8xFPtQYpp8co0g== dependencies: source-map "^0.6.1" @@ -3128,7 +3134,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.2, browserslist@^4.20.3: +browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.20.2, browserslist@^4.20.4: version "4.20.4" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.4.tgz#98096c9042af689ee1e0271333dbc564b8ce4477" integrity sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw== @@ -3306,9 +3312,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001349: - version "1.0.30001350" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001350.tgz#f0acc6472469d066a4357765eb73be5973eda918" - integrity sha512-NZBql38Pzd+rAu5SPXv+qmTWGQuFsRiemHCJCAPvkoDxWV19/xqL2YHF32fDJ9SDLdLqfax8+S0CO3ncDCp9Iw== + version "1.0.30001354" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001354.tgz#95c5efdb64148bb4870771749b9a619304755ce5" + integrity sha512-mImKeCkyGDAHNywYFA4bqnLAzTUvVkqPvhY4DV47X+Gl2c5Z8c3KNETnXp14GQt11LvxE8AwjzGxJ+rsikiOzg== case-sensitive-paths-webpack-plugin@^2.3.0: version "2.4.0" @@ -3649,22 +3655,22 @@ copy-descriptor@^0.1.0: integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== core-js-compat@^3.21.0, core-js-compat@^3.22.1, core-js-compat@^3.8.1: - version "3.22.8" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.8.tgz#46fa34ce1ddf742acd7f95f575f66bbb21e05d62" - integrity sha512-pQnwg4xtuvc2Bs/5zYQPaEYYSuTxsF7LBWF0SvnVhthZo/Qe+rJpcEekrdNK5DWwDJ0gv0oI9NNX5Mppdy0ctg== + version "3.23.1" + resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.23.1.tgz#23d44d9f209086e60dabf9130cea7719af6e199b" + integrity sha512-KeYrEc8t6FJsKYB2qnDwRHWaC0cJNaqlHfCpMe5q3j/W1nje3moib/txNklddLPCtGb+etcBIyJ8zuMa/LN5/A== dependencies: - browserslist "^4.20.3" + browserslist "^4.20.4" semver "7.0.0" core-js-pure@^3.8.1: - version "3.22.8" - resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.22.8.tgz#f2157793b58719196ccf9673cc14f3683adc0957" - integrity sha512-bOxbZIy9S5n4OVH63XaLVXZ49QKicjowDx/UELyJ68vxfCRpYsbyh/WNZNfEfAk+ekA8vSjt+gCDpvh672bc3w== + version "3.23.1" + resolved "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.23.1.tgz#0b27e4c3ad46178b84e790dbbb81987218ab82ad" + integrity sha512-3qNgf6TqI3U1uhuSYRzJZGfFd4T+YlbyVPl+jgRiKjdZopvG4keZQwWZDAWpu1UH9nCgTpUzIV3GFawC7cJsqg== core-js@^3.0.4, core-js@^3.6.5, core-js@^3.8.2: - version "3.22.8" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" - integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== + version "3.23.1" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.23.1.tgz#9f9a9255115f62c512db56d567f636da32ca0b78" + integrity sha512-wfMYHWi1WQjpgZNC9kAlN4ut04TM9fUTdi7CqIoTVM7yaiOUQTklOzfb+oWH3r9edQcT3F887swuVmxrV+CC8w== core-util-is@~1.0.0: version "1.0.3" @@ -4083,9 +4089,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.147: - version "1.4.148" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.148.tgz#437430e03c58ccd1d05701f66980afe54d2253ec" - integrity sha512-8MJk1bcQUAYkuvCyWZxaldiwoDG0E0AMzBGA6cv3WfuvJySiPgfidEPBFCRRH3cZm6SVZwo/oRlK1ehi1QNEIQ== + version "1.4.156" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.156.tgz#fc398e1bfbe586135351ebfaf198473a82923af5" + integrity sha512-/Wj5NC7E0wHaMCdqxWz9B0lv7CcycDTiHyXCtbbu3pXM9TV2AOp8BtMqkVuqvJNdEvltBG6LxT2Q+BxY4LUCIA== element-resize-detector@^1.2.2: version "1.2.4" @@ -7396,9 +7402,9 @@ react-docgen-typescript@^2.1.1: integrity sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg== react-docgen@^5.0.0: - version "5.4.1" - resolved "https://registry.npmjs.org/react-docgen/-/react-docgen-5.4.1.tgz#867168accce39e25095a23a922eaa90722e9d182" - integrity sha512-TZqD1aApirw86NV6tHrmDoxUn8wlinkVyutFarzbdwuhEurAzDN0y5sSj64o+BrHLPqjwpH9tunpfwgy+3Uyww== + version "5.4.2" + resolved "https://registry.npmjs.org/react-docgen/-/react-docgen-5.4.2.tgz#697ec899e8dd493bb7ba0d50ec0aa5e49f41d3fa" + integrity sha512-4Z5XYpHsn2bbUfaflxoS30VhUvQLBe4GCwwM5v1e1FUOeDdaoJi6wUGSmYp6OdXYEISEAOEIaSPBk4iezNCKBw== dependencies: "@babel/core" "^7.7.5" "@babel/generator" "^7.12.11" @@ -8120,7 +8126,7 @@ source-map-url@^0.4.0: source-map@^0.5.0, source-map@^0.5.6: version "0.5.7" resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" @@ -8202,7 +8208,7 @@ state-toggle@^1.0.0: static-extend@^0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" @@ -8333,7 +8339,7 @@ string_decoder@~1.1.1: strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" @@ -8347,7 +8353,7 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== dependencies: is-utf8 "^0.2.0" @@ -8359,7 +8365,7 @@ strip-final-newline@^2.0.0: strip-indent@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + integrity sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA== dependencies: get-stdin "^4.0.1" @@ -8525,9 +8531,9 @@ terser@^4.1.2, terser@^4.6.3: source-map-support "~0.5.12" terser@^5.3.4, terser@^5.7.2: - version "5.14.0" - resolved "https://registry.npmjs.org/terser/-/terser-5.14.0.tgz#eefeec9af5153f55798180ee2617f390bdd285e2" - integrity sha512-JC6qfIEkPBd9j1SMO3Pfn+A6w2kQV54tv+ABQLgZr7dA3k/DL/OBoYSWxzVpZev3J+bUHXfr55L8Mox7AaNo6g== + version "5.14.1" + resolved "https://registry.npmjs.org/terser/-/terser-5.14.1.tgz#7c95eec36436cb11cf1902cc79ac564741d19eca" + integrity sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ== dependencies: "@jridgewell/source-map" "^0.3.2" acorn "^8.5.0" @@ -8580,24 +8586,24 @@ timers-browserify@^2.0.4: to-arraybuffer@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= + integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-object-path@^0.3.0: version "0.3.0" resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" to-regex-range@^2.1.0: version "2.1.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" repeat-string "^1.6.1" @@ -8627,12 +8633,12 @@ toidentifier@1.0.1: tr46@~0.0.3: version "0.0.3" resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== trim-newlines@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + integrity sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw== trim-trailing-lines@^1.0.0: version "1.1.4" @@ -8642,7 +8648,7 @@ trim-trailing-lines@^1.0.0: trim@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= + integrity sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ== trough@^1.0.0: version "1.0.5" @@ -8672,12 +8678,12 @@ tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3: tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= + integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw== type-check@~0.3.2: version "0.3.2" resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== dependencies: prelude-ls "~1.1.2" @@ -8707,7 +8713,7 @@ type-is@~1.6.18: typedarray@^0.0.6: version "0.0.6" resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== uglify-js@^3.1.4: version "3.16.0" @@ -8862,12 +8868,12 @@ universalify@^2.0.0: unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== unset-value@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" isobject "^3.0.0" @@ -8875,7 +8881,7 @@ unset-value@^1.0.0: untildify@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/untildify/-/untildify-2.1.0.tgz#17eb2807987f76952e9c0485fc311d06a826a2e0" - integrity sha1-F+soB5h/dpUunASF/DEdBqgmouA= + integrity sha512-sJjbDp2GodvkB0FZZcn7k6afVisqX5BZD7Yq3xp4nN2O15BBK0cLm3Vwn2vQaF7UDS0UUsrQMkkplmDI5fskig== dependencies: os-homedir "^1.0.0" @@ -8894,7 +8900,7 @@ uri-js@^4.2.2: urix@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== url-loader@^4.1.1: version "4.1.1" @@ -8908,7 +8914,7 @@ url-loader@^4.1.1: url@^0.11.0: version "0.11.0" resolved "https://registry.npmjs.org/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + integrity sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ== dependencies: punycode "1.3.2" querystring "0.2.0" @@ -8921,7 +8927,7 @@ use@^3.1.0: util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== util.promisify@1.0.0: version "1.0.0" @@ -8934,7 +8940,7 @@ util.promisify@1.0.0: util@0.10.3: version "0.10.3" resolved "https://registry.npmjs.org/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= + integrity sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ== dependencies: inherits "2.0.1" @@ -8948,17 +8954,17 @@ util@^0.11.0: utila@~0.4: version "0.4.0" resolved "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= + integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== utils-merge@1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== uuid-browser@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/uuid-browser/-/uuid-browser-3.1.0.tgz#0f05a40aef74f9e5951e20efbf44b11871e56410" - integrity sha1-DwWkCu90+eWVHiDvv0SxGHHlZBA= + integrity sha512-dsNgbLaTrd6l3MMxTtouOCFw4CBFc/3a+GgYA2YyrJvyQ1u6q4pcu3ktLoUZ/VN/Aw9WsauazbgsgdfVWgAKQg== uuid@^3.3.2: version "3.4.0" @@ -8985,7 +8991,7 @@ validate-npm-package-license@^3.0.1: vary@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== vfile-location@^3.0.0, vfile-location@^3.2.0: version "3.2.0" @@ -9049,7 +9055,7 @@ web-namespaces@^1.0.0: webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webpack-dev-middleware@^3.7.3: version "3.7.3" @@ -9167,7 +9173,7 @@ webpack@4: whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" @@ -9212,7 +9218,7 @@ word-wrap@~1.2.3: wordwrap@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= + integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== worker-farm@^1.7.0: version "1.7.0" @@ -9240,17 +9246,17 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== ws@^8.2.3: - version "8.7.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.7.0.tgz#eaf9d874b433aa00c0e0d8752532444875db3957" - integrity sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg== + version "8.8.0" + resolved "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz#8e71c75e2f6348dbf8d78005107297056cb77769" + integrity sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ== x-default-browser@^0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/x-default-browser/-/x-default-browser-0.4.0.tgz#70cf0da85da7c0ab5cb0f15a897f2322a6bdd481" - integrity sha1-cM8NqF2nwKtcsPFaiX8jIqa91IE= + integrity sha512-7LKo7RtWfoFN/rHx1UELv/2zHGMx8MkZKDq1xENmOCTkfIqZJ0zZ26NEJX8czhnPXVcqS0ARjjfJB+eJ0/5Cvw== optionalDependencies: default-browser-id "^1.0.4" From 483333c7866d223d995fd85435ffa9d218cb1bef Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 20:20:52 +0000 Subject: [PATCH 465/550] fix(deps): update dependency @azure/identity to v2.0.5 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a11a80e574..4b954cba6e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -271,9 +271,9 @@ tslib "^2.0.0" "@azure/identity@^2.0.1", "@azure/identity@^2.0.4": - version "2.0.4" - resolved "https://registry.npmjs.org/@azure/identity/-/identity-2.0.4.tgz#f5cfde0daf1b9ebaaff3ed6c504f50d7d7c939a5" - integrity sha512-ZgFubAsmo7dji63NLPaot6O7pmDfceAUPY57uphSCr0hmRj+Cakqb4SUz5SohCHFtscrhcmejRU903Fowz6iXg== + version "2.0.5" + resolved "https://registry.npmjs.org/@azure/identity/-/identity-2.0.5.tgz#4475f1222a3cbf5c5ddec644dd3fb293256703d3" + integrity sha512-fSQTu9dS0P+lw1Gfct6t7TuRYybULL/E3wJjXLc1xr6RQXpmenJspi0lKzq3XFjLP5MzBlToKY3ZkYoAXPz1zA== dependencies: "@azure/abort-controller" "^1.0.0" "@azure/core-auth" "^1.3.0" From 4b78817b72cb5358cb1c729dda532d3977aec4c4 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 21:20:59 +0000 Subject: [PATCH 466/550] fix(deps): update dependency @types/node-fetch to v2.6.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4b954cba6e..b9ce188637 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6322,9 +6322,9 @@ "@types/through" "*" "@types/node-fetch@^2.5.0", "@types/node-fetch@^2.5.12", "@types/node-fetch@^2.5.7": - version "2.6.1" - resolved "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz#8f127c50481db65886800ef496f20bbf15518975" - integrity sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA== + version "2.6.2" + resolved "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da" + integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A== dependencies: "@types/node" "*" form-data "^3.0.0" From 42e826af8b902158892dac94cded3caf08c44b6a Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 22:11:51 +0000 Subject: [PATCH 467/550] fix(deps): update dependency @types/passport to v1.0.9 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index b9ce188637..9892463f71 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6447,9 +6447,9 @@ "@types/passport" "*" "@types/passport@*", "@types/passport@^1.0.3": - version "1.0.8" - resolved "https://registry.npmjs.org/@types/passport/-/passport-1.0.8.tgz#cc3ee653777365ac02f630c3c08fb755567b7387" - integrity sha512-Gdcvis7+7G/Mobm+25AeFi+oe5teBhHzpbCOFWeN10Bj8tnoEE1L5lkraQjzmDEKkJQuM7xSJUGIFGl/giyRfQ== + version "1.0.9" + resolved "https://registry.npmjs.org/@types/passport/-/passport-1.0.9.tgz#b32fa8f7485dace77a9b58e82d0c92908f6e8387" + integrity sha512-9+ilzUhmZQR4JP49GdC2O4UdDE3POPLwpmaTC/iLkW7l0TZCXOo1zsTnnlXPq6rP1UsUZPfbAV4IUdiwiXyC7g== dependencies: "@types/express" "*" From 182b2c10a66b0aa4020265cdc416a560d5586087 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Wed, 15 Jun 2022 23:08:56 +0000 Subject: [PATCH 468/550] fix(deps): update dependency graphiql to v1.9.9 Signed-off-by: Renovate Bot --- yarn.lock | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9892463f71..50f6e2736b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2094,17 +2094,17 @@ teeny-request "^8.0.0" uuid "^8.0.0" -"@graphiql/react@^0.4.1": - version "0.4.1" - resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.4.1.tgz#c424951f4e1b2ffa22aa514b18663d7a848ff31f" - integrity sha512-YeB26Sc223zfv6wSzygKRfeJ7JeXZW40c6vY4Om/POXuytRyrxuKynuP1Z3ueGYY4Rji8YMg6dPAjtTOUDLjZw== +"@graphiql/react@^0.4.2": + version "0.4.2" + resolved "https://registry.npmjs.org/@graphiql/react/-/react-0.4.2.tgz#2a12c7cf0f3945022c2231ce4e814561f2363ef7" + integrity sha512-Df2BaA0HGRkzETCaUw4ZSDe///sfIAGZ6H436A08hmg7SU3yoWJboWGWGc/QD2NyBKVgVBMmzmHcgWhsYh03EA== dependencies: "@graphiql/toolkit" "^0.6.0" codemirror "^5.65.3" - codemirror-graphql "^1.3.1" + codemirror-graphql "^1.3.2" copy-to-clipboard "^3.2.0" escape-html "^1.0.3" - graphql-language-service "^5.0.5" + graphql-language-service "^5.0.6" markdown-it "^12.2.0" set-value "^4.1.0" @@ -9457,12 +9457,12 @@ code-point-at@^1.0.0: resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= -codemirror-graphql@^1.3.1: - version "1.3.1" - resolved "https://registry.npmjs.org/codemirror-graphql/-/codemirror-graphql-1.3.1.tgz#c852b12b6909783681a5e37d61d1627a78f9c7a6" - integrity sha512-jlLwTARoMeuYLR5sQYbh5uYewIoYUYAn+0lOIKXpaHudk9X1rOrP/WtOqfDza1ETnyfnlpLidBnpieIMKktriQ== +codemirror-graphql@^1.3.2: + version "1.3.2" + resolved "https://registry.npmjs.org/codemirror-graphql/-/codemirror-graphql-1.3.2.tgz#e9d1d18b4a160f0016a28465805284636ee42d2a" + integrity sha512-glwFsEVlH5TvxjSKGymZ1sNy37f3Mes58CB4fXOd0zy9+JzDL08Wti1b5ycy4vFZYghMDK1/Or/zRSjMAGtC2w== dependencies: - graphql-language-service "^5.0.5" + graphql-language-service "^5.0.6" codemirror@^5.65.3: version "5.65.3" @@ -13812,14 +13812,14 @@ grapheme-splitter@^1.0.4: integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== graphiql@^1.5.12, graphiql@^1.8.8: - version "1.9.7" - resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.7.tgz#2edadea4fbbd723f9ba27a1f464f4ff5b20866bd" - integrity sha512-rn0njwDkCpFn5GwDbSuzt7GwjiFLhYCdgiscYm4n8Oq9EeOyGrIxQK/PjUz1YaR/+T7lg1raIBuRAX/Nei9KcQ== + version "1.9.9" + resolved "https://registry.npmjs.org/graphiql/-/graphiql-1.9.9.tgz#dfc1760e7552140247e591e3c66d1ccc389ea71f" + integrity sha512-eJ5kGpXFXw69QG/1SJrQs/mzGpDIv4XeGqohGSKQCOh7NtsAsQIxs/VMVR8Lvv9tx6YiIFUvAHp997NlyOwHbQ== dependencies: - "@graphiql/react" "^0.4.1" + "@graphiql/react" "^0.4.2" "@graphiql/toolkit" "^0.6.0" entities "^2.0.0" - graphql-language-service "^5.0.5" + graphql-language-service "^5.0.6" markdown-it "^12.2.0" graphlib@^2.1.8: @@ -13851,10 +13851,10 @@ graphql-executor@0.0.23: resolved "https://registry.npmjs.org/graphql-executor/-/graphql-executor-0.0.23.tgz#205c1764b39ee0fcf611553865770f37b45851a2" integrity sha512-3Ivlyfjaw3BWmGtUSnMpP/a4dcXCp0mJtj0PiPG14OKUizaMKlSEX+LX2Qed0LrxwniIwvU6B4w/koVjEPyWJg== -graphql-language-service@^5.0.5: - version "5.0.5" - resolved "https://registry.npmjs.org/graphql-language-service/-/graphql-language-service-5.0.5.tgz#894c08bee50070c97cc53ae514847aeef41bc0ac" - integrity sha512-hekBLI73r6ghShWrIMJ7Pe4Z+yJrda/U+kLenNJLNswuCrR0XfFOv5pNtnSXLcjFZkQfY1bwGV0D8IVKZEOW5Q== +graphql-language-service@^5.0.6: + version "5.0.6" + resolved "https://registry.npmjs.org/graphql-language-service/-/graphql-language-service-5.0.6.tgz#7fd1e6479e5c3074b070c760fa961d9ad1ed7c72" + integrity sha512-FjE23aTy45Lr5metxCv3ZgSKEZOzN7ERR+OFC1isV5mHxI0Ob8XxayLTYjQKrs8b3kOpvgTYmSmu6AyXOzYslg== dependencies: nullthrows "^1.0.0" vscode-languageserver-types "^3.15.1" From 6c0c6eb7864ee78f520a71b72128da67eb445d3e Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 00:08:12 +0000 Subject: [PATCH 469/550] fix(deps): update dependency immer to v9.0.15 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 50f6e2736b..22f13f1445 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14559,9 +14559,9 @@ immer@9.0.7: integrity sha512-KGllzpbamZDvOIxnmJ0jI840g7Oikx58lBPWV0hUh7dtAyZpFqqrBZdKka5GlTwMTZ1Tjc/bKKW4VSFAt6BqMA== immer@^9.0.1, immer@^9.0.7: - version "9.0.14" - resolved "https://registry.npmjs.org/immer/-/immer-9.0.14.tgz#e05b83b63999d26382bb71676c9d827831248a48" - integrity sha512-ubBeqQutOSLIFCUBN03jGeOS6a3DoYlSYwYJTa+gSKEZKU5redJIqkIdZ3JVv/4RZpfcXdAWH5zCNLWPRv2WDw== + version "9.0.15" + resolved "https://registry.npmjs.org/immer/-/immer-9.0.15.tgz#0b9169e5b1d22137aba7d43f8a81a495dd1b62dc" + integrity sha512-2eB/sswms9AEUSkOm4SbV5Y7Vmt/bKRwByd52jfLkW4OLYeaTP3EEiJ9agqU0O/tq6Dk62Zfj+TJSqfm1rLVGQ== immutable@^3.x.x: version "3.8.2" From 310929961e41b8c3f67967ef730e820e800f8e1b Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 01:05:51 +0000 Subject: [PATCH 470/550] chore(deps): update dependency esbuild to v0.14.44 Signed-off-by: Renovate Bot --- yarn.lock | 206 +++++++++++++++++++++++++++--------------------------- 1 file changed, 103 insertions(+), 103 deletions(-) diff --git a/yarn.lock b/yarn.lock index 22f13f1445..71207f9eb5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11736,75 +11736,75 @@ es6-error@^4.1.1: resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== -esbuild-android-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.43.tgz#59bf3edad6863c27aa92bbb5c1d83a9a5c981495" - integrity sha512-kqFXAS72K6cNrB6RiM7YJ5lNvmWRDSlpi7ZuRZ1hu1S3w0zlwcoCxWAyM23LQUyZSs1PbjHgdbbfYAN8IGh6xg== +esbuild-android-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.44.tgz#62f5cb563d0ba318d898b6eb230c61ad3dc93619" + integrity sha512-dFPHBXmx385zuJULAD/Cmq/LyPRXiAWbf9ylZtY0wJ8iVyWfKYaCYxeJx8OAZUuj46ZwNa7MzW2GBAQLOeiemg== -esbuild-android-arm64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.43.tgz#0258704edf92ce2463af6d2900b844b5423bed63" - integrity sha512-bKS2BBFh+7XZY9rpjiHGRNA7LvWYbZWP87pLehggTG7tTaCDvj8qQGOU/OZSjCSKDYbgY7Q+oDw8RlYQ2Jt2BA== +esbuild-android-arm64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.44.tgz#ee7fcc9f47855b3395dfd1abcc2c43d8c53e57db" + integrity sha512-qqaqqyxHXjZ/0ddKU3I3Nb7lAvVM69ELMhb8+91FyomAUmQPlHtxe+TTiWxXGHE72XEzcgTEGq4VauqLNkN22g== -esbuild-darwin-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.43.tgz#72a47295678d4aa0656979baa8cf6d5c8c92656f" - integrity sha512-/3PSilx011ttoieRGkSZ0XV8zjBf2C9enV4ScMMbCT4dpx0mFhMOpFnCHkOK0pWGB8LklykFyHrWk2z6DENVUg== +esbuild-darwin-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.44.tgz#75ea7f594687a7189a8ba62070d42f13178e68d0" + integrity sha512-RBmtGKGY06+AW6IOJ1LE/dEeF7HH34C1/Ces9FSitU4bIbIpL4KEuQpTFoxwb4ry5s2hyw7vbPhhtyOd18FH9g== -esbuild-darwin-arm64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.43.tgz#5f5823170b8d85b888957f0794e186caac447aca" - integrity sha512-1HyFUKs8DMCBOvw1Qxpr5Vv/ThNcVIFb5xgXWK3pyT40WPvgYIiRTwJCvNs4l8i5qWF8/CK5bQxJVDjQvtv0Yw== +esbuild-darwin-arm64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.44.tgz#550631fd135688abda042f4039b962a27f3a5f78" + integrity sha512-Bmhx5Cfo4Hdb7WyyyDupTB8HPmnFZ8baLfPlzLdYvF6OzsIbV+CY+m/AWf0OQvY40BlkzCLJ/7Lfwbb71Tngmg== -esbuild-freebsd-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.43.tgz#e4a48b08181053837e6cd9bda19ae0af94d493b0" - integrity sha512-FNWc05TPHYgaXjbPZO5/rJKSBslfG6BeMSs8GhwnqAKP56eEhvmzwnIz1QcC9cRVyO+IKqWNfmHFkCa1WJTULA== +esbuild-freebsd-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.44.tgz#f98069b964266ca79bb361cfb9d7454a05b7e8ca" + integrity sha512-O4HpWa5ZgxbNPQTF7URicLzYa+TidGlmGT/RAC3GjbGEQQYkd0R1Slyh69Yrmb2qmcOcPAgWHbNo1UhK4WmZ4w== -esbuild-freebsd-arm64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.43.tgz#386e780d36c1dedf3a1cdab79e0bbacd873274e6" - integrity sha512-amrYopclz3VohqisOPR6hA3GOWA3LZC1WDLnp21RhNmoERmJ/vLnOpnrG2P/Zao+/erKTCUqmrCIPVtj58DRoA== +esbuild-freebsd-arm64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.44.tgz#247a8553d6033a58b6c3ba4d539216300497d7f6" + integrity sha512-f0/jkAKccnDY7mg1F9l/AMzEm+VXWXK6c3IrOEmd13jyKfpTZKTIlt+yI04THPDCDZTzXHTRUBLozqp+m8Mg5Q== -esbuild-linux-32@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.43.tgz#040ed6b9ebf06d73acdf2acce7f1cd0c12fbc6a5" - integrity sha512-KoxoEra+9O3AKVvgDFvDkiuddCds6q71owSQEYwjtqRV7RwbPzKxJa6+uyzUulHcyGVq0g15K0oKG5CFBcvYDw== +esbuild-linux-32@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.44.tgz#4b72747f9f367d3ee3c1d80bf75c617e6b109821" + integrity sha512-WSIhzLldMR7YUoEL7Ix319tC+NFmW9Pu7NgFWxUfOXeWsT0Wg484hm6bNgs7+oY2pGzg715y/Wrqi1uNOMmZJw== -esbuild-linux-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.43.tgz#8abbb7594ab6a008f2aae72d95d8a4fdc59d9000" - integrity sha512-EwINwGMyiJMgBby5/SbMqKcUhS5AYAZ2CpEBzSowsJPNBJEdhkCTtEjk757TN/wxgbu3QklqDM6KghY660QCUw== +esbuild-linux-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.44.tgz#6cd158fdd11f8d037c45139ccddb4fa5966f7ab6" + integrity sha512-zgscTrCMcRZRIsVugqBTP/B5lPLNchBlWjQ8sQq2Epnv+UDtYKgXEq1ctWAmibZNy2E9QRCItKMeIEqeTUT5kA== -esbuild-linux-arm64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.43.tgz#4e8e9ce77cbf7efec65e79e512b3d2fbd2da398f" - integrity sha512-UlSpjMWllAc70zYbHxWuDS3FJytyuR/gHJYBr8BICcTNb/TSOYVBg6U7b3jZ3mILTrgzwJUHwhEwK18FZDouUQ== +esbuild-linux-arm64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.44.tgz#f14f3c8c3501067f5b2cef7a79c9a0058092cb22" + integrity sha512-H0H/2/wgiScTwBve/JR8/o+Zhabx5KPk8T2mkYZFKQGl1hpUgC+AOmRyqy/Js3p66Wim4F4Akv3I3sJA1sKg0w== -esbuild-linux-arm@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.43.tgz#9e41ee5e099c0ffdfd150da154330c2c0226cc96" - integrity sha512-e6YzQUoDxxtyamuF12eVzzRC7bbEFSZohJ6igQB9tBqnNmIQY3fI6Cns3z2wxtbZ3f2o6idkD2fQnlvs2902Dg== +esbuild-linux-arm@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.44.tgz#625478cc6ea4f64f5335e7fb07f80d6f659aeb5c" + integrity sha512-laPBPwGfsbBxGw6F6jnqic2CPXLyC1bPrmnSOeJ9oEnx1rcKkizd4HWCRUc0xv+l4z/USRfx/sEfYlWSLeqoJQ== -esbuild-linux-mips64le@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.43.tgz#4b41f465a787f91cc4fe7dffa0dcabf655935a1a" - integrity sha512-f+v8cInPEL1/SDP//CfSYzcDNgE4CY3xgDV81DWm3KAPWzhvxARrKxB1Pstf5mB56yAslJDxu7ryBUPX207EZA== +esbuild-linux-mips64le@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.44.tgz#593c909bb612998300af7f7db2809a63a0d62eec" + integrity sha512-ri3Okw0aleYy7o5n9zlIq+FCtq3tcMlctN6X1H1ucILjBJuH8pan2trJPKWeb8ppntFvE28I9eEXhwkWh6wYKg== -esbuild-linux-ppc64le@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.43.tgz#ca15934f5b46728dd9ac05270e783e7feaca9eaf" - integrity sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA== +esbuild-linux-ppc64le@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.44.tgz#8fc2fcee671e322a5d44fcf8da6889095a187df9" + integrity sha512-96TqL/MvFRuIVXz+GtCIXzRQ43ZwEk4XTn0RWUNJduXXMDQ/V1iOV28U6x6Oe3NesK4xkoKSaK2+F3VHcU8ZrA== -esbuild-linux-riscv64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.43.tgz#70fce2b5a0605a67e58b5a357b0e00be1029836d" - integrity sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw== +esbuild-linux-riscv64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.44.tgz#cc2b7158c8345b67e74458a0ec020c80ca777046" + integrity sha512-rrK9qEp2M8dhilsPn4T9gxUsAumkITc1kqYbpyNMr9EWo+J5ZBj04n3GYldULrcCw4ZCHAJ+qPjqr8b6kG2inA== -esbuild-linux-s390x@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.43.tgz#318d03b4f4ccc7fa44ac7562121cf4a4529e477a" - integrity sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ== +esbuild-linux-s390x@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.44.tgz#5a1e87d5d6236a8791026820936478f3b9cf8e35" + integrity sha512-2YmTm9BrW5aUwBSe8wIEARd9EcnOQmkHp4+IVaO09Ez/C5T866x+ABzhG0bwx0b+QRo9q97CRMaQx2Ngb6/hfw== esbuild-loader@^2.18.0: version "2.19.0" @@ -11818,61 +11818,61 @@ esbuild-loader@^2.18.0: tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.43.tgz#86130ce204ef0162a96e863b55851efecc92f423" - integrity sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ== +esbuild-netbsd-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.44.tgz#8afb16880b530264ce2ed9fb3df26071eb841312" + integrity sha512-zypdzPmZTCqYS30WHxbcvtC0E6e/ECvl4WueUdbdWhs2dfWJt5RtCBME664EpTznixR3lSN1MQ2NhwQF8MQryw== -esbuild-openbsd-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.43.tgz#0229dc2db2ded97b03bb93bba7646b30ffdf5d0d" - integrity sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg== +esbuild-openbsd-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.44.tgz#a87455be446d6f5b07a60f060e1eafad454c9d4b" + integrity sha512-8J43ab9ByYl7KteC03HGQjr2HY1ge7sN04lFnwMFWYk2NCn8IuaeeThvLeNjzOYhyT3I6K8puJP0uVXUu+D1xw== -esbuild-sunos-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.43.tgz#17e316216eb9f1de25d52a9000356ae5b869e736" - integrity sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q== +esbuild-sunos-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.44.tgz#74ce7d5fd815fa60fe0a85b9db7549b1dcb32804" + integrity sha512-OH1/09CGUJwffA+HNM6mqPkSIyHVC3ZnURU/4CCIx7IqWUBn1Sh1HRLQC8/TWNgcs0/1u7ygnc2pgf/AHZJ/Ow== -esbuild-windows-32@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.43.tgz#a173757bc6dfd0f2656ff40b64f7f9290745778e" - integrity sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw== +esbuild-windows-32@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.44.tgz#499e1c6cb46c216bdcb62f5b006fec3999bb06a7" + integrity sha512-mCAOL9/rRqwfOfxTu2sjq/eAIs7eAXGiU6sPBnowggI7QS953Iq6o3/uDu010LwfN7zr18c/lEj6/PTwwTB3AA== -esbuild-windows-64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.43.tgz#c447b23126aad158c4fe6a394342cafd97926ed1" - integrity sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw== +esbuild-windows-64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.44.tgz#a8dae69a4615b17f62375859ce9536dd96940a06" + integrity sha512-AG6BH3+YG0s2Q/IfB1cm68FdyFnoE1P+GFbmgFO3tA4UIP8+BKsmKGGZ5I3+ZjcnzOwvT74bQRVrfnQow2KO5Q== -esbuild-windows-arm64@0.14.43: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.43.tgz#3caed1b430d394d7a7836407b9d36c4750246e76" - integrity sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw== +esbuild-windows-arm64@0.14.44: + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.44.tgz#db73bb68aa75a880bdaa938ccacc0f17e7a4bfea" + integrity sha512-ygYPfYE5By4Sd6szsNr10B0RtWVNOSGmZABSaj4YQBLqh9b9i45VAjVWa8tyIy+UAbKF7WGwybi2wTbSVliO8A== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: - version "0.14.43" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.43.tgz#c227d585c512d3e0f23b88f50b8e16501147f647" - integrity sha512-Uf94+kQmy/5jsFwKWiQB4hfo/RkM9Dh7b79p8yqd1tshULdr25G2szLz631NoH3s2ujnKEKVD16RmOxvCNKRFA== + version "0.14.44" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.44.tgz#27fa3cd4f55d36780650c7f32cab581abc7a4473" + integrity sha512-Rn+lRRfj60r/3svI6NgAVnetzp3vMOj17BThuhshSj/gS1LR03xrjkDYyfPmrYG/0c3D68rC6FNYMQ3yRbiXeQ== optionalDependencies: - esbuild-android-64 "0.14.43" - esbuild-android-arm64 "0.14.43" - esbuild-darwin-64 "0.14.43" - esbuild-darwin-arm64 "0.14.43" - esbuild-freebsd-64 "0.14.43" - esbuild-freebsd-arm64 "0.14.43" - esbuild-linux-32 "0.14.43" - esbuild-linux-64 "0.14.43" - esbuild-linux-arm "0.14.43" - esbuild-linux-arm64 "0.14.43" - esbuild-linux-mips64le "0.14.43" - esbuild-linux-ppc64le "0.14.43" - esbuild-linux-riscv64 "0.14.43" - esbuild-linux-s390x "0.14.43" - esbuild-netbsd-64 "0.14.43" - esbuild-openbsd-64 "0.14.43" - esbuild-sunos-64 "0.14.43" - esbuild-windows-32 "0.14.43" - esbuild-windows-64 "0.14.43" - esbuild-windows-arm64 "0.14.43" + esbuild-android-64 "0.14.44" + esbuild-android-arm64 "0.14.44" + esbuild-darwin-64 "0.14.44" + esbuild-darwin-arm64 "0.14.44" + esbuild-freebsd-64 "0.14.44" + esbuild-freebsd-arm64 "0.14.44" + esbuild-linux-32 "0.14.44" + esbuild-linux-64 "0.14.44" + esbuild-linux-arm "0.14.44" + esbuild-linux-arm64 "0.14.44" + esbuild-linux-mips64le "0.14.44" + esbuild-linux-ppc64le "0.14.44" + esbuild-linux-riscv64 "0.14.44" + esbuild-linux-s390x "0.14.44" + esbuild-netbsd-64 "0.14.44" + esbuild-openbsd-64 "0.14.44" + esbuild-sunos-64 "0.14.44" + esbuild-windows-32 "0.14.44" + esbuild-windows-64 "0.14.44" + esbuild-windows-arm64 "0.14.44" escalade@^3.1.1: version "3.1.1" From cfd98d5ecb1ccf1bbdd9a6b219f510f1c7cab1e4 Mon Sep 17 00:00:00 2001 From: Nick Marinelli Date: Wed, 15 Jun 2022 22:43:12 -0400 Subject: [PATCH 471/550] export more artifacts from azure-devops Signed-off-by: Nick Marinelli --- plugins/azure-devops/src/index.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index 48177ee830..32399b1dff 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -25,6 +25,10 @@ export { } from './plugin'; export { AzurePullRequestsIcon } from './components/AzurePullRequestsIcon'; +export { AzureGitTagsIcon } from './components/AzureGitTagsIcon'; + +export { azureDevOpsApiRef } from './api'; +export * from './hooks'; export { FilterType } from './components/PullRequestsPage'; export type { From ed8be85103f253f431e71cec9d03825e3acf1e74 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 02:44:14 +0000 Subject: [PATCH 472/550] fix(deps): update dependency marked to v4.0.17 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 71207f9eb5..7c7098e16e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17657,9 +17657,9 @@ markdown-table@^3.0.0: integrity sha512-CBbaYXKSGnE1uLRpKA1SWgIRb2PQrpkllNWpZtZe6VojOJ4ysqiq7/2glYcmKsOYN09QgH/HEBX5hIshAeiK6A== marked@^4.0.14: - version "4.0.16" - resolved "https://registry.npmjs.org/marked/-/marked-4.0.16.tgz#9ec18fc1a723032eb28666100344d9428cf7a264" - integrity sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA== + version "4.0.17" + resolved "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz#1186193d85bb7882159cdcfc57d1dfccaffb3fe9" + integrity sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA== match-sorter@^6.0.2: version "6.3.1" From e049e410489548fac3402264f335ac8da55b7376 Mon Sep 17 00:00:00 2001 From: Nick Marinelli Date: Wed, 15 Jun 2022 22:55:43 -0400 Subject: [PATCH 473/550] changeset Signed-off-by: Nick Marinelli --- .changeset/smooth-sheep-hide.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/smooth-sheep-hide.md diff --git a/.changeset/smooth-sheep-hide.md b/.changeset/smooth-sheep-hide.md new file mode 100644 index 0000000000..8a65602ca9 --- /dev/null +++ b/.changeset/smooth-sheep-hide.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-azure-devops': patch +--- + +Exporting azureDevOpsApiRef, AzureGitTagsIcon, and all hooks for the benefit of other plugins. From 1d347fdd6a59fd23af709847252586a101e7df1e Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 03:57:53 +0000 Subject: [PATCH 474/550] fix(deps): update dependency mini-css-extract-plugin to v2.6.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7c7098e16e..d248c5306e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18351,9 +18351,9 @@ min-indent@^1.0.0: integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= mini-css-extract-plugin@^2.4.2: - version "2.6.0" - resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.0.tgz#578aebc7fc14d32c0ad304c2c34f08af44673f5e" - integrity sha512-ndG8nxCEnAemsg4FSgS+yNyHKgkTB4nPKqCOgh65j3/30qqC5RaSQQXMm++Y6sb6E1zRSxPkztj9fqxhS1Eo6w== + version "2.6.1" + resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz#9a1251d15f2035c342d99a468ab9da7a0451b71e" + integrity sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg== dependencies: schema-utils "^4.0.0" From 25910ef3231c4a9543ea1d687a3b2a5f91f30122 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 05:00:13 +0000 Subject: [PATCH 475/550] fix(deps): update dependency react-ga to v3.3.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index d248c5306e..21ef414975 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21430,9 +21430,9 @@ react-fast-compare@^3.1.1: integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== react-ga@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/react-ga/-/react-ga-3.3.0.tgz#c91f407198adcb3b49e2bc5c12b3fe460039b3ca" - integrity sha512-o8RScHj6Lb8cwy3GMrVH6NJvL+y0zpJvKtc0+wmH7Bt23rszJmnqEQxRbyrqUzk9DTJIHoP42bfO5rswC9SWBQ== + version "3.3.1" + resolved "https://registry.npmjs.org/react-ga/-/react-ga-3.3.1.tgz#d8e1f4e05ec55ed6ff944dcb14b99011dfaf9504" + integrity sha512-4Vc0W5EvXAXUN/wWyxvsAKDLLgtJ3oLmhYYssx+YzphJpejtOst6cbIHCIyF50Fdxuf5DDKqRYny24yJ2y7GFQ== react-helmet@6.1.0: version "6.1.0" From 7db337bb985454b6a800c4cb941804b9ab9b0bb1 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 05:54:14 +0000 Subject: [PATCH 476/550] chore(deps): update dependency @changesets/cli to v2.23.0 Signed-off-by: Renovate Bot --- yarn.lock | 424 +++++++++++++++++++++++++----------------------------- 1 file changed, 196 insertions(+), 228 deletions(-) diff --git a/yarn.lock b/yarn.lock index 21ef414975..e30e3ec737 100644 --- a/yarn.lock +++ b/yarn.lock @@ -679,7 +679,7 @@ "@babel/traverse" "^7.17.3" "@babel/types" "^7.17.0" -"@babel/highlight@^7.0.0", "@babel/highlight@^7.16.7": +"@babel/highlight@^7.0.0": version "7.16.10" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== @@ -688,6 +688,15 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.16.7": + version "7.17.12" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.12.tgz#257de56ee5afbd20451ac0a75686b6b404257351" + integrity sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.10", "@babel/parser@^7.16.12", "@babel/parser@^7.16.7", "@babel/parser@^7.16.8", "@babel/parser@^7.17.3", "@babel/parser@^7.17.8": version "7.17.9" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz#9c94189a6062f0291418ca021077983058e171ef" @@ -1424,13 +1433,20 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.10.4", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.1", "@babel/runtime@^7.10.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.14.6", "@babel/runtime@^7.15.4", "@babel/runtime@^7.16.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.6", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.17.7" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.7.tgz#a5f3328dc41ff39d803f311cfe17703418cf9825" integrity sha512-L6rvG9GDxaLgFjg41K+5Yv9OMrU98sWe+Ykmc6FDJW/+vYZMhdOMKkISgzptMaERHvS2Y2lw9MDRm2gHhlQQoA== dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.10.4": + version "7.18.3" + resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.3.tgz#c7b654b57f6f63cf7f8b418ac9ca04408c4579f4" + integrity sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.16.7", "@babel/template@^7.3.3": version "7.16.7" resolved "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" @@ -1522,10 +1538,10 @@ resolve-from "^5.0.0" semver "^5.4.1" -"@changesets/assemble-release-plan@^5.1.2": - version "5.1.2" - resolved "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-5.1.2.tgz#63ed3a00f62b5af08a82e83801a252ac9726c625" - integrity sha512-nOFyDw4APSkY/vh5WNwGEtThPgEjVShp03PKVdId6wZTJALVcAALCSLmDRfeqjE2z9EsGJb7hZdDlziKlnqZgw== +"@changesets/assemble-release-plan@^5.1.3": + version "5.1.3" + resolved "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-5.1.3.tgz#b415c5db64e5a30c53aed8c1adc5ab4c4aaad283" + integrity sha512-I+TTkUoqvxBEuDLoJfJYKDXIJ+nyiTbVJ8KGhpXEsLq4N/ms/AStSbouJwF2d/p3cB+RCPr5+gXh31GSN4kA7w== dependencies: "@babel/runtime" "^7.10.4" "@changesets/errors" "^0.1.4" @@ -1542,18 +1558,18 @@ "@changesets/types" "^5.0.0" "@changesets/cli@^2.14.0": - version "2.22.0" - resolved "https://registry.npmjs.org/@changesets/cli/-/cli-2.22.0.tgz#3bdbfb4a7a81ef37f63114e77da84e23f906b763" - integrity sha512-4bA3YoBkd5cm5WUxmrR2N9WYE7EeQcM+R3bVYMUj2NvffkQVpU3ckAI+z8UICoojq+HRl2OEwtz+S5UBmYY4zw== + version "2.23.0" + resolved "https://registry.npmjs.org/@changesets/cli/-/cli-2.23.0.tgz#e325b2d1b0484188671f684773b8cd5d42d068f1" + integrity sha512-Gi3tMi0Vr6eNd8GX6q73tbOm9XOzGfuLEm4PYVeWG2neg5DlRGNOjYwrFULJ/An3N9MHtHn4r5h1Qvnju9Ijug== dependencies: "@babel/runtime" "^7.10.4" "@changesets/apply-release-plan" "^6.0.0" - "@changesets/assemble-release-plan" "^5.1.2" + "@changesets/assemble-release-plan" "^5.1.3" "@changesets/changelog-git" "^0.1.11" "@changesets/config" "^2.0.0" "@changesets/errors" "^0.1.4" "@changesets/get-dependents-graph" "^1.3.2" - "@changesets/get-release-plan" "^3.0.8" + "@changesets/get-release-plan" "^3.0.9" "@changesets/git" "^1.3.2" "@changesets/logger" "^0.0.5" "@changesets/pre" "^1.0.11" @@ -1563,6 +1579,7 @@ "@manypkg/get-packages" "^1.1.3" "@types/is-ci" "^3.0.0" "@types/semver" "^6.0.0" + ansi-colors "^4.1.3" chalk "^2.1.0" enquirer "^2.3.0" external-editor "^3.1.0" @@ -1577,7 +1594,7 @@ semver "^5.4.1" spawndamnit "^2.0.0" term-size "^2.1.0" - tty-table "^2.8.10" + tty-table "^4.1.5" "@changesets/config@^2.0.0": version "2.0.0" @@ -1610,13 +1627,13 @@ fs-extra "^7.0.1" semver "^5.4.1" -"@changesets/get-release-plan@^3.0.8": - version "3.0.8" - resolved "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-3.0.8.tgz#2ac7c4f7903aedede3d27af66311ad1db7937e5d" - integrity sha512-TJYiWNuP0Lzu2dL/KHuk75w7TkiE5HqoYirrXF7SJIxkhlgH9toQf2C7IapiFTObtuF1qDN8HJAX1CuIOwXldg== +"@changesets/get-release-plan@^3.0.9": + version "3.0.9" + resolved "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-3.0.9.tgz#d445660f3679cb65e05e02adfbca037a25b45943" + integrity sha512-5C1r4DcOjVxcCvPmXpymeyT6mdSTLCNiB2L+5uf19BRkDKndJdIQorH5Fe2XBR2nHUcZQFT+2TXDzCepat969w== dependencies: "@babel/runtime" "^7.10.4" - "@changesets/assemble-release-plan" "^5.1.2" + "@changesets/assemble-release-plan" "^5.1.3" "@changesets/config" "^2.0.0" "@changesets/pre" "^1.0.11" "@changesets/read" "^0.5.5" @@ -6642,9 +6659,9 @@ integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA== "@types/semver@^6.0.0": - version "6.2.1" - resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.1.tgz#a236185670a7860f1597cf73bea2e16d001461ba" - integrity sha512-+beqKQOh9PYxuHvijhVl+tIHvT6tuwOrE9m14zd+MT2A38KoKZhh7pYJ0SNleLtwDsiIxHDsIk9bv01oOxvSvA== + version "6.2.3" + resolved "https://registry.npmjs.org/@types/semver/-/semver-6.2.3.tgz#5798ecf1bec94eaa64db39ee52808ec0693315aa" + integrity sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A== "@types/semver@^7.3.8": version "7.3.10" @@ -7476,10 +7493,10 @@ ansi-align@^3.0.0: dependencies: string-width "^3.0.0" -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== +ansi-colors@^4.1.1, ansi-colors@^4.1.3: + version "4.1.3" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== ansi-escapes@^3.0.0: version "3.2.0" @@ -7873,6 +7890,16 @@ array-unique@^0.3.2: resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.flat@^1.2.3: + version "1.3.0" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz#0b0c1567bf57b38b56b4c97b8aa72ab45e4adc7b" + integrity sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.2" + es-shim-unscopables "^1.0.0" + array.prototype.flat@^1.2.5: version "1.2.5" resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz#07e0975d84bbc7c48cd1879d609e682598d33e13" @@ -7900,7 +7927,7 @@ arraybuffer.slice@~0.0.7: arrify@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== arrify@^2.0.0, arrify@^2.0.1: version "2.0.1" @@ -9221,9 +9248,9 @@ ci-info@^2.0.0: integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== ci-info@^3.1.0, ci-info@^3.2.0: - version "3.3.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" - integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== + version "3.3.2" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.2.tgz#6d2967ffa407466481c6c90b6e16b3098f080128" + integrity sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg== cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" @@ -9407,7 +9434,7 @@ clone@2.x, clone@^2.1.1, clone@^2.1.2: clone@^1.0.2: version "1.0.4" resolved "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== cloneable-readable@^1.0.0: version "1.1.3" @@ -9514,7 +9541,7 @@ color-convert@^2.0.1: color-name@1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: version "1.1.4" @@ -10180,7 +10207,7 @@ cross-fetch@3.1.5, cross-fetch@^3.0.4, cross-fetch@^3.0.6, cross-fetch@^3.1.3, c cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= + integrity sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A== dependencies: lru-cache "^4.0.1" shebang-command "^1.2.0" @@ -10456,30 +10483,30 @@ csstype@^3.0.2, csstype@^3.0.6: resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.7.tgz#2a5fb75e1015e84dd15692f71e89a1450290950b" integrity sha512-KxnUB0ZMlnUWCsx2Z8MUsr6qV6ja1w9ArPErJaJaF8a5SOWoHLIszeCTKGRGRgtLgYrs1E8CHkNSP1VZTTPc9g== -csv-generate@^3.2.4: - version "3.2.4" - resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.2.4.tgz#440dab9177339ee0676c9e5c16f50e2b3463c019" - integrity sha512-qNM9eqlxd53TWJeGtY1IQPj90b563Zx49eZs8e0uMyEvPgvNVmX1uZDtdzAcflB3PniuH9creAzcFOdyJ9YGvA== +csv-generate@^3.4.3: + version "3.4.3" + resolved "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" + integrity sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw== -csv-parse@^4.8.8: - version "4.12.0" - resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.12.0.tgz#fd42d6291bbaadd51d3009f6cadbb3e53b4ce026" - integrity sha512-wPQl3H79vWLPI8cgKFcQXl0NBgYYEqVnT1i6/So7OjMpsI540oD7p93r3w6fDSyPvwkTepG05F69/7AViX2lXg== +csv-parse@^4.16.3: + version "4.16.3" + resolved "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" + integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== -csv-stringify@^5.3.6: - version "5.5.1" - resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.5.1.tgz#f42cdd379b0f7f142933a11f674b1a91ebd0fcd0" - integrity sha512-HM0/86Ks8OwFbaYLd495tqTs1NhscZL52dC4ieKYumy8+nawQYC0xZ63w1NqLf0M148T2YLYqowoImc1giPn0g== +csv-stringify@^5.6.5: + version "5.6.5" + resolved "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" + integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== -csv@^5.3.1: - version "5.3.2" - resolved "https://registry.npmjs.org/csv/-/csv-5.3.2.tgz#50b344e25dfbb8c62684a1bcec18c22468b2161e" - integrity sha512-odDyucr9OgJTdGM2wrMbJXbOkJx3nnUX3Pt8SFOwlAMOpsUQlz1dywvLMXJWX/4Ib0rjfOsaawuuwfI5ucqBGQ== +csv@^5.5.0: + version "5.5.3" + resolved "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz#cd26c1e45eae00ce6a9b7b27dcb94955ec95207d" + integrity sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g== dependencies: - csv-generate "^3.2.4" - csv-parse "^4.8.8" - csv-stringify "^5.3.6" - stream-transform "^2.0.1" + csv-generate "^3.4.3" + csv-parse "^4.16.3" + csv-stringify "^5.6.5" + stream-transform "^2.1.3" cypress-plugin-snapshots@^1.4.4: version "1.4.4" @@ -10886,7 +10913,7 @@ debuglog@^1.0.1: decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + integrity sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg== dependencies: decamelize "^1.1.0" map-obj "^1.0.0" @@ -10894,7 +10921,7 @@ decamelize-keys@^1.1.0: decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== decimal.js-light@^2.4.1: version "2.5.0" @@ -10969,7 +10996,7 @@ default-gateway@^6.0.3: defaults@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + integrity sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA== dependencies: clone "^1.0.2" @@ -10988,14 +11015,7 @@ define-lazy-prop@^2.0.0: resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-properties@^1.1.4: +define-properties@^1.1.3, define-properties@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== @@ -11103,9 +11123,9 @@ detect-indent@^5.0.0: integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= detect-indent@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" - integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== + version "6.1.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== detect-libc@^1.0.3: version "1.0.3" @@ -11655,7 +11675,7 @@ error@^10.4.0: resolved "https://registry.npmjs.org/error/-/error-10.4.0.tgz#6fcf0fd64bceb1e750f8ed9a3dd880f00e46a487" integrity sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw== -es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es-abstract@^1.19.1: +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.1: version "1.19.1" resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== @@ -11681,7 +11701,7 @@ es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.19.0, es- string.prototype.trimstart "^1.0.4" unbox-primitive "^1.0.1" -es-abstract@^1.19.2, es-abstract@^1.19.5: +es-abstract@^1.19.0, es-abstract@^1.19.2, es-abstract@^1.19.5: version "1.20.1" resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== @@ -11892,7 +11912,7 @@ escape-html@^1.0.3, escape-html@~1.0.3: escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" @@ -13377,13 +13397,13 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + version "1.1.2" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" + integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== dependencies: function-bind "^1.1.1" has "^1.0.3" - has-symbols "^1.0.1" + has-symbols "^1.0.3" get-monorepo-packages@^1.1.0: version "1.2.0" @@ -13796,12 +13816,12 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.9" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== -graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -13998,12 +14018,7 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== - -has-bigints@^1.0.2: +has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== @@ -14023,7 +14038,7 @@ has-cors@1.1.0: has-flag@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" @@ -14037,12 +14052,7 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" -has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== - -has-symbols@^1.0.3: +has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== @@ -14909,7 +14919,7 @@ is-arguments@^1.0.4: is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-arrayish@^0.3.1: version "0.3.2" @@ -14917,9 +14927,11 @@ is-arrayish@^0.3.1: integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== is-bigint@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" - integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg== + version "1.0.4" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" is-binary-path@~2.1.0: version "2.1.0" @@ -14929,11 +14941,12 @@ is-binary-path@~2.1.0: binary-extensions "^2.0.0" is-boolean-object@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz#e2aaad3a3a8fca34c28f6eee135b156ed2587ff0" - integrity sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA== + version "1.1.2" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: - call-bind "^1.0.0" + call-bind "^1.0.2" + has-tostringtag "^1.0.0" is-buffer@^1.1.5: version "1.1.6" @@ -14971,14 +14984,14 @@ is-ci@^3.0.0, is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.1.0, is-core-module@^2.2.0, is-core-module@^2.8.0: +is-core-module@^2.1.0, is-core-module@^2.2.0: version "2.8.1" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== dependencies: has "^1.0.3" -is-core-module@^2.8.1: +is-core-module@^2.8.0, is-core-module@^2.8.1: version "2.9.0" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== @@ -15000,9 +15013,11 @@ is-data-descriptor@^1.0.0: kind-of "^6.0.0" is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== + version "1.0.5" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" is-decimal@^1.0.0: version "1.0.4" @@ -15151,12 +15166,7 @@ is-module@^1.0.0: resolved "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= -is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== - -is-negative-zero@^2.0.2: +is-negative-zero@^2.0.1, is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== @@ -15172,9 +15182,11 @@ is-npm@^5.0.0: integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== is-number-object@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" - integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw== + version "1.0.7" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== + dependencies: + has-tostringtag "^1.0.0" is-number@^3.0.0: version "3.0.0" @@ -15318,12 +15330,7 @@ is-scoped@^2.1.0: dependencies: scoped-regex "^2.0.0" -is-shared-array-buffer@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" - integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== - -is-shared-array-buffer@^1.0.2: +is-shared-array-buffer@^1.0.1, is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== @@ -15365,18 +15372,18 @@ is-string@^1.0.5, is-string@^1.0.7: has-tostringtag "^1.0.0" is-subdir@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.1.1.tgz#423e66902f9c5f159b9cc4826c820df083059538" - integrity sha512-VYpq0S7gPBVkkmfwkvGnx1EL9UVIo87NQyNcgMiNUdQCws3CJm5wj2nB+XPL7zigvjxhuZgp3bl2yBcKkSIj1w== + version "1.2.0" + resolved "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz#b791cd28fab5202e91a08280d51d9d7254fd20d4" + integrity sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw== dependencies: better-path-resolve "1.0.0" is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== + version "1.0.4" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== dependencies: - has-symbols "^1.0.1" + has-symbols "^1.0.2" is-text-path@^1.0.1: version "1.0.1" @@ -15425,14 +15432,7 @@ is-utf8@^0.2.0, is-utf8@^0.2.1: resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= -is-weakref@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" - integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ== - dependencies: - call-bind "^1.0.0" - -is-weakref@^1.0.2: +is-weakref@^1.0.1, is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== @@ -16424,7 +16424,7 @@ jsonc-parser@^3.0.0: jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== optionalDependencies: graceful-fs "^4.1.6" @@ -16711,7 +16711,7 @@ kleur@^3.0.3: resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== -kleur@^4.0.3: +kleur@^4.0.3, kleur@^4.1.4: version "4.1.4" resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.4.tgz#8c202987d7e577766d039a8cd461934c01cda04d" integrity sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA== @@ -16909,9 +16909,9 @@ lilconfig@^2.0.3: integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + version "1.2.4" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== linkify-it@^3.0.1: version "3.0.2" @@ -17292,7 +17292,7 @@ lodash.sortby@^4.7.0: lodash.startcase@^4.4.0: version "4.4.0" resolved "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" - integrity sha1-lDbjTtJgk+1/+uGTYUQ1CRXZrdg= + integrity sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg== lodash.template@^4.5.0: version "4.5.0" @@ -17621,7 +17621,7 @@ map-cache@^0.2.0, map-cache@^0.2.2: map-obj@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== map-obj@^4.0.0, map-obj@^4.1.0: version "4.3.0" @@ -18346,9 +18346,9 @@ min-document@^2.19.0: dom-walk "^0.1.0" min-indent@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256" - integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY= + version "1.0.1" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== mini-css-extract-plugin@^2.4.2: version "2.6.1" @@ -19256,17 +19256,12 @@ object-hash@^2.0.1: resolved "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== -object-inspect@^1.11.0, object-inspect@^1.9.0: - version "1.12.0" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" - integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== - -object-inspect@^1.12.0, object-inspect@^1.12.2: +object-inspect@^1.11.0, object-inspect@^1.12.0, object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.2" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== -object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -19527,7 +19522,7 @@ os-name@^3.1.0: os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== ospath@^1.2.2: version "1.2.2" @@ -19585,13 +19580,20 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.0.0: version "2.2.2" resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== dependencies: p-try "^2.0.0" +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + p-limit@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" @@ -19886,17 +19888,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - lines-and-columns "^1.1.6" - -parse-json@^5.2.0: +parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -21070,7 +21062,7 @@ ps-tree@1.2.0: pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28, psl@^1.1.33: version "1.8.0" @@ -22324,7 +22316,7 @@ resolve.exports@^1.1.0: resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: +resolve@^1.1.6, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0: version "1.21.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz#b51adc97f3472e6a5cf4444d34bc9d6b9037591f" integrity sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA== @@ -22333,7 +22325,7 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.22.0: +resolve@^1.10.0, resolve@^1.22.0: version "1.22.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== @@ -22959,7 +22951,7 @@ shallowequal@^1.1.0: shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" @@ -22973,7 +22965,7 @@ shebang-command@^2.0.0: shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== shebang-regex@^3.0.0: version "3.0.0" @@ -23114,11 +23106,12 @@ smart-buffer@^4.2.0: resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== -smartwrap@^1.2.3: - version "1.2.5" - resolved "https://registry.npmjs.org/smartwrap/-/smartwrap-1.2.5.tgz#45ee3e09ac234e5f7f17c16e916f511834f3cd23" - integrity sha512-bzWRwHwu0RnWjwU7dFy7tF68pDAx/zMSu3g7xr9Nx5J0iSImYInglwEVExyHLxXljy6PWMjkSAbwF7t2mPnRmg== +smartwrap@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/smartwrap/-/smartwrap-2.0.2.tgz#7e25d3dd58b51c6ca4aba3a9e391650ea62698a4" + integrity sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA== dependencies: + array.prototype.flat "^1.2.3" breakword "^1.0.5" grapheme-splitter "^1.0.4" strip-ansi "^6.0.0" @@ -23372,30 +23365,30 @@ spawndamnit@^2.0.0: signal-exit "^3.0.2" spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== + version "3.1.1" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== + version "2.3.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== + version "3.0.1" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + version "3.0.11" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95" + integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g== spdy-transport@^3.0.0: version "3.0.0" @@ -23473,7 +23466,7 @@ sprintf-js@^1.1.2: sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== sqlstring@^2.3.2: version "2.3.2" @@ -23658,7 +23651,7 @@ stream-shift@^1.0.0: resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -stream-transform@^2.0.1: +stream-transform@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz#a1c3ecd72ddbf500aa8d342b0b9df38f5aa598e3" integrity sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ== @@ -23765,15 +23758,7 @@ string.prototype.matchall@^4.0.7: regexp.prototype.flags "^1.4.1" side-channel "^1.0.4" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -string.prototype.trimend@^1.0.5: +string.prototype.trimend@^1.0.4, string.prototype.trimend@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== @@ -23782,15 +23767,7 @@ string.prototype.trimend@^1.0.5: define-properties "^1.1.4" es-abstract "^1.19.5" -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -string.prototype.trimstart@^1.0.5: +string.prototype.trimstart@^1.0.4, string.prototype.trimstart@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== @@ -23873,7 +23850,7 @@ strip-bom@^2.0.0: strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-bom@^4.0.0: version "4.0.0" @@ -24305,9 +24282,9 @@ temp@^0.8.4: rimraf "~2.6.2" term-size@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" - integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== + version "2.2.1" + resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" + integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== terminal-link@^2.0.0: version "2.1.1" @@ -24793,17 +24770,18 @@ tty-browserify@0.0.0: resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= -tty-table@^2.8.10: - version "2.8.13" - resolved "https://registry.npmjs.org/tty-table/-/tty-table-2.8.13.tgz#d484a416381973eaebbdf19c79136b390e5c6d70" - integrity sha512-eVV/+kB6fIIdx+iUImhXrO22gl7f6VmmYh0Zbu6C196fe1elcHXd7U6LcLXu0YoVPc2kNesWiukYcdK8ZmJ6aQ== +tty-table@^4.1.5: + version "4.1.6" + resolved "https://registry.npmjs.org/tty-table/-/tty-table-4.1.6.tgz#6bd58338f36c94cce478c3337934d8a65ab40a73" + integrity sha512-kRj5CBzOrakV4VRRY5kUWbNYvo/FpOsz65DzI5op9P+cHov3+IqPbo1JE1ZnQGkHdZgNFDsrEjrfqqy/Ply9fw== dependencies: - chalk "^3.0.0" - csv "^5.3.1" - smartwrap "^1.2.3" + chalk "^4.1.2" + csv "^5.5.0" + kleur "^4.1.4" + smartwrap "^2.0.2" strip-ansi "^6.0.0" wcwidth "^1.0.1" - yargs "^15.1.0" + yargs "^17.1.1" tunnel-agent@^0.6.0: version "0.6.0" @@ -24961,17 +24939,7 @@ uid2@0.0.3, uid2@0.0.x: resolved "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz#483126e11774df2f71b8b639dcd799c376162b82" integrity sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I= -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== - dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" - which-boxed-primitive "^1.0.2" - -unbox-primitive@^1.0.2: +unbox-primitive@^1.0.1, unbox-primitive@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== @@ -25843,7 +25811,7 @@ which-module@^1.0.0: which-module@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== which-pm@2.0.0: version "2.0.0" @@ -26201,7 +26169,7 @@ y18n@^5.0.5: yallist@^2.1.2: version "2.1.2" resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^3.0.2: version "3.1.1" @@ -26289,7 +26257,7 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: +yargs@^17.0.0, yargs@^17.2.1: version "17.3.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9" integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA== @@ -26302,7 +26270,7 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.2.1: y18n "^5.0.5" yargs-parser "^21.0.0" -yargs@^17.3.1: +yargs@^17.1.1, yargs@^17.3.1: version "17.5.1" resolved "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== From 6cf0b868c59a49d7a21f5654ef84144b7cc0e1ef Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 06:54:24 +0000 Subject: [PATCH 477/550] chore(deps): update dependency cypress to v10.1.0 Signed-off-by: Renovate Bot --- cypress/yarn.lock | 52 +++++++++++++++++++++++------------------------ yarn.lock | 6 +++--- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/cypress/yarn.lock b/cypress/yarn.lock index 53f61fd113..46f9a158fd 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -40,14 +40,14 @@ lodash.once "^4.1.1" "@types/node@*": - version "17.0.40" - resolved "https://registry.npmjs.org/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090" - integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg== + version "18.0.0" + resolved "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz#67c7b724e1bcdd7a8821ce0d5ee184d3b4dd525a" + integrity sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA== "@types/node@^14.14.31": - version "14.18.20" - resolved "https://registry.npmjs.org/@types/node/-/node-14.18.20.tgz#268f028b36eaf51181c3300252f605488c4f0650" - integrity sha512-Q8KKwm9YqEmUBRsqJ2GWJDtXltBDxTdC4m5vTdXBolu2PeQh8LX+f6BTwU+OuXPu37fLxoN6gidqBmnky36FXA== + version "14.18.21" + resolved "https://registry.npmjs.org/@types/node/-/node-14.18.21.tgz#0155ee46f6be28b2ff0342ca1a9b9fd4468bef41" + integrity sha512-x5W9s+8P4XteaxT/jKF0PSb7XEvo5VmqEWgsMlyeY4ZlLK8I6aH6g5TPPyDlLAep+GYf4kefb7HFyc7PAO3m+Q== "@types/sinonjs__fake-timers@8.1.1": version "8.1.1" @@ -121,9 +121,9 @@ astral-regex@^2.0.0: integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== async@^3.2.0: - version "3.2.3" - resolved "https://registry.npmjs.org/async/-/async-3.2.3.tgz#ac53dafd3f4720ee9e8a160628f18ea91df196c9" - integrity sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g== + version "3.2.4" + resolved "https://registry.npmjs.org/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== asynckit@^0.4.0: version "0.4.0" @@ -217,9 +217,9 @@ check-more-types@^2.24.0: integrity sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA== ci-info@^3.2.0: - version "3.3.1" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.1.tgz#58331f6f472a25fe3a50a351ae3052936c2c7f32" - integrity sha512-SXgeMX9VwDe7iFFaEWkA5AstuER9YKqy4EhHqr4DVqkwmD9rpVimkMKWHdjn30Ja45txyjhSn63lVX69eVCckg== + version "3.3.2" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.2.tgz#6d2967ffa407466481c6c90b6e16b3098f080128" + integrity sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg== clean-stack@^2.0.0: version "2.2.0" @@ -263,9 +263,9 @@ color-name@~1.1.4: integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== colorette@^2.0.16: - version "2.0.17" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.17.tgz#5dd4c0d15e2984b7433cb4a9f2ead45063b80c47" - integrity sha512-hJo+3Bkn0NCHybn9Tu35fIeoOKGOk5OCC32y4Hz2It+qlCO2Q3DeQ1hRn/tDDMQKRYUEzqsl7jbF6dYKjlE60g== + version "2.0.19" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" @@ -304,9 +304,9 @@ cross-spawn@^7.0.0: which "^2.0.1" cypress@^10.0.0: - version "10.0.3" - resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.3.tgz#889b4bef863b7d1ef1b608b85b964394ad350c5f" - integrity sha512-8C82XTybsEmJC9POYSNITGUhMLCRwB9LadP0x33H+52QVoBjhsWvIzrI+ybCe0+TyxaF0D5/9IL2kSTgjqCB9A== + version "10.1.0" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.1.0.tgz#6514a26c721822a02bc194e9a7f72c3142aea174" + integrity sha512-aQ4JVZVib4Xd9FZW8IRZfKelUvqF4y5A+oUbNvn8TlsBmEfIg3m5Xd6Mt6PVU/jHiVJ9Psl905B3ZPnrDcmyuQ== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" @@ -878,7 +878,7 @@ qs@~6.5.2: request-progress@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" - integrity sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4= + integrity sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg== dependencies: throttleit "^1.0.0" @@ -1014,12 +1014,12 @@ supports-color@^8.1.1: throttleit@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c" - integrity sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw= + integrity sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g== through@^2.3.8: version "2.3.8" resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== tmp@~0.2.1: version "0.2.1" @@ -1044,14 +1044,14 @@ tslib@^2.1.0: tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== type-fest@^0.21.3: version "0.21.3" @@ -1081,7 +1081,7 @@ uuid@^8.3.2: verror@1.10.0: version "1.10.0" resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -1115,7 +1115,7 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== yallist@^4.0.0: version "4.0.0" @@ -1125,7 +1125,7 @@ yallist@^4.0.0: yauzl@^2.10.0: version "2.10.0" resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" - integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk= + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== dependencies: buffer-crc32 "~0.2.3" fd-slicer "~1.1.0" diff --git a/yarn.lock b/yarn.lock index e30e3ec737..04a19c757f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10530,9 +10530,9 @@ cypress-plugin-snapshots@^1.4.4: unidiff "1.0.2" cypress@^10.0.0: - version "10.0.3" - resolved "https://registry.npmjs.org/cypress/-/cypress-10.0.3.tgz#889b4bef863b7d1ef1b608b85b964394ad350c5f" - integrity sha512-8C82XTybsEmJC9POYSNITGUhMLCRwB9LadP0x33H+52QVoBjhsWvIzrI+ybCe0+TyxaF0D5/9IL2kSTgjqCB9A== + version "10.1.0" + resolved "https://registry.npmjs.org/cypress/-/cypress-10.1.0.tgz#6514a26c721822a02bc194e9a7f72c3142aea174" + integrity sha512-aQ4JVZVib4Xd9FZW8IRZfKelUvqF4y5A+oUbNvn8TlsBmEfIg3m5Xd6Mt6PVU/jHiVJ9Psl905B3ZPnrDcmyuQ== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" From cec1cd45786f0b3d4b822b28860d7ec2915f5420 Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 16 Jun 2022 09:44:29 +0200 Subject: [PATCH 478/550] Add requested improvements to vault plugin Signed-off-by: ivgo --- plugins/vault-backend/api-report.md | 19 +-------- plugins/vault-backend/config.d.ts | 1 + plugins/vault-backend/package.json | 2 +- .../src/service/VaultBuilder.tsx | 21 +--------- .../src/service/vaultApi.test.ts | 3 +- plugins/vault-backend/src/service/vaultApi.ts | 38 +++++++---------- plugins/vault/api-report.md | 25 +++++++++++ plugins/vault/package.json | 1 + plugins/vault/src/api.test.ts | 42 ++++++++++--------- plugins/vault/src/api.ts | 40 +++++++++++++----- .../EntityVaultTable.test.tsx | 26 ++++++------ .../EntityVaultTable/EntityVaultTable.tsx | 21 ++++++---- plugins/vault/src/conditions.ts | 6 +++ plugins/vault/src/constants.ts | 4 ++ plugins/vault/src/index.ts | 4 ++ yarn.lock | 41 +++--------------- 16 files changed, 147 insertions(+), 147 deletions(-) diff --git a/plugins/vault-backend/api-report.md b/plugins/vault-backend/api-report.md index 1c7e669ef2..9f738b15e9 100644 --- a/plugins/vault-backend/api-report.md +++ b/plugins/vault-backend/api-report.md @@ -12,13 +12,6 @@ import { TaskRunner } from '@backstage/backend-tasks'; // @public export function createRouter(options: RouterOptions): express.Router; -// @public -export type RenewTokenResponse = { - auth: { - client_token: string; - }; -}; - // @public export interface RouterOptions { // (undocumented) @@ -33,7 +26,7 @@ export interface RouterOptions { export interface VaultApi { getFrontendSecretsUrl(): string; listSecrets(secretPath: string): Promise; - renewToken?(): Promise; + renewToken?(): Promise; } // @public @@ -45,7 +38,6 @@ export class VaultBuilder { enableTokenRenew(schedule?: TaskRunner): Promise; // (undocumented) protected readonly env: VaultEnvironment; - protected renewToken(vaultClient: VaultClient): Promise; setVaultClient(vaultClient: VaultClient): this; } @@ -62,7 +54,7 @@ export class VaultClient implements VaultApi { // (undocumented) listSecrets(secretPath: string): Promise; // (undocumented) - renewToken(): Promise; + renewToken(): Promise; } // @public @@ -82,12 +74,5 @@ export type VaultSecret = { editUrl: string; }; -// @public -export type VaultSecretList = { - data: { - keys: string[]; - }; -}; - // (No @packageDocumentation comment for this package) ``` diff --git a/plugins/vault-backend/config.d.ts b/plugins/vault-backend/config.d.ts index b1f917463e..c7aac4db9d 100644 --- a/plugins/vault-backend/config.d.ts +++ b/plugins/vault-backend/config.d.ts @@ -19,6 +19,7 @@ export interface Config { vault?: { /** * The baseUrl for your Vault instance. + * @visibility frontend */ baseUrl: string; diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 651b95f98c..080398ea52 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -54,7 +54,7 @@ "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", - "supertest": "^4.0.2" + "supertest": "^6.1.6" }, "files": [ "dist", diff --git a/plugins/vault-backend/src/service/VaultBuilder.tsx b/plugins/vault-backend/src/service/VaultBuilder.tsx index aa2858345f..67260f45ca 100644 --- a/plugins/vault-backend/src/service/VaultBuilder.tsx +++ b/plugins/vault-backend/src/service/VaultBuilder.tsx @@ -45,9 +45,6 @@ export type VaultBuilderReturn = { * @public */ export class VaultBuilder { - // private vaultTokenRefreshInterval: Duration = Duration.fromObject({ - // minutes: 60, - // }); private vaultClient?: VaultClient; /** @@ -118,26 +115,12 @@ export class VaultBuilder { fn: async () => { this.env.logger.info('Renewing Vault token'); const vaultClient = this.vaultClient ?? new VaultClient(this.env); - await this.renewToken(vaultClient); + await vaultClient.renewToken(); }, }); return this; } - /** - * Renews the token for vault using a defined client. - * - * @param vaultClient - The vault client used to renew the token - */ - protected async renewToken(vaultClient: VaultClient) { - const result = await vaultClient.renewToken(); - if (!result) { - this.env.logger.warn('Error renewing vault token'); - } else { - this.env.logger.info('Vault token renewed'); - } - } - /** * Builds the backend routes for Vault. * @@ -159,7 +142,7 @@ export class VaultBuilder { } const secrets = await vaultClient.listSecrets(path); - res.json(secrets); + res.json({ items: secrets }); }); return router; diff --git a/plugins/vault-backend/src/service/vaultApi.test.ts b/plugins/vault-backend/src/service/vaultApi.test.ts index 5a29633933..e80703c99f 100644 --- a/plugins/vault-backend/src/service/vaultApi.test.ts +++ b/plugins/vault-backend/src/service/vaultApi.test.ts @@ -93,8 +93,7 @@ describe('VaultApi', () => { it('should return success token renew', async () => { setupHandlers(); const api = new VaultClient({ config }); - const apiRenew = await api.renewToken(); - expect(apiRenew).toBeTruthy(); + expect(await api.renewToken()).toBe(undefined); }); it('should render frontend url', () => { diff --git a/plugins/vault-backend/src/service/vaultApi.ts b/plugins/vault-backend/src/service/vaultApi.ts index 0623780654..ad399dc6ac 100644 --- a/plugins/vault-backend/src/service/vaultApi.ts +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -15,12 +15,13 @@ */ import { Config } from '@backstage/config'; +import { NotFoundError } from '@backstage/errors'; import fetch from 'cross-fetch'; import { getVaultConfig, VaultConfig } from '../config'; /** * Object received as a response from the Vault API when fetching secrets - * @public + * @internal */ export type VaultSecretList = { data: { @@ -40,9 +41,8 @@ export type VaultSecret = { /** * Object received as response when the token is renewed using the Vault API - * @public */ -export type RenewTokenResponse = { +type RenewTokenResponse = { auth: { client_token: string; }; @@ -63,10 +63,10 @@ export interface VaultApi { */ listSecrets(secretPath: string): Promise; /** - * Optional, to renew the token used to list the secrets. Returns true - * if the action was successfull, false otherwise. + * Optional, to renew the token used to list the secrets. Throws an + * error if the token renewal went wrong. */ - renewToken?(): Promise; + renewToken?(): Promise; } /** @@ -84,7 +84,7 @@ export class VaultClient implements VaultApi { path: string, query: { [key in string]: any }, method: string = 'GET', - ): Promise { + ): Promise { const url = new URL(path, this.vaultConfig.baseUrl); const response = await fetch( `${url.toString()}?${new URLSearchParams(query).toString()}`, @@ -96,15 +96,14 @@ export class VaultClient implements VaultApi { }, }, ); - if (response.status === 200) { + if (response.ok) { return (await response.json()) as T; + } else if (response.status === 404) { + throw new NotFoundError(`No secrets found in path '${path}'`); } - return undefined; - } - - private isFolder(secretName: string): boolean { - const regex = /^.*\/$/gm; - return regex.test(secretName); + throw new Error( + `Unexpected error while fetching secrets from path '${path}'`, + ); } getFrontendSecretsUrl(): string { @@ -117,14 +116,11 @@ export class VaultClient implements VaultApi { ? `v1/${this.vaultConfig.secretEngine}/metadata/${secretPath}` : `v1/${this.vaultConfig.secretEngine}/${secretPath}`; const result = await this.callApi(listUrl, { list: true }); - if (!result) { - return []; - } const secrets: VaultSecret[] = []; await Promise.all( result.data.keys.map(async secret => { - if (this.isFolder(secret)) { + if (secret.endsWith('/')) { secrets.push( ...(await this.listSecrets(`${secretPath}/${secret.slice(0, -1)}`)), ); @@ -141,17 +137,13 @@ export class VaultClient implements VaultApi { return secrets; } - async renewToken(): Promise { + async renewToken(): Promise { const result = await this.callApi( 'v1/auth/token/renew-self', {}, 'POST', ); - if (!result) { - return false; - } this.vaultConfig.token = result.auth.client_token; - return true; } } diff --git a/plugins/vault/api-report.md b/plugins/vault/api-report.md index a0b5773c70..215ee274ec 100644 --- a/plugins/vault/api-report.md +++ b/plugins/vault/api-report.md @@ -5,13 +5,38 @@ ```ts /// +import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { Entity } from '@backstage/catalog-model'; // @public export const EntityVaultCard: () => JSX.Element; +// Warning: (ae-missing-release-tag) "isVaultAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public +export function isVaultAvailable(entity: Entity): boolean; + +// @public (undocumented) +export const VAULT_SECRET_PATH_ANNOTATION = 'vault.io/secrets-path'; + +// @public +export interface VaultApi { + listSecrets(secretPath: string): Promise; +} + +// @public (undocumented) +export const vaultApiRef: ApiRef; + // @public export const vaultPlugin: BackstagePlugin<{}, {}>; +// @public +export type VaultSecret = { + name: string; + showUrl: string; + editUrl: string; +}; + // (No @packageDocumentation comment for this package) ``` diff --git a/plugins/vault/package.json b/plugins/vault/package.json index 54fc7cfc90..c4b447eaca 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -37,6 +37,7 @@ "@backstage/catalog-model": "^1.0.3", "@backstage/core-components": "^0.9.5", "@backstage/core-plugin-api": "^1.0.3", + "@backstage/errors": "^1.0.0", "@backstage/plugin-catalog-react": "^1.1.1", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", diff --git a/plugins/vault/src/api.test.ts b/plugins/vault/src/api.test.ts index 70c6a553df..3733d8be0f 100644 --- a/plugins/vault/src/api.test.ts +++ b/plugins/vault/src/api.test.ts @@ -27,18 +27,20 @@ describe('api', () => { const mockBaseUrl = 'https://api-vault.com/api/vault'; const discoveryApi = UrlPatternDiscovery.compile(mockBaseUrl); - const mockSecretsResult: VaultSecret[] = [ - { - name: 'secret::one', - editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, - showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, - }, - { - name: 'secret::two', - editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, - showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, - }, - ]; + const mockSecretsResult: { items: VaultSecret[] } = { + items: [ + { + name: 'secret::one', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, + }, + { + name: 'secret::two', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, + }, + ], + }; const setupHandlers = () => { server.use( @@ -47,31 +49,33 @@ describe('api', () => { if (path === 'test/success') { return res(ctx.json(mockSecretsResult)); } else if (path === 'test/error') { - return res(ctx.json([])); + return res(ctx.json({ items: [] })); } return res(ctx.status(400)); }), + rest.get(`${mockBaseUrl}/v1/secrets/`, (_req, res, ctx) => { + return res(ctx.json(mockSecretsResult)); + }), ); }; it('should return secrets', async () => { setupHandlers(); const api = new VaultClient({ discoveryApi }); - const secrets = await api.listSecrets('test/success'); - expect(secrets).toEqual(mockSecretsResult); + expect(await api.listSecrets('test/success')).toEqual( + mockSecretsResult.items, + ); }); it('should return empty secret list', async () => { setupHandlers(); const api = new VaultClient({ discoveryApi }); expect(await api.listSecrets('test/error')).toEqual([]); - expect(await api.listSecrets('')).toEqual([]); }); - it('should return no secrets', async () => { + it('should return all the secrets if no path defined', async () => { setupHandlers(); const api = new VaultClient({ discoveryApi }); - const secrets = await api.listSecrets(''); - expect(secrets).toEqual([]); + expect(await api.listSecrets('')).toEqual(mockSecretsResult.items); }); }); diff --git a/plugins/vault/src/api.ts b/plugins/vault/src/api.ts index 74b212429f..6c17e34d9a 100644 --- a/plugins/vault/src/api.ts +++ b/plugins/vault/src/api.ts @@ -14,21 +14,41 @@ * limitations under the License. */ import { DiscoveryApi, createApiRef } from '@backstage/core-plugin-api'; +import { NotFoundError } from '@backstage/errors'; +/** + * @public + */ export const vaultApiRef = createApiRef({ id: 'plugin.vault.service', }); +/** + * Object containing the secret name and some links. + * @public + */ export type VaultSecret = { name: string; showUrl: string; editUrl: string; }; +/** + * Interface for the VaultApi. + * @public + */ export interface VaultApi { + /** + * Returns a list of secrets used to show in a table. + * @param secretPath - The path where the secrets are stored in Vault + */ listSecrets(secretPath: string): Promise; } +/** + * Default implementation of the VaultApi. + * @public + */ export class VaultClient implements VaultApi { private readonly discoveryApi: DiscoveryApi; @@ -39,7 +59,7 @@ export class VaultClient implements VaultApi { private async callApi( path: string, query: { [key in string]: any }, - ): Promise { + ): Promise { const apiUrl = `${await this.discoveryApi.getBaseUrl('vault')}`; const response = await fetch( `${apiUrl}/${path}?${new URLSearchParams(query).toString()}`, @@ -49,23 +69,21 @@ export class VaultClient implements VaultApi { }, }, ); - if (response.status === 200) { + if (response.ok) { return (await response.json()) as T; + } else if (response.status === 404) { + throw new NotFoundError(`No secrets found in path '${path}'`); } - return undefined; + throw new Error( + `Unexpected error while fetching secrets from path '${path}'`, + ); } async listSecrets(secretPath: string): Promise { - if (secretPath === '') { - return []; - } - const result = await this.callApi( + const result = await this.callApi<{ items: VaultSecret[] }>( `v1/secrets/${encodeURIComponent(secretPath)}`, {}, ); - if (!result) { - return []; - } - return result; + return result.items; } } diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx index f2b181562a..f3d7748b3e 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.test.tsx @@ -68,18 +68,20 @@ describe('EntityVaultTable', () => { }, }; - const mockSecretsResult: VaultSecret[] = [ - { - name: 'secret::one', - editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, - showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, - }, - { - name: 'secret::two', - editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, - showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, - }, - ]; + const mockSecretsResult: { items: VaultSecret[] } = { + items: [ + { + name: 'secret::one', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::one`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::one`, + }, + { + name: 'secret::two', + editUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/edit/test/success/secret::two`, + showUrl: `${mockBaseUrl}/ui/vault/secrets/secrets/show/test/success/secret::two`, + }, + ], + }; const setupHandlers = () => { server.use( diff --git a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx index 197c82c5b8..8311dea2aa 100644 --- a/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx +++ b/plugins/vault/src/components/EntityVaultTable/EntityVaultTable.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; import { Entity } from '@backstage/catalog-model'; -import { Table, TableColumn } from '@backstage/core-components'; +import { Link, Table, TableColumn } from '@backstage/core-components'; import { useApi } from '@backstage/core-plugin-api'; import { Box, Typography } from '@material-ui/core'; import Edit from '@material-ui/icons/Edit'; @@ -27,7 +27,7 @@ import { VAULT_SECRET_PATH_ANNOTATION } from '../../constants'; export const vaultSecretPath = (entity: Entity) => { const secretPath = - entity.metadata.annotations?.[VAULT_SECRET_PATH_ANNOTATION] ?? ''; + entity.metadata.annotations?.[VAULT_SECRET_PATH_ANNOTATION]; return { secretPath }; }; @@ -35,6 +35,11 @@ export const vaultSecretPath = (entity: Entity) => { export const EntityVaultTable = ({ entity }: { entity: Entity }) => { const vaultApi = useApi(vaultApiRef); const { secretPath } = vaultSecretPath(entity); + if (!secretPath) { + throw Error( + `The secret path is undefined. Please, define the annotation ${VAULT_SECRET_PATH_ANNOTATION}`, + ); + } const { value, loading, error } = useAsync(async (): Promise< VaultSecret[] > => { @@ -51,22 +56,22 @@ export const EntityVaultTable = ({ entity }: { entity: Entity }) => { return { secret: secret.name, view: ( - - + ), edit: ( - - + ), }; }); diff --git a/plugins/vault/src/conditions.ts b/plugins/vault/src/conditions.ts index 0ce34085e0..091c7117c2 100644 --- a/plugins/vault/src/conditions.ts +++ b/plugins/vault/src/conditions.ts @@ -16,6 +16,12 @@ import { Entity } from '@backstage/catalog-model'; import { VAULT_SECRET_PATH_ANNOTATION } from './constants'; +/** + * Checks if an entity contains the annotation for Vault. + * @param entity - The entity to check if the annotation exists + * @returns If the annotation exists or not + * @public + */ export function isVaultAvailable(entity: Entity): boolean { return Boolean( entity.metadata.annotations?.hasOwnProperty(VAULT_SECRET_PATH_ANNOTATION), diff --git a/plugins/vault/src/constants.ts b/plugins/vault/src/constants.ts index 1ac8b80b73..0d99c261d4 100644 --- a/plugins/vault/src/constants.ts +++ b/plugins/vault/src/constants.ts @@ -13,4 +13,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + +/** + * @public + */ export const VAULT_SECRET_PATH_ANNOTATION = 'vault.io/secrets-path'; diff --git a/plugins/vault/src/index.ts b/plugins/vault/src/index.ts index c2d1fc3419..f69a787963 100644 --- a/plugins/vault/src/index.ts +++ b/plugins/vault/src/index.ts @@ -14,3 +14,7 @@ * limitations under the License. */ export { vaultPlugin, EntityVaultCard } from './plugin'; +export { isVaultAvailable } from './conditions'; +export { VAULT_SECRET_PATH_ANNOTATION } from './constants'; +export { vaultApiRef } from './api'; +export type { VaultApi, VaultSecret } from './api'; diff --git a/yarn.lock b/yarn.lock index e30e3ec737..5454ec7513 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9718,7 +9718,7 @@ component-emitter@1.2.1: resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= -component-emitter@^1.2.0, component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: +component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== @@ -10032,7 +10032,7 @@ cookie@0.5.0, cookie@~0.5.0: resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== -cookiejar@^2.1.0, cookiejar@^2.1.3: +cookiejar@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== @@ -13048,7 +13048,7 @@ form-data-encoder@^1.4.3, form-data-encoder@^1.7.1: resolved "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz#ac80660e4f87ee0d3d3c3638b7da8278ddb8ec96" integrity sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg== -form-data@^2.3.1, form-data@^2.3.2, form-data@^2.5.0: +form-data@^2.3.2, form-data@^2.5.0: version "2.5.1" resolved "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== @@ -13105,11 +13105,6 @@ formdata-node@^4.3.1: node-domexception "1.0.0" web-streams-polyfill "4.0.0-beta.1" -formidable@^1.2.0: - version "1.2.6" - resolved "https://registry.npmjs.org/formidable/-/formidable-1.2.6.tgz#d2a51d60162bbc9b4a055d8457a7c75315d1a168" - integrity sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ== - formidable@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/formidable/-/formidable-2.0.1.tgz#4310bc7965d185536f9565184dee74fbb75557ff" @@ -17954,7 +17949,7 @@ meros@^1.1.4: resolved "https://registry.npmjs.org/meros/-/meros-1.1.4.tgz#c17994d3133db8b23807f62bec7f0cb276cfd948" integrity sha512-E9ZXfK9iQfG9s73ars9qvvvbSIkJZF5yOo9j4tcwM5tN8mUKfj/EKN5PzOr3ZH0y5wL7dLAHw3RVEfpQV9Q7VQ== -methods@^1.0.0, methods@^1.1.1, methods@^1.1.2, methods@~1.1.2: +methods@^1.0.0, methods@^1.1.2, methods@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= @@ -18293,7 +18288,7 @@ mime-types@^2.0.8, mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, m dependencies: mime-db "1.52.0" -mime@1.6.0, mime@^1.3.4, mime@^1.4.1: +mime@1.6.0, mime@^1.3.4: version "1.6.0" resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -21148,7 +21143,7 @@ q@^1.5.1: resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.10.3, qs@^6.10.1, qs@^6.10.2, qs@^6.10.3, qs@^6.5.1, qs@^6.9.1, qs@^6.9.4, qs@^6.9.6: +qs@6.10.3, qs@^6.10.1, qs@^6.10.2, qs@^6.10.3, qs@^6.9.1, qs@^6.9.4, qs@^6.9.6: version "6.10.3" resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== @@ -23974,22 +23969,6 @@ sucrase@^3.18.0, sucrase@^3.20.2: pirates "^4.0.1" ts-interface-checker "^0.1.9" -superagent@^3.8.3: - version "3.8.3" - resolved "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz#460ea0dbdb7d5b11bc4f78deba565f86a178e128" - integrity sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA== - dependencies: - component-emitter "^1.2.0" - cookiejar "^2.1.0" - debug "^3.1.0" - extend "^3.0.0" - form-data "^2.3.1" - formidable "^1.2.0" - methods "^1.1.1" - mime "^1.4.1" - qs "^6.5.1" - readable-stream "^2.3.5" - superagent@^7.1.3: version "7.1.3" resolved "https://registry.npmjs.org/superagent/-/superagent-7.1.3.tgz#783ff8330e7c2dad6ad8f0095edc772999273b6b" @@ -24007,14 +23986,6 @@ superagent@^7.1.3: readable-stream "^3.6.0" semver "^7.3.7" -supertest@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/supertest/-/supertest-4.0.2.tgz#c2234dbdd6dc79b6f15b99c8d6577b90e4ce3f36" - integrity sha512-1BAbvrOZsGA3YTCWqbmh14L0YEq0EGICX/nBnfkfVJn7SrxQV1I3pMYjSzG9y/7ZU2V9dWqyqk2POwxlb09duQ== - dependencies: - methods "^1.1.2" - superagent "^3.8.3" - supertest@^6.1.3, supertest@^6.1.6: version "6.2.3" resolved "https://registry.npmjs.org/supertest/-/supertest-6.2.3.tgz#291b220126e5faa654d12abe1ada3658757c8c67" From d548547eca1d94ed0fc8fb0661249b33281bdee7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Thu, 9 Jun 2022 16:34:45 +0200 Subject: [PATCH 479/550] help add polarpoint to adopters MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- ADOPTERS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index c66bab4266..5d3a09999f 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -178,4 +178,5 @@ _If you're using Backstage in your organization, please try to add your company | [GlovoApp](http://glovoapp.com/) | [Chris Biancucci](mailto:christian.biancucci@glovoapp.com) | We have recently adopted Backstage and we are using it to improve our Developer Experience: simplifying, automating, and keeping things in order for every existing and new service developed. | | [Dixa](https://dixa.com) | [Jens Møller](mailto:jsc@dixa.com) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. | | [Notino](https://notino.com) | [Jan Remunda](mailto:jan.remunda@notino.com) | Backstage is our developer portal. We use it as service catalog and for technical documentation. | +| [Polarpoint](https://polarpoint.io/) | [Surj Bains](https://github.com/polarpoint-io) | We are using Backstage as our Developer portal as well as for hosting our DevOps portal for software catalog. | | [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | From 8b25b8589335472237c6b7a1ee43a2323832d836 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Thu, 16 Jun 2022 09:50:19 +0000 Subject: [PATCH 480/550] chore(deps): update dependency prettier to v2.7.1 Signed-off-by: Renovate Bot --- microsite/yarn.lock | 6 +++--- yarn.lock | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/microsite/yarn.lock b/microsite/yarn.lock index 84a93573bd..f4831e2b42 100644 --- a/microsite/yarn.lock +++ b/microsite/yarn.lock @@ -5210,9 +5210,9 @@ prepend-http@^2.0.0: integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= prettier@^2.6.2: - version "2.6.2" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" - integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== + version "2.7.1" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== prismjs@^1.22.0: version "1.27.0" diff --git a/yarn.lock b/yarn.lock index f33fa3c4b4..5e9224bcc4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20804,9 +20804,9 @@ prettier@^1.16.4, prettier@^1.19.1: integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== prettier@^2.2.1: - version "2.6.2" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" - integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== + version "2.7.1" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== pretty-bytes@^5.3.0, pretty-bytes@^5.6.0: version "5.6.0" From 5ebf2c70237a3b4c0ab4a4dd11967aad69505ef2 Mon Sep 17 00:00:00 2001 From: ivgo Date: Thu, 16 Jun 2022 12:42:56 +0200 Subject: [PATCH 481/550] Use p-limit to list secrets, update api-report & add changesets Signed-off-by: ivgo --- .changeset/rude-llamas-lie.md | 5 +++++ .changeset/sharp-planes-turn.md | 5 +++++ plugins/vault-backend/package.json | 1 + plugins/vault-backend/src/service/vaultApi.ts | 11 +++++++++-- plugins/vault/api-report.md | 2 -- 5 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 .changeset/rude-llamas-lie.md create mode 100644 .changeset/sharp-planes-turn.md diff --git a/.changeset/rude-llamas-lie.md b/.changeset/rude-llamas-lie.md new file mode 100644 index 0000000000..918d61da6d --- /dev/null +++ b/.changeset/rude-llamas-lie.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-vault': patch +--- + +Export missing parameters and added them to the api-report. Also adapted the API to the expected response from the backend diff --git a/.changeset/sharp-planes-turn.md b/.changeset/sharp-planes-turn.md new file mode 100644 index 0000000000..cc7045a9f7 --- /dev/null +++ b/.changeset/sharp-planes-turn.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-vault-backend': patch +--- + +Throw exceptions instead of swallow them, remove some exported types from the `api-report`, small changes in the API responses & expose the vault `baseUrl` to the frontend as well diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index 080398ea52..d0e3990aee 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -46,6 +46,7 @@ "express": "^4.17.1", "express-promise-router": "^4.1.0", "helmet": "^5.0.2", + "p-limit": "^3.1.0", "winston": "^3.7.2", "yn": "^5.0.0" }, diff --git a/plugins/vault-backend/src/service/vaultApi.ts b/plugins/vault-backend/src/service/vaultApi.ts index ad399dc6ac..14607a694f 100644 --- a/plugins/vault-backend/src/service/vaultApi.ts +++ b/plugins/vault-backend/src/service/vaultApi.ts @@ -17,6 +17,7 @@ import { Config } from '@backstage/config'; import { NotFoundError } from '@backstage/errors'; import fetch from 'cross-fetch'; +import plimit from 'p-limit'; import { getVaultConfig, VaultConfig } from '../config'; /** @@ -75,6 +76,7 @@ export interface VaultApi { */ export class VaultClient implements VaultApi { private vaultConfig: VaultConfig; + private readonly limit = plimit(5); constructor({ config }: { config: Config }) { this.vaultConfig = getVaultConfig(config); @@ -115,14 +117,19 @@ export class VaultClient implements VaultApi { this.vaultConfig.kvVersion === 2 ? `v1/${this.vaultConfig.secretEngine}/metadata/${secretPath}` : `v1/${this.vaultConfig.secretEngine}/${secretPath}`; - const result = await this.callApi(listUrl, { list: true }); + const result = await this.limit(() => + this.callApi(listUrl, { list: true }), + ); const secrets: VaultSecret[] = []; + await Promise.all( result.data.keys.map(async secret => { if (secret.endsWith('/')) { secrets.push( - ...(await this.listSecrets(`${secretPath}/${secret.slice(0, -1)}`)), + ...(await this.limit(() => + this.listSecrets(`${secretPath}/${secret.slice(0, -1)}`), + )), ); } else { secrets.push({ diff --git a/plugins/vault/api-report.md b/plugins/vault/api-report.md index 215ee274ec..f6fa8d1269 100644 --- a/plugins/vault/api-report.md +++ b/plugins/vault/api-report.md @@ -12,8 +12,6 @@ import { Entity } from '@backstage/catalog-model'; // @public export const EntityVaultCard: () => JSX.Element; -// Warning: (ae-missing-release-tag) "isVaultAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// // @public export function isVaultAvailable(entity: Entity): boolean; From 557072e19b8da48a4203b1458436a8eb21cbfb2a Mon Sep 17 00:00:00 2001 From: Maixmilian Ressel Date: Thu, 16 Jun 2022 12:43:32 +0200 Subject: [PATCH 482/550] change some capitalizations Signed-off-by: Maixmilian Ressel --- docs/auth/index.md | 2 +- docs/features/software-templates/writing-templates.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/auth/index.md b/docs/auth/index.md index e644fb74ed..e713e722ef 100644 --- a/docs/auth/index.md +++ b/docs/auth/index.md @@ -187,7 +187,7 @@ sign-in resolvers so that they resolve to the same identity regardless of the me ## Scaffolder Configuration (Software Templates) -If you want to use the authentication capabilities of the [Repository Picker](../features/software-templates/writing-templates.md#the-repository-picker) inside your Software Templates you will need to configure the [`ScmAuthApi`](https://backstage.io/docs/reference/integration-react.scmauthapi) alongside your authentication provider. It is an API used to authenticate towards different SCM systems in a generic way, based on what resource is being accessed. +If you want to use the authentication capabilities of the [Repository Picker](../features/software-templates/writing-templates.md#the-repository-picker) inside your software templates you will need to configure the [`ScmAuthApi`](https://backstage.io/docs/reference/integration-react.scmauthapi) alongside your authentication provider. It is an API used to authenticate towards different SCM systems in a generic way, based on what resource is being accessed. To set it up, you'll need to add an API factory entry to `packages/app/src/apis.ts`. The example below sets up the `ScmAuthApi` for an already configured GitLab authentication provider: diff --git a/docs/features/software-templates/writing-templates.md b/docs/features/software-templates/writing-templates.md index 4078b18a2b..ff9962d8d4 100644 --- a/docs/features/software-templates/writing-templates.md +++ b/docs/features/software-templates/writing-templates.md @@ -398,7 +398,7 @@ token from the user, which you can do on a per-provider basis, in case your template can be published to multiple providers. Note, that you will need to configure an [authentication provider](../../auth/index.md#configuring-authentication-providers), alongside the -[`ScmAuthApi`](../../auth/index.md#scaffolder-configuration-software-templates) for your source code management (scm) service to make this feature work. +[`ScmAuthApi`](../../auth/index.md#scaffolder-configuration-software-templates) for your source code management (SCM) service to make this feature work. ### Accessing the signed-in users details From 0f6b13dab8d7d796b7b105b338e0e3189261e277 Mon Sep 17 00:00:00 2001 From: Yaser Toutah <37777811+YasserToutah@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:42:11 +0300 Subject: [PATCH 483/550] Update ADOPTERS.md Signed-off-by: Patrik Oldsberg --- ADOPTERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index c66bab4266..06557bf02c 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -175,7 +175,7 @@ _If you're using Backstage in your organization, please try to add your company | [Stepstone](https://www.stepstone.com/en/) | [Neil Kennedy](mailto:neil.kennedy@stepstone.com) | StepStone is using Backstage to solve problems around ownership and visibility of our applications. We have thousands of repos, multiple legacy systems and a growing platform that is hard to maintain. Backstage is forming the centre of our push to embrace the chaos. | | [idwall](https://idwall.co) | [Rodrigo Catão Araujo](mailto:rodrigo@idwall.co) | Developer Portal for internal engineers to access service catalog, documentation, observability, infrastructure and internal tooling. | | [Jaguar Land Rover](https://www.jaguarlandrover.com) | [Josh Walker](mailto:jwalke18@jaguarlandrover.com) | Users can request a Gitlab user, which creates a commit with the Terraform code. | -| [GlovoApp](http://glovoapp.com/) | [Chris Biancucci](mailto:christian.biancucci@glovoapp.com) | We have recently adopted Backstage and we are using it to improve our Developer Experience: simplifying, automating, and keeping things in order for every existing and new service developed. | +| [Glovo](http://glovoapp.com/) | [Yaser Toutah](mailto:yaser.toutah@glovoapp.com) | Developer Portal to improve our Developer Experience, identify ownership and track metadata for our services and tools. It's our Service Catalog. In addition to that, we use it for Service Creation, and much more. | | [Dixa](https://dixa.com) | [Jens Møller](mailto:jsc@dixa.com) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. | | [Notino](https://notino.com) | [Jan Remunda](mailto:jan.remunda@notino.com) | Backstage is our developer portal. We use it as service catalog and for technical documentation. | | [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | From 132fc6064646bc17b7fdad69a6e4ae8623048139 Mon Sep 17 00:00:00 2001 From: Nick Marinelli Date: Thu, 16 Jun 2022 09:58:21 -0400 Subject: [PATCH 484/550] api report and export actual api Signed-off-by: Nick Marinelli --- plugins/azure-devops/api-report.md | 186 +++++++++++++++++++++++++++++ plugins/azure-devops/src/index.ts | 2 +- 2 files changed, 187 insertions(+), 1 deletion(-) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 9760340771..6f3a148fb9 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -5,10 +5,22 @@ ```ts /// +import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { BuildRun } from '@backstage/plugin-azure-devops-common'; +import { BuildRunOptions } from '@backstage/plugin-azure-devops-common'; import { DashboardPullRequest } from '@backstage/plugin-azure-devops-common'; +import { DiscoveryApi } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; +import { GitTag } from '@backstage/plugin-azure-devops-common'; +import { IdentityApi } from '@backstage/core-plugin-api'; +import { PullRequest } from '@backstage/plugin-azure-devops-common'; +import { PullRequestOptions } from '@backstage/plugin-azure-devops-common'; +import { PullRequestStatus } from '@backstage/plugin-azure-devops-common'; +import { RepoBuild } from '@backstage/plugin-azure-devops-common'; +import { RepoBuildOptions } from '@backstage/plugin-azure-devops-common'; import { SvgIconProps } from '@material-ui/core'; +import { Team } from '@backstage/plugin-azure-devops-common'; // Warning: (ae-missing-release-tag) "AllFilter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -55,11 +67,117 @@ export type AssignedToUserFilter = BaseFilter & } ); +// Warning: (ae-missing-release-tag) "AzureDevOpsApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export interface AzureDevOpsApi { + // (undocumented) + getAllTeams(): Promise; + // (undocumented) + getBuildRuns( + projectName: string, + repoName?: string, + definitionName?: string, + options?: BuildRunOptions, + ): Promise<{ + items: BuildRun[]; + }>; + // (undocumented) + getDashboardPullRequests( + projectName: string, + ): Promise; + // (undocumented) + getGitTags( + projectName: string, + repoName: string, + ): Promise<{ + items: GitTag[]; + }>; + // (undocumented) + getPullRequests( + projectName: string, + repoName: string, + options?: PullRequestOptions, + ): Promise<{ + items: PullRequest[]; + }>; + // (undocumented) + getRepoBuilds( + projectName: string, + repoName: string, + options?: RepoBuildOptions, + ): Promise<{ + items: RepoBuild[]; + }>; + // (undocumented) + getUserTeamIds(userId: string): Promise; +} + +// Warning: (ae-missing-release-tag) "azureDevOpsApiRef" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const azureDevOpsApiRef: ApiRef; + +// Warning: (ae-missing-release-tag) "AzureDevOpsClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export class AzureDevOpsClient implements AzureDevOpsApi { + constructor(options: { + discoveryApi: DiscoveryApi; + identityApi: IdentityApi; + }); + // (undocumented) + getAllTeams(): Promise; + // (undocumented) + getBuildRuns( + projectName: string, + repoName?: string, + definitionName?: string, + options?: BuildRunOptions, + ): Promise<{ + items: BuildRun[]; + }>; + // (undocumented) + getDashboardPullRequests( + projectName: string, + ): Promise; + // (undocumented) + getGitTags( + projectName: string, + repoName: string, + ): Promise<{ + items: GitTag[]; + }>; + // (undocumented) + getPullRequests( + projectName: string, + repoName: string, + options?: PullRequestOptions, + ): Promise<{ + items: PullRequest[]; + }>; + // (undocumented) + getRepoBuilds( + projectName: string, + repoName: string, + options?: RepoBuildOptions, + ): Promise<{ + items: RepoBuild[]; + }>; + // (undocumented) + getUserTeamIds(userId: string): Promise; +} + // Warning: (ae-missing-release-tag) "azureDevOpsPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) export const azureDevOpsPlugin: BackstagePlugin<{}, {}>; +// Warning: (ae-missing-release-tag) "AzureGitTagsIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const AzureGitTagsIcon: (props: SvgIconProps) => JSX.Element; + // Warning: (ae-missing-release-tag) "AzurePullRequestsIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -226,5 +344,73 @@ export interface PullRequestColumnConfig { // @public (undocumented) export type PullRequestFilter = (pullRequest: DashboardPullRequest) => boolean; +// Warning: (ae-missing-release-tag) "useAllTeams" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useAllTeams(): { + teams?: Team[]; + loading: boolean; + error?: Error; +}; + +// Warning: (ae-missing-release-tag) "useDashboardPullRequests" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useDashboardPullRequests( + project?: string, + pollingInterval?: number, +): { + pullRequests?: DashboardPullRequest[]; + loading: boolean; + error?: Error; +}; + +// Warning: (ae-missing-release-tag) "useProjectRepoFromEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useProjectRepoFromEntity(entity: Entity): { + project: string; + repo: string; +}; + +// Warning: (ae-missing-release-tag) "usePullRequests" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function usePullRequests( + entity: Entity, + defaultLimit?: number, + requestedStatus?: PullRequestStatus, +): { + items?: PullRequest[]; + loading: boolean; + error?: Error; +}; + +// Warning: (ae-missing-release-tag) "useRepoBuilds" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useRepoBuilds( + entity: Entity, + defaultLimit?: number, +): { + items?: RepoBuild[]; + loading: boolean; + error?: Error; +}; + +// Warning: (ae-missing-release-tag) "useUserEmail" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useUserEmail(): string | undefined; + +// Warning: (ae-missing-release-tag) "useUserTeamIds" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export function useUserTeamIds(userId: string | undefined): { + teamIds?: string[]; + loading: boolean; + error?: Error; +}; + // (No @packageDocumentation comment for this package) ``` diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index 32399b1dff..1f66411d7b 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -27,7 +27,7 @@ export { export { AzurePullRequestsIcon } from './components/AzurePullRequestsIcon'; export { AzureGitTagsIcon } from './components/AzureGitTagsIcon'; -export { azureDevOpsApiRef } from './api'; +export * from './api'; export * from './hooks'; export { FilterType } from './components/PullRequestsPage'; From 3c6028af1ba2878a91345d7e815d76624425502a Mon Sep 17 00:00:00 2001 From: Nick Marinelli Date: Thu, 16 Jun 2022 11:51:25 -0400 Subject: [PATCH 485/550] add AzurePipelinesIcon Signed-off-by: Nick Marinelli --- plugins/azure-devops/api-report.md | 5 +++++ plugins/azure-devops/src/index.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 6f3a148fb9..78880eb389 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -178,6 +178,11 @@ export const azureDevOpsPlugin: BackstagePlugin<{}, {}>; // @public (undocumented) export const AzureGitTagsIcon: (props: SvgIconProps) => JSX.Element; +// Warning: (ae-missing-release-tag) "AzurePipelinesIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const AzurePipelinesIcon: (props: SvgIconProps) => JSX.Element; + // Warning: (ae-missing-release-tag) "AzurePullRequestsIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index 1f66411d7b..def88f68c6 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -26,6 +26,7 @@ export { export { AzurePullRequestsIcon } from './components/AzurePullRequestsIcon'; export { AzureGitTagsIcon } from './components/AzureGitTagsIcon'; +export { AzurePipelinesIcon } from './components/AzurePipelinesIcon'; export * from './api'; export * from './hooks'; From 04e1504e858d3cb69dd34c8cc45a48bcdb9e4b3b Mon Sep 17 00:00:00 2001 From: Phil Kuang Date: Thu, 16 Jun 2022 13:57:53 -0400 Subject: [PATCH 486/550] fix(githubPrBoard): support namespaced teams and all kinds Signed-off-by: Phil Kuang --- .changeset/nasty-zoos-cross.md | 5 +++++ .../src/hooks/useUserRepositories.tsx | 11 +++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 .changeset/nasty-zoos-cross.md diff --git a/.changeset/nasty-zoos-cross.md b/.changeset/nasty-zoos-cross.md new file mode 100644 index 0000000000..7a658d7209 --- /dev/null +++ b/.changeset/nasty-zoos-cross.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-github-pull-requests-board': patch +--- + +Support namespaced teams and fetch all kinds diff --git a/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx b/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx index 638a8cb487..b905811aea 100644 --- a/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx +++ b/plugins/github-pull-requests-board/src/hooks/useUserRepositories.tsx @@ -14,7 +14,11 @@ * limitations under the License. */ import { useApi } from '@backstage/core-plugin-api'; -import { useEntity, catalogApiRef } from '@backstage/plugin-catalog-react'; +import { + catalogApiRef, + humanizeEntityRef, + useEntity, +} from '@backstage/plugin-catalog-react'; import { useCallback, useEffect, useState } from 'react'; import { getProjectNameFromEntity } from '../utils/functions'; @@ -26,8 +30,7 @@ export function useUserRepositories() { const getRepositoriesNames = useCallback(async () => { const entitiesList = await catalogApi.getEntities({ filter: { - kind: 'Component', - 'spec.owner': teamEntity?.metadata?.name, + 'spec.owner': humanizeEntityRef(teamEntity, { defaultKind: 'group' }), }, }); @@ -36,7 +39,7 @@ export function useUserRepositories() { ); setRepositories([...new Set(entitiesNames)]); - }, [catalogApi, teamEntity?.metadata?.name]); + }, [catalogApi, teamEntity]); useEffect(() => { getRepositoriesNames(); From d2256c0384943e0cc5023e1c1f9dd06bd42aa647 Mon Sep 17 00:00:00 2001 From: Niklas Aronsson Date: Thu, 7 Apr 2022 15:32:33 +0200 Subject: [PATCH 487/550] Cli/server: Fix webpack deprecation warnings Running the development dev server results in the following deprecation warnings from "webpack-dev-server". * [DEP_WEBPACK_DEV_SERVER_CONSTRUCTOR] DeprecationWarning: Using 'compiler' as the first argument is deprecated. Please use 'options' as the first argument and 'compiler' as the second argument. * [DEP_WEBPACK_DEV_SERVER_LISTEN] DeprecationWarning: 'listen' is deprecated. Please use the async 'start' or 'startCallback' method. Signed-off-by: Niklas Aronsson --- .changeset/purple-beans-march.md | 5 +++++ packages/cli/src/lib/bundler/server.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/purple-beans-march.md diff --git a/.changeset/purple-beans-march.md b/.changeset/purple-beans-march.md new file mode 100644 index 0000000000..f4a3b45ab2 --- /dev/null +++ b/.changeset/purple-beans-march.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fix `webpack-dev-server` deprecations. diff --git a/packages/cli/src/lib/bundler/server.ts b/packages/cli/src/lib/bundler/server.ts index e65e598106..d573f80e27 100644 --- a/packages/cli/src/lib/bundler/server.ts +++ b/packages/cli/src/lib/bundler/server.ts @@ -43,7 +43,6 @@ export async function serveBundle(options: ServeOptions) { const compiler = webpack(config); const server = new WebpackDevServer( - compiler as any, { hot: !process.env.CI, devMiddleware: { @@ -71,10 +70,11 @@ export async function serveBundle(options: ServeOptions) { webSocketURL: 'auto://0.0.0.0:0/ws', }, } as any, + compiler as any, ); await new Promise((resolve, reject) => { - server.listen(port, host, (err?: Error) => { + server.startCallback((err?: Error) => { if (err) { reject(err); return; From 2334bc95a0d8f6a31bc2ef06ccc2c887126326e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 02:01:45 +0000 Subject: [PATCH 488/550] chore(deps): Bump undici from 5.0.0 to 5.5.1 Bumps [undici](https://github.com/nodejs/undici) from 5.0.0 to 5.5.1. - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.0.0...v5.5.1) --- updated-dependencies: - dependency-name: undici 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 bd2b1ff7bc..e9445ad677 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24962,9 +24962,9 @@ underscore@^1.12.1, underscore@^1.9.1: integrity sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g== undici@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/undici/-/undici-5.0.0.tgz#3c1e08c7f0df90c485d5d8dbb0517e11e34f2090" - integrity sha512-VhUpiZ3No1DOPPQVQnsDZyfcbTTcHdcgWej1PdFnSvOeJmOVDgiOHkunJmBLfmjt4CqgPQddPVjSWW0dsTs5Yg== + version "5.5.1" + resolved "https://registry.npmjs.org/undici/-/undici-5.5.1.tgz#baaf25844a99eaa0b22e1ef8d205bffe587c8f43" + integrity sha512-MEvryPLf18HvlCbLSzCW0U00IMftKGI5udnjrQbC5D4P0Hodwffhv+iGfWuJwg16Y/TK11ZFK8i+BPVW2z/eAw== unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" From 2aad25ae1d04bfd82f19d31da33174dbf86ed077 Mon Sep 17 00:00:00 2001 From: tomasrb Date: Thu, 16 Jun 2022 21:15:45 -0700 Subject: [PATCH 489/550] Add Okay adopters use case Signed-off-by: tomasrb --- ADOPTERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 06557bf02c..0fe6519047 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -161,7 +161,7 @@ _If you're using Backstage in your organization, please try to add your company | [OVHcloud](https://www.ovhcloud.com/fr/) | [Jean-Philippe Blary](https://github.com/blaryjp), [Arnaud Bauer](mailto:arnaud.bauer@ovhcloud.com), [Flavien Chantelot](https://github.com/Dorn-) | We're providing Backstage to our collaborators to ease their daily jobs, and let them extends it using plugins. | | [Procter & Gamble](https://us.pg.com/) | [Binita Nayak](https://github.com/binitan), [Josh Rose](https://github.com/joshuarose), [RJ Winkler](https://github.com/rjwink) | P&G leverages Backstage to build internal developer portal to ensure developers' happiness. This developer portal shall act as single source of information needed by development teams to seamlessly create, find and maintain their software components/resources/documentation. | | [SANS Institute](https://www.sans.org) | [Christopher Klewin](mailto:cklewin@sans.org) | Developer portal for centralized visibility, reporting, and tooling across multiple organizations. | -| [Okay](https://www.okayhq.com/) | [Tomas Barreto](mailto:tomas@okayhq.com) +| [Okay](https://www.okayhq.com/) | [Tomas Barreto](mailto:tomas@okayhq.com) | Service catalog, developer portal, and technical documentation | | [Kaluza](https://www.kaluza.com) | [James Condren](mailto:james.condron@kaluza.com) | To provide an automated golden path to developers, with a focus on discovery and documentation | | [LinkedIn](https://linkedin.com) | [Joshua Lawrence](mailto:jlawrence@linkedin.com) | We are building a platform for internal web tools | | [Forto](https://forto.com) | [Rodolfo Matos](mailto:rodolfo.matos@forto.com) | Still in a experimental phase/assessing the organisational fit. We will be using it mostly a developer portal -- pretty standard use case. | From 5c413f054bcf1b7b49c1cf84d44a5583ad5f6ce6 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 17 Jun 2022 11:05:10 +0200 Subject: [PATCH 490/550] app-config: comment out bitbucket cloud integration Signed-off-by: Patrik Oldsberg --- app-config.yaml | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/app-config.yaml b/app-config.yaml index 2f9f6e4f9a..a56a3df9d1 100644 --- a/app-config.yaml +++ b/app-config.yaml @@ -171,25 +171,26 @@ integrations: github: - host: github.com token: ${GITHUB_TOKEN} - ### Example for how to add your GitHub Enterprise instance using the API: - # - host: ghe.example.net - # apiBaseUrl: https://ghe.example.net/api/v3 - # token: ${GHE_TOKEN} - ### Example for how to add your GitHub Enterprise instance using raw HTTP fetches (token is optional): - # - host: ghe.example.net - # rawBaseUrl: https://ghe.example.net/raw - # token: ${GHE_TOKEN} + ### Example for how to add your GitHub Enterprise instance using the API: + # - host: ghe.example.net + # apiBaseUrl: https://ghe.example.net/api/v3 + # token: ${GHE_TOKEN} + ### Example for how to add your GitHub Enterprise instance using raw HTTP fetches (token is optional): + # - host: ghe.example.net + # rawBaseUrl: https://ghe.example.net/raw + # token: ${GHE_TOKEN} gitlab: - host: gitlab.com token: ${GITLAB_TOKEN} - bitbucketCloud: - - username: ${BITBUCKET_USERNAME} - appPassword: ${BITBUCKET_APP_PASSWORD} - ### Example for how to add your bitbucket server instance using the API: - # - host: server.bitbucket.com - # apiBaseUrl: server.bitbucket.com - # username: ${BITBUCKET_SERVER_USERNAME} - # appPassword: ${BITBUCKET_SERVER_APP_PASSWORD} + ### Example for how to add a bitbucket cloud integration + # bitbucketCloud: + # - username: ${BITBUCKET_USERNAME} + # appPassword: ${BITBUCKET_APP_PASSWORD} + ### Example for how to add your bitbucket server instance using the API: + # - host: server.bitbucket.com + # apiBaseUrl: server.bitbucket.com + # username: ${BITBUCKET_SERVER_USERNAME} + # appPassword: ${BITBUCKET_SERVER_APP_PASSWORD} azure: - host: dev.azure.com token: ${AZURE_TOKEN} From b011a1052aa290c38847f86c7315507c9f69eaca Mon Sep 17 00:00:00 2001 From: Nick Marinelli Date: Fri, 17 Jun 2022 10:31:16 -0400 Subject: [PATCH 491/550] remove hooks and added icons Signed-off-by: Nick Marinelli --- plugins/azure-devops/api-report.md | 79 ------------------------------ plugins/azure-devops/src/index.ts | 3 -- 2 files changed, 82 deletions(-) diff --git a/plugins/azure-devops/api-report.md b/plugins/azure-devops/api-report.md index 78880eb389..b366166d95 100644 --- a/plugins/azure-devops/api-report.md +++ b/plugins/azure-devops/api-report.md @@ -16,7 +16,6 @@ import { GitTag } from '@backstage/plugin-azure-devops-common'; import { IdentityApi } from '@backstage/core-plugin-api'; import { PullRequest } from '@backstage/plugin-azure-devops-common'; import { PullRequestOptions } from '@backstage/plugin-azure-devops-common'; -import { PullRequestStatus } from '@backstage/plugin-azure-devops-common'; import { RepoBuild } from '@backstage/plugin-azure-devops-common'; import { RepoBuildOptions } from '@backstage/plugin-azure-devops-common'; import { SvgIconProps } from '@material-ui/core'; @@ -173,16 +172,6 @@ export class AzureDevOpsClient implements AzureDevOpsApi { // @public (undocumented) export const azureDevOpsPlugin: BackstagePlugin<{}, {}>; -// Warning: (ae-missing-release-tag) "AzureGitTagsIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export const AzureGitTagsIcon: (props: SvgIconProps) => JSX.Element; - -// Warning: (ae-missing-release-tag) "AzurePipelinesIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export const AzurePipelinesIcon: (props: SvgIconProps) => JSX.Element; - // Warning: (ae-missing-release-tag) "AzurePullRequestsIcon" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -349,73 +338,5 @@ export interface PullRequestColumnConfig { // @public (undocumented) export type PullRequestFilter = (pullRequest: DashboardPullRequest) => boolean; -// Warning: (ae-missing-release-tag) "useAllTeams" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useAllTeams(): { - teams?: Team[]; - loading: boolean; - error?: Error; -}; - -// Warning: (ae-missing-release-tag) "useDashboardPullRequests" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useDashboardPullRequests( - project?: string, - pollingInterval?: number, -): { - pullRequests?: DashboardPullRequest[]; - loading: boolean; - error?: Error; -}; - -// Warning: (ae-missing-release-tag) "useProjectRepoFromEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useProjectRepoFromEntity(entity: Entity): { - project: string; - repo: string; -}; - -// Warning: (ae-missing-release-tag) "usePullRequests" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function usePullRequests( - entity: Entity, - defaultLimit?: number, - requestedStatus?: PullRequestStatus, -): { - items?: PullRequest[]; - loading: boolean; - error?: Error; -}; - -// Warning: (ae-missing-release-tag) "useRepoBuilds" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useRepoBuilds( - entity: Entity, - defaultLimit?: number, -): { - items?: RepoBuild[]; - loading: boolean; - error?: Error; -}; - -// Warning: (ae-missing-release-tag) "useUserEmail" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useUserEmail(): string | undefined; - -// Warning: (ae-missing-release-tag) "useUserTeamIds" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export function useUserTeamIds(userId: string | undefined): { - teamIds?: string[]; - loading: boolean; - error?: Error; -}; - // (No @packageDocumentation comment for this package) ``` diff --git a/plugins/azure-devops/src/index.ts b/plugins/azure-devops/src/index.ts index def88f68c6..e65c1d02a3 100644 --- a/plugins/azure-devops/src/index.ts +++ b/plugins/azure-devops/src/index.ts @@ -25,11 +25,8 @@ export { } from './plugin'; export { AzurePullRequestsIcon } from './components/AzurePullRequestsIcon'; -export { AzureGitTagsIcon } from './components/AzureGitTagsIcon'; -export { AzurePipelinesIcon } from './components/AzurePipelinesIcon'; export * from './api'; -export * from './hooks'; export { FilterType } from './components/PullRequestsPage'; export type { From 1ace3fd8115a59725250ad48e3fd3ce546b7d904 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 14:36:13 +0000 Subject: [PATCH 492/550] chore(deps): update dependency @testing-library/user-event to v14.2.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6f51f24e5d..95352273e5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5496,9 +5496,9 @@ "@types/react-dom" "<18.0.0" "@testing-library/user-event@^14.0.0": - version "14.2.0" - resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.2.0.tgz#8293560f8f80a00383d6c755ec3e0b918acb1683" - integrity sha512-+hIlG4nJS6ivZrKnOP7OGsDu9Fxmryj9vCl8x0ZINtTJcCHs2zLsYif5GzuRiBF2ck5GZG2aQr7Msg+EHlnYVQ== + version "14.2.1" + resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.2.1.tgz#8c5ff2d004544bb2220e1d864f7267fe7eb6c556" + integrity sha512-HOr1QiODrq+0j9lKU5i10y9TbhxMBMRMGimNx10asdmau9cb8Xb1Vyg0GvTwyIL2ziQyh2kAloOtAQFBQVuecA== "@tokenizer/token@^0.3.0": version "0.3.0" From 1eff254ae08bc46b922ceca7e3d3aea616ac44b5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 14:38:58 +0000 Subject: [PATCH 493/550] chore(deps): update dependency @types/jest-when to v3.5.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6f51f24e5d..ff837662a6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6135,9 +6135,9 @@ "@types/node" "*" "@types/jest-when@^3.5.0": - version "3.5.0" - resolved "https://registry.npmjs.org/@types/jest-when/-/jest-when-3.5.0.tgz#6a573cd521da131e6801f0991b4f1d4dee2ebab5" - integrity sha512-rNUuZ3Mn/HDzpImPXDeOtW18zqyerPoOS2aKU0zUFbirWgJ7sN7LnRv73RmbBQ/uzw28sxf/nUofxbhJ5DWB0w== + version "3.5.1" + resolved "https://registry.npmjs.org/@types/jest-when/-/jest-when-3.5.1.tgz#296a0d62b576615046773daf123d518b10adee32" + integrity sha512-8pzJWwU4h7KyCgwAB2Hs9xuy+a1YgVcdh0vE4LT4DZx5Yo7rFO9FAPIsSORVBVCk8QfjuGZaaU9HTTh3mJnEAg== dependencies: "@types/jest" "*" From b712d0b66c93735b6fae716b1c2ad13c39bdf9a7 Mon Sep 17 00:00:00 2001 From: Kamil Wolny Date: Fri, 17 Jun 2022 16:20:36 +0100 Subject: [PATCH 494/550] docs: added dazn adopter Signed-off-by: Kamil Wolny --- ADOPTERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 0fe6519047..66376ca5e9 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -36,7 +36,7 @@ _If you're using Backstage in your organization, please try to add your company | [PagerDuty](https://www.pagerduty.com/) | [Mark Shaw](https://github.com/markshawtoronto) | Developer portal, initially focused on software templates and tech-docs. | | [MoonShiner](https://moonshiner.at) | [Fabian Hippmann](https://github.com/FabianHippmann) | Developer portal - helps us keep track of our customer projects, onboard new developers & improve our development process 🌕🚀🧑‍🚀 | | [FundApps](https://www.fundapps.co/) | [Elliot Greenwood](https://github.com/egnwd) | Developer Portal - A place for us to keep track of our projects and documentation for all services and processes | -| [DAZN](https://dazn.com/) | [Lou Bichard](https://twitter.com/loujaybee), [Marco Crivellaro](https://github.com/crivetechie), [Alex Hollerith](mailto:alex.hollerith@dazn.com) | Ingesting all of DAZN's repos for the catalog, migrating our internal platform apps (pull request boards, release information, inner source marketplace etc) to Backstage plugins (where applicable). | +| [DAZN](https://dazn.com/) | [Lou Bichard](https://twitter.com/loujaybee), [Marco Crivellaro](https://github.com/crivetechie), [Alex Hollerith](mailto:alex.hollerith@dazn.com), [Kamil Wolny](https://github.com/mrwolny) | Ingesting all of DAZN's repos for the catalog, migrating our internal platform apps (pull request boards, release information, inner source marketplace etc) to Backstage plugins (where applicable). | | [HelloFresh](https://www.hellofresh.de/) | [@iammuho](https://github.com/iammuho), [@ElenaForester](https://github.com/ElenaForester), [@diegomarangoni](https://github.com/diegomarangoni) | Our developer portal at HelloFresh - Spread across an organisation of 500+ engineers globally. | | [FactSet](https://www.factset.com/) | [@kuangp](https://github.com/kuangp) | Developer portal to provide discoverability to all internal components, APIs, documentation, and scaffold templates with integrations to our internal infrastructure tools. | | [Workrise](https://www.workrise.com/) | [Michael Rode](https://github.com/michaelrode) | Developer portal, main gateway to our infrastructure, documentation and internal tooling. | From c15e068a2174c35079d61770af123ecee2b4cacc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 15:31:08 +0000 Subject: [PATCH 495/550] chore(deps): update dependency @types/testing-library__jest-dom to v5.14.4 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 95352273e5..221b4a472c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6823,9 +6823,9 @@ terser-webpack-plugin "*" "@types/testing-library__jest-dom@^5.9.1": - version "5.14.3" - resolved "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.3.tgz#ee6c7ffe9f8595882ee7bda8af33ae7b8789ef17" - integrity sha512-oKZe+Mf4ioWlMuzVBaXQ9WDnEm1+umLx0InILg+yvZVBBDmzV5KfZyLrCvadtWcx8+916jLmHafcmqqffl+iIw== + version "5.14.4" + resolved "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.4.tgz#21567ec845f4efee55923842c79728dc49c1650b" + integrity sha512-EUCs9PTBOEyfRtLKkKd31YrRCx/9Wxjy2Uqb6IH/KAOr7/vP0i8iClOyxQqjm/UxMGU5r5s2vOBM7vSPQVmabg== dependencies: "@types/jest" "*" From 2ed102419c5a35fcf607c77001103270ba4bf772 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 15:45:52 +0000 Subject: [PATCH 496/550] chore(deps): update dependency esbuild to v0.14.45 Signed-off-by: Renovate Bot --- yarn.lock | 206 +++++++++++++++++++++++++++--------------------------- 1 file changed, 103 insertions(+), 103 deletions(-) diff --git a/yarn.lock b/yarn.lock index dc40251431..2169aac4b8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11756,75 +11756,75 @@ es6-error@^4.1.1: resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== -esbuild-android-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.44.tgz#62f5cb563d0ba318d898b6eb230c61ad3dc93619" - integrity sha512-dFPHBXmx385zuJULAD/Cmq/LyPRXiAWbf9ylZtY0wJ8iVyWfKYaCYxeJx8OAZUuj46ZwNa7MzW2GBAQLOeiemg== +esbuild-android-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.45.tgz#696f078d97a1350ceea5db626b3bc4a60fc13555" + integrity sha512-krVmwL2uXQN1A+Ci4u2MR+Y0IAvQK0u3no5TsgguHVhTy138szjuohScCGjkpvLCpGLk7P4kFP1LKuntvJ0d4A== -esbuild-android-arm64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.44.tgz#ee7fcc9f47855b3395dfd1abcc2c43d8c53e57db" - integrity sha512-qqaqqyxHXjZ/0ddKU3I3Nb7lAvVM69ELMhb8+91FyomAUmQPlHtxe+TTiWxXGHE72XEzcgTEGq4VauqLNkN22g== +esbuild-android-arm64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.45.tgz#d229da8040cea4a0041756d1abcea375b4e3f9db" + integrity sha512-62POGdzAjM+XOXEM5MmFW6k9Pjdjg1hTrXKKBbPE700LFF36B+1Jv9QkskT5UadbTk4cdH9BQ7bGiRPYY0p/Dw== -esbuild-darwin-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.44.tgz#75ea7f594687a7189a8ba62070d42f13178e68d0" - integrity sha512-RBmtGKGY06+AW6IOJ1LE/dEeF7HH34C1/Ces9FSitU4bIbIpL4KEuQpTFoxwb4ry5s2hyw7vbPhhtyOd18FH9g== +esbuild-darwin-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.45.tgz#d7d38d91e4c03890d58c297131e9b82895a37a6a" + integrity sha512-dbkVUAnGx5IeZesWnIhnvxy7dSvgUQvfy0TVLzd9XVP3oI/VsKs8UNsfPrxI5HiN4SINv7oPAbxWceMpB7IqNA== -esbuild-darwin-arm64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.44.tgz#550631fd135688abda042f4039b962a27f3a5f78" - integrity sha512-Bmhx5Cfo4Hdb7WyyyDupTB8HPmnFZ8baLfPlzLdYvF6OzsIbV+CY+m/AWf0OQvY40BlkzCLJ/7Lfwbb71Tngmg== +esbuild-darwin-arm64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.45.tgz#d4df2871b94351d7d5561e41f91aadba46857838" + integrity sha512-O6Bz7nnOae5rvbh2Ueo8ibSr7+/eLjsbPdgeMsAZri+LkOa7nsVPnhmocpO3Hy/LWfagTtHy1O9HRPIaArPmTg== -esbuild-freebsd-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.44.tgz#f98069b964266ca79bb361cfb9d7454a05b7e8ca" - integrity sha512-O4HpWa5ZgxbNPQTF7URicLzYa+TidGlmGT/RAC3GjbGEQQYkd0R1Slyh69Yrmb2qmcOcPAgWHbNo1UhK4WmZ4w== +esbuild-freebsd-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.45.tgz#e90106a2db3f5b0771392d3f9d8801b3138825c6" + integrity sha512-y1X2nr3XSWnDC7MRcy21EVAT0TiCtdefOntJ+SQcZnPBTURzX77f99S8lDF2KswukChkiacpd2Wd4VZieo7w7Q== -esbuild-freebsd-arm64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.44.tgz#247a8553d6033a58b6c3ba4d539216300497d7f6" - integrity sha512-f0/jkAKccnDY7mg1F9l/AMzEm+VXWXK6c3IrOEmd13jyKfpTZKTIlt+yI04THPDCDZTzXHTRUBLozqp+m8Mg5Q== +esbuild-freebsd-arm64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.45.tgz#e734c8ae8042cd9224406d45d6992261382bcbde" + integrity sha512-r3ZNejkx1BKXQ6sYOP6C5rTwgiUajyAh03wygLWZtl+SLyygvAnu+OouqtveesufjBDgujp4wZXP/n8PVqXkqg== -esbuild-linux-32@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.44.tgz#4b72747f9f367d3ee3c1d80bf75c617e6b109821" - integrity sha512-WSIhzLldMR7YUoEL7Ix319tC+NFmW9Pu7NgFWxUfOXeWsT0Wg484hm6bNgs7+oY2pGzg715y/Wrqi1uNOMmZJw== +esbuild-linux-32@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.45.tgz#0f814a784c941bfd5a5dca7ff742b57744c5324b" + integrity sha512-Qk9cCO3PJig/Y+SdslN/Th4pbAjgaH9oUjVH28eMsLTPf6QDUuK6EED91jepJdR3vxhcnVjyl6JqtOWmP+uxCg== -esbuild-linux-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.44.tgz#6cd158fdd11f8d037c45139ccddb4fa5966f7ab6" - integrity sha512-zgscTrCMcRZRIsVugqBTP/B5lPLNchBlWjQ8sQq2Epnv+UDtYKgXEq1ctWAmibZNy2E9QRCItKMeIEqeTUT5kA== +esbuild-linux-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.45.tgz#2028a6dfb3fea7a5dd5e87cf00d02a36a3373e3c" + integrity sha512-IybO2ugqvc/Zzn1Kih3x0FVjYAy3GTCwhtcp91dbdqk3wPqxYCzObYspa8ca0s+OovI0Cnb+rhXrUtq8gBqlqw== -esbuild-linux-arm64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.44.tgz#f14f3c8c3501067f5b2cef7a79c9a0058092cb22" - integrity sha512-H0H/2/wgiScTwBve/JR8/o+Zhabx5KPk8T2mkYZFKQGl1hpUgC+AOmRyqy/Js3p66Wim4F4Akv3I3sJA1sKg0w== +esbuild-linux-arm64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.45.tgz#6fef4165583215918d45150148ac0a18d5ef6323" + integrity sha512-UNEyuHTwztrkEU/+mWIxGzKrYBo2cEtjYAZQVZB1kliANKgRITktg2miaO/b/VtNe84ob1aXSvW8XOPEn5RTGQ== -esbuild-linux-arm@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.44.tgz#625478cc6ea4f64f5335e7fb07f80d6f659aeb5c" - integrity sha512-laPBPwGfsbBxGw6F6jnqic2CPXLyC1bPrmnSOeJ9oEnx1rcKkizd4HWCRUc0xv+l4z/USRfx/sEfYlWSLeqoJQ== +esbuild-linux-arm@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.45.tgz#e454f701ae5371322c8265f4356e098611e51f96" + integrity sha512-qKWJ4A4TAcxXV2TBLPw3Av5X2SYNfyNnBHNJTQJ5VuevK6Aq5i6XEMvUgdlcVuZ9MYPfS5aJZWglzDzJMf1Lpw== -esbuild-linux-mips64le@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.44.tgz#593c909bb612998300af7f7db2809a63a0d62eec" - integrity sha512-ri3Okw0aleYy7o5n9zlIq+FCtq3tcMlctN6X1H1ucILjBJuH8pan2trJPKWeb8ppntFvE28I9eEXhwkWh6wYKg== +esbuild-linux-mips64le@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.45.tgz#093cc86be71f9b0cd2876da23ee2f5d35b09a247" + integrity sha512-s/jcfw3Vpku5dIVSFVY7idJsGdIpIJ88IrkyprVgCG2yBeXatb67B7yIt0E1tL+OHrJJdNBw6GikCiMPAAu1VA== -esbuild-linux-ppc64le@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.44.tgz#8fc2fcee671e322a5d44fcf8da6889095a187df9" - integrity sha512-96TqL/MvFRuIVXz+GtCIXzRQ43ZwEk4XTn0RWUNJduXXMDQ/V1iOV28U6x6Oe3NesK4xkoKSaK2+F3VHcU8ZrA== +esbuild-linux-ppc64le@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.45.tgz#8bddbf67157027e917b6e5b04230d7cf14d62cf2" + integrity sha512-lJItl6ESZnhSx951U9R7MTBopgwIELHlQzC6SBR023V5JC1rPRFDZ/UEBsV+7BFcCAfqlyb+odGEAmcBSf4XCA== -esbuild-linux-riscv64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.44.tgz#cc2b7158c8345b67e74458a0ec020c80ca777046" - integrity sha512-rrK9qEp2M8dhilsPn4T9gxUsAumkITc1kqYbpyNMr9EWo+J5ZBj04n3GYldULrcCw4ZCHAJ+qPjqr8b6kG2inA== +esbuild-linux-riscv64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.45.tgz#0f234f63595159cfc976fd5310e7902e8b5a7ad7" + integrity sha512-8anMu+QLl9MununVCGJN2I/JvUWPm1EVsBBLq/J+Nz4hr8t6QOCuEp0HRaeMohyl2XiMFBchVu0mwa05rF7GFQ== -esbuild-linux-s390x@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.44.tgz#5a1e87d5d6236a8791026820936478f3b9cf8e35" - integrity sha512-2YmTm9BrW5aUwBSe8wIEARd9EcnOQmkHp4+IVaO09Ez/C5T866x+ABzhG0bwx0b+QRo9q97CRMaQx2Ngb6/hfw== +esbuild-linux-s390x@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.45.tgz#272288e0f30e4fa0f01d6df6572602c7df78c256" + integrity sha512-1TPeNvNCoahMw745KNTA6POKaFfSqQrBb3fdOL82GXZqyKU/6rHNwGP0NgHe88bAUMp3QZfjGfCGKxfBHL77RQ== esbuild-loader@^2.18.0: version "2.19.0" @@ -11838,61 +11838,61 @@ esbuild-loader@^2.18.0: tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.44.tgz#8afb16880b530264ce2ed9fb3df26071eb841312" - integrity sha512-zypdzPmZTCqYS30WHxbcvtC0E6e/ECvl4WueUdbdWhs2dfWJt5RtCBME664EpTznixR3lSN1MQ2NhwQF8MQryw== +esbuild-netbsd-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.45.tgz#0f9af25773e025cd1ca5e22277661cb15d36b406" + integrity sha512-55f2eZ8EQhhOZosqX0mApgRoI9PrVyXlHd9Uivk+B0B4WTKUgzkoHaVk4EkIUtNRQTpDWPciTlpb/C2tUYVejA== -esbuild-openbsd-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.44.tgz#a87455be446d6f5b07a60f060e1eafad454c9d4b" - integrity sha512-8J43ab9ByYl7KteC03HGQjr2HY1ge7sN04lFnwMFWYk2NCn8IuaeeThvLeNjzOYhyT3I6K8puJP0uVXUu+D1xw== +esbuild-openbsd-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.45.tgz#6d47a564eb4b80d9e3aeb4493918b36d17440228" + integrity sha512-Z5sNcT3oN9eryMW3mGn5HAgg7XCxiUS4isqH1tZXpsdOdOESbgbTEP0mBEJU0WU7Vt2gIN5XMbAp7Oigm0k71g== -esbuild-sunos-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.44.tgz#74ce7d5fd815fa60fe0a85b9db7549b1dcb32804" - integrity sha512-OH1/09CGUJwffA+HNM6mqPkSIyHVC3ZnURU/4CCIx7IqWUBn1Sh1HRLQC8/TWNgcs0/1u7ygnc2pgf/AHZJ/Ow== +esbuild-sunos-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.45.tgz#cca97d7d31214bddfa1970386883d1f3f2868cec" + integrity sha512-WmWu4wAm8mIxxK9aWFCj5VHunY3BHQDT3dAPexMLLszPyMF7RDtUYf+Dash9tjyitvnoxPAvR7DpWpirDLQIlQ== -esbuild-windows-32@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.44.tgz#499e1c6cb46c216bdcb62f5b006fec3999bb06a7" - integrity sha512-mCAOL9/rRqwfOfxTu2sjq/eAIs7eAXGiU6sPBnowggI7QS953Iq6o3/uDu010LwfN7zr18c/lEj6/PTwwTB3AA== +esbuild-windows-32@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.45.tgz#afd98449fd6a741a4655e3e4f0e5ae7081765baf" + integrity sha512-DPPehKwPJFBoSG+jILc/vcJNN8pTwz1m6FWojxqtqPhgw8OabTgN4vL7gNMqL/FSeDxF+zyvZeeMrZFYF1d81Q== -esbuild-windows-64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.44.tgz#a8dae69a4615b17f62375859ce9536dd96940a06" - integrity sha512-AG6BH3+YG0s2Q/IfB1cm68FdyFnoE1P+GFbmgFO3tA4UIP8+BKsmKGGZ5I3+ZjcnzOwvT74bQRVrfnQow2KO5Q== +esbuild-windows-64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.45.tgz#5d284b712b119c6306ac5f32e2a611ac6eec2842" + integrity sha512-t6bxFZcp9bLmSs+1pCNL/BW2bq3QEQHxU4HoiMEyWfF8QBU8iNXFI1iLGdyCzB1Ue2739h55tpOvojFrfyNPWA== -esbuild-windows-arm64@0.14.44: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.44.tgz#db73bb68aa75a880bdaa938ccacc0f17e7a4bfea" - integrity sha512-ygYPfYE5By4Sd6szsNr10B0RtWVNOSGmZABSaj4YQBLqh9b9i45VAjVWa8tyIy+UAbKF7WGwybi2wTbSVliO8A== +esbuild-windows-arm64@0.14.45: + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.45.tgz#08089d4cc921939ed352d9c2d928b5d867a6dc67" + integrity sha512-DnhrvjECBJ2L0owoznPb4RqQKZ498SM8J+YHqmqzi0Gf/enkUwwTjB8vPCK6dDuFnNU/NE8f94FhKdkBHYruDQ== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: - version "0.14.44" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.44.tgz#27fa3cd4f55d36780650c7f32cab581abc7a4473" - integrity sha512-Rn+lRRfj60r/3svI6NgAVnetzp3vMOj17BThuhshSj/gS1LR03xrjkDYyfPmrYG/0c3D68rC6FNYMQ3yRbiXeQ== + version "0.14.45" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.45.tgz#3e3192894f91c32cf19207726f136278be46e968" + integrity sha512-JOxGUD8jcs8xE8DjyGWC8by/vLMCXTJ/wuauWipL5kJRZx1dhpqIntb31QHjA45GZJWaXv7SjC/Zwu1bCkXWtQ== optionalDependencies: - esbuild-android-64 "0.14.44" - esbuild-android-arm64 "0.14.44" - esbuild-darwin-64 "0.14.44" - esbuild-darwin-arm64 "0.14.44" - esbuild-freebsd-64 "0.14.44" - esbuild-freebsd-arm64 "0.14.44" - esbuild-linux-32 "0.14.44" - esbuild-linux-64 "0.14.44" - esbuild-linux-arm "0.14.44" - esbuild-linux-arm64 "0.14.44" - esbuild-linux-mips64le "0.14.44" - esbuild-linux-ppc64le "0.14.44" - esbuild-linux-riscv64 "0.14.44" - esbuild-linux-s390x "0.14.44" - esbuild-netbsd-64 "0.14.44" - esbuild-openbsd-64 "0.14.44" - esbuild-sunos-64 "0.14.44" - esbuild-windows-32 "0.14.44" - esbuild-windows-64 "0.14.44" - esbuild-windows-arm64 "0.14.44" + esbuild-android-64 "0.14.45" + esbuild-android-arm64 "0.14.45" + esbuild-darwin-64 "0.14.45" + esbuild-darwin-arm64 "0.14.45" + esbuild-freebsd-64 "0.14.45" + esbuild-freebsd-arm64 "0.14.45" + esbuild-linux-32 "0.14.45" + esbuild-linux-64 "0.14.45" + esbuild-linux-arm "0.14.45" + esbuild-linux-arm64 "0.14.45" + esbuild-linux-mips64le "0.14.45" + esbuild-linux-ppc64le "0.14.45" + esbuild-linux-riscv64 "0.14.45" + esbuild-linux-s390x "0.14.45" + esbuild-netbsd-64 "0.14.45" + esbuild-openbsd-64 "0.14.45" + esbuild-sunos-64 "0.14.45" + esbuild-windows-32 "0.14.45" + esbuild-windows-64 "0.14.45" + esbuild-windows-arm64 "0.14.45" escalade@^3.1.1: version "3.1.1" From 6532c8084a613fd910cb416ae2704aa756e686b0 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 17 Jun 2022 18:03:55 +0200 Subject: [PATCH 497/550] remove usage of @ts-ignore Signed-off-by: Patrik Oldsberg --- .../backend-common/src/reading/ReadUrlResponseFactory.test.ts | 3 +-- .../src/components/TemplatePage/createValidator.test.ts | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/backend-common/src/reading/ReadUrlResponseFactory.test.ts b/packages/backend-common/src/reading/ReadUrlResponseFactory.test.ts index c8a659e792..ff975de9bb 100644 --- a/packages/backend-common/src/reading/ReadUrlResponseFactory.test.ts +++ b/packages/backend-common/src/reading/ReadUrlResponseFactory.test.ts @@ -78,8 +78,7 @@ describe('ReadUrlResponseFactory', () => { let readable: NodeJS.ReadableStream; beforeEach(() => { - // @ts-ignore - readable = new Stream({ encoding: 'utf-8' }); + readable = new Stream({ encoding: 'utf-8' }) as NodeJS.ReadableStream; readable.readable = true; // Write data asynchronously, as soon as possible. diff --git a/plugins/scaffolder/src/components/TemplatePage/createValidator.test.ts b/plugins/scaffolder/src/components/TemplatePage/createValidator.test.ts index 047f22e44e..a5b04df71e 100644 --- a/plugins/scaffolder/src/components/TemplatePage/createValidator.test.ts +++ b/plugins/scaffolder/src/components/TemplatePage/createValidator.test.ts @@ -23,8 +23,7 @@ describe('createValidator', () => { const validators: Record> = { CustomPicker: (value, validation, _context) => { - // @ts-ignore - if (!value || !value.value) { + if (!value || !(value as { value?: unknown }).value) { validation.addError('Error !'); } }, From 4e3fba492185404d31646a00eef076edeb0bfc5b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 16:20:03 +0000 Subject: [PATCH 498/550] chore(deps): update dependency lint-staged to v13.0.2 Signed-off-by: Renovate Bot --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index f2e3ea95c1..6e356f3763 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9588,9 +9588,9 @@ colorette@2.0.16, colorette@^2.0.10: integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== colorette@^2.0.16, colorette@^2.0.17: - version "2.0.17" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.17.tgz#5dd4c0d15e2984b7433cb4a9f2ead45063b80c47" - integrity sha512-hJo+3Bkn0NCHybn9Tu35fIeoOKGOk5OCC32y4Hz2It+qlCO2Q3DeQ1hRn/tDDMQKRYUEzqsl7jbF6dYKjlE60g== + version "2.0.19" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== colors@1.0.3: version "1.0.3" @@ -16910,9 +16910,9 @@ linkify-it@^3.0.1: uc.micro "^1.0.1" lint-staged@^13.0.0: - version "13.0.1" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.1.tgz#899e78065ab29b88fdd922482411121664ef66be" - integrity sha512-Ykaf4QTi0a02BF7cnq7JIPGOJxH4TkNMWhSlJdH9wOekd0X+gog47Jfh/0L31DqZe5AiydLGC7LkPqpaNm+Kvg== + version "13.0.2" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.2.tgz#35a1c57130e9ad5b1dea784972a40777ba433dd5" + integrity sha512-qQLfLTh9z34eMzfEHENC+QBskZfxjomrf+snF3xJ4BzilORbD989NLqQ00ughsF/A+PT41e87+WsMFabf9++pQ== dependencies: cli-truncate "^3.1.0" colorette "^2.0.17" From 3de1394092a3168b2a7f0bbe6ebf78df5579fbe5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 16:55:57 +0000 Subject: [PATCH 499/550] fix(deps): update dependency @maxim_mazurok/gapi.client.calendar to v3.0.20220610 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e24f69f146..b69f634f0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4128,9 +4128,9 @@ react-is "^16.8.0 || ^17.0.0" "@maxim_mazurok/gapi.client.calendar@^3.0.20220408": - version "3.0.20220603" - resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220603.tgz#0a6378497d1460058d847afd3c1f0aa83878c83d" - integrity sha512-sLB2ZCevNiGBHWCAg8NVT2+61IwLn9JxEvLgDcLno1GTwPVye3MC8H5bTYeFpL0Pgv58NPc2FIkG0w53Ojp7uw== + version "3.0.20220610" + resolved "https://registry.npmjs.org/@maxim_mazurok/gapi.client.calendar/-/gapi.client.calendar-3.0.20220610.tgz#46e0092da54fc8eb1342a3d1af04a071a761faac" + integrity sha512-pZwIaTw+PizFSXrF5WqP4dj+b1Vlj/hNwBY4ocWpJ2uhBDoBPAVIc8lEUNwNZVDbAgtbWHD2Kl84UsP1wmBS+w== dependencies: "@types/gapi.client" "*" From f894bba6919c1f30a9fcea7497a471f09365dc53 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 17:22:08 +0000 Subject: [PATCH 500/550] fix(deps): update dependency @roadiehq/backstage-plugin-github-pull-requests to v2.1.4 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index da8e39d487..fb25d53b69 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5070,9 +5070,9 @@ zustand "3.6.9" "@roadiehq/backstage-plugin-github-pull-requests@^2.0.0": - version "2.1.3" - resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.1.3.tgz#d37869c2ff5a51794d3d166e80260937e1d51e11" - integrity sha512-2/HVfFFbmSwRTweTYVh5TYEa7Rl2+TPI2nVPps9yse6DBYPpo26XBvhnRT8O8OdJIJ0D4IQe1mZxpeFiDPZQpA== + version "2.1.4" + resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.1.4.tgz#2b60230a0a6330c9c7d6a8c08492361b12a1b83a" + integrity sha512-H0Nr2MFQ2iiMLve/l3jqe6HMYwKRkeWNPEvPGkAMMtYmtnMTRMrXuYv+5piPzlwXiwss0NedNdwlVcGsY1J/cw== dependencies: "@backstage/catalog-model" "^1.0.0" "@backstage/core-components" "^0.9.0" From 3d964a936855430458366724eeff038e4c1f17c9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 17:51:21 +0000 Subject: [PATCH 501/550] chore(deps): update dependency puppeteer to v14.4.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4fffab56d2..7fd491b1aa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21115,9 +21115,9 @@ pupa@^2.1.1: escape-goat "^2.0.0" puppeteer@^14.0.0: - version "14.3.0" - resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.3.0.tgz#0099cabf97767461aca02486313e84fcfc776af6" - integrity sha512-pDtg1+vyw1UPIhUjh2/VW1HUdQnaZJHfMacrJciR3AVm+PBiqdCEcFeFb3UJ/CDEQlHOClm3/WFa7IjY25zIGg== + version "14.4.1" + resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-14.4.1.tgz#6c7437a65f7ba98ef8ad7c2b0f1cf808e91617bb" + integrity sha512-+H0Gm84aXUvSLdSiDROtLlOofftClgw2TdceMvvCU9UvMryappoeS3+eOLfKvoy4sm8B8MWnYmPhWxVFudAOFQ== dependencies: cross-fetch "3.1.5" debug "4.3.4" From 76d589d65018f6904cf671af97ff63c04bf6b073 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 17 Jun 2022 18:52:56 +0000 Subject: [PATCH 502/550] chore(deps): update dependency typescript to v4.7.4 Signed-off-by: Renovate Bot --- cypress/yarn.lock | 6 +++--- yarn.lock | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cypress/yarn.lock b/cypress/yarn.lock index 46f9a158fd..0fc9da99b6 100644 --- a/cypress/yarn.lock +++ b/cypress/yarn.lock @@ -1059,9 +1059,9 @@ type-fest@^0.21.3: integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== typescript@^4.1.3: - version "4.7.3" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d" - integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA== + version "4.7.4" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235" + integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ== universalify@^2.0.0: version "2.0.0" diff --git a/yarn.lock b/yarn.lock index 7fd491b1aa..c3ab158822 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24897,9 +24897,9 @@ typescript@~4.6.0, typescript@~4.6.3: integrity sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg== typescript@~4.7.0: - version "4.7.3" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d" - integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA== + version "4.7.4" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235" + integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ== ua-parser-js@^0.7.18: version "0.7.28" From 2f0fbbf19d60be4e634d76c50f69e0da20cc77be Mon Sep 17 00:00:00 2001 From: Quentin Rousseau Date: Thu, 16 Jun 2022 15:35:31 -0700 Subject: [PATCH 503/550] @rootlyhq Signed-off-by: Quentin Rousseau --- microsite/data/plugins/rootly.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/microsite/data/plugins/rootly.yaml b/microsite/data/plugins/rootly.yaml index 6c5cfdf715..dd23dd2362 100644 --- a/microsite/data/plugins/rootly.yaml +++ b/microsite/data/plugins/rootly.yaml @@ -4,6 +4,6 @@ author: Rootly authorUrl: https://rootly.com/ category: Incident Management description: Import your Backstage entities into Rootly services and view incidents & analytics. -documentation: https://github.com/backstage/backstage/blob/master/plugins/rootly/README.md -iconUrl: https://raw.githubusercontent.com/backstage/backstage/master/plugins/rootly/doc/logo.png -npmPackageName: '@backstage/plugin-rootly' +documentation: https://github.com/rootlyhq/backstage-plugin/blob/master/README.md +iconUrl: https://raw.githubusercontent.com/rootlyhq/backstage-plugin/master/docs/logo.png +npmPackageName: '@rootlyhq/backstage-plugin' From b8bbc3398a256bebfd065cb67c3fa55640fbce3a Mon Sep 17 00:00:00 2001 From: Quentin Rousseau Date: Thu, 16 Jun 2022 15:37:53 -0700 Subject: [PATCH 504/550] @rootly/backstage-plugin Signed-off-by: Quentin Rousseau --- microsite/data/plugins/rootly.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsite/data/plugins/rootly.yaml b/microsite/data/plugins/rootly.yaml index dd23dd2362..c1769f637a 100644 --- a/microsite/data/plugins/rootly.yaml +++ b/microsite/data/plugins/rootly.yaml @@ -6,4 +6,4 @@ category: Incident Management description: Import your Backstage entities into Rootly services and view incidents & analytics. documentation: https://github.com/rootlyhq/backstage-plugin/blob/master/README.md iconUrl: https://raw.githubusercontent.com/rootlyhq/backstage-plugin/master/docs/logo.png -npmPackageName: '@rootlyhq/backstage-plugin' +npmPackageName: '@rootly/backstage-plugin' From 8ac5b73da2a534632bd9b88ed9b03a8165f0a195 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 08:37:28 -0700 Subject: [PATCH 505/550] feat(plugins/pagerduty): prefix exported types with PagerDuty * generate api-report.md * ensure generic exported types are prefixed with PagerDuty for ease of import by consumers Signed-off-by: Alec Jacobs --- plugins/pagerduty/api-report.md | 226 +++++++++--------- plugins/pagerduty/src/api/client.test.ts | 6 +- plugins/pagerduty/src/api/client.ts | 46 ++-- plugins/pagerduty/src/api/index.ts | 14 +- plugins/pagerduty/src/api/types.ts | 47 ++-- .../ChangeEvents/ChangeEventListItem.tsx | 4 +- .../ChangeEvents/ChangeEvents.test.tsx | 6 +- .../components/Escalation/Escalation.test.tsx | 4 +- .../components/Escalation/EscalationUser.tsx | 4 +- .../components/Incident/IncidentListItem.tsx | 4 +- .../components/Incident/Incidents.test.tsx | 4 +- .../components/PagerDutyCard/index.test.tsx | 6 +- plugins/pagerduty/src/components/index.ts | 12 +- plugins/pagerduty/src/components/types.ts | 20 +- 14 files changed, 210 insertions(+), 193 deletions(-) diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index dd6155521b..04cda3da91 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -13,23 +13,46 @@ import { Entity } from '@backstage/catalog-model'; import { FetchApi } from '@backstage/core-plugin-api'; import { ReactNode } from 'react'; -// Warning: (ae-missing-release-tag) "Assignee" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "EntityPagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type Assignee = { +export const EntityPagerDutyCard: () => JSX.Element; + +// Warning: (ae-missing-release-tag) "isPluginApplicableToEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +const isPluginApplicableToEntity: (entity: Entity) => boolean; +export { isPluginApplicableToEntity as isPagerDutyAvailable }; +export { isPluginApplicableToEntity }; + +// Warning: (ae-forgotten-export) The symbol "PagerDutyApi" needs to be exported by the entry point index.d.ts +// Warning: (ae-missing-release-tag) "pagerDutyApiRef" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export const pagerDutyApiRef: ApiRef; + +// Warning: (ae-missing-release-tag) "PagerDutyAssignee" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyAssignee = { id: string; summary: string; html_url: string; }; -// Warning: (ae-missing-release-tag) "ChangeEvent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "PagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type ChangeEvent = { +export const PagerDutyCard: () => JSX.Element; + +// Warning: (ae-missing-release-tag) "PagerDutyChangeEvent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyChangeEvent = { id: string; integration: [ { - service: Service; + service: PagerDutyService; }, ]; source: string; @@ -44,114 +67,56 @@ export type ChangeEvent = { timestamp: string; }; -// Warning: (ae-missing-release-tag) "ChangeEventsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "PagerDutyChangeEventsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type ChangeEventsResponse = { - change_events: ChangeEvent[]; +export type PagerDutyChangeEventsResponse = { + change_events: PagerDutyChangeEvent[]; }; -// Warning: (ae-missing-release-tag) "ClientApiConfig" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type ClientApiConfig = ClientApiDependencies & { - eventsBaseUrl?: string; -}; - -// Warning: (ae-missing-release-tag) "ClientApiDependencies" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type ClientApiDependencies = { - discoveryApi: DiscoveryApi; - fetchApi: FetchApi; -}; - -// Warning: (ae-missing-release-tag) "EntityPagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export const EntityPagerDutyCard: () => JSX.Element; - -// Warning: (ae-missing-release-tag) "Incident" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type Incident = { - id: string; - title: string; - status: string; - html_url: string; - assignments: [ - { - assignee: Assignee; - }, - ]; - serviceId: string; - created_at: string; -}; - -// Warning: (ae-missing-release-tag) "IncidentsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type IncidentsResponse = { - incidents: Incident[]; -}; - -// Warning: (ae-missing-release-tag) "isPluginApplicableToEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -const isPluginApplicableToEntity: (entity: Entity) => boolean; -export { isPluginApplicableToEntity as isPagerDutyAvailable }; -export { isPluginApplicableToEntity }; - -// Warning: (ae-missing-release-tag) "OnCall" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type OnCall = { - user: User; - escalation_level: number; -}; - -// Warning: (ae-missing-release-tag) "OnCallsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type OnCallsResponse = { - oncalls: OnCall[]; -}; - -// Warning: (ae-forgotten-export) The symbol "PagerDutyApi" needs to be exported by the entry point index.d.ts -// Warning: (ae-missing-release-tag) "pagerDutyApiRef" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export const pagerDutyApiRef: ApiRef; - -// Warning: (ae-missing-release-tag) "PagerDutyCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export const PagerDutyCard: () => JSX.Element; - // Warning: (ae-missing-release-tag) "PagerDutyClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) export class PagerDutyClient implements PagerDutyApi { - constructor(config: ClientApiConfig); + constructor(config: PagerDutyClientApiConfig); // (undocumented) static fromConfig( configApi: ConfigApi, - { discoveryApi, fetchApi }: ClientApiDependencies, + { discoveryApi, fetchApi }: PagerDutyClientApiDependencies, ): PagerDutyClient; // (undocumented) - getChangeEventsByServiceId(serviceId: string): Promise; + getChangeEventsByServiceId( + serviceId: string, + ): Promise; // (undocumented) - getIncidentsByServiceId(serviceId: string): Promise; + getIncidentsByServiceId( + serviceId: string, + ): Promise; // (undocumented) - getOnCallByPolicyId(policyId: string): Promise; + getOnCallByPolicyId(policyId: string): Promise; // (undocumented) getServiceByEntity( pagerDutyEntity: PagerDutyEntity, - ): Promise; + ): Promise; // (undocumented) - triggerAlarm(request: TriggerAlarmRequest): Promise; + triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise; } +// Warning: (ae-missing-release-tag) "PagerDutyClientApiConfig" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyClientApiConfig = PagerDutyClientApiDependencies & { + eventsBaseUrl?: string; +}; + +// Warning: (ae-missing-release-tag) "PagerDutyClientApiDependencies" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyClientApiDependencies = { + discoveryApi: DiscoveryApi; + fetchApi: FetchApi; +}; + // Warning: (ae-missing-release-tag) "PagerDutyEntity" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -161,6 +126,45 @@ export type PagerDutyEntity = { name: string; }; +// Warning: (ae-missing-release-tag) "PagerDutyIncident" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyIncident = { + id: string; + title: string; + status: string; + html_url: string; + assignments: [ + { + assignee: PagerDutyAssignee; + }, + ]; + serviceId: string; + created_at: string; +}; + +// Warning: (ae-missing-release-tag) "PagerDutyIncidentsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyIncidentsResponse = { + incidents: PagerDutyIncident[]; +}; + +// Warning: (ae-missing-release-tag) "PagerDutyOnCall" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyOnCall = { + user: PagerDutyUser; + escalation_level: number; +}; + +// Warning: (ae-missing-release-tag) "PagerDutyOnCallsResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyOnCallsResponse = { + oncalls: PagerDutyOnCall[]; +}; + // Warning: (ae-missing-release-tag) "pagerDutyPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -168,38 +172,49 @@ const pagerDutyPlugin: BackstagePlugin<{}, {}>; export { pagerDutyPlugin }; export { pagerDutyPlugin as plugin }; -// Warning: (ae-missing-release-tag) "Service" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "PagerDutyService" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type Service = { +export type PagerDutyService = { id: string; name: string; html_url: string; integrationKey: string; escalation_policy: { id: string; - user: User; + user: PagerDutyUser; html_url: string; }; }; -// Warning: (ae-missing-release-tag) "ServiceResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "PagerDutyServiceResponse" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type ServiceResponse = { - service: Service; +export type PagerDutyServiceResponse = { + service: PagerDutyService; }; -// Warning: (ae-missing-release-tag) "TriggerAlarmRequest" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// Warning: (ae-missing-release-tag) "PagerDutyTriggerAlarmRequest" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) -export type TriggerAlarmRequest = { +export type PagerDutyTriggerAlarmRequest = { integrationKey: string; source: string; description: string; userName: string; }; +// Warning: (ae-missing-release-tag) "PagerDutyUser" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type PagerDutyUser = { + id: string; + summary: string; + email: string; + html_url: string; + name: string; +}; + // Warning: (ae-forgotten-export) The symbol "TriggerButtonProps" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "TriggerButton" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) // @@ -210,15 +225,4 @@ export function TriggerButton(props: TriggerButtonProps): JSX.Element; // // @public (undocumented) export class UnauthorizedError extends Error {} - -// Warning: (ae-missing-release-tag) "User" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type User = { - id: string; - summary: string; - email: string; - html_url: string; - name: string; -}; ``` diff --git a/plugins/pagerduty/src/api/client.test.ts b/plugins/pagerduty/src/api/client.test.ts index d3e9b58542..2e9efefb18 100644 --- a/plugins/pagerduty/src/api/client.test.ts +++ b/plugins/pagerduty/src/api/client.test.ts @@ -17,7 +17,7 @@ import { MockFetchApi } from '@backstage/test-utils'; import { DiscoveryApi } from '@backstage/core-plugin-api'; import { PagerDutyClient, UnauthorizedError } from './client'; import { PagerDutyEntity } from '../types'; -import { Service, User } from '../components/types'; +import { PagerDutyService, PagerDutyUser } from '../components/types'; import { NotFoundError } from '@backstage/errors'; const mockFetch = jest.fn().mockName('fetch'); @@ -34,7 +34,7 @@ const mockFetchApi: MockFetchApi = new MockFetchApi({ let client: PagerDutyClient; let pagerDutyEntity: PagerDutyEntity; -const user: User = { +const user: PagerDutyUser = { name: 'person1', id: 'p1', summary: 'person1', @@ -42,7 +42,7 @@ const user: User = { html_url: 'http://a.com/id1', }; -const service: Service = { +const service: PagerDutyService = { id: 'def456', name: 'pagerduty-name', html_url: 'www.example.com', diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index ebf350add2..dbb4248f0f 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -16,15 +16,15 @@ import { PagerDutyApi, - TriggerAlarmRequest, - ServicesResponse, - ServiceResponse, - IncidentsResponse, - OnCallsResponse, - ClientApiDependencies, - ClientApiConfig, + PagerDutyTriggerAlarmRequest, + PagerDutyServicesResponse, + PagerDutyServiceResponse, + PagerDutyIncidentsResponse, + PagerDutyOnCallsResponse, + PagerDutyClientApiDependencies, + PagerDutyClientApiConfig, RequestOptions, - ChangeEventsResponse, + PagerDutyChangeEventsResponse, } from './types'; import { createApiRef, ConfigApi } from '@backstage/core-plugin-api'; import { NotFoundError } from '@backstage/errors'; @@ -42,7 +42,7 @@ const commonGetServiceParams = export class PagerDutyClient implements PagerDutyApi { static fromConfig( configApi: ConfigApi, - { discoveryApi, fetchApi }: ClientApiDependencies, + { discoveryApi, fetchApi }: PagerDutyClientApiDependencies, ) { const eventsBaseUrl: string = configApi.getOptionalString('pagerDuty.eventsBaseUrl') ?? @@ -54,21 +54,21 @@ export class PagerDutyClient implements PagerDutyApi { fetchApi, }); } - constructor(private readonly config: ClientApiConfig) {} + constructor(private readonly config: PagerDutyClientApiConfig) {} async getServiceByEntity( pagerDutyEntity: PagerDutyEntity, - ): Promise { + ): Promise { const { integrationKey, serviceId } = pagerDutyEntity; - let response: ServiceResponse; + let response: PagerDutyServiceResponse; let url: string; if (integrationKey) { url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/services?${commonGetServiceParams}&query=${integrationKey}`; - const { services } = await this.getByUrl(url); + const { services } = await this.getByUrl(url); const service = services[0]; if (!service) throw new NotFoundError(); @@ -79,7 +79,7 @@ export class PagerDutyClient implements PagerDutyApi { 'proxy', )}/pagerduty/services/${serviceId}?${commonGetServiceParams}`; - response = await this.getByUrl(url); + response = await this.getByUrl(url); } else { throw new NotFoundError(); } @@ -87,36 +87,40 @@ export class PagerDutyClient implements PagerDutyApi { return response; } - async getIncidentsByServiceId(serviceId: string): Promise { + async getIncidentsByServiceId( + serviceId: string, + ): Promise { const params = `time_zone=UTC&sort_by=created_at&statuses[]=triggered&statuses[]=acknowledged&service_ids[]=${serviceId}`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/incidents?${params}`; - return await this.getByUrl(url); + return await this.getByUrl(url); } async getChangeEventsByServiceId( serviceId: string, - ): Promise { + ): Promise { const params = `limit=5&time_zone=UTC&sort_by=timestamp`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/services/${serviceId}/change_events?${params}`; - return await this.getByUrl(url); + return await this.getByUrl(url); } - async getOnCallByPolicyId(policyId: string): Promise { + async getOnCallByPolicyId( + policyId: string, + ): Promise { const params = `time_zone=UTC&include[]=users&escalation_policy_ids[]=${policyId}`; const url = `${await this.config.discoveryApi.getBaseUrl( 'proxy', )}/pagerduty/oncalls?${params}`; - return await this.getByUrl(url); + return await this.getByUrl(url); } - triggerAlarm(request: TriggerAlarmRequest): Promise { + triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise { const { integrationKey, source, description, userName } = request; const body = JSON.stringify({ diff --git a/plugins/pagerduty/src/api/index.ts b/plugins/pagerduty/src/api/index.ts index a88137b979..9a0c08973d 100644 --- a/plugins/pagerduty/src/api/index.ts +++ b/plugins/pagerduty/src/api/index.ts @@ -16,11 +16,11 @@ export { PagerDutyClient, pagerDutyApiRef, UnauthorizedError } from './client'; export type { - ServiceResponse, - IncidentsResponse, - ChangeEventsResponse, - OnCallsResponse, - TriggerAlarmRequest, - ClientApiDependencies, - ClientApiConfig, + PagerDutyServiceResponse, + PagerDutyIncidentsResponse, + PagerDutyChangeEventsResponse, + PagerDutyOnCallsResponse, + PagerDutyTriggerAlarmRequest, + PagerDutyClientApiDependencies, + PagerDutyClientApiConfig, } from './types'; diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index ed6c1f222a..5163718154 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -14,31 +14,36 @@ * limitations under the License. */ -import { Incident, ChangeEvent, OnCall, Service } from '../components/types'; +import { + PagerDutyIncident, + PagerDutyChangeEvent, + PagerDutyOnCall, + PagerDutyService, +} from '../components/types'; import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; import { PagerDutyEntity } from '../types'; -export type ServicesResponse = { - services: Service[]; +export type PagerDutyServicesResponse = { + services: PagerDutyService[]; }; -export type ServiceResponse = { - service: Service; +export type PagerDutyServiceResponse = { + service: PagerDutyService; }; -export type IncidentsResponse = { - incidents: Incident[]; +export type PagerDutyIncidentsResponse = { + incidents: PagerDutyIncident[]; }; -export type ChangeEventsResponse = { - change_events: ChangeEvent[]; +export type PagerDutyChangeEventsResponse = { + change_events: PagerDutyChangeEvent[]; }; -export type OnCallsResponse = { - oncalls: OnCall[]; +export type PagerDutyOnCallsResponse = { + oncalls: PagerDutyOnCall[]; }; -export type TriggerAlarmRequest = { +export type PagerDutyTriggerAlarmRequest = { integrationKey: string; source: string; description: string; @@ -52,38 +57,42 @@ export interface PagerDutyApi { */ getServiceByEntity( pagerDutyEntity: PagerDutyEntity, - ): Promise; + ): Promise; /** * Fetches a list of incidents a provided service has. * */ - getIncidentsByServiceId(serviceId: string): Promise; + getIncidentsByServiceId( + serviceId: string, + ): Promise; /** * Fetches a list of change events a provided service has. * */ - getChangeEventsByServiceId(serviceId: string): Promise; + getChangeEventsByServiceId( + serviceId: string, + ): Promise; /** * Fetches the list of users in an escalation policy. * */ - getOnCallByPolicyId(policyId: string): Promise; + getOnCallByPolicyId(policyId: string): Promise; /** * Triggers an incident to whoever is on-call. */ - triggerAlarm(request: TriggerAlarmRequest): Promise; + triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise; } -export type ClientApiDependencies = { +export type PagerDutyClientApiDependencies = { discoveryApi: DiscoveryApi; fetchApi: FetchApi; }; -export type ClientApiConfig = ClientApiDependencies & { +export type PagerDutyClientApiConfig = PagerDutyClientApiDependencies & { eventsBaseUrl?: string; }; diff --git a/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx b/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx index 4912277cee..505d58eabb 100644 --- a/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx +++ b/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx @@ -26,7 +26,7 @@ import { Typography, } from '@material-ui/core'; import { DateTime, Duration } from 'luxon'; -import { ChangeEvent } from '../types'; +import { PagerDutyChangeEvent } from '../types'; import OpenInBrowserIcon from '@material-ui/icons/OpenInBrowser'; import { BackstageTheme } from '@backstage/theme'; @@ -44,7 +44,7 @@ const useStyles = makeStyles({ }); type Props = { - changeEvent: ChangeEvent; + changeEvent: PagerDutyChangeEvent; }; export const ChangeEventListItem = ({ changeEvent }: Props) => { diff --git a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx index 017e394de0..a518e0caea 100644 --- a/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx +++ b/plugins/pagerduty/src/components/ChangeEvents/ChangeEvents.test.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; import { render, waitFor } from '@testing-library/react'; -import { ChangeEvent } from '../types'; +import { PagerDutyChangeEvent } from '../types'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; import { pagerDutyApiRef } from '../../api'; import { ApiProvider } from '@backstage/core-app-api'; @@ -74,7 +74,7 @@ describe('Incidents', () => { summary: 'sum of EVENT', timestamp: '2020-07-18T08:42:58.315+0000', }, - ] as ChangeEvent[], + ] as PagerDutyChangeEvent[], })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( @@ -121,7 +121,7 @@ describe('Incidents', () => { summary: 'sum of EVENT', timestamp: '2020-07-18T08:42:58.315+0000', }, - ] as ChangeEvent[], + ] as PagerDutyChangeEvent[], })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( diff --git a/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx b/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx index 33e8865f59..97c02a37f3 100644 --- a/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx +++ b/plugins/pagerduty/src/components/Escalation/Escalation.test.tsx @@ -17,7 +17,7 @@ import React from 'react'; import { render, waitFor } from '@testing-library/react'; import { EscalationPolicy } from './EscalationPolicy'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; -import { User } from '../types'; +import { PagerDutyUser } from '../types'; import { pagerDutyApiRef } from '../../api'; import { ApiProvider } from '@backstage/core-app-api'; @@ -57,7 +57,7 @@ describe('Escalation', () => { summary: 'person1', email: 'person1@example.com', html_url: 'http://a.com/id1', - } as User, + } as PagerDutyUser, }, ], })); diff --git a/plugins/pagerduty/src/components/Escalation/EscalationUser.tsx b/plugins/pagerduty/src/components/Escalation/EscalationUser.tsx index a460906d22..d418ad02c0 100644 --- a/plugins/pagerduty/src/components/Escalation/EscalationUser.tsx +++ b/plugins/pagerduty/src/components/Escalation/EscalationUser.tsx @@ -28,7 +28,7 @@ import { import Avatar from '@material-ui/core/Avatar'; import EmailIcon from '@material-ui/icons/Email'; import OpenInBrowserIcon from '@material-ui/icons/OpenInBrowser'; -import { User } from '../types'; +import { PagerDutyUser } from '../types'; const useStyles = makeStyles({ listItemPrimary: { @@ -37,7 +37,7 @@ const useStyles = makeStyles({ }); type Props = { - user: User; + user: PagerDutyUser; }; export const EscalationUser = ({ user }: Props) => { diff --git a/plugins/pagerduty/src/components/Incident/IncidentListItem.tsx b/plugins/pagerduty/src/components/Incident/IncidentListItem.tsx index 807685a83e..5945c45e83 100644 --- a/plugins/pagerduty/src/components/Incident/IncidentListItem.tsx +++ b/plugins/pagerduty/src/components/Incident/IncidentListItem.tsx @@ -29,7 +29,7 @@ import { import Done from '@material-ui/icons/Done'; import Warning from '@material-ui/icons/Warning'; import { DateTime, Duration } from 'luxon'; -import { Incident } from '../types'; +import { PagerDutyIncident } from '../types'; import OpenInBrowserIcon from '@material-ui/icons/OpenInBrowser'; import { BackstageTheme } from '@backstage/theme'; @@ -61,7 +61,7 @@ const useStyles = makeStyles(theme => ({ })); type Props = { - incident: Incident; + incident: PagerDutyIncident; }; export const IncidentListItem = ({ incident }: Props) => { diff --git a/plugins/pagerduty/src/components/Incident/Incidents.test.tsx b/plugins/pagerduty/src/components/Incident/Incidents.test.tsx index ad69bc083e..a83874a995 100644 --- a/plugins/pagerduty/src/components/Incident/Incidents.test.tsx +++ b/plugins/pagerduty/src/components/Incident/Incidents.test.tsx @@ -18,7 +18,7 @@ import { render, waitFor } from '@testing-library/react'; import { Incidents } from './Incidents'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; import { pagerDutyApiRef } from '../../api'; -import { Incident } from '../types'; +import { PagerDutyIncident } from '../types'; import { ApiProvider } from '@backstage/core-app-api'; const mockPagerDutyApi = { @@ -83,7 +83,7 @@ describe('Incidents', () => { html_url: 'http://a.com/id2', serviceId: 'sId2', }, - ] as Incident[], + ] as PagerDutyIncident[], })); const { getByText, getAllByTitle, queryByTestId } = render( wrapInTestApp( diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx index 9a6e9a3ed2..85202a9cfc 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.test.tsx @@ -21,7 +21,7 @@ import { EntityProvider } from '@backstage/plugin-catalog-react'; import { NotFoundError } from '@backstage/errors'; import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils'; import { pagerDutyApiRef, UnauthorizedError, PagerDutyClient } from '../../api'; -import { Service, User } from '../types'; +import { PagerDutyService, PagerDutyUser } from '../types'; import { alertApiRef } from '@backstage/core-plugin-api'; import { ApiProvider } from '@backstage/core-app-api'; @@ -69,7 +69,7 @@ const entityWithAllAnnotations: Entity = { }, }; -const user: User = { +const user: PagerDutyUser = { name: 'person1', id: 'p1', summary: 'person1', @@ -77,7 +77,7 @@ const user: User = { html_url: 'http://a.com/id1', }; -const service: Service = { +const service: PagerDutyService = { id: 'def456', name: 'pagerduty-name', html_url: 'www.example.com', diff --git a/plugins/pagerduty/src/components/index.ts b/plugins/pagerduty/src/components/index.ts index a452c12e12..17bb2c03dc 100644 --- a/plugins/pagerduty/src/components/index.ts +++ b/plugins/pagerduty/src/components/index.ts @@ -15,12 +15,12 @@ */ export type { - ChangeEvent, - Incident, - Service, - OnCall, - Assignee, - User, + PagerDutyChangeEvent, + PagerDutyIncident, + PagerDutyService, + PagerDutyOnCall, + PagerDutyAssignee, + PagerDutyUser, } from './types'; export { diff --git a/plugins/pagerduty/src/components/types.ts b/plugins/pagerduty/src/components/types.ts index d0d05d82d1..89cdffea16 100644 --- a/plugins/pagerduty/src/components/types.ts +++ b/plugins/pagerduty/src/components/types.ts @@ -14,11 +14,11 @@ * limitations under the License. */ -export type ChangeEvent = { +export type PagerDutyChangeEvent = { id: string; integration: [ { - service: Service; + service: PagerDutyService; }, ]; source: string; @@ -33,44 +33,44 @@ export type ChangeEvent = { timestamp: string; }; -export type Incident = { +export type PagerDutyIncident = { id: string; title: string; status: string; html_url: string; assignments: [ { - assignee: Assignee; + assignee: PagerDutyAssignee; }, ]; serviceId: string; created_at: string; }; -export type Service = { +export type PagerDutyService = { id: string; name: string; html_url: string; integrationKey: string; escalation_policy: { id: string; - user: User; + user: PagerDutyUser; html_url: string; }; }; -export type OnCall = { - user: User; +export type PagerDutyOnCall = { + user: PagerDutyUser; escalation_level: number; }; -export type Assignee = { +export type PagerDutyAssignee = { id: string; summary: string; html_url: string; }; -export type User = { +export type PagerDutyUser = { id: string; summary: string; email: string; From 7889629264d2d3c6b31da00496bd8be9aa6c2cf5 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 08:39:59 -0700 Subject: [PATCH 506/550] fix(plugins/pagerduty): properly type optional variable Signed-off-by: Alec Jacobs --- .../src/components/ChangeEvents/ChangeEventListItem.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx b/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx index 505d58eabb..7b531bf1de 100644 --- a/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx +++ b/plugins/pagerduty/src/components/ChangeEvents/ChangeEventListItem.tsx @@ -54,7 +54,7 @@ export const ChangeEventListItem = ({ changeEvent }: Props) => { const changedAt = DateTime.local() .minus(Duration.fromMillis(duration)) .toRelative({ locale: 'en' }); - let externalLinkElem = null; + let externalLinkElem: JSX.Element | undefined; if (changeEvent.links.length > 0) { const text: string = changeEvent.links[0].text; externalLinkElem = ( From ce89b1801ef25fd6052135d68b4e175a9b0499e2 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 09:28:19 -0700 Subject: [PATCH 507/550] feat(plugins/pagerduty): add pagerDutyEntity helper * parse a PagerDutyEntity from a Backstage Entity Signed-off-by: Alec Jacobs --- .../src/components/pagerDutyEntity.test.ts | 98 +++++++++++++++++++ .../src/components/pagerDutyEntity.ts | 29 ++++++ 2 files changed, 127 insertions(+) create mode 100644 plugins/pagerduty/src/components/pagerDutyEntity.test.ts create mode 100644 plugins/pagerduty/src/components/pagerDutyEntity.ts diff --git a/plugins/pagerduty/src/components/pagerDutyEntity.test.ts b/plugins/pagerduty/src/components/pagerDutyEntity.test.ts new file mode 100644 index 0000000000..cf551d3d6e --- /dev/null +++ b/plugins/pagerduty/src/components/pagerDutyEntity.test.ts @@ -0,0 +1,98 @@ +/* + * Copyright 2020 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 { Entity } from '@backstage/catalog-model'; +import { getPagerDutyEntity } from './pagerDutyEntity'; + +const entity: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/integration-key': 'abc123', + }, + }, +}; + +const entityWithoutAnnotations: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: {}, + }, +}; + +const entityWithServiceId: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/service-id': 'def456', + }, + }, +}; + +const entityWithAllAnnotations: Entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/integration-key': 'abc123', + 'pagerduty.com/service-id': 'def456', + }, + }, +}; + +describe('getPagerDutyEntity', () => { + describe('when entity has no annotations', () => { + it('returns a PagerDutyEntity', () => { + expect(getPagerDutyEntity(entityWithoutAnnotations)).toEqual({ + name: 'pagerduty-test', + }); + }); + }); + + describe('when entity has integration key annotation', () => { + it('returns a PagerDutyEntity', () => { + expect(getPagerDutyEntity(entity)).toEqual({ + name: 'pagerduty-test', + integrationKey: 'abc123', + }); + }); + }); + + describe('when entity has service id annotation', () => { + it('returns a PagerDutyEntity', () => { + expect(getPagerDutyEntity(entityWithServiceId)).toEqual({ + name: 'pagerduty-test', + serviceId: 'def456', + }); + }); + }); + + describe('when entity has all annotations', () => { + it('returns a PagerDutyEntity', () => { + expect(getPagerDutyEntity(entityWithAllAnnotations)).toEqual({ + name: 'pagerduty-test', + integrationKey: 'abc123', + serviceId: 'def456', + }); + }); + }); +}); diff --git a/plugins/pagerduty/src/components/pagerDutyEntity.ts b/plugins/pagerduty/src/components/pagerDutyEntity.ts new file mode 100644 index 0000000000..950525881e --- /dev/null +++ b/plugins/pagerduty/src/components/pagerDutyEntity.ts @@ -0,0 +1,29 @@ +/* + * Copyright 2020 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 { Entity } from '@backstage/catalog-model'; +import { PagerDutyEntity } from '../types'; +import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID } from './constants'; + +export function getPagerDutyEntity(entity: Entity): PagerDutyEntity { + const { + [PAGERDUTY_INTEGRATION_KEY]: integrationKey, + [PAGERDUTY_SERVICE_ID]: serviceId, + } = entity.metadata.annotations || ({} as Record); + const name = entity.metadata.name; + + return { integrationKey, serviceId, name }; +} From fb9b81780aec0367a368c8ce692846ca6c5a0ad0 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 09:29:45 -0700 Subject: [PATCH 508/550] feat(plugins/pagerduty): use getPagerDutyEntity helper in hook Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/hooks/index.ts | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/plugins/pagerduty/src/hooks/index.ts b/plugins/pagerduty/src/hooks/index.ts index 503597a69e..8950e443e2 100644 --- a/plugins/pagerduty/src/hooks/index.ts +++ b/plugins/pagerduty/src/hooks/index.ts @@ -16,19 +16,10 @@ import { useEntity } from '@backstage/plugin-catalog-react'; import { PagerDutyEntity } from '../types'; - -import { - PAGERDUTY_INTEGRATION_KEY, - PAGERDUTY_SERVICE_ID, -} from '../components/constants'; +import { getPagerDutyEntity } from '../components/pagerDutyEntity'; export function usePagerdutyEntity(): PagerDutyEntity { const { entity } = useEntity(); - const { - [PAGERDUTY_INTEGRATION_KEY]: integrationKey, - [PAGERDUTY_SERVICE_ID]: serviceId, - } = entity.metadata.annotations || ({} as Record); - const name = entity.metadata.name; - return { integrationKey, serviceId, name }; + return getPagerDutyEntity(entity); } From a9b6b729c48e6bdafc8099ad2ccdead858f0b746 Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 14:39:46 -0700 Subject: [PATCH 509/550] feat(plugins/pagerduty): refactor PagerDutyClient.getServiceByEntity * provide raw backstage entity Signed-off-by: Alec Jacobs --- plugins/pagerduty/src/api/client.test.ts | 123 ++++++++++-------- plugins/pagerduty/src/api/client.ts | 9 +- plugins/pagerduty/src/api/types.ts | 8 +- .../src/components/PagerDutyCard/index.tsx | 10 +- 4 files changed, 82 insertions(+), 68 deletions(-) diff --git a/plugins/pagerduty/src/api/client.test.ts b/plugins/pagerduty/src/api/client.test.ts index 2e9efefb18..a32a533e68 100644 --- a/plugins/pagerduty/src/api/client.test.ts +++ b/plugins/pagerduty/src/api/client.test.ts @@ -16,9 +16,9 @@ import { MockFetchApi } from '@backstage/test-utils'; import { DiscoveryApi } from '@backstage/core-plugin-api'; import { PagerDutyClient, UnauthorizedError } from './client'; -import { PagerDutyEntity } from '../types'; import { PagerDutyService, PagerDutyUser } from '../components/types'; import { NotFoundError } from '@backstage/errors'; +import { Entity } from '@backstage/catalog-model'; const mockFetch = jest.fn().mockName('fetch'); const mockDiscoveryApi: jest.Mocked = { @@ -32,7 +32,7 @@ const mockFetchApi: MockFetchApi = new MockFetchApi({ }); let client: PagerDutyClient; -let pagerDutyEntity: PagerDutyEntity; +let entity: Entity; const user: PagerDutyUser = { name: 'person1', @@ -76,9 +76,15 @@ describe('PagerDutyClient', () => { describe('getServiceByEntity', () => { describe('when provided entity has an integrationKey value', () => { beforeEach(() => { - pagerDutyEntity = { - name: 'pagerduty-test', - integrationKey: 'abc123', + entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/integration-key': 'abc123', + }, + }, }; }); @@ -89,7 +95,7 @@ describe('PagerDutyClient', () => { json: () => Promise.resolve({ services: [service] }), }); - expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + expect(await client.getServiceByEntity(entity)).toEqual({ service, }); expect(mockFetch).toHaveBeenCalledWith( @@ -108,9 +114,9 @@ describe('PagerDutyClient', () => { }); it('throws UnauthorizedError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(UnauthorizedError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + UnauthorizedError, + ); }); }); @@ -124,9 +130,9 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); }); }); @@ -143,9 +149,7 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError( + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( 'Request failed with 500, Not valid request internal error occurred', ); }); @@ -161,18 +165,24 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); }); }); }); describe('when provided entity has a serviceId value', () => { beforeEach(() => { - pagerDutyEntity = { - name: 'pagerduty-test', - serviceId: 'def456', + entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/service-id': 'def456', + }, + }, }; }); @@ -183,7 +193,7 @@ describe('PagerDutyClient', () => { json: () => Promise.resolve({ service }), }); - expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + expect(await client.getServiceByEntity(entity)).toEqual({ service, }); expect(mockFetch).toHaveBeenCalledWith( @@ -202,9 +212,9 @@ describe('PagerDutyClient', () => { }); it('throws UnauthorizedError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(UnauthorizedError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + UnauthorizedError, + ); }); }); @@ -218,9 +228,9 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); }); }); @@ -237,9 +247,7 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError( + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( 'Request failed with 500, Not valid request internal error occurred', ); }); @@ -248,10 +256,16 @@ describe('PagerDutyClient', () => { describe('when provided entity has both integrationKey and serviceId', () => { beforeEach(() => { - pagerDutyEntity = { - name: 'pagerduty-test', - integrationKey: 'abc123', - serviceId: 'def456', + entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: { + 'pagerduty.com/integration-key': 'abc123', + 'pagerduty.com/service-id': 'def456', + }, + }, }; }); @@ -262,7 +276,7 @@ describe('PagerDutyClient', () => { json: () => Promise.resolve({ services: [service] }), }); - expect(await client.getServiceByEntity(pagerDutyEntity)).toEqual({ + expect(await client.getServiceByEntity(entity)).toEqual({ service, }); expect(mockFetch).toHaveBeenCalledWith( @@ -281,9 +295,9 @@ describe('PagerDutyClient', () => { }); it('throws UnauthorizedError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(UnauthorizedError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + UnauthorizedError, + ); }); }); @@ -297,9 +311,9 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); }); }); @@ -316,9 +330,7 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError( + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( 'Request failed with 500, Not valid request internal error occurred', ); }); @@ -334,24 +346,29 @@ describe('PagerDutyClient', () => { }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); }); }); }); describe('when provided entity has no integrationKey or serviceId values', () => { beforeEach(() => { - pagerDutyEntity = { - name: 'pagerduty-test', + entity = { + apiVersion: 'backstage.io/v1alpha1', + kind: 'Component', + metadata: { + name: 'pagerduty-test', + annotations: {}, + }, }; }); it('throws NotFoundError', async () => { - await expect( - client.getServiceByEntity(pagerDutyEntity), - ).rejects.toThrowError(NotFoundError); + await expect(client.getServiceByEntity(entity)).rejects.toThrowError( + NotFoundError, + ); expect(mockFetch).not.toHaveBeenCalled(); }); }); diff --git a/plugins/pagerduty/src/api/client.ts b/plugins/pagerduty/src/api/client.ts index dbb4248f0f..69a702f66d 100644 --- a/plugins/pagerduty/src/api/client.ts +++ b/plugins/pagerduty/src/api/client.ts @@ -28,7 +28,8 @@ import { } from './types'; import { createApiRef, ConfigApi } from '@backstage/core-plugin-api'; import { NotFoundError } from '@backstage/errors'; -import { PagerDutyEntity } from '../types'; +import { Entity } from '@backstage/catalog-model'; +import { getPagerDutyEntity } from '../components/pagerDutyEntity'; export class UnauthorizedError extends Error {} @@ -56,10 +57,8 @@ export class PagerDutyClient implements PagerDutyApi { } constructor(private readonly config: PagerDutyClientApiConfig) {} - async getServiceByEntity( - pagerDutyEntity: PagerDutyEntity, - ): Promise { - const { integrationKey, serviceId } = pagerDutyEntity; + async getServiceByEntity(entity: Entity): Promise { + const { integrationKey, serviceId } = getPagerDutyEntity(entity); let response: PagerDutyServiceResponse; let url: string; diff --git a/plugins/pagerduty/src/api/types.ts b/plugins/pagerduty/src/api/types.ts index 5163718154..786b0bdffd 100644 --- a/plugins/pagerduty/src/api/types.ts +++ b/plugins/pagerduty/src/api/types.ts @@ -21,7 +21,7 @@ import { PagerDutyService, } from '../components/types'; import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; -import { PagerDutyEntity } from '../types'; +import { Entity } from '@backstage/catalog-model'; export type PagerDutyServicesResponse = { services: PagerDutyService[]; @@ -52,12 +52,10 @@ export type PagerDutyTriggerAlarmRequest = { export interface PagerDutyApi { /** - * Fetches the service for the provided PagerDutyEntity. + * Fetches the service for the provided Entity. * */ - getServiceByEntity( - pagerDutyEntity: PagerDutyEntity, - ): Promise; + getServiceByEntity(entity: Entity): Promise; /** * Fetches a list of incidents a provided service has. diff --git a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx index 174caf4900..e8ba2c522c 100644 --- a/plugins/pagerduty/src/components/PagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/PagerDutyCard/index.tsx @@ -25,7 +25,6 @@ import AlarmAddIcon from '@material-ui/icons/AlarmAdd'; import { MissingTokenError, ServiceNotFoundError } from '../Errors'; import WebIcon from '@material-ui/icons/Web'; import DateRangeIcon from '@material-ui/icons/DateRange'; -import { usePagerdutyEntity } from '../../hooks'; import { PAGERDUTY_INTEGRATION_KEY, PAGERDUTY_SERVICE_ID } from '../constants'; import { TriggerDialog } from '../TriggerDialog'; import { ChangeEvents } from '../ChangeEvents'; @@ -40,6 +39,8 @@ import { CardTab, InfoCard, } from '@backstage/core-components'; +import { useEntity } from '@backstage/plugin-catalog-react'; +import { getPagerDutyEntity } from '../pagerDutyEntity'; const BasicCard = ({ children }: { children: ReactNode }) => ( {children} @@ -52,7 +53,8 @@ export const isPluginApplicableToEntity = (entity: Entity) => ); export const PagerDutyCard = () => { - const pagerDutyEntity = usePagerdutyEntity(); + const { entity } = useEntity(); + const pagerDutyEntity = getPagerDutyEntity(entity); const api = useApi(pagerDutyApiRef); const [refreshIncidents, setRefreshIncidents] = useState(false); const [refreshChangeEvents, setRefreshChangeEvents] = @@ -76,9 +78,7 @@ export const PagerDutyCard = () => { loading, error, } = useAsync(async () => { - const { service: foundService } = await api.getServiceByEntity( - pagerDutyEntity, - ); + const { service: foundService } = await api.getServiceByEntity(entity); return { id: foundService.id, From 75813194a68085f54c22f55d63fee29129e9f2fd Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 14:42:48 -0700 Subject: [PATCH 510/550] chore(plugins/pagerduty): regenerate api-report Signed-off-by: Alec Jacobs --- plugins/pagerduty/api-report.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index 04cda3da91..be3fa9fa23 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -95,9 +95,7 @@ export class PagerDutyClient implements PagerDutyApi { // (undocumented) getOnCallByPolicyId(policyId: string): Promise; // (undocumented) - getServiceByEntity( - pagerDutyEntity: PagerDutyEntity, - ): Promise; + getServiceByEntity(entity: Entity): Promise; // (undocumented) triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise; } From d0014de1e1acf8a69523acc5c53f37463bc6ef5a Mon Sep 17 00:00:00 2001 From: Alec Jacobs Date: Fri, 17 Jun 2022 14:44:59 -0700 Subject: [PATCH 511/550] chore: enhance changeset definition for exposed types Signed-off-by: Alec Jacobs --- .changeset/weak-bananas-deliver.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.changeset/weak-bananas-deliver.md b/.changeset/weak-bananas-deliver.md index 2be1e87d29..f46c7b7bfe 100644 --- a/.changeset/weak-bananas-deliver.md +++ b/.changeset/weak-bananas-deliver.md @@ -18,6 +18,8 @@ For example, the `getIncidentsByServiceId` query method now returns an object in instead of just `Incident[]`. This same pattern goes for `getChangeEventsByServiceId` and `getOnCallByPolicyId` functions. +**BREAKING** All public exported types that relate to entities within PagerDuty have been prefixed with `PagerDuty` (e.g. `ServicesResponse` is now `PagerDutyServicesResponse` and `User` is now `PagerDutyUser`) + In addition, various enhancements/bug fixes were introduced: - The `PagerDutyCard` component now wraps error and loading messages with an `InfoCard` to contain errors/messages. This enforces a consistent experience on the EntityPage From 43b7228df05cae6c914de77c66e6fefa4b54cbe3 Mon Sep 17 00:00:00 2001 From: Andre Wanlin <67169551+awanlin@users.noreply.github.com> Date: Sat, 18 Jun 2022 11:05:45 -0500 Subject: [PATCH 512/550] Added comments to example Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com> --- plugins/azure-devops-backend/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/azure-devops-backend/README.md b/plugins/azure-devops-backend/README.md index e71021471b..5dc0570bd2 100644 --- a/plugins/azure-devops-backend/README.md +++ b/plugins/azure-devops-backend/README.md @@ -60,7 +60,10 @@ Here's how to get the backend up and running: // ... async function main() { // ... + // Add this line under the other lines that follow the useHotMemoize pattern const azureDevOpsEnv = useHotMemoize(module, () => createEnv('azure-devops')); + // ... + // Insert this line under the other lines that add their routers to apiRouter in the same way apiRouter.use('/azure-devops', await azureDevOps(azureDevOpsEnv)); ``` From 13a232ec2212e7e1896b2d717db0f2866452fb32 Mon Sep 17 00:00:00 2001 From: Andre Wanlin <67169551+awanlin@users.noreply.github.com> Date: Sat, 18 Jun 2022 11:07:09 -0500 Subject: [PATCH 513/550] Added changeset Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com> --- .changeset/tame-guests-wave.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/tame-guests-wave.md diff --git a/.changeset/tame-guests-wave.md b/.changeset/tame-guests-wave.md new file mode 100644 index 0000000000..bbf757084d --- /dev/null +++ b/.changeset/tame-guests-wave.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-azure-devops-backend': patch +--- + +Added comments to example to help avoid confusion as to where lines need to be added From b6ef133aedb1d34f2505a0f3714e34ba6e7d6ff7 Mon Sep 17 00:00:00 2001 From: Andre Wanlin <67169551+awanlin@users.noreply.github.com> Date: Sat, 18 Jun 2022 11:56:42 -0500 Subject: [PATCH 514/550] Added tutorial for Promehteus metrics Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com> --- .../tutorials/prometheus-metrics-output.png | Bin 0 -> 258197 bytes contrib/docs/tutorials/prometheus-metrics.md | 108 ++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 contrib/docs/tutorials/prometheus-metrics-output.png create mode 100644 contrib/docs/tutorials/prometheus-metrics.md diff --git a/contrib/docs/tutorials/prometheus-metrics-output.png b/contrib/docs/tutorials/prometheus-metrics-output.png new file mode 100644 index 0000000000000000000000000000000000000000..f7fac739acebf67e6ae8c5cd11758a567d542fe5 GIT binary patch literal 258197 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�F6=ma%)^Iq&&2AYc3JPmEA zz&E-;lMU>9=?I#NFc}!QQ7RHvvMau#HCj7-Dsk4$$U zXVvdjkoz;$-yv=#6}UlE=+fAse2;_ zG@kE1*=-_|6s%9@W_Qda1noQMPM`Xm-+zlDQO=taU9}zdMV#EB>Ml_dbJcwo?}FLz zKr>`-m?2bJoL~l%aKD2^eycMp3?UD%N*9xtGeTQ9gGAF_0(iMnZ zcb!!fd!alWA-3Ryd4Ik&ch{Thk7;T}=4U`aR#Pq6Bv#t7Lygw9wdgm)8+a?!xV(ex zdC`Dv3+@WD4BAVm4vmgUpI;4C0%<6BMbC1`e2A~2L6wJ$qombB2u6>zKKP@G3uV$}>znB17T2ROKQ{uP;4B2sNd2%1 zWHAHFxnu8$%Ju$D>bd?B*JpO0rWXU%q$C)gWP0A`JGx* z0bIXrh}et%z!T*n@g3-u)I2`;j!3` zvdrb2Z6d3pK&e98fDSf=J5YUBPrO=CePJR=t%e623?vJa%j29c@&K7nnB~&#H?coK13A+a< znLK*uy+wc*t07w9rra7{US=Zo%?6E5@Fl&edbW>gT}Ehm@xJu9avO`puJpX-YrJp6 z)vT|}Xd{an(fqA_YCnL@uVK)jBI?(iR&vkc>}W9*6F_O47w^4uiW^zcJW4}5)#rP! z@iquJ2IZtKGr#PD-N#{Qo$FO-?bhL@E%B;s?n_K5J5m-1Z#rv*;D}7~+OC#yZqbMy ztw5P5Y*AwqpC3vyp+q{@=Em7q^L<~fmIyc=RJ>F8ki#)n&0;sW!2sB%wzP=Qj(}aT zF^0c4)zO%?CHW$PhYv6H@Gik~QO<{QZEcKE4EAIkbUzbTyKW^>>z@bva~cWR+LNUZNN&PO0VsH_3?IwUS7kv9u6 z>RK-HQ=vUlm$81;FYaOJkzb)bh-gUt0eRe3%@mjHTd>p>DVKWX(f{u=ErlQBUJ{Pm zy=>M_dKx2VOTWP~Gl}?BOOpW~vx8Vm)JVG>U@c^@T~+hBe6UL5$PZH@s&pFkHtUS} z?v$VSq}!8N#LQLle4wCnMIZ=|lgf&)EA>^`p`r+9^OR81!gmJ84nOZ+Z(1Yd=U2wT zfgWJ@K{EZY?2tK*r(+l06$g29q`y#Qn=OhRLq9t?&n{^c>k5cj%5G(~v?wV`e~B+* zcdvRxN15)1XYaCcx0h#^?3gv+Q?!NB>8k8uG=KUZ=`oMyECNob-m6su`}{QXV1{U9 z!{axB!qc6D#Y$=AEJU2K_{r}U1IyMMx+)|a#1p%{0sVt#Tm3oaL`sJlCYAq&aHPjH zJ!5Rjy|(DYxBW5k6;) zz5Qc24gzeJZD zo+E-tP>aLg3hehEemgO~7<)5~(P@(Z^`mH{n{J=oz0>&L4Z1I)h-^)6KLuW3{|>_b zPX69SAfDHFc-8S=e&PR5U&Ke`GqAZuR1d$-^`|L+$iF`-K$U6w5!UoZtKAbE)>`|) z)+k57rVqJIYyhbT2g(Kb;tVbBQ+Ba=u$2c5Al1t*Kr}4L1Uv!R(I&Xk;T!480g*HW z@Fb7FRjToh41&})H5`ekmpDMM;oSRZ3=^m%9UTC#vPtYha(RmEDdDx*uol$ByA5;& z=2P$epavY#s|B1otU6gLk7rPe6zdi|S&BhBcbniiz&*GRI9I49;8wu~0X28?5z*^) zl?8CdA9loGDHkIF4K(w#GHl1ybhls(wpyBLF#I)4cQN;wLva{;`uf!w_=U9CuKL_; z)_s|K1`QFx_8_hWx5mr#N-pCj-*NyLaV7r#;=JhYyaOodL#zg}_SSM^f~ARc^OE)& zfbA6mem&LJAv{V@pIZPlH*^5|w;2aVxEA>CsGIZt*EJ?qAn&Dide|>2dYtMyY26A` z97#diLF2m{fQH8coIsC_eg#p$ak(`PxDAFIv&p=09i-#bPS~pV{Qami&+gaL3~YZu z1*jYV+Y+c4ew9;l-G-CToXDi#o9jy}Fb zhTzR_FCS4?2m+-f?MC8y0?@#)Q51C}i1en6Xnu1(xcuT%USxTRa;mlxAM&hsqCW7>`z2j2= z#%KkP$Ws5;V9kT(%l^X{pCh{Wj)8U=q`2>DCT%VxUkW-cwn0DuvlJ5jdamKsBP@d1 zE@Z!SNTg6$M0qVp{)K>=Wwjp&Eod=_OWy#a$G{zc@D-}$;_3H#hTt*LK7q}55I{*a z|N7;MKSmUKHr9AEYHzewJqLQ3EeC|lkAuOgcn3`{jU*4l+3$HgPdq2xH6P1)k=SnC@gcNPpmupVfC0Og;2P(81YCUt zNxBxvjsR5p<95HxCiW{i(jD-oHYPgMtq|o%ch-9*19*o!XuRtye&)MK)HWgo3X6-< zcLv;StmwNQR|zk*s5M}Qs^+6WJUk`IE9%==d=m00=S7@bTqZ~43wt=mwX>U_XT-=#^>K?{4f}K=BT-f`*pP04< zw%><_Fd2Z?G{Wey(ry`i5y{nuCVJkb5yFS2W!TqZGh?g+ls+!BM`P$0}#KM(V{~pyHZw;ZVB}jK1tAB^aLuZmh0&1-4>n z8d#2w-Ux0WrruqUE7M4ONbQm4eb80>)VpdeCxQV)bKSSzG?6b5>sj4fRzeZ#0vGrg zZt#&b*E^ven2dzLh!$a30o^^}mKaJwp18M=bMOIt5DNb;mAj-&;@-Jilp8JoY=vIw z3)3#}R;@1PC4D%;R5L?6G&ZBE7m#l5k=EV^IMw)-I*;o~>^3}i2r zVz@!^a_#}Rm@5kIbJ3$8Gp5TO^gO-ce6O(=<#Y{>E7gYVpQc}Qfg&2gL2#!<*j1H_ zJQ=5ST5Qcn^lqSNo<2X&+Ey#bO@N=E+p!|elf;(3H*bRlg31+mRR~eUKNI&Ekldma z(tS~PMeUl3-YK&xPH3SlT(J3JxJbOFo2=uO$8*TRQkWA*)Oc&GG9ym?`l{mMP?1#b zHCUD{_pCtbdUL)20prH%DQDEXh9k)w4&|GRu|^w_>W`JDwN;m~h)Ei&l{Zm7w<+G^ zWKmapz9pql3OMa)z&OLA77^lT1QcLv@9s0e=Ux|HC*3)!6YBBRp5nS*0)h6F16TM; zk)uz66%EHAFe`suYTxa?ls*A2;*U64?+4kWVpVRyUc4vwOK-rlJL5oFhyzFQ^2{un zU*=kResC8BIxzdpv2gB@0>x|6dFw`{2GgXH_5E#sE6F#h)C-mLRYPQBvxEl~yM~1J z=JliJY@x0Omox_}vckjcr1#hdWC!innB8~R+*0mwe0@AO$7iIQj=uvJ&+dD-8LFu_ zCeWtOs22L&j9~pR=Hiwphs;-8j4zYA-H`}3)Zau*p0<+D8Ia-@cD)(328Z&3$WHler_QeWhhh{#MO_%1j~{Sh@{rody@W;oXG-!fmYpk zM`gm>v77R|tSid57zUbj#6Qe&;1iaE_#eTgFP?otE#aCZ5NDIi)nwfS?Gw~dd64-L zSMrfF3ui1CNJgyYq7_3aXjiHV&K$Ybtck=ss;P0?r-G7X6KO!g_{lwL>R!|+XG+sA z;e(mpYa_}=MzQ69Sr!P!Lx#Dz(&i`rjK&re&=nH_jH(1C{}1qrqD@9+GYYvC|FSd= zZC(he1ysCO#&Hg`H4um8tR4(Te)G+7o!#qI#2U_~ZR0Mdm#7foYQF#=T4e4Spqul* zaNytUxHXoZ8Yj0CCM0prO7T63BGbttH1`C-;q>I}KIncd&ifRj$E*0|T(`%-HnAoxcD!$i z606r35iGExeP$zcS-KcigI2)#?TOIk>F$RWN1{gf-7=VXF#+bQM!xCm|h&57~{$Z&I+Stq#>Y2qIAjneY=Tkp}a@>^3G_p5)#oBM{BJw47sCC z@L5XdUv~_&u>P|0W*bn&g1+;T@xZ9o>(*P{d8xq)pzWvDJutq|`O;(Q)RmdM-F$2- z_WCiaC)RFI`!3X{x)WwG!v1KSUqny@eMqZONn=r940rO2yyiMn8G7?#V|hTFyOk*1z8VmbOWQ2{U^tUO;Siy z&0)GPHqr&&B2-k$c?>==wGsQN;yzm!omC>REO^_fx;TW&Q*Kl8jorm{#Z_{9A$2SF zW0WE$hjHFCh`T_~&*c{;Y zMg)=ci?D@LlEeBVLHgKkg*FjE6X#G@^e90(7H*xP><5UBJo2fQ!%Y!cZ}t-UWMyrf z#7yKr=7dnZ2)*d^nNIj*-R?mo$ban=Be<`mA0Q)bbhn-?IdU)AqirNs1$zoP!RW?FAHJa8t-w#mGGs zfv#wJm`hou?DCbr(^tg`9wpW8zNMl%Q$HBpLXdj|9q`TyidEJe&S6cq=xbSEr}P&t z7-O1cp*feAwU1d(e6bhNBV)wrK7z-!Z;IvbZIC#|?U%yq;Ucde8>1+B$7=i=wVk4t z*E3fsky~NT-DFAbPUJKTV5p}!m=UoqyOp)u+l>p*J_9vEIEovc#?Onn*4YsMYn9)*f!^ya8+GO$1AE!p^_d zeb|^QdP-{iz?3ssZ-1rA*BfI+d-C)=#SIh3X2V7SBs>I zv%(FJdetdsH`S^9WDS@JhDg_H?OTN11rN*4g>)Wc^D0v1Zt2&`26PsgMZ?hpP1>Wy z4ng6T5GV}Fbp#fQQO~ZQ`ZJK1 zXcQ8C*h=XnU+6htQ|P~{ye|Iy@)1`3N6YG=`8%U_4rF|*AF4L1`%drH9B}VxxkM-4 zvV%47pRkSdvKH2|3SPUJ7iCcsDc4W~Z8f(LwCyzSL6l6nQ@rUaU(AUKPwk1yBe|6=Q_qpI50x1~4I zBHbV$-Q6ijDh<+IQqmpLrPQX8ZV)yh(w&l`gfs|9HwgI6eeON?-1{5fe~iUo?ahig z-}iZ+z;Tw1=^gwr$ZK%%>N2|Rb!u;+%(JMe$s(iC_}Ww48M`GL>B*MK)QOOSA3v91 z`Ke5P7T_fmY=x*D7cB8SvYMr3&&2HPe#lapS73?wp@A<0m^SV=Zn9+LI%H3=ub`_u z0}t5bC2Rd?e#UQ50twaw?2-Y6;GHCH82wXXzT1r0L2+;J%0+4s*P;8DcOKB<_JmJOJ19N+|ZtbK;03=%A8sR*w08saj4lQA0UROwKth zwuoLKbOr1(1&Y!sb2_H&D}$YhU>bdtxF7g#N=h8};@hQ$aH4ZTsSN}CBJs|iMjWdW zld{L?Up+9NrEPp8tdcMxRnnDAD@fC8u4*QTo925J@l@h6mA{$p`_u~!k78qDg$Z;i zOw6mNoaagrFpyAL;rm14r0#ZqX|2u+X(`<`45u-q&^&n#8|x*b(^R2yV#=7X5-QT3 z&65nj>?w=qBuP#hAN1dl#{Q?Rmy}jnbu#MFLl90tkjPpKS7EgLK`_%^uAJZNp%)t)ngG}zWC$f zOFK@xcvSBhS=W1c1zvo2Yh6-Gk1CCljihIp4s}tp5-}S)8#caBCKJjBTF2qFy}uds zeF<2-ov7ExyqZ{`e4&{P+9zp_ZZ7j+^&0Zfrh3_3=aX{o6rN&AoEF93`5-1icuUEz zl(Pu8s*>4fn}cRjbJzC^FL$xMdKR|rLcOWYc$j5vOgeF>pE9wfzYOjekx`Lmgut&{ zFB}`US)CMyTM4x*2Ju$cP3tiA__ZK@Wn;O!k=Wb|M%as89}ocWH2}hc&mWrSlrS{) zwn>nqdxC=tx05v@fJy^%$-6yW9=@i@-#UC+yXoA3NPC$cb39}owH?g#N+#MQlja_# zAC4f=$_i&tKeBcVf>kb>Jka{eWUxL($%Ry8IL+{a)C?8f)D@y?U-?nqB*@lZcGLjx zb#KX7kIpMbQ5mgPyzna*BbS95jgrC_V2F)Z!g`p`Ywr0t0(UuZ$#T>kOJXX#PG?xB zq|J6Cqys#{<%eYrQoC_JCGAz%V1L!%LA8Y*4J*gAlX*Xk4asjB*E7oF?|odxnXf^w zyug(`kI7|7zi30s-`34DtvL0ejB0!?7sA*=&Gzf{IJm8wmgBFu3T(qU1wQr>^+xCv zKPk%RB`NkzM;ySxr5)0-PlI-p#cSN?!e-v zPXg2QSei#VS|zghA7C_2Q;d|LinN?4(3m=s$t269E5q_rN>A`?_VWZ--jVq;S$<&WMA^uZbEw-aS~6$oNftZg2)MPO zgYnRDHh4&j(6I%aa5-#~r4Psd7RGDmMX#mHDN0D!`oXl#y`-=_6mmxG_84B@Sfk)rv-_^oR!sLqz8kYuBOthhbP4{ zBycZS-HNL4d)t9n>v3>_8!Medwbwf{gbr3e3W<})WBM)AiZ8OPPKyhkIPU$d<1cif zgz+KQw({$wH3_y|<@kJXc(bR6DC2Nb&N<#+@mtw|)}JiVVm+ndnHRHtMWI%>0e{V& z8-df@(Z#DKRW`q+uP0wBoVqgu@m@E7BkA1Qj5A*gvMUoCk#C=UU-gvz z0QM}MVgw7ZST5ibo-4Vn!G6^@?j_f{U3JD?d@}oaM-tO%b{-c?DbiboZ%c1=ot+?0 za4eg@Zn9-EjGraINN%=7X^qJ$H?Es@wY5t8G@_k@YiK3bD=-BxG~QILRXsKOA)}v zaI2&bZbH61{nC`~X`MVU{TKe8SAlCH@Mtvt`=_^Mext~9aU*cj69W#i><+HQhff)y zQH@3_6I_{_CiP#aiB?3AzN#wYXFBhN%Z(Iyq<*)Q`hK0lW=F5OL|bH~%QpNuo!953 zE}?Ozm?h=%_u6{*EDbuucmq1h`wd9Yg9W>~A|?#exy2wXa`@QCza{cn1U^LiVIe%3S#eLKUCO?q~394;y!*L*H<<$vwuzhzmeA7&Qg@53VRz3H)d zqV6K_H^QH{j_ZujzFvEl{P!5(ZwO!YS>71`dvBrq7omF@MEyVh&+oy2;S>)b!a~x- zzG8X^R9gUrT||l%&K(w(m6GShpK6) zAGY(_3fi289*&Ci(K>D{pwbu32kbQp4Tkr4>7MnNjqcG9Z}db}W^sQfc=DU}S1^5J z5G-BPl0`~v8=f7Aad&f$0p^9iJd>aOb?1cD)X0;oGBUQbE>yKvuNQj58j#lq624Ic zY(Nh5Ew37X!LVQN`Ap^rm!U}FU}>T?QR?$rFZ^q`VZ!|^? z7n+qkxbw~tlrdaO8pe8D>*p_FNrx#LGPxm7+J zwGYIyH0QoeNMs#3pel%UB?u-JK#{t}jje)U~vhvS3O#S-ojuUJ*#ig4wb7cM6%# zM>sCsbd0~>)$DyJhYr76^>L0wP3!=ei+T0VJBE@9*I{Pc$)!>?yf{hV;0;l;0SuqqYx*CM)wtz%(4o-d1=L1%Q%0ci=g$+Sy?Ht}Aw2W3iE zg$LAJ%P#|Sn2?%B@Q!>E3Be7ddqpxS;6loBh;gO7GWRw_G{;J*hl<3K&n>isrmOKM$oIgz$Aeb(UhHz>cfmmydnHv@DwG)t7oD%)MV4^i#5P{^hk z9%F7=URFFsbtyl}um@}!5$Ycb*%_P;@i5jM9iNAjy@miLT6hM5X-r%h-ewYAGas=f zIj2d`7eSNaFqL}D_cMD>R2dH`+rLK;pC)7Rf0rDgMQWgy_JNv)lgv0EUjn~Lw!tCy zax4&eGEHDURgomHr9L{-3OI~d?s9&3(Vviq=?5%+Aux; z1{08{gfKBY^TA<8pWH$gWsxG z@%f5L3_F;FtrOT@HL|6u4YykRc%qzCzF?LR0?C=zmJ8CjD0ilt0QMrVCBUAUH#vNl zQWY&QPrI+AYOD#z-KZ>%Oed9o@nUH@%iKA@CgpF|^DySo(2QF_Lqb{*E6^yr`J)6U z$Rd$q1A0h}^w>Ygv2hNz{3uuez;4jFck82H!GMdjb_HilU?0PcuR~&kygZ0`P|J%y?ioD*)(j7SRo1Hlv7-8>ubu7Hzp1)l zd7~B)m-2lQ;!exJRDLeQ!$igM)x^-b3q^$@jof~v{`x33TxUgV-)@%5^V+10@ZtVC zfMU~7rI2vcY?dY#(@}-6)Lmt+;AzD)y?BzVbI$y+u`w*)Q8cNZ1hUa7>_2AE_#)&jnO6^f_az4 zUr>2b_p;?62B*A+Qp_( zL`?`&J#07vx3LpBK3Ul^&O0fCZslma z{Wx(Hvs9eXbx$OTc~;F!!->xOf3L`#bF_({BMHX1=UJ~GlrvB`&VgYZVawu7h^`zjyS$*yu ztG@*eYsNg>lBb~;4&Il)RYe-Yis7pdvr;YIb^ma{*0lIYR&s*EukhR=bW0qF92Z(p zsV_G2sIN;arh(Od38}*=hluyr?hV6JRSSY7?5~s|74IO;EvUgiwNK?w2Vb+n=wT}} zBA3Mk4Wg@bN?NUbtF}0LYn%+TioKRe2)eqaZwWMGo_oO>BAO;F_T&5`;nv{ncbNQp z{B0ThNvhyEtqW zO7s_6G4IKT->v-MZ?wWT2w@8y!trmk!s(SUG;dHCmEe09F3%HG3Fzy|fI*_9Cxr6T z*qk3jY|PyUIq4nv14l)AQw_%QR`A^L(xqNb6NYtwj^uy~3OlA01?#Q;-+0BkA+7Q7 zqvds-zRa)LrnX++8&tF3t5I@!mE7w+NjOqkSOB^@Lc&V-9Qi;nxP^=dLQb5vMwgfL>F{~`N&`(jA3RAqCrk#boC!MS)^>`y>Za4>A zU7WO-$E;3-D#H=FZF=9W4xp;FoC(&WSPop(*9%%!4|v&|>ubL)exd}%R6Ckt!Lk!C zk{%Ks4=V?USD8zPDoSOsUqTUjd)Jl(G2NedwAv=twQ?avuFr$`ydx#UHC4lR0x`tq z?-A5U!)pPp;#muEW2^w-1N{Jx6g~pmsg>vVTLUS==3Ojd*O;Q|5)2rNnL95t)W4`` zWj{hmLRZRU*}=ytw@cvOesPMqHo0ZPvS|L?R5Q%r!VvJglH@I0=S1wRG`ZC$T6ggC zgx&3~Hw-OTGS{U2r!Vx7?SN6PDJRQE?iV_XZYc=?-rE(|iTE}oT?rovlC|88)B+*;z7tAptlZjT=Owntap9;_m_iPZE4Dk3e z1xTOs-k9`^qF9d54I@^MnpiBnGF&>D>WgcYJDL*C1rD)fA;+Y(Ht82ZR;>l-W1Ja! z!*9{$Q-|m2Hu>A@kM}lLCF~RsVt80$c@Qa-p+vS9?hVbpU8^^E+ z$KJ*Yg9!dk<9j(vDL3ZN*aY5}`j<;VWEsAVNS0hIXkUg7R6p^s>^mZlI)A*|1U^9} z7_0jepD&7k9{;-uWZ(dtvs~rfB(XBL$`4ahTw2Cf*vY78nU4{|U|ud}yLdlpl@kAH zVgH@Y^@bPD7vs&($@!Z*`d9WdFlmp1z~N{hvWzOudsM~UOBrX%9PCNH|5++C$1|yMyIA!6k4}(0I9@7m z8rf^kQ`DK()HibfUKcXJR0vVExH*wgzHPW>3=>RlgDxm#tq6m3sqSs>X541>YIiStr%&JA46u`! zelUs~)W(-j)4pQup#3A-m7V0`kFd|~Vh{oewaGfun_eN`GvCANm-o6Eyx2@{Z@e2p>h)+n{U zKBlIc%m|*pf@@{^5)36Eg~t6ke$FttAMiG{1{r7hL70;`e(8Y zSyjH6pl?90IvDcUXimc)sC%dPk-!vpwRV`fVjF?SRllO<s>qak;EGgBg>UQ}Qyf z5&1YRi3AA>k9skMD-+HpETrL<+TuxQXdS&_@;U1}$4Eq8{WJZg4*~omc!VmdKvw_c z#1xHyw-8SMvI-V4eM+>Mgs(cShX^|`k@03ScxJCzv73BhvF`}DHM2KqNi0|y6VH8- zJ$u3ne${LCF96r=a_BuE_OUm0*}_^Pdeuv3_%`Z5Uu3xb@@C~06c8*@UWk*}S3)V0Rn%Y+2BCSeSHAlV!2S}QInNP%o{zo*c`+vZ^4}%- z36VUaNfb6wcbR$dtjt*um=L&IcS_xb&H>&OrK1hVvbO5(?y)K-VrKo&#qoCxX#Af~V)O(ntI zrCQC#m;AuIgsw5WboAe^yb}TfUdzHnoWK$k!V(2>En5a;qj!-ET>hyVlK6OwNpA`D zpS~+|#p39O&-?A`K*Dz6_;DO-h_dXJ8vl})c^pS~b1`1Ts!>?4#nDO^))(3{d!zg= zBNNMISepKc_nG0-N{138zJjQXU7o%j))P`2v? z+#GgMDf3sq`A*uD9EW3(6|cUG`17L@@JNS%3EGbpWl`s4VBC&Rf=lnZW=AV+AOod+ z1*%-xjm~sgEBrmKwu6p8_xe^WL^>oE^h)fX3d0d(@Ybe}xS<+GmSEY{{#h*M-U1Q~ z8CD3U0Yzp)y`&2EOi2e7Whk1Z+9tuL%FYS-eV3st5VjN@cRpABGGm?oNx>p9t+M@Q zH!5qf44BDMybmrjBaa{&^K}IzReF$urt&gEU_J@jRX8_Uy)MkMo~J{fFthOU-Gy1PwNnpJ2|X=hp{~;#cx8YrHKji~vCFEaOk^3xoBv@K4bsYH!C z1;V~keP_bskfx%zEm0iMw5_p%E(Jxz>gk#*SA}$&Mh%q8!zZ6GDk?u(hrNp*2i!p9sifeyi} z=JhgM>cpXKYt>8QUW%E|WY`Y;XL~rRqE57z4*kJL)og+jMC)#!#vGfh;ttEvRUy*-LITua z5k3@YVwuitctZ$c0!d|MYGOn`O7%acXBal!j6OsM)~er-C$}rou`Y(7PfbIP!Gcw! z_;^*nj|@H0=~Z=e`%|0{&f=%ZG5e26I!#Lwa2e~F^oyTS`D^Z%aTNrw@y>i$sYwz3 zVUeUVW3jbcQ8U|x;b*pM;c->f_-sDAfvX}g=R^60JnAYPdLR->+&>J>{t(Z z)w{45P+W2rN0enq^^v*x>T5ZV)UL-C6_7hNfap(+GaK*oZ;Pv=)hNs`UU51)C~4P>VrH^;5eBvEd+km4%ZPW*(Z106pI%zDKsNNF11qQ^PSi@jvRQ z-PzV3sebMS<%;P&ZRiv))~+mSkL?Wi5+rQs(LN-{#(HC1Eo`SS+H)-pT)zuYT~^dJMXp?Z(V+zd5I zIGo4AnSAAc#W7*s65uhg`rn+rP&s+dQlfs7qhS08tmj?WZuBY z%kv*+x8N@_c`t(wTPsC4EIqapQ9|t~sY#zV{II%we*sb5UwxE>rtJH@EZk6{HV`hR zn@>s}_`k9TQrtnq-g(@7H1Rwd!X%1@cLM?Xqk)=U)|s7^Dn7472_2(t74~MTefQ$i zNle(f=Iv{$GR{2cXJlyI397}A3HoPYz@_2Tvs)=R;ahZtzL=91CUoro zyud4a5h0CC{!QBExfprVORvT0e-_z?xZ7HYeh8=sd;cf}|2o|nF|upZyFIQ&k%E6t z|5uqU$sq$|97fu!Mz8*ysfgkt@(e?Bt{0*9ljoS zLYM!0ybTk6T<@)~%l{VfKK!8UzudcVJNQ4xN#Mup9$v2fCtT=X|AGVPE)M6;e=hz< zwf?W;-0IMbw!rM=mx0UxNX&qs|4?c6;!W9Jo4tzrljM++vcGUuJ zG@ADt7kG1lTALb^LKvoT0{2tv0dNc4gAI`LvG=_TQSruy7*;v=mPk5j{`sw32(~524yqQf)K+ac2|MM!FHVwz~ABE z+kB4m%|SX`06&qz#m%CJF9ndt;ckX+Cpg-#%<3Mk>@08BfJn~pmzeXvuHm}p<26HF z5JKMrB5FR%1_56CA4<4U#S!45qb^-rp{Oc-th0xc$(w3vJcuItiZ&@$hr z?YlhfVL2N|`?c(}ru~N54_u2+?nY<=f7ss?JoMBC&rk{jFK{VzzuHj?Bn9>e{k7oM z&6@dvb_W~oz5MY0O}Nd0_x)r-K%q2$H~%;$1caOO-Em3h3c8p<0j#J+Jka5^+@2AR zerOTjsR{)}o5uPilLJ6;SAoS*Ri6QQ>EGi<433Ul*DTG<-%k_~J6QL@0CKgm{>ww~ zbm+`hjO3nPg`&gu^)di@@>dqEs_;%>rB3EgZD(MV4|cUC#d?wmptFz%-RhJR{p;+r zn5*h(0K0U62eHSq{glFA%_|q=Ip@@la*u=oVmBj)SM>t0qUZ+psM)`WM7B&rJ^8wEdMNWjJgHav~eMImtW<{Plg(!iTF?_>q*de5Q_u6@n}Xv?JbCMWq;+pnX>WN!<{@!CSbQx8f<2@0H|Y{U8ide!jFW6dswmL-f7C#93NyC(@HSb1c=p${OO#l^uj z8f(FrgJ}zv1_UWj@@>`b_T|G0x-UDyNWzjq^;fj;It9Tg4;BNJ+a|iet%bJQGRf{8 zSWhQ8xiyjpSwYk)aXOol1$BM^jAQr>SXdZf22-o)7dToCCEymb%mE5KpHq+J+4f{c zDuep5PCwZT9H9-|O>|{js#{>wI~%R}=NDUs4;#kj_1$4$?gVP(ZE}jwpG}Uy^b4mm zzB%#mf6%O2n_44Qq|zIKcS!FN-6PN~N1SD% zyoPzs_rSZk#AlO8{>ZjDplF}h_QFX3H!>^$pSh=MPpru4t<$cIa`@EVep^WZb^7sy zCpzWTq|;FVNy_-aV2@( z?*yLlSkI|EoR0w^jo5$OH;_k`YvLt6<*9X$63Q_2Tj1pyIRJS~2NP+e#AnL+tTR5c z!)JlP%ODy(i3~*}9Snvz6iO)Jm_y<8FqY2d;A2Y7qHIt`wubn<`FekX6L=MB7YwGv zc?=R)=7inK!G4@Qpm(O?6yS`b4|ti5tTD#W`2KdnmGq?8BqFQL**n{3|1e9g3`+@0lG-`$q;Rgu^0F?-5SL6@`LW4W;cVdEYJLOQ{ z*qKSrFfYkcPYBZo;6sBb<5{<*hv4Y$s|D2{r3%Z1+` ztED{C0AbwK>=OyDbTlyd1LPl>3=z2yYN;@*Y%wHbJl>aow4I>ANL1GoXe2N@Q!&RGR};w5#$v$6w|8?c9{b;gRH^3-SMhfR9)vC>;w zUK~Qr<6rQ|@|JujH0KZL@4yDkQFrGL2|p=1d0(O?Vdv$CTuoYAA{7119l7zBA#s`3DabQx3zxv%}e7CDJPZ((&ZZPLNtjxlL1*-|g7JgdG zzOmo5jP3UuYKr&4peA2^f`ohiC)J;;XJ55P9?0np_?1^WvHy}OAI8S9^ah*dZi^~{ zo9H~&RZKpc;lj(3FV{I-q2s@aGgVSnt^CsbiORixk_~?zZ9){kzWB566j(vesCysa zj@-hBI5+v0_e^%L-hCsQ5Gn4nA4GG3rrV1aQRQF4h>-!BRYs0?b_8odh|zW-6a1^W z^e6mPf&pe}WfBK2jP15)Bzj6{p*r+<+IuHt-5)0D{1qJ3@ON;v+~jm&f;Kp2(jv4J z{(H$wJefh^;IzjpJhS@xlDBohvg0ur2Iiwovdj|%;JOE=_9+Pas2GRIxRtl&bIJK; z)9W?m&7)WFR3{_km@!XvHbrM{O8tlwN*3EC5S5F3?JN@$&ELl>1)FTfnh0>PLS~~l zr;Z87C*fr1xa#B36q!pj=?eAp;(fh%V96%g{rSPyRWS9?ojtnk5^zWR@Gkmpa_W>^ zL(ey+C*?;d+I%H+_b6aej%epI)j+*3Eav2e+6G+>sq-*FlN!c1BP`K+Bw7di`3v@; zm1ju=G&;Y?s@S}SI@xJjA#~*_eJZp2#2CT`NP(lwlB4>4`zW!K*kmaUjNN(HbZu5c z^JXMYg+rBQjmx$S9K#9n!b+{vw`-SKu17|_nuWnYLb1CR5^jLH=aM@AE%`jqCUhs^ zT3%}Odw+exnW;%XW;y12Sinx&Zldjqc}}mg#sVSff^aiITS=>@Nh~4NJ^DZ;>=ReL ztp5u%Z4Q37kkpoPr|Rj5$ENBj0>|;39dP{uhPTS>kXs;RIHTnHp!I%7OW2@l2!su$QS_-0ZaLx;*o1cmh1G+JjJz(XUl<8sxam>e&?FjNZDR#j zHlQAoSZBT9dn=g#Lb}4lLjRR-wQnD`u#!!&+#m+Gjba;=!t_p>!VaaW{A{w*$_2py z#$=YQk_uYT7KPZ7x1xAGRLyC%se2McFwTiyZ`OOy-wJi=Kv`=`E(SC|E5J_wpi( zt)bnSDcC(^jMF_zrL~P{l%M!xycH<$UQY~85fOhJNU3PZ90sOb}sh+1N zvJWQW@{sHB$Y4ZzJdOsg(JN&kXnrvrOqG_5BS5}1Wcz5{em0vZ5j!S90twZlGRPq# zj)h9^cUj5paco{s;~V9-0y4@(bk4D40;&=hz=JF-qli->823majf(2A`0L~zFGkFe z2UbXLgrN4DXgb%1bKDB(iqvIG^K44?Vz+R=ON4YW?;Rw@4Hl|zCEwOFQG-hdj7k(`F39sAi z9!f~GZ`YX&@tm|lnaux%HbE$eKj17s7_-iEh3{A&ZasihoJ9iRGBlKP@EjN*)1Vt3 zgs~w3wDyN)!R%^W0-qHrBnp!}52}+>g{6)?SiJ~G-O2}Rsma}~u1{V?c!m)xn{zgG z7RI8aK+~k4h^DV2%CIpEZ8KeNT*T%-lmE7-MG1tMLhJ!GKl~wQD^X$}8pr2>A4lC3 zZYYzzsN%DG?A_9y#p7je%Fn5noaXVZ$j?wPXXY<7MdF$br^C_)wna|wZe+~h?0e)SQB(q`qa;Dt!GzthF6!d){-pU4`S=7 zxZH}}EN+VqvVNW&qSbJ!YuwyM>Gnl~C9PJvQl7k?%Gg8tVu>@Rm0hsX5JCoHX2NwN z84C7fg*~zZ>fV|6q&AGLGOc_&*GUsMQq9l(|fh6B77|C z(K6ZWe$Odqvb!+ViOIzOjA=dYjO!V-+S)YbQx=Kqr$rc*qnbnAT>JK#vrDYXlYIT* zK;UiEC*n9Y&w0${-`R@vUP@7)-MNSYKb$EL!t*$1ol0<)=6Xe7V?@N>z4N!7ZFF9Z z?n$-j`*0B}Zr1=gnfn!HMBfa)>HEf~q{?0$QA%z7(9H%$rQRFVwHE<|lCxk;bmH8T zT!C$RVDkNY3QCjw45NRNP)yTWOoB*`wk3$zuq>}g1&Zb<=MMTE7#_D>1 z2CUEs(UMqs_NRPt{zGI@czzXlltTGoYlC#q)~QgxDW?+OqcFrSa@%7 z%4s*>dbmeuT>-%dhq0F|&03ppQBm0h>&c+XGxWpA#U|+0tY7%+Gh1wN<6FDlh8EXp z_K~^E`qBmXmX)?O2#Ce#^oguO-#)0XjKcYzpUvTuz?yJjq)4U_B|7@6Fv=sng(IU3 zXhn#~yrx);Ued6F&J`zlhR;<1mQzhIg?Qf?7c``A%Yd--Yx~^P&}Z$AU{z1j z#(O>IS2u3in#90^yz;PkfB#vX_f0+B1O+bOT6{(_{~{xf2*?)K5JUnidZ@r=6~|!0 ze)az%m|_%g1XC9)|AmP*a#fk~?~<5+j|B1sIne3YH4PvQBX!pOGn!5+rfGrZ{SpF$x-k()q&HSW(DzfLo3&a^nYR2A@X4U z1%<7YG!(By!_)5O%)kHQ-{gqD9Fabu3H8kl^S=rXjTe+oM{*F%|C~-CxdyuxN1jvV z7K>GEgiU3?_CaLd3!-K`+dUB8dyh*M@b%s82){>*#sgnYk$+HqxCIeR4#40)ACL;= zhz?FJx1eZKtlj}62+I}bow*CP zstSf(g5bS|ohlY!$YRQs-9T@u*Y?I5n18ri-)H|vkpSEWb&;7>Y;d7M=$hD%&=+2R zcC1<)h$Sgtq;Zv|E8!WYAt`U@0L{ethL$Q_FGVo9nR+MB=ki)l;gaQJWkJ||R@U%N z@!n;0;&}Ur$1thw`fN_s;|k@F=-XW110k{C224z^%{2P>-&?$2z_gI%*VoN)@7pe9 zAWi+K!yC#b^y8)^4FOVKL8${Jfkc%lgpWKLUxo2ME`- zjWnvdWWajI=MnAYBSSUQjot=kT2@Blc}1HrDiIHd?je8qEU$s6bljbhrLCmowiTvaQH5jFj{x>Sf(Kv&m`PD$-#_2gm?N6YpIRLIenK|0g=~Hl58)BWJxWJ0$;7{Z+RaS~7MAHCceM6{# z>S&iC=l=>oo6&5m05rrA+jf6`X`H?@?y0>b(epc+WI7Z_6W- z47gI(H0R-#24hVYl0>qCUrV)G;qzntXQQMp59!=HnPMBQCCO z@>l^@YLQVyUO_2q^DQZZ%m4FMhJ80McBt6@13+Rd+8Hzw<+tGSDlNM#g|an%r;R%l z_x)X^E&5tgs6Qe`V#HH5Rr6p;pmNr0Gxq@uokUW!LJl~Ob@Wj!>h4SmM zoAr2YoGNO+NRxN};;f@gYG?k7v+kuwJ%=kj%KskNWEuY0Al{b^E0=XR;B$n1vY|AW zPV)K}XZ?<6T(n@`h&QLVfZT?uKFnAfDZ%Qj7hlZ*5*?mOC2N=`$M-%sp_rrlgOHZd zWMqEZmnkp`sv$Melg;>^z}=~#EJu2!?NTpVN=B0Py}&4)Ez;V_Sym~5{}ncDiW3$A z{Is4QUKfmgABD`n-jyQ6vKPs}i!{jyXZwsd%@s%1~Di{hISZ@flAfA*F~7 zEaWc&dXydiWXR8VkP4}=I%??xyU=w`T4!V~a|mrv7=ZnSfSnloN6%HUzsTpk@yvy2 zA8`q>IC!vV9}v!)2LhWlmq$Jc{rFhxaDBbLG1oOZ?Sm5i8Gbx&Y}O4+EJ@|RRQ_=; z;I-cgf#Me}0S6ZfyQPin!DuV}Fp)k4)~gS3DZ$UHG!43{n2}&TdaouT3tkYe^2UjS z8Bg)$)rkFv@m>P_vf8QVEIYC2`Zn{gL<^GSM;8Y>Wfz`iSklc}a%v!a-HdxfJrD7- zj^ampG2os2ZRw=D@AYU)9{SH2qsT@Mq;OtH%zI1cQr%jGY)^FV#b(C%7vw|&Qwa;y z-Xwb70Np)?sT{Z0KV2HOGrjvaAsN1_kI_uX2R)Ot7A9Xs)kuU}r>F?^8i~QPQ5q!L zAy^l9&mfT~Y`U@voCwT>kB)dQ=~H!SYjOESY$PGH{%bVUCILa$iWJ>XP!K5GFs8iL zq8Mjb-%34v(%5A>XPNeu3XuSPKtU0RBV%=JnudNozg_P+tr?k3MR-ob;iyAvddoq!ep|iGV_W#m;&m! zLH=qsvq=xPzCC)+tt)l5*5aa95GdPE|~i z&-CpG>R{R!67{H+((@@v)Ru5Ch?!f7#c(_;tikufW`FHr$P9^>i!6+TJ)B zsgC7RZXc_IyF2V{@F>VsB9l*`q$pkYI^uL$lcj)Fee5R{Rw&$;>d&;J%_lbkQ!c(>YTPX{lRnxdcn(g_EY}B9Q&%`!T)DT`Yy!>}w@2U|1Zu2> z73)=tChBu16ahRV0(&K%_F-zp>9ht6tZQ>^#2oclp)F0Wa9ZaIMQD*?o2fjl$Pb%E z;XuHNVfSI67){iDV-II}_o5n~K4ISv_UKbXW!dpHDSmz=FSsO9P~XIB~c+Q>3Jd2&<@B;Fyt`UFAcIkDD{Uao)^1SvNCf-xR42uJxFn&$MP zTaVlqC)!_nz}l0m^x#lf>%?t7inRyQXpAokW3VWu7r!$9&D> z@bK&l`P++^FMKO9DUZ3Lc-&}XBJ>Djv`>fSh^;cV8KOshSt$r%b(~p!gYvyd0;4Bp z_>8BQ|CN=_3+I0>`*BkiRNzWVcKab~Kt`VnKCTe+UGXI7$Qf^nc@XL{`<}BiQSUKd zR1b2Qg054lfrq}d34Ch)l{M~^j8o&k^GmiTHHDBN1} zfT=W`%Wc(j-uQEfLV)*=!>6cyakPSu6b?M~L|Xg7GR07I>Cf>$J~w@2?p<8|o5)}T z?`#YPY7GiI5r@d_OOpkZpA3%%PX)E@^}GD~A5H}W5};Y+Vlq$0{HFo=7d^rk*QP$s z;*hB&ZRYRO{>6g;6}vZpOY!$#_X|85Tll~YTqlDld8fy8SuLKante4Chrq+Uf2g%{ zI*W*X@5u6>pBu@^cFht-MOYXJ1Vhs=Dv5U^z{?QjheS@xW-Ri5S&;)01!=JAbmvI> zx=*>S@55gHSTJhzX$IrosZgi+q%Tc)5snWn)x5+WM2A8%iiDd#R#6!|s?#c(4#YF5 z=&ovYF#mfg(bqR8Un+4wI;cYJ44FyM42ls)KvDv~zJ*@J0X5XW!#eOXV{^Iwea zf;Ko`SmPevB+Z|~{U=vJ@iDUu$Oc(AbU`kdzrpV-jun6R5g983m$`{>Y*73`Cj=@+KIR3% zZjozOL9F7(dliOh`dx9NAT)t!GvS0$ZP_}6{$ZFb!*L$< zxD=_8F-#%tXD+a5)o%n?0LLrvfx83C@USxuzl;8+3lG3cOFI}&lD}WZGH@kytQlO| zf@K3`INwT&N>A>8Gmo|(BDSvalYSjtt)8TgqQt_5JuDz|4s-gTD_=?Btj02z0kky15 z4OJ*ssDh2+%W6iE5H8^f;$(hds~|yLc|q>q7-S#c}e-OzNUGk6v7%&V0% zA5^W#-)g7|(Jz7^bbTT{e9~bB3YX?DEH$l&o{?0>=b;A*Ot<;At`U`ip3#(Po!ESrv1DxIc|JZx$ud4R_jaNcg zNOy;zG}0j5pt1m!?rtfiySq!eLqL%R>28r!x?5U6K*0N%o_)^V-+jmZ5AIJo)^Z4I z&bj7%$Md`%_j?S-L$3KZ9NRf;V|*lgmF5E0_i0ezH8QVm4;$97K70e^KQjCS%|$J~ z^@kP(KpWfrhU+u@AWn>%3O#f)6QT4Ul;+2XOJs<&j`jC(aqtZpaV130Jb>l~Z)~*a zOI1G)ZU>7d5FNw=g1kysM0?VeK9I)@5NW@Hu$D$|GD1_I(w_H{=?6L}&|!7m0CQn{ z=#FGSHS8wsEo{4_$)bJAX0f&? zWS)HUT>b^}r6!j^!uAxVu+c2QxyC~x28wT&BQRu>8S3nG%+8-%J%ivOESY~U1Do5cU zEmeWe-pmnKi&5)}?-syeP`{&D;Cdn5st>tFIjd7>fxlVF7g*rs;@bZ*fX+Tk)H z3bry>B^g1{-@=+(7RK_)7=`!2ReTD)Z9-e@o%98Ap4`BfDUB zhaYg4loHOt6Ge}%z#{IwLjl7-L}LJ0n83Fy`F=h-NB$cuT>mi~Y59`}!UB_$qjXA4 z6Q{wU1_l5tVnx}!9kn+E(YbOKy^AE_pV`3Pi=H>vz~TP+4qyjmrVZmnQ%d1@UbaBi zQ^wc^de8eRw8O_zI9pbmv?=H9=@#{8uCBx8(&XjzyaoIgqcns^xS}#m@6G4}KguUl zUz1=H5#!$*eu>kqN!=d(AO$gukFWM)%vu+>CCQ@?t0>e3eRt4T2f1AhUw5`k*6jVE z9qL+fSabVB1dlX^7ic*jb6?={83nYJP63Dz0?pF*&EjDQd4RsTnmJSw>0IFYLCPDuVnB$QEaInDiRgW(um5zmpjw1wlZ z)1CaZnItu>5=M=QgMy(wB&}VuOFP1PW;0GrzxwxR&sBv71L@NR`*a?D94Q;8(LaBO z`c}Af6_d&=)ik;JUG4m6){sG7Ax}6LBJr#?%Qa!){y*$r%dkmkuKF?kxy!wfI}GTY zQ+tv%XYNKt7O&?X#yS_j7GVE-O!23>g81~t-#r=B3*oANjm}4FAq8-)tB38sf4DsK2A(I? zKaSL&|8!dm(im$si~M6A{U5RKL-2+jnrO_w1=o&jkg1VvG3(!R`%ygbMm=)2obx~K ze$emRNaUx5cif`g4AN z6vII4l-~xx9}SdDo=q>nRQ1CjPJBUbZXu-RwNuxLnH0j!Icxwi^n^MI*02a~$7-T$*!T=^|2n>&COTQL>mgWWiPXc@% zN*4`-;xsNm3{q!lSveUnp)^&1swEg4h-{m20A2T*yaAdfrJEw4L$U_~%3!AAYxc6X zn|-@3fZoWuVy|dNgbF4@FcURw+$oY@5c;tRq@S1oTVSLC@}<&7HbGmA{;~PwSp%3d zNw#_4bb?9gq9a)*p`Tzr7NptjWF=|$f+V(Qatp!$f3X5c9*-ikw~hg!UE%lwlm`&^ zF_yT1sUEZk{22hsVh98nXb@Rn*EtCtvMBof~-Q{j$nI-&_sq}Vr{&swV<9ZnQ0LG{GhrJUGRoHGY(?t+^}1DO0yL(E)2 zePsx`a5Y1U-_R_UjJ`QR08z+r^a&oZ;cHN$V}n_*1>54PxGGr$?QbwXdenSQnYpr3c8vwYph92D!a}i(foYVj=eTHh-@7slQl}dijguiY_Kz#stTVwRRLlMGd&k!+L6a@N%8nKmB$`u zPuNLZAE3u)T=norJZiK!0hM5%B3d)9ULf{{0`lBC7?WB5OYZ9g6s1(-f;SM${h}iq z#z%Gr^zqNm7d`Age;ed=Kix(ajs!VpxtA|)+kW31ZodBph3+7*TvT50gTOnoP2hHT zBk2hug=93wwyjA>eIJ6xRgsa~&;r|G5rogFimk5t0JG>ruCjz8rF31pmNTAVXtiUh z3sw##J~L6UaILN0bPSAI1-uZ)6=jsL0Z@q)yA7do*Eg3T-ud&}v|v$c;{<(A9-dqKvwBM7JW8m9VbQUFah;~TkaGxXC3od;0ZXaD!6CG0?-aiyMgQw?UC#G6r z0#1yn8J7)1GdXA2DzgBv`10t^V%$Jc(J9T~60ziXp<$V|uF!H~ldLIw_8Z*CcpfdW zUGKE5dKbM{e7gL*+J(x%gHUE^$w1;X0tXoZ_W^P!!H#r5Zv7oRNmN{p=H^p+wr7W- ziP8_^@WjQnR0^bJVwnT+Xz%+IATZryWad+;$N)mvH;XM_-i*w=5o1$I{Z#%-)O2po zXDBr@bAj*&^M_ySVa|xyrd|pokxO6-B%Upvqw+@zTn0^~DFB$laBsR&B9Ly%jM8cH z#kd>~-QLNCE^rGJB5)*Kb`rPZNVlW)QM%|9%iY4~B$@URy+=U8M6Ja2_}f+jDA1x* z))6FmTb%^_0w^j(GQ%3RalhSDA&r#u#I(gPAS`-CI18-~eI#6{bVGA?1f z5XhlxSgIeG?n@f#*blkM(ZL0pfFc(#w0DK9#@v+2A0hJ%+gK+tHz)iH_e1>$T^*f$^ysuI$o9RC+aNRITg~##hx*0A{5U_2 zSZqz4T&2%NCI-c})27~=+}UW*1S8f@TwK`+JW5bW_ue(Zt?P|46fyg?et}O>aL@fLoap%taI>a zbT%l%;;$gcRUc}y=!1*Ogu-YIP|PZ%pG-8;QyVG-2s(oMip4K~rCm|8#|pD(xCOKK zypWvy+!Zy$@8ke5Ds8}U1(1*5#kH+b;A8_6m!UFJT!*f=uzJYlg7zLgcfKT>i=$hU zcdg{=9hLR%JL{uLh}0jG$Y!Pr<{Qyz?wk?zz+7YLh407kyw{*N5>_2Oi9Y*iKU*}s z4nrYJSo4Scf+T`v7xY3LK-cYAo^!UW_!L@<;DrYhjZcLQ~?KfsmETgh-JE3 z#@1H0kDkx`kF2AjV;Q>p)cP6mf%=t0cE=18X>Rj&Z8y&J)XT2`Uq)2{b(X*85oc~@ z3Sg#OGq;)ZAt*#yDy(pSl}?viWwlx!1B;X}G)ywF&?<2uqd>K&3z^so^;&h!^c*({ zWxCF{MzY>fqnml0@9A*w@G8`Z%0N7**9zu)^pdf`66Dr_d_O={^SO50VtK9k#nPyv z)Dfn>T6Tj!yQ>6kK?#u-^*Z)v&a>h$6e>0@l9!7_VjF!zJei|U88QpBw7g=)H2dN> zg$yT=`LFZBl42U}4t-Q@*q~ZR*&8+Ld*J`^gehP-!{r3w(Bf|DL-7gL0Gu8ow%0l+ z4mzekoow#faPRcbrU)~dJ`>RV#K}!iFF&iGLx0LrDP&6Y#f-Oy*PNyicSZIRKUbcU z!M5^+8a0=%3MMbMg^(pS&e>BGf?4me`M$ufiOn;^=x)S@f~UQ?UC*T$_ZQ>b5i>1vXl35+l3x;%F8U_ z;&T@d3riLGg~-8L-?tVHs(ekbY>95WzaEecO{Gq4ke?A(=AB8=1${*!cjmdn)$$sDKgI)bEiuvagmm5%{`0Dv7G#y&N@m=8PePyV#WZ^lu1p&CK|-I!G;|Q%JC(m z901EfbO;{7cDIp4{xVgdOfl5}O5FhX##Y+me8POnrl5C-8UFqjc&HJMPPfwuU9`L4 zyMx4>E>I*-ubu@^U*}kHx`jDoV&=wKUhfGw_1sd~pj%^(KFYr)J( zC-T|%5VydmyeU^yoGZsFjM|1=gS6*Zx!fW3oWM5Oc}f*Uf4934Ih_rGj>onu7*m;l zw+hx%s%nNJheGGK;5Ir^^sf9v&VI;hU0^T8{92vi#j5(SP(uw4Iy|ZoU;PT5C(i8G zqX6ouf(XmxhsElHBSdZ7Qj(vzte?LMIZ}H?9xQf7UQeq@s&OszlcYFLd+LqyVrl2M zminrbx>4MRyGYfxp6Hi)oap^p^vZ!dDc%kaHp3FBfCWFfc&jt<9$0U4RZ7tv=u_Q%|aG$#J(x)Fyv zDLBH(T2@Sy9HAeYgSmfTlsk%_E6ZK3r7EH(pcU=R-G{$S!86~@3bN)lA5p0$5Ht%N zNp-!v|2(2d_lIHgS_oG3-5|%WFd4Xj5m9Gf5*FnfEPKh&zV7xDC5?j*$`60fYtJu7 zTfz{D-L~jD#Qk?XL;Vo^A8xes>;k_3yTkO`58y^FxIfe$?rBKm1ZL)&9SZH6Qb83# zVOZBB9c5^2y&kOnCvk@1sXZYnETNcHX|!JOI_e(QyZ8i0Gj-w9>t0SFd#w~}yo%yLMqyqjdA5{3FO z`2o}Xdn)`#tqiO{dT3jKc@Rh^{PUV-_yG-^SEHhTIZlEYKS5CHR~4T&F}v*|Q7NvGIAb-n7V5MO3OCcP;HD9D8(+xLS#^GO*3&t` zXPOzGOuTew*uX*vECAFKNUz|739aEW`!)RiyLQLVyyTO1K&;ls8;TpG%awG~CE>EZ z-fVp^h{%b#PZL#xREhJ9M^TWs@3aY4MtMEiVz8@QRpK!1NcDx42tW79g6pH(lmoLB z&Epmk<5~Ytej;yrB8w=EN@JPcL?G#Lvc-<5<{Oe_lsL|J+^Hr!;GE&;jM>2DA12ax zhaQ&sii%%(p$>=S4Jr}7X5%r0_+o7s5-;h&HlrWsEEDn>cQdDjeb1vS5(72d?XXDl zyn(EE)`bImXXYb=@D?rau(!hDEguDm9r$lGBQ21BC+p9rp4VFH4P$oe34I~oq^T4C z2A6xD6502=l|O5|8@Los~Snbu!QzJ*vqC?@~jw|OZ*0!)o! z;3f^{jPGb`47j@~dQljY4{v{hOwD^({kXyCrT8yiJPC%rg-+b$MhmAfL73+3X`!r> zSLkI)qmjEt5BYSDtuwp7nW`h(VGCPLdz_eonw7>l`^%!Lboc>)mZgsSDD$&=dJ;Z- zPKD|;chL$GAVi__q;gATGY_#-t%W$XZg{$DnR6t=VrM1K;~#@_zsyiw+kbBKvAgR zs7YNRtMDfB}Y%{dvdiud#{uAV{4QoV7No$LNFKzBBKe|@=9IV-59j}&}UB0SCWS-z+ z!O;=r{M`BW?tZjr;MKGyVtSS6148}qdX+Eyle-3N%(OY0dy<@L8(jxz^y}eJOfpW zE;;R(we?5!-XHu$GyXGA1OK=UqKWx1mHa*lBMQ>Qt>NS{O=G|6Nv^bg!D9G$+N=V1 z&Za6kCw#g$@dFAfd8MAXvq8x)-`PN&(udP^tiQ)?97q~2id}Xa_@*@X~aJX+gexoJhbGt*u#hGs;a4N6UF5H7)=IFRvjjEofYAV_UvDeSbt`oXqxYoj_gj#XjaL4ff1; z0e$gV#kAM+wNzXWe%%Y<{i-2VU;2u{Q|Zcds2N~PRj^x1o`oP#Xm2IWBn`E0yKhJB zE$9+9pNa_W`l6yTd}ukJE%css8}NHTtYhzIo7&G*D59WX9}ohjRkafhl{fT{G3l+s zt@XPLs%>)FH+$Uv8Z>Wvz#i}(!G<%C1p&;X0u)62g9x)qik1|dMuAxrgO;&-`H@6% zcLOq3`@{0~3ei`3|7dUhb73@`hux7sHT1;C;!Oxg&0v(piaxt21Msxp8o2qnb^0C=% z+2H)V^0)F}r5^oW4`m%8d>3Z8(1B?)Ka=wKlPUh|#GWr6e~AtJIwHhN?tF1rqrl+- zZfKffreLt9<%hSOMKl~c4c?chl-CWIO|jM3v^85 zOAscz<5FV~&GpkS2o!2V!Ab7-Mc~aQGS-XL3rp{6v(JMG$@pAnp&nSX8tyxVPQmwG z;PdU|+;|wC?P2-bKo4=1{JdMtuoHPhQ_&I=Qt-}e39Aa*XNZ{I>!oN!LIFd^w^v!5 z#=%(rj6y@-0Pk{%R`_{QL7#7l#j~EAec;E&e0^d|l{G_77s%O(O)02?eLweoSVY&0 zNGiaw`pk`r4fXeImI3^(_8Pbj8II#m*=Aqu?g7$3p*NPmdTbrsb2=@7i$QO-*n7Y- zcaZ3~lL7G*Fd7O&Xe-YO&}tOy)A?-DdL@J*M4GAkN2d9d9h#*;HgfTyotQMcT`ngq zF^lpji~322`4aW@ILe5$=cOO)kI-$B8l}B@CT-96X2@zYR^JIPfz_H;^pQ9fqg*Io z{|^aN%7PV3mf=nk-j1p3WL@R6sMe6WJ4*&9ZZpqL!32HcT|3UA#UVyx!&V>0y~I@! z)gq^}C}-0ROtnegStOgJ8KM6vPVOK-y9?;p(@12P0-b!+f&zM)wW}~SCP@}OVax<< z94$9G0W2M{X-^DXNu0*gP;4rKbQ>DRET^xU&=5lT4TWfpLa5`+Z?bAiEE!3<@H@7W z*wl_Zoe&(}dsLuh{Jg98bB!TP9_Deqs(hTHAdWQLm)uhKw0JnM8a6A$E&{PRnp}s(#6GCK z4II=RrqGnd!!OYczI7&%9KFd&YHy7fckPkn12qTJ&lox5zF_jtb9kQSQ)9kY$f11k4Xmyi z&SWW#3~1#FzxxI>e!24@?CV?DOPiopzeaJ9Vper6%ZI#v{=~>e$R5La7W^2SDKEJ1 zle9keOO$x{U6Rpdm!X(M3Lt@F2z|gwyv`TD!_Sf5>PPN`Q9qEtu;qkbEis7Ix}On5 za9E+D4xQ-RfYZl!$-LX6>)gSDc2_)~w(0h-cx8i%`!tA_=mR0#`1e`x6B6OkiC?<2 z1n~WY@pEbLZS?5-p44A_^oWgdr*~CzkBfFsH@0pJ{<6K;d8`nNWL`HAyGJQ- z`C513GYA0A6&`4(!Czs)&*h;@N;J%ect$@VBb}pa%N(bml#r=&OASy$ud1g zWQ5nDepz5ca=4DPC}TgeUhxr*LYImmNuZtj8Aw$h?;d=g4aa!SOPNYIl%E4lSf z3#?E)(i)g$@2kSC4kC8K?Qut|a?iAZU}aJm>9a++hVW3L8{Dj_ONgiwiXU46k8%vK zWXekmN-5&UGEVz`K{+c_lMS$m>IMu1m)m8Ues`!n%9?$^6kw|P;d%S1fEFAUC7`8B zHvyY{vl~8uTTPd8Cs$WCA(WmnfdUo@1^_oam`4A10PtDt_q9ZzqQ|7Quyt35axl3W zAMO0z!FkvO;#WCwi&|n$6Wlj1-{9^_RP7oFsG-z|ju`W4tT)NFyBDLB5v7+s=Po3@9zIiIQK z=NnEW9(s4)Z$6Ufy)HllgzTpn%0Ig~-)zEp5UF7=35Y zZk7Ob$?>Q^C%uE;`&BOgw6Z?QG8ax~3))mI;jkf&Bqq7 znFy@R(p14mNB5~Kg#|RF=T>bk4R*%^IruvQyF0^rUly0LVHOQ=ey*tD)Lx-Vz@)pz z8Ch+AwE`$Y%I1}BUzQ?rV#7G{zoZC-8l*RAYLs&!aSO$2STUw z%7ivyDbkvc2dVKH`+>|jAv1h(xbr$S3}t6ps64Qb01F6BFyc=12*XJ#L@4qa7PTrr-9hB9VVE#|> zQb-Ob83qTRpezZLCnnXB?`q*MejltUZ+%f5$gDsASkHzoXfdTF z!c)lF`91QfjC_IDo?pr9b8h0?{KRU=sX`pzgU%U2HO4v^qDx%WYip4-mXa6r9it;1 z7SjkDB}xWa=|=oSjk$%U|F^^a8Y4LBSXW4bx`{GL4EGKX?8WDwC?{I@o;BwC^3kxb zuSeVy;zeWSjJ)hd^CJY0U1{A<>OEr#4XT9$9%&rhaw)AnW|R$a3>CeU{P4H4g}{N4 zh%Uye#YR`=Vrr|f=ydm+ikETnUF9^c1OUJAl1|meZ#`E2M%1XalyO65n<$ey2=JjahBY|Kg|6g;e{?b6X|pz*(B*@m#I+OM%*y-wwf`unEs+IZ(ar3n2&aOPSXhWxlL<8In0 zU@_pAV!1z)=2ps_QBR{3Tc7-9yS4@d|ZvpyyI7uVj6Uv4oqQCa+p$tFSFXxWV+b{Ow_OHSA z=Iw>*ngZwZI-goB8qz9-|I^LHXx>2PL7mMvt9r~G{J&etM#mUXg=_-BQ#~6b8 zPFvzeurUALq3b~LW@}_BU=qMjquOJ-(jT7={;%h^N8V&Ze2O6YwKb_yYa@CS3)3!q zuoDu^x+5~CZMr=*ZSKJK$7HDZItFCT6d;(P221a8p$gX0&Qa?{9_v12^82Y)<>hnG ztKey664B*Doib(M^Lyku^8xdsI}-n3p>1zb^iSs2bR!itGled`WAz^Dro9R=Z}TTu zO!rt$OmIlmQveBtMNC2 z6yZ)#F}xQ_k0j$|?ng`8Bq)NX=FPq-+7Rf>q@LBIL&oJ9fcM~wN&02XT8s>^_%8z? z^Vt!tt1)>yu!yi>GZg1R-KScNj2JLAc0x^7a~`1*?yPnl5rx3(f)iOP&LQ7L*EP(A z0I!h@0Y9lkRy(Ls%=g->?BiiwVF%9DYY~2KvtiiY%m~#1(K(RTd~u19Xpok-Y4Bwc z8`d=vJn5&K3N#x|;amZ#fWgdZBRrjsKq)W#x615qTNx#h`k2USwvR@&C!E>AX(SRPJP&s zX@1o6D*Ux^GD4mgkke>tWv>_Ld{BOU&sw`vSW?i;%Cx2%PaatSjn5@M!3T=vNEG`O z_4l`Gm>lZk6cJ2)92A?H!Suq3+6MVbqhEG96=+h#8D)KCx1)Fi&GMrv`q&pcWB)L@ zK?t`>M>;;Ov0pLPy})@u*;Cwif^q_AW5Rw_(f-)Yw> zBa0%JsvHbje4j^`+}nJV(F^OS--x@`Tx9)tabMqJy5ms2?TYZ@Ye^|bSM)A$ zWYvFe_6C!GU`#W)Xy2o!M-~gT8>fwtg_0gpL_C}ufCPY0U7%O=RYeDi;86~|4$OetX>)r;in}ZWm*FI5D)*Hw;^n!Cwd|2FS=|@^>xgp9Ibz zqo}?@9}uT6A~?h-qCvhS)^ol89?+JVb^07s782A^a;`~OafzKyz?W!}W?1@#J`?#a z)7dqMtXCECsymmyBZm_L08!~2ZYS$UKrFTUgEoRS@9Z2DSI>oyLyB&InCqp>ZbEHY zDcC1Bt;AfnI>g4cL5Q!$=#37qlZca%H~g+lHSThWKW2=&dmV1p(GlPe2S|TD(pBdYZ$|Xt114)@2K!IsjuNlDK$?gWR&G0RnmfW@|rv&-K$i)D} zG$*YvM^olU)HxOABR5%VTNM{r^d(bMUX+>IoqfyqpZeIFwe(nD%?SE}edUwPv1Kw` zqWBJ#SU=yEuQSLzhbiXv9N0~vB)Hh7-vXCO-$XyQCGAEg66@u8HO=AmUJ&^mgMGvV zdy~@f$SXhCvEZBbJw!8w#5T*uq176f8p2&T+*$C^VM;D@qq5HjtmQtC09wV@HH>?P z5K@~8?x}oxdDf7 z8AeD^AHD3`j%3(s6gcXCiHeB(U;X)Vv_bQ%RoTuVP$Oc&`~zj)1>un3SY1FI?o1h+ z=>KrI<=Zm?*p5Qq06(`1LbixD0NyS!*Fr@6i*bFylCH4yRi6MRTB$iuSO0 zi=D*9ywk)$!aRxG=c4D!LsP#WUnQAh(k|o8LC7_~=J%Ff<%A*a2E>FQ{(|&Zo&%BM z?U86zk0beA{r3jFlvZTtC$Y=ek40>m7CC<#MFm?dO|k9)^|2~9NoSG8^~Le-PoR%0 zy0^6aMG$E?muA>#8jn!O^`dJSMIz;@=S~6w@dmAy2d`LFok;^}xpU#8p0h9>i-?p) z&J@UYI{CiTLN>6C*`Iwd%9_)*vjQc+Gl|XdL-@qf-(X*HY+4$B38pad9Oa+!HEEKs z0CbkLh#7~T1O6#}4%l0=e-Rq$-WaUn{pzUc7}k*99x@RU#Qbt91~!mEsYrot!9A4v zGNI31Dmh0cx}b-}K$hz&n$wyR3Z@l`A891)o7GEW%dISCTTlcE+rYIr+Ts>Wv^=}S zYen_DrAG$Wfix{+^MViE-M>_t&v<-m_gyeazOeDva@h{ z7>XH-f#He+gD7_p-rV>3D9;x~7kBdsUSt{dWri?NT=M;(m4Ev>D3n?Zc!u<-oWNn8 z(au_9Im3Q-tk{Yn&%G5dGb6B6LVi^37-kMO$0H`OX{h*yqAq>ZMbeWm@*7%*hLf*0 zn5z}s9+Rq=m?cY7aOKo3TUnW1zex%jwi-|Lc=t&F=xl%Ruwttf5n*sM&Bp()O#p=? zCUS6luxA4c#O$7!KJ66F*EN6EHvIWI=cZSsV7S2lt{Ws5Y{mJ~$79S6UX#fx%bSoeEw)o_ zPxRT!9M&2da8%bnwkjbMMT!>@`g6jQJP&qwph)G)0z|Iy2s z(qWgh-nIWW2jCu;VoQ$cUk0CC=s7koUiZ#lOq* zKUKP4Ya~$Ldwp`u_eZd=d#jnTyyD|Ik;%o?7oV}IrbNlxJxd-0Rztc_q|Nn?T z&&=&17!TeuP`vtBQ|-;Z7TTqurQ7L`Fw~&GE;8=hIP`UaW(u_|zP>DiXd_&-Q#mfAE&yZm+ z`4|9h1yycM zNPCm=A|#Cufd=f?7ky%XmX8_+es^C=bb{G1uJ_G%{jw$CEfmdoJ;<~I%r)Iy?U6-FaVPe zX51TzcIfl_*N>kfZg0+K%tJs~&hQH0sBIX2l2?LsC8gER%wxbJzIU`mY>y_@5ox0f=7q4Z)f4$jIXT%G?>V_$Spmq+^02#yk8 zuQQ0D0eUHXZsynQw^kx5_wD*%?ShDOMS%ci?bJvBG@|h z!Dp!esz+Mi=`~=mr&Kk!`W;gEi@f)xPws;(v1(3{ip2rdTue!DOm`w3hHbh+x<{?&l z_Y0?nFIB8ZEO`E%pf#8}ii`0q*q+?V8oIFSG$FJlN}kDJeio$g>06IN8pcWM^#*&$ z@1MVK^$F3F4xb7IJx%=uoroiFwYG8TQCv*70P9BKS>97GW3?3slLDs;lE3$DF!cBL z=gEgEDbDjltL8M2^|20L;o$8IRwC{xHwZ3$?h5?pZ}^)GE6fR&=9&%~k~bn;eZUzC z1XH9Ip?JoqH4qCr?(FLy-1sS%(GrsC?dMF5*{ObVIi0zppHloj>&E<9WnN*BVq?Bo z^sGd!=mu)w-BA!MCn=xsXwN{P=P+j!G?l|o&$@=C=cYP*j(fn~sAOgD2DAy^PKG^J z@f94;=az2y(m~(j4C)3m&_`C&q*~x}kHv0$ImSG6;BQ=u7UB`b-P~8*Q02);h1t&l zL&FP9pqY=%E_|4&QU}_ltplL=SCI9l8GCJ}e>tdL1$|12(-VUfFe8tRyp5RLoURAUw&cv!c`py>eD3J zi(dBQ1cueyrQbJ8a5H3{ZD?tGaN!1k=ha{ur{)%`8H@pc*<5H(cwfzdutRe#Ng_SD z=@?u~F4kUMnN@e2fGK<;gF7{8OgMn$VwwHXAt|?+MV5WvKCo&Jn|zh)8j@p62a;0R zw8S%DYRLD_0*$BeZDTr=959otZCm1r|Jz*b*9<(61yfQNk()GS!&4uOVB8#`*4nxM zeu#xe89VS@WEojy-ER5Z%B|(-h4D@5@t4}=`Hc)I)C{_5G?jGS6=Tw2%c}Ygxl=F} zKfp^u4DMH>?Pj{0c)`5ET;}5*NN7^!=jdj)c~&&{Ls-KLzTytP1Xd#SSY2n@OIK>7 z=}CtcTY-gap_=Je2?%~ClDfI?KgFY7Fev0h|LY92DfE67e*#vAz9QacCj3g)CS-#bYQXajdf?eHk=>vrM~mD zA!=0iEd>=Lx;0Ble+!$V^foXpjB`Qc##)i*+1q0K>5}Q2lxM!@p<=uEXR~vG{QBM$W z=-diMUe=oi_vQWJJDlPm7J{f`-4r7z3Z%2LkBS_M(<<;Qt=k1yta#A^(%g*|7f{(J zqO_}QqU&Gy&l*61j}oE}3U6PsrzQvO)?gEbI67LfTo%cZqeLUv^xhwpJ+5 zTjWPM-qQ_?vj_J%OHbOG?a4+A4o7FCKNqcOvNVd71PV$99Bw(gqOoR!^J0)jbW* zq+dzLsq3&{*f1`umIk?5ZsDVa9V_yp;s24L+u^LR#1aqV0kb*jgEDsT?;qQ|Q#cI$ zZ`(O!7KsLN^OP0=QL83{sR?qZW03Q~dBOz}ag>KK1rQ{oBu? z!Hio^;6#{mmJ$p0*{%B{jz&c6@k5wZyQC>I!%|=*bE$c55w;%iHrGi$&T_esZs1~| zPlH#~;qgG46(+r6#=C<`@}Dx8;87`-eH<|Q3WrL8YZjRY3!2?F7TzAQIA5|Yc3;!P zXcGyT(Mp%0+-MRrJR*~vgbf(UX#aV zF?mwJO2euD+-3{dYl<)BJP3ZkHF)HS_|=a>%tITyF#>VP9**1Q`4Q*p+zg6y$1IsK zj8aL}#5CN-=?Sw)xgV*^S=g>TMV`i5+}%xgD^eWF8KF8$>wFkwEpHNpTH}61{uYUB zTUkj&we}O&9krj(?ceQ5O#S^S@vCY**6^Mwyc~?C=L3Hhgwm(ff1K9}m36<*q#SDfi=-2HCf#6o`cp8e_dV zoRS{Fm_lTCIMJVfMwksKdXSmsPS_#TjjqfltaZ2M+G14Z&dWJxo-k9ut~Pl7;qJls z{gNUCj|=C$0Zn+sSGpqb4CD8a){dZG14C^Ug`gDi^|X0N2=DwD2;p%*zfZY`T+@8i zFZuMsRuV$uSq&Jsu~reRNa*J#$wnBN%s%t5eJz7-7g&eGg<0A17CUBP^BaMkQ$wC+ z(CAfIPIh0|O(hKPY8V6I=lcM0mKYQ@QIt~3ZX{D$$x17+)Ue0E9p#8(2=XZ;kmYpS zN&7wzW6jC}_$g1e>^`fG={GVMxzj{O0@kd0%`4gANs<=_4yhAnqZj$QydNqrZQR+) z>`E$}8Z@Q_bv`T2Oqn$qv1&HZO9r|VPdxtcJD8OH!$QZ~xD|O%(`s5K9h;)ARcm*` zTutJ*3B~(nfunhEXAZ{?;8HecOtx}?#ls&W-HJp=l8zZAqtA;kDxEEE_sP~w4qvM8 zx>MR^e()){ zE9!yAz*es)<)psA@j%~sR`T6L*>q$!uEEX}#V9w3Xg5~QX9YBl3o-4UJ&Zf9(@ZEU zXv#Qb3`G>c;8uT6xpMR+hV>U1bFA0;zLuxbRy(S9Nn!FhLcsK(_2cp2hLig>*{z9U zS(op)7Fs~_J@Z{wy@)9Fq<7sf$nsTTF99PZS+{{dP{`Me<94#AlJaB zW79h-kExZ47*k&&GXx?PJ!ktJxUndDu%7J^K|a5ugR3$igg!&^ghLmblS6#lbT-{` z4B|>I)&J;o6!nB+NhE5VW_OHf{S99B5FZ!2mUSf|5CtGs%z$KB-bZ63C3kEC5wY@V>K?3ARL$uTn@UC)Pol!vGNkw{ z@$J4A-dlOX;C#6lH3rctBcb<5JScSqHm)yXSRZwbWud*2d~_WutEG@VOo8OGT8Uja z73O;9x#|+k`Yh}Uk-FQ|^4p5!G(q`A32j|sp>RrLadd(x`XcTF91UC!999lvBP~j0 z{6LS2d>e_B*Oj4oa1JEjNS6cU2HHu3+u-N^pVBP`r%t0PoTPO-n(zFceCRzX0QU=x zIDaxL+v728WU~20VXmFL8bwn*w}>D13PYvjTi!#=NpcqJh`zzENMf#Qu1Ne<$=yFBy>y}8fzxIOW)eWY*@KlqFPL7KqDOzlM~BVb9pJzK)31AE7=wr zY$E#B@Ytf2Fa~exwQ=Nc8Da71`k|NTW|~A|4inx{93K(Nrf+}+fMW}e5-(6*_dM~s z-yjFKeDbOG19`F((iBaJtS2k7$T=C*oul-h*JGgg8$p-8$vZ!IfAmca&q#|8-5gVK zGpurTX88Ri>Mf@o-8z(s9lzVW8B=GA%%@hT!zmT`lU}8dd{ZbnOSdFOVPH;D;AJAE zQ{3H*_d+Z}zKQE>7SD~^P5f6k zQR28;((CR{E+Wbq|0*sei|zvB;o@(fv9<7c;(IKW-Y9{L?w*w4M+C(NYZa`KMj$Pr zi@r#KRfEt&PFI7tZ(_tNyq=)kAeh=drgB51n#h86;Ee+rkqghva4d&v)F;`v(W~dS zfrUEZ((|m0Wn7w!S25X^^aW8&GQz4s9xV*}P zXYUl7Z{qnW;4-Dw8KthqG|CIHzG3NAK8q~MK21&ft{|DOn3*G7qAnvjq0q9!s&8Pt zpSN(!-=iJ(%{dF|FCy4<#@zGW4(|a44vVrG*$_B{lxDHp+Qt*Sv#8wh4ay7=)nC>6 zO0V=z5}4nN=lFE3fBn<=qWZl=XmyD{R}l=jBecb#s}wT8Bf6nd8O;m31tz>@{)%3H%m12f)?v6f(7)oA^_?e8UmnCQ`mz zJC;Ogc`{)zgI5lO_}->VE(#Pj_hv7=zdk8n{c^zI6{P3B^Ke0` zrP|3~iT=O>5k*KPOFCH8{3j~hLZt+3FVGWHMBmgzH7_Lw3VYF0rb-X zL2Sj3+rt8=O%5GJc*3L%9*1rL*x3-VrcwRp5he?-O6VF3txS&pC6>-s@iLw*-qE?Id;U7+(PE=A88D^ptGEj%oRA z!bc{{+03KW)_-7#zd4Z|it$R;mpDcRauqce=9(52eFnW{PWue(0Op>MN*{hQnuYc6|H`S*>U)6dy@>GxUVvmTr^x%}FS z%;-H|`Bgj*5votsWETEdTcJ6h^Ic@2#HogRXkF{+1G|AXPKR&L)f~`bEw6fX51;>4 zmPEbz2F+MVR5lY=H_3k|O-3`F#OkA-=9K3Uak3hftkj)ZUI;V*si=2EY6o~vb~Sz* ze|3Lw$lH!Fo(DIUtrR~&7W|i|9x*E5^(}Qo{3@LKe4QY>$9U!SjgI+A0i+}Si7m7E zia(&3kTb_qIOot6_DlD0d8ehtKa1>EUHKUzn*pXH&s@8?3J0ZM8F?~=pKU0*T+$!* z^*g7l_D8<%>EC>J{WIAcn-!`eu0K2{yqOqJL8tnTn4=?uAAQ8UI!jV`%V_?h1wKk= zUSYx!ej?!>?I?sjqAFc?b`a(-x|TR@vKr5EsBoQr|K3PCt&-Tm`+rG2N%o9+8X>M@#4 zsL}O&8 zreKi^o-4-CbJL__duHwxKQKMoimVT*xqJnTwsq;{gPV;#T^M19wrMI`l!ep;Ntslu zs_!}ET1sH3ajZs$^lV~IQJk&8j2ED)J$#7iliJq1j|oxG6yI@8XJ-`I>-P$(n{|K0 zoPqv?2@4o``KxsA!0s&t)sQ+(zUA0PU=*Jg3rMeeTLzfusa&%>_9{5EnrB4&zwHkg z4I3T^q~j^Igr+9g8v82MX{z+x{dq<$kgK#;gN|LYEgj*gj|Ee+&3am z+9yv!bXq;=Dc5|vGN-n>ugn-tOAOBp%$0d`D>}c0L^j1k(4|AhDghIwNO&0F zl;c|_=ihSH!;*KMSl&aZ%>W_5D~EnrXiN(w;}7ZtPEu8yN5OQ7r^r4_59upP|Ldj~ z+NtbD0+0Z88xhNOISR#PT*7F@c&4H-Jv6BoFXV0kGnnZ_kp_-RZxaWcHjAE z_$Sll+9fw33v$Qjt`G~V;(WFT5=oPZ^0AQiIaqan9pQbvd{1&}4{N&MN1ld4XY{N1 zz}zWP@;tWNo@guRLQze^!`;kgg&%<$t>a-`f$ z@59-2i9wwzC(Aw&xBA8UXh@E;g5d)sB{$G4Woa{?s!Z3!vpDcG7s%b)@?;0f<{Cb- zNd(_Zr%5k@H$DlrXwGaPb>Erc{F$6%Ea&Sg`co2{lbBIj!VZY?Y4Pd33=rKJy2<(@ zHC%{hjD?Z@ks9dpUW(Y9SXSlVc1F~WzLo)mzmS!fq-SWcGvK^@d`j~6ds&HqmU0RI zosFzT21Yc=DhfD>TT5l-?J3qx!%i(t%O%qoxh>`^*R zGkjsP-kw|zi9y89g4mjYz2`lENK#7{us6`>=h)X169wt`B=^7R`1(`O!V3BSeEk2) z0_>QsV@Ct%CZtcEoJ6*1FThb0#f)*{m0vVa1v zcrwXf6-bB9%9KTrVM;vWZ9&`+o)gH>zE~UUDWjPj|T^2rk=8v!6mj{yp zloDRoQ&OkT&Mq1(+svIb*CfCxuT)heumRMhT!rPwg8?}qG!_!`Xz zVb>4j$hC(B4~NACTUmiXko6w|f#iyOCs4oq-%7vnQncM9-tw$5YR!+2AN^`0n;dkcb1s)BT(k&dh)x32=Ac=H7Fl(zXay$I5?+4vzR|uL} z@JCa;3~p5E1G8zeDqUT(0f{H9EZ=v#B_2WCAzVCkOUa5@Ab{+RVnYHW33Zn^?NJkw zcn!gH74_+Hws;Rq5Msjpw_(1@;tNm}3nW8y#%i|{{D&lw;f$|8+xMzIZ9*i8>zsZ} z_C{3Z5RV~x!i!}kCFv< z%iBQn#>}zR3Zx*!AIOd3T2VXH31`FP!x!kZ0<)v(M(&%=kUli#l8W}`Js3TOQ7=_I zhyHPvem4{*zK;AeEil!l$@Og{`pW&iKO-`@{HY}r?}}~UPNrp6a0Jv@JyNKJDst~y z4%d@gK=m$jEV2OO$zYsOZcMX)m;beqcRFG#P)n%6Kh!g<62ZqsDBhx6E|Yj_QmUdi z>k8aEp=^G|5geARe@ajVZ_K(xF$eIAd7ery^$uaz;3+@F+v|FBifT5{%c*M$gE@Th z_$3j_CL^%!$WHKiPQ~iy1bibOGDFtdkCj#LexAEv54s5`ly{bchp>t^DJ&WI(50$pu>zr_V@Sh|U}#qIhx^f)DKNjUp|7w_Q3h=Ft@y&Muv zwxv3oT((3SkM-A4pSSYYQ6K+xkq_Gu?4v0fdK*cG|Jvz4hPIt%urXmA1=i>B61Pn^z@}xU(2M+EV-O76V9bZZZU6fTX}o_Y*FvN?q7#%eucCsB)yF}uO~!cXJ>+0-`kY)Z?L6Ykkm zr_gnkBDuuUXSe0gL6n+^A{+Ie+ZD*lpEX;jV%S?w zdH>#DB1Wl81~C=qF=%PGT~-uPdqdTxPc+#zub;ZxhFd!HdK71j6~y}`7Cq4xTF@-W zGuFu*OLe^HGt!6ezT z-`+wK)!U3Te{X%V!-o!38`()Zgaxtia zJ@`D)cX1M9mu6PBkl$fQ%6Ek@lkBy6m5S|5WFHzzbVx5zKg}Ob&p(^Twupe2OWyc9 z8Ol#~0u9|HSPMdD9@|xGyoQ#JfNf}hjqE)uQ|%rc&O;nN?c3|NfA1+@OTv+hk_9yX zU#|2Ix^mRwPaeEa<0#^Pd@VrI7=-**M9c{GhkLOl-3*+!d{Mr$W$>C-9JI^rnYz`9qL3H=tP7e&gTutr(X}WglGPAFmceO`HHBz7$hH_SYK=S6L@%Qg0GrrX8 z>m8-kF3keJxW5Y%A2y+-GxPXfz7}^*F0=l@Xtn!B^43HAP!Fg36{>OzLbLy$Yeqq@ z&f1x4yu#w<#z_vUoX7+njNl{JBO9*f4f>CMy}n=qxC}<~{qq|=V;Pd5Z+jUOmybdf z3Mdc9M3w@OVH!#t`G6NgYGh z3Y+0Ah*>zRWxvUdy$#g*N++jA}fu_>2%9>}EM5E=lh+eV`O zw64PTHx-o&*dwxX+VnYrB=|Om?Icx=FVvPG!z1~gpv;dj5(;dx#-%tPvi{AuC{(kt z<|-~R3WHo=NYI?eZg3kS+4A^>!03@LL3jODVAid66Yu0FsC@s{whOZCWn8bm*+z3q z+RyTT#r1rU>IvckvS%=BN1qZ$ECh>X8<2+|J2>dVVdKg61(7Q9#yE05rY}Y5O&>t< zyuu(xV0d@krv?x}*WJr#E@E>D;TGo59;8^t*eM&b9!@V3vsgjYpBYqay;SxL?1RhK zu8Cd|P(q5dr5yZzD0(>E=;!ArX}m39EYJ-Cb9Fna!fQk)Q^a$hybn~VE!01YOO_Dw zKmohT7fTfL>3&zyd2Ts*e^E~$SfaI*m3f%c1SYaqGyza)=6`7Et~Ulzl+E9qAK2_hePk$l;oGu&4NneJT{ z{1^CC=7IeMmKR?RWNr9m)b(8_wS%c#D}n?mXbH`~s!b9HT7wp+@lAac4GBCOZTx2E z)jyV}15gPg_bJ%l&ZtDyxUP2e^G8tn@*swxl3Qi?b_*UGIR7lzp1puq2~y}kKr2d5 zK+Sa!+0GICI@1}f8L)&{`jPI)1>W4*Qu7)K%1dvpNP zVw~zZ$_PXZM&Id4!Il+OGtBXoHtvFNg;SYM;_GE+=v(g&vQIvOV{+k%0i>naJ9UR2jB&?lqeLN&K_*`Q@edkq3K6l6Y67vSDE zQ}w~652sfk)cw*VTwP64#gkjl5&`R>ZC?VPB|5d|&v#xNw_VJ9RJ(ZJdASRXyD5E% z;cZd1gt1ru@J(z2I{ou9f)r35)lNc?A$52`O3sH%z?xK;suaSE@+gFtU(jc0r`vOg zr;o@S7m-rgP7Pm3SU=$xFNb<~z!B0{GFv(n-p+tgdb-yUIt5<7KKg1+~+606(CoxbV`NBLC1H~?CVpGf(}eWvNZcBq5MM{I~Id|Dbk^~ z%2nb(vam$foEGp^p}9!r%QEMdZgQd>f3L(@1Ve|lkHI}k2Cg9-D{JIkg!B?H0_fVk zr}bDecv@U7JG>{3t?xR_Jzr);br9_@MX9hOLs8N}YDNiFHU}Bq4^BCi(tPITL~w#E zT~V6BO)FFK#k9B-B)ct}I*~A)e#qF!;nR>O@JI#W$&sDYeTjuiKJ%YoM#1N{Fh!M6 zVbNa4;^lFv3?xc5L~#zG{Z`OEGlcJnpkSz{OxZn;Ms^@ehH?&0p)PtftC5X@0@SzG zDwH=OvIaTXK5JOre??$Id(J$b_@Ka!ZtD?Y@wP<-@&dU!X+N4*@7bYC@z4+#@-^Ha z?NvFu91bn#!(d_3xG^*~%;Ml(4Zo2L#@u2I9yaR^+oVmDW?7Rq8Ki~ejAV7lT#Qb- z*?H#r5khz0`H66PA8WeFBTD<`l&8XaE+=^J{g|9px zJ(kD3Epzl$5_Ly0QYJLV7K4rz7ip3-(0kDTHdBgHcL>VO*L9V53J?q-Whi);4R>5U z$m_y2ke8V9Q7$>JJg}VB`@XtL{&Md?&Cde(Kv@?$CwEj2ac2~Z=NR}2xS-E-i!=+1 z!`@oM=+o)+%rApZvA+tgA#&L?;D2#e2#&LQ;~gUXEvyn*aOW|)3e|;d$ybHxh-+TF z7f)ChBExZ;F>D}umU857VG*P>WLPOy^@?H>xHh50IyPO@bi@2#lPR4ft%s?ocW9sI z_GWUM$?!&MrPL%>>M?VN0+1p~jKZG%qfqbM#yK0xUN^mP%##q*)rru?VZ%8iuq4~W zK}tUa*QWFty#-LDniDx$T z5$M_2L24e$6vv^4QG&I($wOIYtH|L?u_;J=5WHCdEBxed3bL^r0!*mMEm8pdtRgiY zF5C|oAY}!lLqgvLoDPNzkZVVi1$l_oyzov3@q)32ct_8JW`c1gK3yO%EAx;g;4?E( zCu{du7UOGO=X(fde=F}Xj7bv-?I%H+0ItX!CUvIPfTqdt^M&uy8=+)Nv`*aKrYG;u zLLQpEV;eaLdRq%B(ronu5Sbp>JRN(LhSvs407@>f>;swyhR~RF;9t8u^vs_he0W$a zOa~Fj%>`gXJ$gR^jYS&C-_)j%Da)_2wA*_YeYf~L*FK*`+bSf^`OP3w1Je!VEj!gktq-4#Raoq) z9Od&e1Xoyu$P@kS$%4Jgc69mZ6cyJxYC{q5@=Ghn?R?&6r7*%`kt8EaZlw`qAl>WRnUwSyj z3B8AuNrEkN7>CA(#kJ?Y1j)x54iWHrtTG2VGa)A`hxBW-%PoDiP&!1DOk!RENP;%L zi=~$y+=Q_ndv7E!-ddZlXYGA3@$=kcqG(h`Sx_EQJ*ve}N)O51`O@I?*u{M&U%p%K z^88(#9TV&^6U^d~aB7-O`Y~_ys}Y6=O+~B5XxN^uyq~_v2@Pk;vkY4h5+pt$3FV4dn@}s{@fMEc1f2_meI=ggGgox$g~L@EyXS`8 zLYuQ!S}B_7?DplR^g+d+72D#C-6uZ&E}QR9eHU|7>%{9c_`HD8pCrB^z3_q2E8JJI zKjH%|ub&*-9{$iq^JoHGvqzr6%+B##-O0_5DeL)HOOnIaHm6T`nhI4HCK6|WU;W+j zqaTTguD9%b_w|kMrt&zxNU_F0#G|PAK5fmLJR+C!{#S?>rG?Bq@mfT)JGj*JIV@j5 z`8*A!Nzuz%@qzcZ|B4Q0S%cYi?GewX`?ZQTp?X9*_iMM4WfGcFOllVedhPaiqNthc zD?d(-X3_OhQDD2XAT=_S|&x+l-#8CjyUMC z+erXl>Q3S*Y7edhJ^Qcy-GY+cWYi;@1$(pB-n3?3%Eu|3z|P;)Wb`2BUtfpXI4O+) zN67(CC=w!wIpI#(It<}f;#*CBXbwa(V(_VELuTU4QPdFCEU5fQ6&UyiVVz=!x0~c$ z^04q%Llix%C{Nm!fl5(aCY{5DWAR>UWS^mJy-}6LNX0k*#FC^IWlg2-9oPhXe}_Wp z>9*Wym4fQELxKMzo+LW>BgbfUs`vxU-by~|odg(m+3qjP@QkiUrKFYOvx7&&6z>Xt z*4=3f`-UG6Ayo$?&%9fqxe-rsccZdU$f+i8&QP9S{U@bu z^9G*!DXEUr$G}7_fgBV5$j%=aG4b|w zfV|yK|FFc$p|o_{pnTuN_l9)wFA6baV`DsrVbr`rZzES1N^sskk>knwC_EY|zAOyQ z;=&7m4{vCg#dT7D>i&VeWv@~ota-To*Z0&j{wnp1aSdVHMA^wpUS}Em3s7G1l25~o$FyY%uDrac!#wZ|TUEJ~Tw?Lu8GdTKM+7)CQ)gMM~KOIGi~(&2s| zQ(8KB?w>@)ncmDg0*A^hh|pj+;KOjws+mX}0@M+Q%$zi4fga^0nw@LUQn?*9vY|!w zi7~ZV#c)!nB5L#}%f%ZUJJTBd(H}3fGXzV9A1rHU6Pa#0SZCm0Yd(wy{*g8llv0>VDDi z5!U+#Yqau|m^PZB$w=6hNaMT_-ful7BE>O)iBHjHw^C(% z1-;;YPe^~V;R<{8n8153H~S&X2(c8aAwggc=3KV=u}pY5G42XpnP!`7uaJiGR1F^8 z=v?M|^`dx+^o?0usHeo-&+trY%8I}>N8ls~tfp<96hsTCa;h1TxU$hZXW63)K25xY zSS?9d4UvfpcCLIF_pD3DYahLR>bT#$&FP~0Yo%Qi7|W^7I-D7tVPEou z&AY}cx3$v(bVy7zKN0VV!-!RJ;#uD{<@R2G0R)NFfSR#fg_ko`x?$Okb>d!aeL|h?!tyKi z&-MQqF7PAbHp(x~?QvS{wg{}kOa%mVbG2sAOSbQ}W?9WrVv~iObEcSQx7|CgjGr~A z6FaP9DAR^)xM8fR%+tMkWnP&op4h9jI7DZM#}{53-tJJKm4xg6r`|`35Dr9;Sf_Ms zt;#s)OAtwY`iF<`IGx}2{k`7T=@6W%&gX?T^mvES_T>0l8xd>gj>N5F0V#NC<`jQK z3C-PmNUY(pS=#a&pJSm0q!KHTK#1!>oRs57Z*2-6A)y{LGpfMQBJb0q1>ggK3AP_% zV}}KN{mlUtwtGF}n9+p=%^-60NxrZ-UNvP6Q8@=$Akv2pL!o#=<&7)%>XyYoefjIr z=P>&EW-#9`n?-SX#SHb6XnfRzPWPn)R0S4Gud1^}h##g*Jz@*}_~3gWWq7@m&w&7_ zrXZ%pCp(B^Dr22Ie1k21P6!PG#4#kyZ7Nz6)e`6gWeJ~7_yI%Tzymj# zqEL?6w)cgbxbg=MBr@&hKBdh@t3uzEu^sSeBWAXCK3M~T7AXx2! z&{}Xk!+Gx9>7u_s$1%KnylNIaOO7s`=bZaCn^3I&ks%iy zi7V}kSXg9Yv^_kOVFF3@&keqoF9~=aJy(gpRQ!?sm9Djc;rCzp;q8osChkh+1>NF5 z@`IZmkkCBy6INooXbLlVD|2zPGPB>9UZQ^lGFud-hgr$j82oL|l`h_0LO%Ri80e0r z0x200>_Mp8g-s3*-AXCqN_Lq{QLW~UiLq$@ot3EywIqlUyH*-o!Sq7Ycv<|hUem4W zL%l9=^P{1#>A@`TS3s&CZGk*4oDY;6?GK4oM!A?%kq}CO6kpW%Oz`2)@d@v+#LE|K znMiatwb*FzZEhU@I)7wG&WC@?had8=6_QAyuoLc$uLod-KT6l?K)+uSWaGjcKkQ^a zUD$=_?d+D<4stBisG;@=^WSa%80>Gw<4 zMAy-Ur`G=)psUNw!g5N36@`c5kjTE1s58uupC&WFa%f?gJ zCyS~_tKeKDzAJydEm-!q44O--2|mGbLjoUJK8uLx+V0w2VcSFBf+vreBfgy zB$r3j4l+f&Cbs#ByyPBra*W6mG0^)kQzn?%o@&ecF6CRFZ;H%yje}hlDOkKNXGEN} z=H zcYTXU^L5kgpA{(BqF=y=t11AN!r;G z#o`Z({#G;)-Qf=B@MbMC95`%lh~Pzs=8fanh{k?Lh1m&?(PX14h=xp&+H(|O1ciC( zx*&`{UgNs+?q1QU9Rl`%{1=ftJe?sq7-nw}9jn5K$I&5W{IhK5(j^f(Iw3nod{g)R zj%CFj0aX3q!=BSO*Etu_ti6o^i7tJH*3RNTp+d+MzA`h0koPJZDlqEnI*I zoBWSPF$P(ABaCNte=c{E$v%SBvir^J(VX{^wX=r~d^QhA4Q%MJ$A5D5iaK*6!*(#W z>T)5L-^uBpc}Q*BrOq%Ns!P)1Cm1+c7j*M~{ci5U1uIYW$wHNn1~k=>=LAK(3RecD zgvvL4>(4$jM9#!KNp~`GsEq|a^X^bDSdjCUjM1;vbDmZ18i==}m@Bbh$p@P^%Qe(F zLxY!O18BQkzEbaI6&ZRB#VqhwaRjEA^)Gu*#HzlEn-w+S31uxW0A=yDJJsBGYGzK& zYwi4xTX$dl!6vwrk!ZTm?Ggd|dQlQK#`UzpD~{DC1l3BI7f=OeU{Lv? z`2vUWw_4sBi6D1vU#xvwXl=<#T>WH-Mr*H-CW)y3}vMOjD0#l!ZJ@`C}Llw@=Q zT~QP?XVKWfG>@fVH>BQ^r+{vP8;Tl*@ptBc#*g&PEa^Q&vKcgf zKP}S4fn9Oyb0!wW1Zc932kO6iVK&F^oMtaJ6aP=t8dQ(f@R>*~Ena*k(F3_l`h)eV ze2-x0AgMF3Yc8Z<+3<@c_lGmXaTe58ObnQ7uLKJU*DTUNshh3mYzU(&>>YZ+qC90{ z3!keRnG#fz{=W6mQ>}RNfw8&df`)|+ zaubD7L+64Ht+Ldy9zp>0jzsCG=5AcqFLRG6*@r@~hCKS>yeqrrvRLy6(nU;dT~G<} zjrhH`s0$voGW)*NOpZ{`AW=ngNP%!(@G&Vp(r!!^)t$}2VqeuwRf}FMuVPiub(wF-d;u{4k#LIxpfjhTE$B z0}uxWFXO3jSF%(`C8d1~JxK31RxMyucxUI{cr90d=ikVvfppL1L|UK77!JQ?iH1dm zxKV3H@CqJBpHjx7k=znThQ=r}_F)c2`E6y4>6qbY2!4%5`_NltV zd9nQ}V%Tw%a#S|;TW&$;aU(}}4;BV}-F>1z$MVWvk^L&m9XS#_c$0#${Dbius)}x^tZr=BKWmZl0 z?$I3aT>`l;mv6~m(curSVG+s~hu{uxLw(IQ-uV4>^|sQyRIty{Q&E6EbN%snNWBvC z^dr`#1-4Vh4|#-mRyR?z=*P;x(l5D?KJMN%GxY74%4YV{J!$iV7`Y$pIse7@W#W;& zMG`Y0t9S2tl!1#OFvz|KqambRePC{4U0Z797=;iQdt_Qjd z`|smug5Wsr-qG3IzmY+I{tJBYo=$7j^_~9|ZU8*R0UU?Ut?f7cS+e{CHv~}%Yj|{F zz$Epgt38zxVppJ%wT^XBpTL(chk;Tch@V1R{FI|xs?ngNL8 zZqaj*9&cbp58?7z#xw)ag8ij+E;J@2IG`k1*u_c@bbwyTp~1t(a4JR^;Fzghea(0t z<+BLbY|G4&7m=qU``(LJ@B87Fc%QSD#mW6OIBSE%#OE-HoAr!jB>2GW*;E7IoGA=a zdj10bHB10tenQ6k{P6+rc6-$Mo|e`kfT?tYL0cX!L;4OGV;(8ogo zy_w$KTD__ZjWPt#_(Q-2xw*K?XcY$j)@~pw5CU}WYJL30WQ8Ab2I%~B0yBSj-2wwU zz&YCYEh84=djRCQ(zcFk#GdQL8kavgC*X;6_N@a4qsQ5!XZSyWPmT(Bi!=;BfU`_o zdKNhi=d&Q+P$74y2+ZUSiunQ-2o}7YG~8pO@DyB}>l^6pLHGe+lQ8Cl&tKV5iqQ zKwO044^Dc~fjg+C+eYvP%FRoR_pcle#URjiZC~Uq3__+5xG5C9#IgON;IwSQm#b#4 zBtnre)zR-b%?x-BFhNGiu#i3#v=E&^i6A&kpQt@4yXHJ@! zP;ImL6HqI~;<7n+nJhCDv>Kb>08lt^hMGn5)@M2muT>?LpVbaD*5)s0?&SwIA5`OH z7Tai^6tSJ~^p3O^J3@AT`@$P@VGpN`a_tw;%G->swAXm?7CziNQ1<)-TLAhTHh_PO z{Gm|T1i*16Kn*hIT~wZyO`bP>Vyf8#A|n~8i$GqIXaWlLP7V^T3~rE!6=U+I`ga== z{9y~3jX$Vq+5qnBx(Z(vHi&LPr>2~RG-VZ_!G^lGZ5zXp2A38T)H%{`+neGj1yy-E zcR`yl1l|jX185A^>CR!d+~GW4OM&PxV8(HM@(NViPXT9$hOS3$yahs!7U66dT%%__%l{czq-=$wl!$A>8nUcp-+X?z8k>@R6X9|tMIy_5Vl zPShf=KTRQ`IV!6J!~Qy09`ko6W`VN}rbkY5 zcEG8-^@oDuo9ELx7BNH1Upe8v#ThK^l;x9#w`&PF4;spf!CvNa^URzJbaE~uBTm-! zk=7oqz*%(M++9i>^7(yZ7mA&YXhEGXAiH$yTYt(d8jPC$$g9x-E za+Envcy3Jq+(xV>f#8YO@rMVRvv?&9q51f;@xx!bai&%dM38oMQ1M{)HQAN#0@ zpCn8vz=GJWH5KSCwPDcLqtXT@n|Gso6kn5h7}OWL`Ywloy+}(9o=$`*>MLdl3%T=#6xwm&;V1o8bD??~X_llL_ApbkAfSs*-D-`tY#^>mB5_ zA5q`lfzFvycipGl2a;S*BJhc-p2`ss;spxSn#w8GJwyr0qtAYrfEoC}KrWex7HS&bjVa9~Zw|FS?%2cvtuiZ;t;G z8<~kuuQ~It*w^O+oZHm8Bndi;FDSl!ux6B(TTC~ZcNdw~3j^)ooq_YaUn7$%kwdwq z0=yv-PGSPj@xNxtaz1oA0uCvj8rJ3=kCW3VBVq@74FAi7p{*J%b({-+cxB{4j8?RRy4`=HuFW_ z5gzFX?y?A({4Vgh=iUF1hU~Ic(6-FWdw7|+Jt{oLFza&6z4>cOu=+5LG`lnQGNmAj zG!7kq7#V*!^fDVd;7G@f(+l;7z%0FJWb}TSurOS-#4?MKxkX4jcw7vcNXRK*4RAnE z{UGwCel#AJoUOFUoW~y&aAlUs+fQG1xIx%v4jTNg8e}2S%9Ik7S9$wBzeK~;ZNg1I z_XJ)B;)Tg#X>`YD{LWhr_dgFmp5F%}XZK8j>y|LEpm2fcrqG3$uitRp9dTV9cwu19 z<2`wPGgRniqg(2R)s+?O)v0-oV08{4UcJ}U1Lt_{Q?h!eM`z#}w}yP7d=nw<0%^#M zfyQLG#$Zfl(eOxN({We(C!$LZ=yZ@l_*$OLdwF29StmhD*dwROLaNhq3J=6-%uOlH zM=62=Yo75eSl*$R4?c6enR5K7dAZ5&2BAwN>M(gYsS$ zIv87*oNc>d4?B58#@&1{ygUXUW8NiQ65+B@LO;LXLWnz%(Fp(oEOYm=wrHLHwbRJp z0gZT)vebu5sxoi%>?P*RP&!j73m)e$t=;!BmtSshFbrRJe|WCnIAGbHQzYAu-_akU z?hwy>%?Tt334mh>ADVS)~W+#+=wQI8TxFFp--9E*0u+m6vn{jgE;vzg4S zLRG5>WF*hw$kwx7I1k5?Qrmzmo*Yc&3c5~{B8=$V`c;sVP9WapAo9=4D9?rIwjU+x zpXuc*&J}sb;y$mDAVhD|$;>*WDJ@F7+#vL1)0{C&7%27jU0^f0OeV{>yK2h3YLdQs zQg1uWbq(Xfk~}1od^hu{q^jt=@@tw8+pT@av^Q7lO5I4#2d7XK^6N0cR=PuV3mV}= zfOr$=2;CmRLrX#&?l*U3UYwwYcBc7^c2vIS;clC|fO}U79beMOj9<1$-l}124QuGd3tOOLLY5_yeU*OS@CBB@ zoAig=;}QrVMS-D5DmJwDkTvX{Q?n4fe5-ZO$1aQPI&|$}N)|^%=XvbnIk*Kc$rpgA zDL~I9MRY5LFUgqtEtp5*AP`q;qPMV-hfNHRIVt7Tldyn@0*j6_yDWwTLUwPDNPP)A zh)i2#_j-QuW?uGbXktLQ6tan4!IrfI27k-;0Vla;l+&ZFYs2ES%Ua%Ey^&<3so$Q38(5D>s|Gw-9#Ci5yO-YIyQqv6%ip19 zY>hSCKgZb3DMMPTtoe3V z&?ld~`yxlMnwXPJ`j=_3nzzS8iFd|Wv_}eDSdQ%<<j{DvgO1fKIU?o{4+raHi$q#~OgRXRFfNbiM z;9n`zNFMT5?JN)P)20IKB`)JH8pKfuX%LT-;1UxbnuE<2br9Qp6wLhLoA({vNWvGs zn+(k_Hl>aDOZ>9gcjAYa?V)DtmPKllf(fO_zwx5Xnn(L_+CRI#w3LmbS);pquPeXZ z?$RcMEI>iJQB%LTkLy*^8h532mZP0^(ceL{;APomOD6R#G-j^OAC{4>&iO4-@lrwJ z=-rjwg!ElJzI?ZUwd7Aa+FD!^Na6s|o|eXGIc* zKYk^i3XPCdWS>(rM-%4T;;u{eJ@>#gvj5Dy?>s)P(2Ks}Vu@&jy%5sCyz7M9e)yU4 z%sJ_&Nt{~KStvoK&roa#8-+NBP8;vt!@J>!ZDmE>LaMkGX0NKcg>WC@ryOTa79J@BI{|G`RPZbcTgI0sq4-xCKLaJkjh%?o07d1vYp*>CcKM> z$F^8(IuB;iWGEe$A_*LErRz)#_8BW{7roc8_sQPn+(SpxCB(R`>Ff#kHi({q%en~5 zg#ilSR4FO6sj{;Gi8$$k=)22_#-j=cC69+)ysQC~ez`~YUcP*=^ia47q&{6_s}-T? z;Q%KOOH_GUI2Ufo{eyaHLTh+b8PTVxL%Q6T^jYxJWqm4jwf2jIzDl{>XUD12JLWU| z-P70OH1Q*Pmi_(2l46Beb-sH&^b)5;3Ihb6oLtrSbE3C`AN=^)x2bY{+pW!Z)$vV- z3R$`|^=DR~+j&=-UH}Q{ZVNYT6yN?DBaxCMZ*CQTs#%N3%Ok#zfc=EEH5*+beIrn< zqU+5o49L$)^+L4=mhwgtFtaN7Yg}i38^bzOP~kjVRP4D-j9T&Ul!i*QLUDP$ZnwB1EPE>rO1Eft#+tLTn2^DSlMvaNXEf=}+-;KM4Y-MeRh=+Oe7N!Iy$#KD^qCW%wJq(oJB`Q1?-(yMNMv3}nxL`phfrRr8r^nd5H! z%V@^%^(#LZWpW=ihaSnX5YU z)%|c<;o4NaV`MuA73_N#^YLmghKEH2kKLzu&0{lqhG%&DcaE$$Po{TC%? z^=iGih(1|%Yx*)Al`$r+@wf{SUEIMRHh73ieMJUqZ7Pns)B>V4eKiFg)cx3M6dY5e zf0-`dyYq`gX`Z<)hvudt7Lkjw6Xyt3RN z)S4AEF0PU~AnTz_HojJz=xfwrpigpdNFwfi(UE#M_k*48q-RObBie|xncL^C%eMt* zFjZw7zqwEri#0v;;yQb@?6QhD=6dNwP%MEQX>fVoML$k?e!I12Nt z(fm@uzW+eWBvYmv3` z`TO?R$bnPRDCak9K4&HEyM)H1PJx;q?)4o%caSF2#tDh%dB_w|BNrzw@$i;Zr3l$; z)PKom+;EqTz18DYB>TpRK5m84V68Y4Yg2gj{D_WadSYS99$iGr>ViqEWUln8IdV`< zLSRw-;k*p3lGLZ9mBr7wL-oiyl=bVz^N@S@76`~baVwN8arG8__BNaqv&goa%f~dJCFHPdPLaUh=G!G9)wOR^R-gIOKGa3+^ z+!9T%9=upi{O0d3Q=yiaZ!cgCTO`t&U!R@K?JE-7rd*JZ*1SHJ`er!!i)DmnVg2Ym zPC2HdMXSb=1@Q|`Prq=kBm6dMQgc^x$){p3XfCaugq8Le!k-q)?=rgNZVEn!K0Glb zRJi@w-e#&0x;nLcyK$V~Ou=>X6&Zu*e2UwBuDXAnamK-Md@lK+0yt~E-7DXPBkf)_JYetEN_s{7R>7J=kzGy_w7@ya&!jI1$ z49=Kwh}N77sbI$`c5~`De`^bUNj|N^>9{NLW?XA={28eO^&Df9p0jMEcHqrecwyTf zuH21)mp5&t&k-+^U{!|L4~}q`P{b$h?34Ml%%j-V0sqI`TL#71w)vY#Ab1Gw5`wz~ zcajjC;BJis2oAyBf(Lg`LvV-28+W(h4grGGxa`fm^UOQ{soC9+yWgm4x~r>iyRPH> ziJ@KdYbU)nh{L_E53dD!#327*>f<4qHX25@5?|5TNbOCN7eV0D)`uvDw3WPf!1BIY zdrb*cL6)yrYA%OZ9*@-9d=T?_I91jp4g?0FTB)w6WJGX&&2NaP(rn8O5 z4G!>E@NZZ4uqxRN@yA3YMdro$`p;`2{!nNx=xt%8$`Ju9BfQ3Y@n7%xKmT!U36xU; z?fdNGPW<`r=&C>TA?hff zfg&zjuS=LNZ_QZ7X=}&7KNW(_F}~crUkyhn!_V>L5aYR2-dgvy+@G!6p{j%E>kmij z@A0Y|DP=9t0pokyWM|7b(lNd9v!=OL+xCID)q3E?Qdmpf%nm;xS=9POjL*d=Yw@cW z5V)R?lMCV=30#{*-7SCUN8Ok8fg;6bIkv_vhJgkMIR@mKA$o4VThO(Gt)~ig7MYt* zLlhg^LaGp<>Al=8Df_Dz6w$gL$)u8!^B^q!BLk%W?WdZG_Af`u>ikQm+@LQIVvkuV z-qbjH7#qFmgh$*XHcB;?u1WcH-M4!sEwcYPHIw6XX>MR+Uzua?-_6yrmnT@THen4a9VR^DEDZSZxZP#SMZ*bGtdfB8FfNu;I z3?M!Zq?=@94GK;-QSHsGzb#+W`!@=X)-4C|jv^SaREH+_bid};EHn^YcY>AI%3V~_ zd2e%H{hc9ig`_&8dAMZDPWcGgdbpI=I%s&No3%BpE?n`NfbH59TCYyH6V31HpHG$N z1GGzwNZsZZ+^+Wn%333v5s%q)Ea0Zl3B2)>9==S$~yR_?J{m* zKUt#ts^WH>wa~>=PrfCDKfuAzreSu*Cf@cTP{>;s8@Ki$s`!K^`{}mgsd%kLLV5Y2 zQN0eScBgrf13V>mqO~@O-;m9;YNja$u#oIi*f9x|oy{je)eJ&B8WjQ^DH!}HWE)p1 z*z^Of|w_6VW!2Do~Bz2 z_KT~}?KS-o4pG+abm7q+zQPQcMx;fZ*lEllI}X*p;BkRqE}9Yo*9QibM}^#|ZIwz4hEy2O9b*4!UH zH)LzH=-RcuJH?{BmGZrtT0K*q15g~_)CT#gaD>Iuf==7P+(M+k|Q*XJZy?Rf|$bFuOr%1=15fEc;$b;fI{EIX!sZ6sjQ)G zL>`g_F-#%vs*o@(!KtHp^^{qI8BdT2G~GzIIv;kRYkKbTB8-&@NSbzi;7?NecS00f z4BNJ(KUp+efs9en_&^%k-_2r(*6`qjNd<{~4$IKnsE!8Dr+jZH?Gnjke+hE=f*M3QISd^lU`H%cZ6QgGsb!uY6j&0vcK^d}|K6rf&nB z*rXvah!hZTpD8g&9Mtb|AM;#^=ed5oYWF>{J)_E2Nnl=?o^shd!)mBv;nRbjxiX$C z(BEf2?q#3RX}biiw%;|k5B$pNDc?Ey}R&=yz%wy)~Xx-8uB^{eH z+q~J8g{Gk7{p08Lt0GxGw~cEi|DSbM8rFN=eN|j@SZ}CpWw5jxr#~E>R_8POn?Fvs zYZK`5ykOAta+bNwaXE&LcyILrhT8NHq`?{p7+R6rF#KgFyJ>KhHEb)5_wyjUXg-GO zFnnqNWy#mM?KN@fIw@^slRBQ!HuMNG|b+^~gq1+Dqwx&tc1}}H9^G)MgovsO< zPJXhXB?*49{hwzDe+3c$PbluidbUXA22qe6vl6uhIPVjSKB1VcObJk|cW>^%t(BNJ z+k2Wh6Fyl;0ap7i<*!~y0_i-4C^TK$a(Dn84Zc*Pz`XRR<1IX7BV7_?gg0mOvC68$ zNUkFj0Zq6>N4vZ>(8U!)75JMN-3p!M`=ei*5hKg>UHj8rw;^Ud%=<`tb{mavKv^u% z+kcg%5cFrp2DKsq@1}E){b7=Qo09BCBOW&#F(ZW~mB$AdUiY^tznW`R)nPDRP@=Xv zSei{l@+^g>%QHnFys&zcAhwa+!Z?AHV0Tjrk1HIm0gr^)nuKudsawB_$L_5uE^%(N zFZ;Dt!E)*wKS2f9e=tU};f1Q(1YjRaxmYhxGK0FmvXk3J1&)~Ug385On8i3Tie`!Jor;>o^^F?PbDu#(oQ>dqJ5*}clr;7Mcz^FX3o{rNC8Lt5k5;Y`45s(Zu@VYhM(*!ACx`w=0>CPOw>8c;mHDVQkRQ z7#p%d{7>2X>)O~k3O@opJUoq-`-^vm=kJ;;gAN0eZ4H*CNm^@fnwL-^pKFm^D5RdZ z`1r_@sh@-onhS-u8SfrmcmBmhLASKspXq(R%vQXC`Ut!PY}vV^9(JEoptRa4^g!H| zQW9KN=mUT9J3xepmF)?*Z{=eecs*VDK3%oUw!E2lj-u$p#_hTf`dGjgdRuRISHH~X zJ;fIlzg=*oydOs=cGWmGa%)8xMK)-(F2&#z`Ug|2*pQ*^F2TudQ98w4dmo5e3LDL$ z7=JH6>B`ADy0lgTR;QFQ9%BY%0x-F|R~3&;(;IgFHJ+np6}?Zdl6feM%>%)j@(6A=ap zgUVVpTrt3nQfyJ*eLGP=CYEREl}h7JBNZG5yg};&yUM3{v72~dm3S^EmZ1#o#yCIbbuk zR%Ckw9>5-i1i#gCI=QkRI5pW*ubz1{={E(mwVnAfpKm+(v$IRzF)Y@Au9wwdr8~AI zRGeMonNidqm6a*G=G&DC7R_C0X@lBYI7sx+}Jv z3I-LKuQi_W&ajr*ynugik!;nObIuqDpHWF5mwy3@F%Hil$ky~rv>$rCdqGslF^^4A zt~39XSihmH2AX+$gLxQaJwMuwPz(988XQcj#pFhL_qz|rb-lP6-P%DBM}Gg`oG0`d z6DxYS9XVw;=l@jk@*nUnt^V7IZ%)VzPdxX6t#pofCBLuOQ)IpLmU=AVD} zCt|>YUo{;1<;DLmDx!ESb)zdi<%sIq@>dLNmktiNX|+Wf?oHDmr+Pc^5@~4Nm748( zcc&5#?IeMj%goH#h}DtjkcVbE6Gv=%nztVi9DbGvLqblJkneR5nrUs*hwtm(j>Ob< zE?AVpnd-PTR5f63Qj!LK3%Mgiv~E)SJx!p|8M)Ym@Rvrh#Xh&{-r#WR<#wo{57cJ< z-$-O}*S>^ukTzm5%e-IJVd{n=kThBY>o^@U)*!FJy;iW`Wg zpeN#>*&yHj3kbhD8EgxAyMfE|LIalW=_pa!0!zKOo+{?~lOzR zL?f9i;M!T}p{uC%tLnbbesb#9@}(LHz6^8;@8Lt98z>e^8f#q8d$Z%0$c?=Afb*>f z#A$j+)(ofSc3fne`@2A{Ck}Q1D2T3)fXWn^k|no9lVXhIo1l&4q`9J#cdO433V*a4 zNP%u>)2*va%NqeDBd;%6l>QI~`u~L29xDr0q{DFIyY;`?uLQF{?3*qrYH>GG$-@sZ zdXP3)GaX%%S~E7}2|N>r;I8~LrV^Hx&Zjg_ie6ayojxq}Ky|Mcv!VmtfJAC03hYy? zFXBPAJNMX|zfX6}`IHf~QY+Is&MEp$??`RA(Z=CWd*igeP1;?W{mgbbXtqGpHTkmj zs`XgmrkZz|!0ulg7gA&jehhi0lUI7Dx-!x|a6NJ9h{3VG)>^+cGX2N4`ve}BIDv@F zN$0MrKI6cr9ymfGG|!Bd>P>?l^)TIWWK!f&G~`anY+0cO@p8GN$I3#B!2eq6coXqM zJWnrX>`Eq35EG8<-+dC(YAfcwgcq$i{5br%`ocQOY4yD310lg8=A#&L)=3ckPqDKr z@71eqh2r~!P1C$(bc2(CCrZnUUPqEbtf;oEsB96Be7MeaWI`-tSs)~XeF^Q=^@1UP z*>9_+e{IHU{QXA|d}A-1u3sGUkt@C%aP&B+=EAqQ`-Y83C!k8-TU!NzWqkPk=aA*{ zc6R5#zAP)zZ@lZNNnBl#f1VKkxwm`X`+0qpthu zk5>lE3toy-ca2Bf7CQ&bg{1R#cn$02R&Cr@HfeLoUk-T?A48?toE_d$D;4XV1d|a7*WRZH zXKcBsEy>RSM`_(?Ekk>4lj*!==7Rs1Jw`re5U^-%Z*RZe;lKH6S->g2h7-Pvj^ZoH zI-2SWEv^iqScWc~yZb_!yav&@jEI!KX7F~1q7iv9hC5u|K5~Kce~M{3Y?i`!uvxY% z%J8Z=?}1sEHP$`bQ}`WPZwLM3VH~~i{-4i*PUs1Cgufd(XS(xjb!|3TT2;B8A5%vL zKu_83l$i?B;LpfLeEy?`Ut=$`WmF%CsiZ0B!y>X=cZ^AcS_| z)&q_JM$oIRPR^B}{LQ0C?@QndjrJ^~x}P_=dJ7>Ze`<0YmoaDM5EYD`q4jqQGAxgZq>&*oa?*1&t^;mGxP!z7irS?ah|7>ky_ z^W|(R*j_0R~k~g^Hq?F913GeP3SSEkTORhiD@?e|EG#g;8QMIUJ z2dh$KkgRRQ7095^sbtOu!4^a{#rVjD0)0@)iincg$ivUVHCx_9p^KDksAQ85*50iB zb&IEPrBG(k$q^S|9YFo0@nPx01JB;+0_YvPl&4G<1H&37b+sL)s!)%~SY~Y4MwYG` z+q63u_0k%-_B|`cw76m%ucWqhl?XI^Z*7i7Ll|{jnBQ$z8Wnk~?lEWXsx0uXOgFc9 z?wtmB8tX8WaG>)n5b35F0>yPlE2q(}Tl??RZAY3(yA-gNoE4*UT#(!9#y9Z?Q$+0) z|H%TV@#&MJL+R~BXwcCGzo99m8n^JW_E%qe4@7QMhz1GqaWzlqQ#_v+)#TZa7ln&k zLWeaZ(FQt8cQ%P>RYTdN^VvXY)ZtXPwaL1+Z*=I&+E-&E4S#9-pm1$i7sX}e+pJ5y zzYtXWE1+3VpiBEJgc8q4W7bLDLVJSpBa^s&d4=yVh$4RPH65Kkx_P1bc2dOjhzcz- zv(e|yl$6j!LQpaD&^eBg=_w1~3XWSVez`vSI;QDzQ?Ecu~N*@bRL%rBX zW)J4${&INT4pi5f>u8Lw-jA%xw^Ul8JOM>l3C53AA5%t{RonafO56Ob(a__-qHeF1 zgwRmXSMQ0tb?vvCkHyZp#o}lAhTKafSyN!EK=_npZhXbHeI2qEj<&!Wo_?K%luPU! zpgtbJ`}k+zxRWt=uR-kE`|&(GduU_{Z5)RmRiu+yC-y1fZdfI|ykil^$HRLN=<>dx zPlEssX;+7?1JNOhY@fd%O1X?p{QH7cD;QYQ_2RnRwUv2jn%=?spiPfm#G|BNgSP-r z-$e@jO8_nD5e&XWyS2vTb6&~Q&~5u$DJ|5~kQQ>p!FT?3t&?$b&x%^7x^2L?taNix zz}LFx$E6fj#`Uzp{+O3mz2Df~hYa$DIyu}I8X!4<99QQ2dI!D}FuZW!w)Sz1EZufZ z{$2(zOEO1__R=r^SzWYxKpE_~Cs_e*Qm0TIqo8D8SMZU$n2o1ag;};gbWq+)ObS}N zMQKNVqBV@P+>eaHw&Mj_t*33Aif#h)1ME%y)t(`sS7HkC3nSlc}c?Eu2L0krmQN zM|_(4F6ty$)2VWVuF215@%@K#gpc8~NJv=P(7K3qgd@mEUCuHcPwzgbRun@r3BO0b z6osQv&nuhO+nI_{PyL`eqc`2;MO3!>V$Sr4S-U&4-|`^GHO zL{AxEUc9d&4xApG12?Lja#6OuMZgetyXaW>ts~RFsgyi{VUT7WgFV5fEfBe$A_qMn zTRrAouU~!{(x1LK5gkcVWYVDku)PSZNJ-%!>dZ<2mklO|x)eW7bIaprJ@=bDZ>|tP zkfgg=t)ep@XQ^cg4E)g%NqXx03N^@2!i7&zfbDqQ?LLNJ(im-~d$IL_$#i~$ zRgFhvSwG$Veu0SF)C&rmRp%*%J@nhzhPHQm=nosL@d6jhuH-BO*aYJ4D?q!G!2D05 zn!I^UM20HbnEs-;&$Kn&oD9t8xjHDvW&V z!TbT(3}-5LRvJI4>OgoCRBm}dZxhZP8U^}#|M|($hLi5IXdfK?KIB`T_MUd3?hsdS z+TFH}Ru{8dU-!W8FB@t`ogl|j%C%s&=_H#apIxEVMmtY%3H^-~0yQPu`z1^H6SPPt zJg@jaw93&AjZxCk~Ks_=azevP;BNW=ri3r1r)Lvig!z|e87Pnu{b z&RE5wJ1B5l{Tcg@FCrEZGjAVQ+PzA#Ymdm|;^PVXx=qIF^_5CC$q&X@y2u0zI6FKJ z#CJmrIN2NU&QgrX$d>mK{(ao7qJ{6%$7ci%^O5zG z^VVX5^gR0~SiIgnYE>Zw=DTi8wsJR8Inn8GZh5YCx3alO+mgFU>v1sf!+@MvUEWIG zzOa`?So8zBHLp_zxzfO#}dBuF#CZH z63AJt03tgPFJAiIN-V=(ZBsmPNZQzc<2Y$IKl|+YnlOY{jy*?w8R!$fiH{rf2uU4L z9wN^}`TSO1b9QksKg;|qC5Y>bcHM4_{+=-7yZu=mX$T>lhGjrfr;PxCQBI?WX;7-~ z86)&Znai;2@G{eJ8*CrBqUY}hB4T_L4;1<}DSG`N=A?{N4P2M;1kf;%q5A5aR}7AR z+revz8qKWml!>_t%4lniw+Sb<$>KveIu6NMfGBAcO}@G}XA~*1z-O*To$6pwX0Pfj z)#LKEc5-;VtaCR@&RggDdi3~yR750&BL$^89CkhJ$5FuN9X@I``O84nW$t*g!FyJ* z`scyKBESKCkK3+$*y-A%>BnyyA`#Cz$5hecco7iOJqSx^tNXcnyK=>a!1kf-A2WD45d;_PLmOI`iNG_#m?a{ixN35I$7R~JT612m1VPoS zC5X@E&qO+Z5BJKh>Gw)TKV6qE?)e+q55!l=t6Ng9JiK)FbbZ7tXg%lp`P>sW_;+YP z+RPPEF-Sdzc#kAb5Qb{3p;uVjbBbyOrmow3SKX^$BJtZ?#!@2;SBag7ZqOk9j;~1& zX(sqr>ss=>HG&oVO4({3?6^V=t^b0CnE)Gtb5%$>wzj_cSLQXJ{!hjjPyN!OagM;9 zU0vp)>x7}z)dT8w&P~EmRXm`%U8XejEBBF(7(^q}vz$f9i5wt~C4n8!xQ;z!A~pOb zG({b&>MdW;WR^o034iw*|BEh+4t^4Hhj2WNJXKnr5h#t5LP__!DidF!PB<$(TjybEy%Bn$n1o+~-9@^3-HV}G z|LuY*;d^NxFl7-6>f{I#>c=KX?Y3qxPZidq2+?9Cl2pd3QcE=ph8wQTd%3-5XTzZL zdj01G1G{_33Atp>PV;KcT;T@Gy23Ti#VrqBCj3e#0JYgm`K7eHL-<*Z|C};D`q!iw zS)~6=G-LrEm(;3V5%Gki2xC-{@C3cd+S>{hm55m>#&$$(ug8ubD%I7xCAGKvEX*r(yTHi2_+;7+9U3v8=y})aN`mN;3Z*+$FVty49euCXU`Bx(}f(h9> zl(e+CTfS8H^-X5KFj2{}`Ak6(GXs^HkDWU~dI=gYP}acVyX9Zv#d<%X==dX&U6da? z_dMT}VZkc5uTP`}_6JBj`qihBjoJsY|G1OesQf*|J{8aT&7aev;Q><^I|o~kwfy7X z0X{CR)`)L%8icJR&5_1~C?$5iWo@Y2Jieq;wE}b;h$|g2XPCa{7}81`AqZ*hQk=`@ z8Z+*D#3dD}(QFQQ-)GKSDL%UtotB*yog!d${!z|8Z|r6^)hRWyNK2WZkqq)(8!atl%WHl5r94H7N%3U%+{HBWlZ-{Jl9!$|wOxAuRvX zC#A}67QR(R7b>szD|b!eEEIg~Qk!LrPbf`rszHVxT#4|bRJvxG8I6S<(kpbd`#WP$ z$uHQVHs1T>frJjGRp;>~vSM5%aIzctehsw!e*Li;oOK77DHvTMc*2M?= zh`uthRMxQ4R1snK*jXl3k4g{jJ3$voXy>vztDY{jKGA?>05{EPs=&6A#`4d()-;Od%IQqKt)FqOVRaV4ISLcoKMA- zz5Y;(r&mh_loJ^C_q3dRc3vC4(}t9-(q4l0R3d7YA+Fi{mdXkvN|)8T#}55 z@pJ?3)^QknFzuO|-ZwV%psuLW0L2Ty34`0+`OaP8b;)W~=Q6pSoG1~HvKdElOz@-q zPx@aDbB?e032}O6aZ_|I;K+JdET6u(9%x?Y`-5%RSluaemS8RDb>J)!5#D%>N1tq$ z{~E1<#KHBi1%-LG%^-PsBH71vZ`>9}l;lxwimCw@%3!i^{4C6H#1u$`$jl3 z2+N@GCle&VIV+0QP&5N_NPoKYF$MuU;0p8CN1McU!N$>zmElqhV~p-Zze-==KQSnA z&#gqZy>NwOl@6vM7~+Phqnf{Aol!_f4dmq3)Hvx`m>9hb{;ana->EP_QAkLKMLml( zn0Wkf!^4j&Xtu5w-vBX_$%-%>+}69Eyo#UPR9Wdvx~)zA#?~@dn22S-Fzs|--Cg*> zE@5gD4t?r3!rSb+i{5Zs7w}8GKn;IF$|&~JYZ{K^t1$k1XUFqRBdmYX> zl9UDvU>$c=(l#3Hf-;#6wS>sX6hG5)zw4`EM<%yfc8u>4_QuQ=v6oSO3F2R|_@E!Wr*OwdpuG|adPg5)AQS=lz0g8|cscO9)Ve+7forpsrmaUj zm0n~%!>sGt;r{E~+?NPg&@DzDLP3PDCn(98OT$)Didv*9?hUz9y<-CQ9??^uP)N_yBJ6Fs z=PuM&L1A1T;Z?cTo6YFWQ(Y>aU#6adm-EouFGrPQ@ROI|_MMA|09z%zb;9}7L3hH- z(($q!OhgMfL_#oHI|G@MAhKhs3{Rf=Z*r$8H!dCtn6#WC2e{zsx29DCV~D%i}QEX1DwEXE#_#-|%{=6vbv z-7s%!kB#WSC2gRw@$FM`+XZhBrF`oUDcWXGVauT-*|#*`^HrCdSkg#cdt)6k;$*Ht zT308+4|SH&XFfns_ZHaMVS4-Mc>>bN)Edm6YHV!#lpSh~3<_qN z9Oh$;@eyHLE9S{aTkc z`)Ovvr!G)Naa^eI_v22!+vB?mg|X))ow2m5oCJ{RGThl_7Ms)X;L^$+Z%YzoW)i0!_(VMyPQaQGGu)~OG?sxm4jh&Dp zfo>WS1~w#U;|8H~RUF%*QOrnPODe{e;q4bb{z!Pl5cr-QGu*%VejRhH@#RG^G^{ak z7a6@#=ZRC|m1^JXRr-6e`xdsLc8IRaR)Wz^ajUkz-T4k|&Wb(@Eexx4pDQ9tmK0br zHk|NsOo24VnB`W$`#x4U5`}atn-$}Gzj;1p6XSAV-J@Ns+anMKh?II9e47aYi(+4S z)1o3H=!=(E{*Fq4sp8VhSU};>GKEdhC%?m5wy(RU#>gXi!?N&;LkahaU(%8A3b8g@ zvvsreS%1*XFC}6}8iih<0WSF@V&HIB6ko9cl+4m5>%|ostLqG2)nq^XZGj1n`j1^P z-oVyh`SQOSwErT39vNe+VSyKZr}r%qUX}D>6QLsWzWoBsei)z5v)1+OzJEFaWt_La zGVCh6>t7uD5aC~r5c56Rh;7Np7YL4FqaCR%xW5=5jKnkS(Qiv<0lEy0)Ajm8`|AQd!&G{V8eRFW= z&t*xP48tf?35psGV*)_=g{ z$>~F|!+Yxg4JRY@{u?K=c>y?iz|3V`|JXyb4bVZnTJ;9ysyM=*4S_8BBJ zMj=f?r=7*r_fnL%%J`W{;x+EuUFlxK`{UV2FxnyO8XZ zz-ZFB4s!&=`~gVulVVFA)D-<+VY11;VX_O)uWfT%B-#r_$(T~%FCQLNkGSQ$n~?3~ zu0LO@WLN)L$A1W;D{na)Y?;bA`+K_g9KYHvVBqk+*r#MB*xi}FN| z?5RjoV(CR@I5!DBjn3L_r^!pQZL1p*wgt=l;WpJt$ci#Q9NDv#{>I>GYkM?wmdnr> z7&TdMMy&$tzaTz$)(KsukjMkBM{>d`+OnFExs;yoYG*wuyhrTq6ZZaX9G^dwY<)o& z5yjVRkCW<+*R^dlGpw(qy$R_}v@DIE-HI+{qXI>?|LJ%0pX;7e#BLzjC9;&K);!Ic z`HtWWh4>eqymtQ`z+;NY$F&*g2I8P2HjF`AvMX=eFXkcpRg)jt*jyS+QL$FhlpGM7 z=Q8FmMPPqu0`U{Fbz=R}fErchfuTV&2u6<1u$Rul&neSvznyV!7`(m^!lgd?gye93 z!)B{qo_z!S{{H=oF%dY3@o2(N(w!(1z4+tq-#h?}jQ$Ts4odj%7`YUS#Sza=qd>)k zd2}h>EMx|S23Oc?j05e1N{Se_Dk4}SRovV%e|${)LorKIJY+=#UpkOXqEAV<{A6X> zp^uz6D!@h{l53Fghc4W@)l7~iA3}#|Pj&?O86rEOLC}fuIGBz5G?#xCnIGO8YY(B+ zLCiQ4UBVqCP)!lZ+hvn%2?7xKEsQ4{lHzr9-tOBCWiBAOBJWp!Q_f>>4B~E4uD`(| z`R(DyhT>z(Qp$;(G5ZefA%!Q0w$`|^%2W$YQ_nSXmUMehcMx4~KN$x?pDTS~2{%_> zCG@@ma3~(E7t9qd^b5Wp=w!Ax7U#ykxSlRXG>Cmk(E<8Xry&MxGGttGQ)O}so9fv< z0w-yG2@uXrAb&lh;CWJjD!kAJh*%xZh%|rGd*>Rqm~n+tKp6dKi8~P(#sEQz5IqGR zNQ39j3XZmZ>$QM7SFvdlKeCybpw8^ueTHXrT7B8rW4s!VnhsRlbJuEnUppl2(|KWe{Kt99_I#cW z&lI)g|3ATG4VhE#jyNxFtOHG4O~(n-W*1F~t6pZFG6R;bKWS%Q9KBuScOnbvMtjw& z^AbL|&^tvTZo%_KSDi|e57h;i=6FTJD^5EczOR|AQEXrq$Fn+0wl>DBSR==!2jz#U z`lH4SRQdQ3HYw}YJKSXgPW!gQ#PY1I64W3s2)08ZX9qLK=;srKykv2K-fi9$5>fp@ zC-i21juUm&ksJ<{0&LH>(o+UNkE^uNR7!3yt%G4UTb=4VI=iO<5<)w<6& zNC`MY)!>YLc2Xq&N4_<`DibF?j|9R4o{Z>RX}cFsI4iw3QNDn=7(Nxpvh$NW^2tYd zZsnR%)>B3balQl-qaVGLcy7W|2TroJs5Xb{9PZW+9G(~ECz=GS$`7ju^Cl{NtS|e~ zWAYRpRwfg9RW~Fi-YbQyfeyitPn&VSbYP6_Dz>HoI3A*7ucMAhXw+ac+ip9v3yYZ$ zi&#l{ddrGbJz{-t%T@Y>{%Z4N#V#a@p!Y^u@?er&mJ}@EDQ~NUCL(IkNh)ZN*N}y= zHP)-kf5fEjmRDCcxJ=zjX{c zb{keatVxDf&XOAbMulxnPs-tc`y8=UDH|Qp5btRl;b^cVsKS_zfF|O_G7Qe-mIsJ*THlgkf-} z=gva4f*5cLm=A2WKPz#&&x#M`n9XE~eFLBWoc^V2O}=gbrv*mUL2KC7^7G%>k9}?a zI8X>DRX@wQ%IR9tayMH-+Coqh@d`tpcM=Y;KT!5KlfFw|mP%Z6Ne@w%_)DEB{gBJVq2UD`#p$%x+o@_A7^)5#F z53lGj=mJVj0B09f2guQ=_U$f8-r$(lt>NEuBiGW8l zZL*;@M>8hcNV8ZKby>tl&3M`e33pq}Y_A)g2(^H(4gsFT!hj5FQu>ovj zRk()z@w1OTHMiWr^Ku}R;^Mk?vfnu>}rVcleabEvsMC6o@1Qcwy?6k8n=h{p5u?@jCM=z)s`iW=Mm9^qawz@GcRSCMy zQ~L1w9LXI~4H~dT&@Wx5d#{m9yod&&;vHkChr`3e}1um9!j#7-N!|*pmeqhZtp0 z>#=hAV9?#Q1Q>BEYORN0`$#d62Rc)I7d=P2ilNq%2{8(%4(h`W5bFx`55Z=U8Ws*! zwm%nn;S>@qW{`wmPN!W#bxmzvD5bR+qD;i~%3X#~qn8>lGm>&BKDF(NJ*k+>hhaoY z>n8L>0?70r?tCR0-wP+)Jt$ExL0)2j;OT;HZM#FBt{Re3Mt{`VYW!W>cZYoTxLXRP z6dudu2f0aJO`mQl0)}x1sfmoxW=XaW&MT-C%OYlO!qzeN$N85xG>=8if}!e;D8})} zZTS5{K`M`Gq8TAzKHpI2KsAsj;I>J+nqoXS8%+^}6AOb}E?9>u6NT8nB<_3@?}pjK z5+6F$g#73a|9-isV?Y420PNT{pm{#RD|Os0{+R1)t+20+7IMv5l{3=d(~%e z-qLq=Cf(!Aj&50BygYeFq8yrnx9d4ke6m4%jf!p^La1C}f z!S^V6Up}=#cSdd)=1ba6%K^u)w<}rD_-_{)Mv0 zD17Cc3Y*z&x!nJgBQH^UE$lS38m16&3}wHNm+z(d_bO-k9`5dvcc9bbtaGj&b*A)w6G+akYxq3_4o$u5#Q2xsx5tQuGz zPOZ_{#pAe~TNqLEpk&vJ!lF9>n=lYfMt{st!Az{>!B6v^X^DG@-ti5!@RHW0aS&=j z%nZ5&>g1rRpw0M^26aUxukSIP==y%;n6Bq^$;NA2xJO2lLF((EiqC6c+V2aZ`R`>7 z<2x%E3aZ!BJ@S!`zZ}i#+AYuZ@cFLKQZEL@PlB$4DFzLR-vOHUsdsKA9*QEK-c~;( zR%dLzzpu(icHm^AvG+7gb_qSgwKk=@Jx|u2+P=o~-TXq_HVRv*_N%z(*5;wM_2)8s z6A-d3EikoPhF};T!8L$$dN0%bR;rV!sp7oE09KsgrFI8G+-oB_OE#<<*qSqvOH#YP z)W(Iowgy66AmwH&BBCprYborvStbV841zW_=&lK+G(8{;I>$tU3eHKq?!jIP%8ekQ zUMq?U;r|^Wd&~BQkZL1k{%Pzkr2GCsYO4-a^&uMn=*Ug?tRn^OB;mrX!SDXVs%a=^ zpm9k~!WL6}25%9wS#4QN%O1i8$0I&%qS{_)j-SSikOm3X3-(hq zeI!ctX2wOcj2~gBQUhWwb^&}y>ywRRG`x*R`9GwpB-?i19WrES{7mywCzsFD$?;4f zi(G$Pn{vonJVt+oScB&EF4&%O%#9htX*gJ&OwwI(piA70_Sdzvds^eA`2{Vc3udZ5 zi+7#&sZ^E&*RsfVL7pfwwXr&YeKz`AJ$vK^LN=bQ>?MCIhXYF0H|27#^0aR?#x&6Up4H&170pR*(D)ikDg`y#!P@ zrC>e{=MrX-9HLsZmg_HGVSP$WQd@R8ifF;FQY5=WhX85X)F3sw~wbL;j zBS@~Mty9j;7_IbEtXSWnD)KwrsLcQeP?1vq1f!0IL5ya9L(wS?dD?J(bG)C!Cd8d+ zsL-_HHX}hvX|jOza1RO%RHMPGia-lEo#bOB5`5shITeI~VVmhz_6+=u`Ab!?UaOr5 z@#&I<8(BSe#+m&z6_PnyZK0JrTNBn6uL*V2=Ri{v8yAiXq-WN+_c#Nk&?I7 zZhiMAT%Jo!n)TmRKxzhr$*_(fAfvpMJofVM=n#MXZ?5dzIf@+0X_Q~oG5ViidFH=^ zWf!?Oh#fdzm_K~OK(=j=U4ZI0q(yILY&9%Wo_@(d&y3IJWta7rnLgNHa>YfLJrC6nq~rYg&65?t-QERNsnt=RoA{wJD+b)8zVVntR4jed9YO_Su5=c+v9e5T0`mi~e#S(5Gay!7d|R@*>Ep*kConS{ zL4@AHtM)qWbL0Ga5{#ssTb?(_GWalVr@$d z_gx`Vk2lNRF$~AG=k2Syz0Hk2w9)i&T~XYaIFXQ|rZA8fPh;DDamg9BA8%&5;r4RU z$aQVUe5bgkfA$*)!3U>xIJCsHyBXObJ2Rs zU%<|G{v|@_Vr6JkIe^B?4XCY#M92k2|JbmfZoC~?H^UTp7N)H9*tmtF3w0(pdXx>A zlpiI23#0R}WR3v?bl0Z-q0aEGPG2v@ks$)?{HCiYK4*g~88K-^ikSRds^ZWImcR8M zSefMHKd|x|!!uUi{})yk+y5LhC^JSwdDH(4+9#300o#J^1Qv+yOTXQzyhdIneRMmO zer?%N)%+;mw6T%J`=|fd339v+o-0(vcL%POOo%=0174+ypzJ9Gj{f8`fsQvf(k5?T z>a~yyGg0WAtCF$YI)0&oQ^FO+%7lmBQ*xv+z;H{N!HO}= zbm9;zjYdAio8*mc?P*);tHfMlzZ2Uh@ymoCzJAeD>1~ZRQO3U8p_dS)cSdGh!`WR~3$$ z8|O+h_wGS73L|7N+E?wXP9h8HdWTIoM$7t)kGnsq9rC4;UWKk6Zhh~W>W=!`fqsap z(u;NUZsBc)o|<7f7SgT4Vie)CL$&Sex@n0_YOQI-fTKi=67xgG*P{XKP1;SQtPc9E zWul}%pY=e)JR#twu%RE8I3h@< z)%n%_Tt|@2XnnmTK75zEZ?8c{D*g?4GT%Yr5Cp+w8b-9TI0c!vOAI|Isp720D26Xy zQ~i3Vd(=%pjqG?MeQG|yK+B8Ede04Vl|cCzbufLNM>pj8qJYEKyaQP_kZXf3gYly0 ztJ6G)fZIF}<4HvpNz7p=km!YSC2Qg5k2h$J=sChB^#;o*mht$$$V!L<^rEL>7iRH% zuGE3Z5+>qnCAO0ndrH1KC(&Z1==>CZEk=%rIOADLsZlsk)8l}6tVbk5+EwJgv zyYPA6-+j-y=iGb!%Q3)#jIm+uHP`&kkM~Q;)If^yJXr66e>CJv+sQ)}u(1V?_!@pa zhk=rnhv%1R*s?zO=rzs@ts+X`PUBbO7zUsqGkY@ux3fJe(G~dff%?nU$Tl&o=J(GP z1Vp;ha?qVbn=3jfJ46{f!5BrhKv)w|UYG&Ga&$EfGqW5cwe_h#KSpz-T!JZ9`7Nv< z8p~+~*8nJ?%<5jYZ8Nt-q0M| zoJ@ayp>oBi_MYf`gh0rhG_s}EYnYUruE3az){G~J5W?7+8miJzYrp0NRN#c*yFp`b z)K=gYba!qxoG%fXW_9i+V0OID>-AO!s$LOINy(y4^5wECSguU^lNay|S`4Z6OJOM9 zhXFk1Ps1>b|8|b?*aGo`#;GjS2EVAljRDT_%qul*0^9po?B0k`_n9jDc)vAv16933 zQpBF(1|*hF$gk{#aMtyP$7yAQ277awZJdA~a(jeu&y|;doMSa^iNDUVwb?cvf|?iF zi=JvkHR^z`&&=3})_<}dPN?McA;SwEL4@{maZ-)jOw%I<5-UM|B}x7u(9BL%s{Tuj z;UySJ_Xa<_&HPi=dUxPS`Byql{+DzN$*v8ov-93umGv6pw;_8@5Pt|*4uPJ^L=6$ zj_C4ei+{UwAnUeI$qZ*SzcOgX)ZCi~T)Cx`O-bp;2&hi_v>a=@(a-2S#)ZV`@8%%A zJniP433Cb)l24m ziX`c1i!XmV15*>vnW|*_ArI)pYx1Hei00Fpt1(sCS=224&QQH&5TC{Rj^Uq^_Nj;JDg|wc6s#cLgQ8rpdMNlJ5aTChtV8SR!{z*g1wHw zj(6Xti+l5sia1;LRUFk~KV1GOZ1PTQJ*rY8{$46&!~0XIJWe28{BV`)MW3aD-^2%l zG1U`)9WEY$vrc_saG~*K(;90lK2xcT z?ok$H38cG;8~wTAw}?nHuoT?ID5@GP%BXc^%t5u;j>G{hF{cZq%=~&)5th#&s%cgQ~9sEFl9;J7zejOn}%Q zE5}BiB-hws+HjwdTyw~vihxLdp~W5;XjmN?9ya<$PkF}4ah3Fqz!rBq459d8UlJlx zeY~t8w3385ih*WHPp+yaB9Fc1B6l8!w$KQKZ9tU>e|}_I+ahsdcYC1t zkA;Z$U=IdLYRCp_NKkkKheq8{azr+RzY$AdV|6G>a?D_t5)g|a#d-k-WIsPOQHaJJ zg~UG5FL*=NzUI$YB7w}nd6E_Cz*}q?m*Czt?(TMx?qXM90R0;K9WepCRD#nYxXz@- zpEx8*0E@GU{4+ij%BSu~19OIbOMjtNK#2 zxJuS58+%?(f;M1Xzi!V^BMm%|%Vzy28dgvE$1RTdPq+9I=ovYph)w+;w^&NUJlNKQ zyE@d=UnakEP^z7z#abSfZa>O)wby>h_p# z@3Mej))luEp+z+Et)Xw7;_J#kpXa?$EVr@Ymw|Ix5AbH39V5Kb%x$(<^Xe7_$DEm% zoE(_{t6Kc@|E(53_4KnF9?7+S@PX0)3G4J#+OCzb1dUzKKSQHp2%6nbK`HBl^Htid z_Pv{{uo^s;iIiR!Az8J!b6_+ylXZc_ngMw)D^ln>YIpmHov!}gTtqZd1S^>i11nT) z6PW}v9K18W8B}hYM@9|bCtM$`n(9Sq87qn|c1f*m)4yyt6&{(3ljF&)KoGi~;psk{S=Ar_4d;5w=oLv8+6bB{KzgL+Bu z%q4ubuxkQ0eH%Vc3ihZ(6!oWK6f-1*;EOOedjuMI47=#iL*(az@@B?Y^Ce2HpH<&X zjK0RN7fZ?=L*Dk&JHlC5$`MJ0O~+A3eA^tAHXHarx$x`BH4}I?zhC{nF{zxA=$t8< z!x*FDm9ALbE^*gi(U=5{Y~wWKBOn@68JAEc{aXi0`5iz*O#h%_amYtHF2FQS zd!;&7q>XB3u}v=fg;D2M2)BRB*(JtxXzE9l=$r{JqU``h3&fD>vp5CP>L%4b=HlVi zrce;zoS)B7To$@kWM|!Ui@lcHY6GlRLU6|Dwf<>W&-0T_c{^g{~9uzs#m*~>bw9)GM@Hhg|NTX0YGDMY^Ebe>e zS(ene6EA-XQIhH!IynpUD5AF2gXH5*CsTTd6#$E=N>qy`ioI}1;tpu@J9u?K3E4+o z3{al$b3Ve5LFMJ@Lu|9rg{q{wrk0km*W&8+SPcl zWG-Ih=+v&xJfmWdZI(+5_9GqFG7vL)vts`4jY%jde1##e*KdwPNKP|vW`dNtaXOwt zkxUCw&+|=d_a=Qj^;sS?+O0r+mS^3;vzZRe{z9+vPMTn-Bh~5y7R#KG<&KW%=1ETe z&)!X#AM~qZAaqMNzqf|c!PRaGEwM%P-?>%XX85WF)wr08uivqouJi)HLw~Ms6OQ&{FV}lGTAOXX89cXAKYP1mnl;naD(jG)MC` zC@)DVL{ZtvYMNP}_B#P!O#cjwC9rpL(+x_OG`jyf#~FZgd>byP+a6_4n${`dU~YE% zsj=!TvMg(}{^t9_wLw6X5z=#CDG>JF*h;ZlAAY&oyJO;(0ImHvO6a&x-itSaau&;_ zfI@rjF#uNT#n}-!TBF&=e#KsZ4QV9L%DFwL3)c$gh5GkRUPIZs=i)?%hJ*p$-Kx6hqa5;a>xVVx_;8&k zfx%_n+pZ$h&`Bt@6$fC&H*s1i4Wn>@PON+)jj>t032IH`d1@(KVBW3}-V3m;AZPo| zCP*Ln3kL^%3gy>@c|4Mtdtn{Jp+&5Bx7x%&4}%GbO$LyRxs4j!{x`{(*9^3eeauj` zNv2JA1T-}MLnEH=d3KCPt@&(NSO2?4T(7}VUgD?6BGOP}^xqBSH93Q|4m*}La9&By z!~PNm5MlCSD~pIWLIi2!v+v#28+7AOJsZZ*5I|y`Jh=smKw^}tNi35=WDl3U>YqU$ zM2#pnx1yGxvv18JXHBg@L6EewcW?bCDZTJ^dYs*y#nWSe*iC@jX2oC6c;UIEmlI*% zzr6Hb3H;+{v%bSHPlFA8RO8aJ)2wdO^RZy$n65l@pPMX7vo;vwLsMhYheh;zyp3Qh z6MI;P(50YCAKGJqKFo0lCNjZP$pSLAi$5jXx}8HAP-W(vl(OX2Zd&Tww!AygZr#>a zPz-R$m^vym7gC7rmn19frge8rPC_Sc6JetkK5j)Jo839jRiT*Hm*bV4cz8)!l@U-TMJq3 z{N-oJu|N$f3$bR!9|kvv|J+Qjld(D2D^1let3s}tT{%ltNr?X40W&Yk)j~Z9Eq3D(5Cx45*^g2egF=vr{Lj0s{PAjo6FjZC59kWl5!^rI=gD4c;?@f>kTuL`ePbNIZC*Fdl_;{VJ;E5q+OV$>m50~G8m z)2zo~(gEE7EUq};#Y?ZhvD0r>sab*){(fd9P0v=~JqJ780G*>_fPAAsZfl#s-)a@*XAdOCz9 za?4!&@uRm7&Z$)ni3=sH)JX&>)p1Y!m&An5K3kk4RgXtjI)o}@ggXa(A&E5?u1j~H z8XMeIZzdc7I&AuHI{c&YkUNo~W=!@P2mvs%hgeK5Wt_Csj!uKLfh5(_&O24R{kf_4 zGVy?9teRSo7w)M;wX;D(xLC7h&qmnnr-9!;Si1ntaoL6RVkbH|Q#7C79@0(8>~<#4 z0*h$Gy@;OlegaF^(22vz9KnX>!(pI4ki|eBFTnOQ0Lv*ra<>-L@hN3F{cwYe17GhJ zMH}rTr_6IFU8Gr7O0Bkz=f3t`bmyTOR3P;$H{t<&BHM4t6t-D=r8zCzfXczVRI!uJ zLc6w1n+Le180O}Y@RL)CGV7D@L5yWgxUs;&A6oN7%(z;HoUr}FD<9FwOnd;(ae{8wzJB2k-THEt3fJ*Ro?djtGmDqpT*;b8kOk(n5(!8 z`**IwVZItLj4gDQ)A)OtZ{*u5e*6F1FE*6^0yuW~vjdR0L*K?MM9&=t<@#A0Rn<7!`r;d}(c; zD;32a!0wwx}^U(|#<1d*H5kIo)Zr6ZkHhU+tr^SF>UL#l+oQ zAhtrv>qxlA+#^W%KgO|b<>h_r$vqeAJZWs9%*^(rj2L~22UoZ2zLk$~04VIk75>*m zT6etBB-r8=G5{CrXphmTvt5`wIkVa(0HieK!bA^T@=r%n0%N>+Bj+1#^E{okXWpI(pM?+fKZcAUL zV2$3|4H~8K0v_*oxpxlNfI1)>Z=XJQcoJGZ@kuNg_fW3#1boz(cdiK>*6quD$$fv3 zw+R4aV`6M*$hNGsIWZB#As$d>hYiDjYdAlWqlRev^t=T%U#A13^=ut`4*=G2Ag>FZ zcxZOt%QL9N{Emb{bjEf-eQ-U5WkvM-~z2nAd@cg;p8H(JK zWUnVXWw^dHNMm1U{HdSi5(C{h!NP#Nsl56q$z6ZL$RsXXEl$NMxj_lqUg zxt>Sb5_W}{NWOKUA`XMQ0bhT49A<&I3mI5WjDwB#`fYTc-E4Prb-w{=SC{9B?);ei zIVgJyZh$bSB2%R6gOJC9h?M(0RCOya*!dNQQ*CHL_;A@9 zDS!Yy&J)&Tdnd(a#0C7x8#brgR}l`|>l6{;?ho(=WaRoEL76z~1(2#8Ckt=z{`{Zf76Entj$7P}td>0tl>M5%089|eqJ)!w3KzV|hR2=cL`a<>2Az{`1gHoEZeQ8nI8Pk|2%s)W5l3@8ZQ+sA%n} z9VW*Q4z#3pg-B^gQ9&zP(UCH-YnXi$q~s3fU$ohglvDf!Pd+vWt}PPNq~EE*!m=~F1=?hz!R!^sPom=f1;9{-t zYdcXutipXhpRxTzd7ACe044!fT-rp0n?t1&6*j=bvgd6+iU%4BF9JC8C&H^{~ zb*m`<0i9JT<-*=#UN~IlU#N_#*)CGApb?+e)Typ`9ZqBF4JuQMW*XoVC2fZrqFePb zQL~q9dk&Bu5~CAXW;`hpsxi$ttS2~X)-@+?SDfj%le|WMj$34MD&oh{R(rFHG+@F6 zSa(eAW8M{JPE4J+*PqFcS|;yw-7ieJNf2d|pQU6ly_^Hur-pk)*XbsMNDNMaQdo!M zxFqESrq%mRpb15%%Tly8Nwjbk*>zBN^$kmnrMTPnB@A5*>)tA~DJ?ZnaYEyln zjits7=*ZD&B#xUhGcyn4WiWv_wDem6t;E{W~W!l&5HwT_MOW=`>?P)>;A0=G3v^3oeac&YydMfb@U zyb7d!bsk1+ZLNoDIxx)4nQwAOfk(A@{k{TbmyiW94=*^xCw?`rcsMqYPO#Vfold6qLrz#F;%hl@) z`i6v}6o)VsZ3zccy0igfe@FtQzmqe7zC~vt zZ?|}ITUVX%Jr%Ik=A^!h4JTP&xz%KYc=p0DPVDln#?BS#MJMK~L3azQA=Ge*;0{ZS z?0C;BV%+><07Kiyg6ab>)<9aKLn)0V)yL*x_PXy>(~h2Y_<1JN-Qwr z4qL6?(`K8LLV1_t%WL_5cAZz(mtx1^&RyJhXv|grQrW%q%FI>c(N`Y8iclSC%LZFn0QY-&d zyqSZk`mJPf>B(ip7uiUkR}h(ATVQT?$Mq$oj0L?_J83hB$Ek?xGf&wt*Q%u3=vf4_ z<4@Zf`7{XwIgF}|an2t+BfSW;e4A+M^lkl|7w?~lxnB0l=n*Ek}@A`J5Q#ccysgL+Ou&lEa1=;$8`EmVVwzyH#L#bQSY4pBijzj@JY=$M=A zwAP8cPuUy|qcbT8`xVAZmv~*fopd}`x0Ja26ftiLqJNt`+B}@S2E_cPeL+A&MZxP!iMqQMb#dGZ< z2dG`xV_X;%fM(ag`s1OAdKt>8<1RJYlpB1wM&;dkowBDT7f?N!FJ;GcD~6bhiQqFj zN~cT~*71}|bU6a~ui6}Iy%Tm5|N2A?DPiJ(hsA{!5CSz zD^UtDFVLJjr#grtBTQD4-P0}mXbwGo{=(G{<3+ed?(7vw0D~BnTF#3tRv)gsAQH>K z?^){ulSq{JX*lGiUiW7;gIfqmFls6No8`5~K7aNzo-801Zr@J}7U;mF&SdjTvD9F% zv7ib)uSiwP4r93=752?^UiFhl{}AYXVvLKr)?Zt71~`jRs_)V9Lnic^v%%n$87OeC zO^3Izd_XxsM=4wTY1M;77DkIr_+EjMNwg2;bd;!Q-(bTS~ySO=LNX`PN5C1K+w4N2J)I4U#>O8>nvm&tlCPv#27`c1^^3PZ=nGSTp0yj zvw%gqL7WVN7A1vf_zFW_)(@N2miv+T%XZcx9GNx$VJw5zDgT?Xj2I0V%Z&3Z(=NJESDw(T*(@;1hDyMqI%0(O0jX;g8GFabf%|w>X|E?M4 zodwNcz6LFmYEi;mOoa@&pNb#(U?E9PDRyCa_B$^_LxF)V^z6b1*hiYuRnOd^+as@I zhmrLA*0#}A?g^)~Jg?NW=ReEiJ2^?I=+Q21__1BIitGyy(=PaI)|2EdMJn8Oum+YYCt2`*NcM#*ePAHj3mu3ek~LcfVL zy2Q#6j(ObefYS5Qk z`R$7yLO=KVcXctjGsbVCdJdxcSBN)Bn!CB*k_6~gP>1!btL^17BQsLex+g|30_Vz}f@rv*^k(Ma*z@O01!CPyj6%SF1(|tcMa;@1k3icY9Z~4Cv`ct2hQ2oSsJV&BS1wMS(4pFHb`^MV(`_Q`DKwXYw$8DGQiS}ov| z=nk|Cu?RyfxPMBry;$XUk|ex}u>0Nf*2qs3hrTAY(b^R&B+xu2?>d2iIl9KOtZeSu zRCsINrLjY=@p+9nJ?fWdhM;4_WE)b-#dL$y)^q~B!cG61H3c8bVY)wDcfUW<-FKNp`km+c)p4iQbx-ap=gMeujnkC--O`6BeUr?~Ui~vI1oejV$)82n;y8RL%6`cQ-<) zMDH-DnlVYr+3-=sUKUVkFh@6%FyvwP&g5K6lGb+-4_=%nXJ8K8F}NHfd?Rqx=Lx;r zAZ$y*MbEoQMX1-~TkCDOE+C^WCp2e{#itLuIi=7fjbI+qnr9lyaXqThBr6dRhPK1! zvAL5`CWC_@;NMGVt_rDs8Jo*9{DjP8hO@a2+pJU<*)Ju`$3J*E@YqE=oQBvEOt-E$ zmYqDGyq8S9OkW8|!*RjcyTp%W!?o2LbQ1<*$ZbM&Cma#ar>I->dK(_xR?pb;Op_G@ z%OX?Dg|Fs}jFuXyA5w;r=9+;MYElqF8J1WZdYfC`AmHsbbK7a_fOchUBbwaT4V?$- zkzvqD(T!iI1njmyD&kXjmE}!-KIr~ZrqkEx^(+PBz-_6Ihb%bB&essr%dlQ-oPOMkxIPEoWw6JCbU*uws8sMvqGh>o zM%M6ZN8nNNpRHd6ZPG*?X|1J(2k>DRz1p`bdTez*S-K%=s~n<^*t&h#MpbRbuAQKs z&?2!k(GKUk1{Z*5ptX2rY>y2tvS4Sm^zNb)6_7}L{dT?Wiv)8Xgc3(9x)H6%gbj5) zOFQPF3DpJdjm?}AKC{!YxbwboNa|#FnfGPUeuX>ZNzS$KYX{RU&s+Pxo!=KFHH4d@AP-w6 zZ+ucHFRmFx*ba*|FRuR`lV#-gelJzAN){XnQQ)hyW3Yr$_vs7enjrnE$sy{sowFaom z4N$~0V828(t_XcZ+{GqWoBLXCzL*Jb#k_IqXA};`2mV0I6IeZS9?w5O7FJa=kM3J& zh;U7~V_cc91sdkx7PEo~n)gi?<&Mxv7maSqh$V*T?eI(QH!o*(9EM-AhKpA_V2NBP zvL(u>3)Mw%{takbG@Po>)SpA z?iff()vq1}&Xa3+m;LK_9{M~=JBk!0*C!pPCquo)#Z(flsiA}u-2DyXJadEtV~!Y*f?jbmk>{s6zz zV3Tq=b@DjyadZ3lR_-zm4z?e3q4j6B8ZAAlo` zfz6tQ84$UBk5k`??~F!#Hdz};SU<(q6E`9ey*CL{s;A=cRWIcVI@2XzCO>@&VAi*S zA35vWgJ2^K77z2}^e*r%G!|xh$1LkjM?YTq)jn@nds&%~|Ab>Y~e(>)C2 zir&$!_}5bUJe;Nq2Z!JPV!tS|Ngm2VHbpat3@Hc30nOnYHr{g3rG_LhZ<5G`Q?9G@ z{0uWg#Up_XO|J3r81}zYdz!hc5ay3_&^fwLH;Hj9*4z2jdv*t|TXufUC;ZbYLcY4= zQ@$WhmYc7QClsh?en7LJo4E5lwchU17k%6Z7 z8cMfqYjpMr3jE}5CCRwG&0OJ9Q(J00n5A=qfMXjO&1Hqf@5r|0-!_rT_TxJoabdQJ z>6;RvK)f*Oxud_3WuHf_N>B+0W(tZTZ;ByI3I|sG44{=>H}WNKD@$exM1o?=(I@)# zL~AHysJ23w#qX7wRxEp56U&JiWyj&Qjchfw)y!^lp$Eq}&B?(!%Y}voLX}uxiK)m=&1^1Q$@3cyPvD@`N5N8;Jrt3A6~AVQo3h>qJ-2H>wlwq1xe+&?!ZI&LyzPORZxwVN z#e0P`YIJhglPUnw5>o?#egDY&sMg7N92bg0{Xwutdjf&S4Qo{=&^~NlE()@C6+aW7 zM|=k6yRXw>cb*ER144g)!EREtfY+%fk}bJU#$5(uo0-3=&H?q0$Jz+y7H=l3hx+ZZ zA&`-3R;3v5Dg@75#dGl#^l{n=PLx5Xxla95>>@dPjG&|^5?S^rCdwPXw$ELwR;8(` zPZ*ikr0BC$!6cohN%*ZVnQ1o97lspBUy0lp?qpL20s%v5uJBIe^)7a+{%Fr@=n(hl z>!`xjPcWtdd!e2hSQPz{T1OeW)E~ z8Lb=p$@il5bNj%Pmh2F|{(UVy&EBZF71|v}InKnFKXp*-A3GBA;wdX$&8}C>mWNRwUJeSTtq`=^|VZ{!fRcbWaHjt zGC*4R(s0-!$)3A^b%(an{VU#C=*n-4Q9El%Mo(p5%WVp%KUWdgA(D9HepUNjv^wRo zZCq(QEl$~0we5uC>p`b1_mmVWZxQR9p<^1$1b)Da>mP`()jgLGi>wpVrz1k4v%~P` z+_vIO=y_3b;aNUUld$!I`n8D$w?vh43P<)PS?AQNu3iJKToYaf3|7%$PZV;2SiE*Q zWi7*}?^P;Vqg3T~l2+LJ)I_q@*qlZ#lo0}xFFcxum=gjkbt)GBU^|-&c+|cP{~)8a zG2bo`fG1xet@0{hqJ5HV!a4-geMHZ~04CDg@oTZ9HruMZ3A*WbldNsts^BIL8~(9h z@LJd=b^8b}hSDt#*GT7#B^{JWP2xbyUv{vtDllA8vR-#hu9*kGnW&pC1ap}5dz_&C zBG1LVW$+;h)rcA1t&_lIVqfsmLR%HC`;jbT=8pN6deH9A<8|KE73j|e$RUS1uwN3z zlsGlPmp3ps*jZu0&?jv*jG}pRx2Kvoo&;Sab z$%KVQ^Ey|j@uCX!viM$HknnfIBCrJiuvvB42&Z3vg|bgvsVdmwC%&O%`KVb@`*dC5 zkfnN2*#xz0DnhY$JeiUS5O1C+IF-0l!_?9^WIjM<5cs@y`1oNrS?|Z^cR+J z9Tgl1ymeiT+eZMh$=@0wmJ`VsV}Mq)0i=cZ&D>oOEoeE{|7EsVKJ>j9O`WAzq_ zNmT#C6Lv-!04J=~03T^H6hg*qSiw@mSx}WpP~7(yII% z-Izopy=I~5_=zYim(eA3Q8iO6&rhdvpkl#&zqruLobiJQn?q~wa+6}k{h}5k=?+%g zF0Md%0iBx*SIQW1)IH2IfxH4eECd#qGg*~4ZGumcjhM!2Hx8Q+7l^$!$srhFCH^=u z%plJnwpzFowZap0=qQ#fi)eB$*Ux`tVjO9_%i=*qgSjYNs+h3dawsb!>YbAIyqQ!$ zq{Ha>a{*MF;T}M#otnCl_=uf&qZcjYRe>FZ%zC<(#q?6su6v}^ZFuw>kez*++e6Yj z&|7B7f(+4yuJ{nY_pq&nGVo$)r!#zMM*G@9Z$HVx!@Oc;eH$d!KaD1C^FcqtdZnlq07Dpa7CkN#?DW?8`KhGb*D*9N1EH19FjL=ZW+(k z*4>Bg$i!a@lG?QNdMFltcZcv~p??tXGAfl~LNYoK{X9ok#>qlH)XgQGcD^zjJXf@jHZ zON-4GOQVMAO5m%@^H&I-G8kV|yV1`hP_0x9Pvl7rUS(+eWo7s!Z?3@3;BJxi*h|o#I^QbGvs4_ME-`K!cnM=r^BM6g0x+p#;b=0qdi5{^>#7ikVgoxqk2H5<6MkFXlUI6D74j#|U( zpufM?yrH2)@)kMyEAL}gXH5!GO{$YnDcYTF+@5HJ& zz`+cV3L7@ma#d2Gxb(yFG|;feb9z02N^uN4_ji;bl+u0id^QtW0q8>?t!}o2cb>zC zd+oa)eMjIaNTtwof3oEUsH_DtDjXB701%s^%IqW_{9`8P%(HbdqKgdNK{7gw~@0u%3pbH)|t)Bqj64slME{ z3O!23WU`t{XJ6Q{d)4hyO*W$XP0;s-*2%62TmC$rhy_2B=qsWch0cXHSNDUY@VoNx zl%+$+D>xu{g#b=hXw22~;J_Q{-*##ozU!aE2+=tRhFC^=S`6OLNkj|dopslD*?{;01=E8L3OVTBy@*HoLo9jY{?XeYTT#5h zK*CS#6k$;1@P#@R(&vOaG)~)$gL`!L=5H&5YBasQH5UR}$>&^ivgZ;$V#D+GmX~Tz z20BI48sR=a&g8g-2rc9$tuh33*HJdB%RjZ!He2QNPA24Su*Mg)mgy!A=-JJfXA{;< zXf#%}-mW63>txZ*X`vO> z8=%(lb2UdB&Wseu3)Kgb7?Va$J@f9E??HlE65-q5j$S{Z&fLk!)mAQ@!8Cuadr|7{ zMXjJFYje7haL#A8PY7-52*tswcW~WS@4h{^h0t8$N$kII&)kiRx!#B4U!x}7V?GO2 z89i{w)%N@W&v3NK@Gqe+x_ z@66=E{=k7s+sB~=bhse+qi7n^9Ck4GO^Jb;rP@=JOEb+N0Xbvh9#iXPWhW~T0+8p+ zNw|KlXe7k%xM6nAO9WTpeUx~SMPA^R=qvg zQq+F5c#}}v@Pxj{rJfe1&Wm$eaJr0(u6(&mE^3Nv4%Kto#^WM+LlawHUDFMq4sgtFGg@KW~;H57t1T>CgBa!>RFt9c6aMD19BF zRL`cd^b#4g)19s;bcYo%*; z_s70aZi=LUs(OundFOX}(Sb}kB$`8sk2&pP2Ss{g4S#!+J`~L+t^9nb&S8cladH*b{ zUCptKe-Rg|b1x$H+b2;3$rRDG)->s5w(H~N?D=m;jC}k`r#_(J!G;>AD2u{qip(s? zBkt>+Bnc~l2J(`uS08zC4m?%!!2A6C94HT6eQo|bXZo1(b|v}S3BIMu@dizNeaRQf@IK7LaiO>C`0SW@)1B)vlLi}9 zZuB~1!mB=Mb(*pnE4rTc5XR0|sPb9dW&An!F$cZS&+RTz$uE4>@5Nws%^^s-S z?u#nS?mDl~;*7mLdf>YwaDz(A+KBjYDk^q1ihU9{@Stmcm-spD%;9ayGBU@vR-LP~ zhYbIw<9Qyic7oP6NOm8OYby_o%5Gbr8^)Lx^jzi8Y02He7I8mZF9}J}ODWuZzIv}e z-zis>{ol}e?B^R6a0)~AERb+Q*DThXmsjqxG@3{*syqN80%n)(fFWuxUqSft4fshdxy`5T&@ zfx(>TZ*Jt}H9YkLYP?yn?vcsVg&tLte}OfZe)Zz~!<>cwUzxK6MX$E`3!k1p$xSuD zgB0GSi`KuKujKE86bsGVQS)r8h;WJpnxMo5xjFwY%$vlqq5gVeCANF`tJAHi$rb_r zJWr-%5K?)a)92kl9mHjo^h}Fw_uK76m3*T!Lwm2?G?yLMFB`?fr)Xe|IPy`R7i-8s z;Ny{VJKEM{LBg-Q*ci<=J3^cO2Yv>)G1SVhe>;xiaB<10q-+frxchTdaE$=nP(Kh} z+(|@=bf(00MfR(7klHkVH!Ad&`~O9n^?*0I4I4N_s4CTpHMf3Ho|?(K9lo~YchRRW zi7;cn23}<$(Zm12bNs9&j*;vF8s$Mx4^9)EG#DJrlv_hE{ey%Yi_yu<9+j%PXAmgT zt;XY{=f%EXZ{b|kL(Z?ZxF-_(7^5uulYI=2IEhK9W9cEJ4pa8}NF<)Y0IZJ12 z#qCF)1jreEgdh%^e7@ZO#n@ZMMb)K1P{Pn54Kw6`q;z+~v(W3_&%XD*pZE8E`h6%B0@S0TB2Cd)ebLd99B;Z;Ld}}E&!3?2`cosqO?8693Qb4z^^T83 zO>^O_NZjBA&J4)C?U9#PxOB+a>yy~n7OAs01qAR$Ong<`R1`7?Ze1|C)o^S_ zT+Q*Uel#ENZD0{0+uWTd23EAZS_N=uJ_NQ0a^b;s&+svgGgm96Skb{%M?6XOHphX? zh&vaH?b!)Oj+l#3i5Y@8@m*juYE{O=bdhA7s;Nb&xj64 zi(Yg%UUU>|FpRqAwdHm5{YuIN8#0Iu?M(oVaD|G4!p-Rn6$iUg`s3xvUh9yE zMkqyoDUNnrU?BUIP6UvHc4hr3v-guN=SX{MInz(}T#sRy}{wvC(FMX9x;F+oe>IkvWw_FUh&F_?& zM;n^-GM&eX+zoUn@0m(h?>*gZDgC9=qSF+lD#Eo7QGkt{ML0fb|J__;SNu)9bo(vt zC0QdU0~Jfj_W9vnN7J=doW`1b&1kmmYP%KIa4Wf78Y^KT-0GpIy&7p$Ui&Qq*2E)m zwg-Nedjz+J^mHD4bih@NF0Vx2TEg|$q0eD=GSI=oJIix<>mMSwN;PhceAih&R%xMWdn4$v%o)_TZEdh6k;>m;`=0i`{g5?c+PH*PXm+UPR7$|;Y^bvRPW_TK4W|lA< z60$cLsQcFj;0Wmja+#GwRK&~?{(*kIJF#Ef2WKMH^H1N47jH_?YbL$?g9$8@Pl~dT zK}xGY3R-H~XqDgS&@u4-zwolw(u+N6iq8i8?udf>DfyG@yb#Ll#K72l&AA*$LX63V z$7fj42*Pmc^FpWMG#tBbEFY2q=-6|Nt&-QNX~LALNDg-9+9+gPwNI6?uZhYew$R(5lEox_t4Mqj4(G5A1nZ5foXD)OHb#_$U zm~N&>>`t)cPLREDm$~eY62O(6!|v>`;)N+ujMrp82s@yNVwVUD_D?--P7-zK{U{0( z^jQVzm5y)v5j=t`S$`rEw{D;PWD`zX(LV)jZ4<8h&Ow=W(eC1s&!V``3cm;~Qy7Rg zG{etiHOG*B9QyMimw7@@r}0Ff-dptd^9xf-qNxy%R#wZ=WH;-^iVgAfCI#z`z_Fr>!>D zp8Hb0cST^YLnMPcSR1x2z3>p?)Rv@<4KM|mn$n4# z1>9EB*R`3emQ|?FtH6HwSLqxLE-~7jROof%iR{AvTGpQH>u0va!nM6{yXnu&#%%W9 zIT-&9Jc}c3fco=+6cD*<0>9bmyL!Wx>KlFK?;DL5&&tv6@h|jDYU?YQvTJAft3 zJ@DhF221ATN~{SG_~;GrH84~B`j7_4-o{VzTZ0qdU`ynDwsld6vE0^NiL#@u^kb<} zbg#P)Nk71yX^WnQ3MC(`st&Ff-0qA^Xl$yX$QM2xUvNZg)<(KT>fS64d^4Zn(e};i zLrGP5xV~(Tk82E}YD~ge&imGB>Bhh4dHJ;r!?{j^$0mId>`pA7^KF6v_jtB%d_eN~ z;Z5?Hi)qc(c1cqhYE#Nne)OT4(nhX~s4E>)9@7I0D{ z@HlhL;LNeu_rA}l@`X73OfNIZDKCwpi1tv*<`07Q{`#9Bz|Nr)HRyeVpv^BXm%4BE z2=c8^;Yg;pknd7dVSW*%8?Bx>E198hg*x34J!Uf#B4NS}PB$XDJ-;q5+|vht&rH$t z#2lRvYHNLO?@*m*4V{j7qk}@sZw~J@o>Kl#7@be{{{^GXtf{od zKjypS;2v9Vtrlc5_h?!WRm2ESRv^vCLzqD(vOwL#7R3)?Abto&*=j{G`sgAmv#%`Q zkc^%cZnK~0ctcsid6q804AtlTH!2vz45MRcd7T;?j3IWTNp1(1Ctip&q}}a5;j5afLp1WzjEF zts9Hf(HI!W34$FO!Wi}`GEKe*aIbQKH<_02b_l7IG1Tz3YQX84j48|x`C!uL;S zd=&Bw*7q�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

?SZ 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 prom.register.clear()); + + return promBundle({ + includeMethod: true, + includePath: true, + // Using includePath alone is problematic, as it will include path labels with high + // cardinality (e.g. path params). Instead we would have to template them. However, this + // is difficult, as every backend plugin might use different routes. Instead we only take + // the first directory of the path, to have at least an idea how each plugin performs: + normalizePath, + promClient: { collectDefaultMetrics: {} }, + }); + } + ``` + +5. Now we will extend the router configuration with the `metricsHandler`: + + ```diff + +import { metricsHandler } from './metrics'; + + ... + + const service = createServiceBuilder(module) + .loadConfig(config) + .addRouter('', await healthcheck(healthcheckEnv)) + + .addRouter('', metricsHandler()) + .addRouter('/api', apiRouter); + ``` + +6. You now have everything setup, from the `\packages\backend` folder run `yarn start` this will start up the backend +7. Now in a browser load up `http://localhost:7007/metrics`, if everything went smoothly you should see metrics in your browser something like this: + + ![Prometheus Metrics Example Output](prometheus-metrics-output.png) + +## Metrics + +The following sections goes over the included and experimental metrics available once you have completed this tutorial + +## Included + +This tutorials uses the [`express-prom-bundle`](https://github.com/jochen-schweizer/express-prom-bundle) and the [`prom-client`](https://github.com/siimon/prom-client) to make this all work. They both come with some built in metrics: + +- `express-prom-bundle` comes with 2 metrics: + - `up`: this normally will be just 1 + - `http_request_duration_seconds`: http latency histogram/summary labeled with `status_code`, `method` and `path` +- `prom-client` comes with a collection of metrics around memory, CPU, processes, etc. You can see the supported metrics in the `prom-client's` [`lib/metrics`](https://github.com/siimon/prom-client/tree/master/lib/metrics) folder. + +### Experimental + +There are some custom metrics that have been added to Backstage will be output for you, these are currently deemed experimental and may be changed or removed in a future release. Here is a rough list, again subject to changes: + +- `catalog_entities_count`: Total amount of entities in the catalog +- `catalog_registered_locations_count`: Total amount of registered locations in the catalog +- `catalog_relations_count`: Total amount of relations between entities +- `catalog_stitched_entities_count`: Amount of entities stitched +- `catalog_processed_entities_count`: Amount of entities processed +- `catalog_processing_duration_seconds`: Time spent executing the full processing flow +- `catalog_processors_duration_seconds`: Time spent executing catalog processors +- `catalog_processing_queue_delay_seconds`: The amount of delay between being scheduled for processing, and the start of actually being processed From f765860b073f516884eaaea4398a4f569e571ccd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gonc=CC=A7alo=20Marques?= Date: Mon, 20 Jun 2022 09:48:08 +0100 Subject: [PATCH 515/550] Add Mercedes-Benz.io to ADOPTERS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gonçalo Marques --- ADOPTERS.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ADOPTERS.md b/ADOPTERS.md index 66376ca5e9..eab71d6c79 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -179,3 +179,6 @@ _If you're using Backstage in your organization, please try to add your company | [Dixa](https://dixa.com) | [Jens Møller](mailto:jsc@dixa.com) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. | | [Notino](https://notino.com) | [Jan Remunda](mailto:jan.remunda@notino.com) | Backstage is our developer portal. We use it as service catalog and for technical documentation. | | [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | +| [Mercedes-Benz.io](https://www.mercedes-benz.io/) | [Manuel Santos](https://github.com/manusant) | At Mercedes-Benz we use it as a developer portal with software catalog, TechDocs, Scaffolding and custom plugins. It provides an overview of our tech ecosystem to our product development teams. The portal also serves as a way to foster collaboration among the numerous companies of the Mercedes-Benz Group. + + From 886e1e8c810fad625c2e45823e26f914d3048180 Mon Sep 17 00:00:00 2001 From: ivgo Date: Mon, 20 Jun 2022 11:16:36 +0200 Subject: [PATCH 516/550] Set changeset to minor Signed-off-by: ivgo --- .changeset/sharp-planes-turn.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/sharp-planes-turn.md b/.changeset/sharp-planes-turn.md index cc7045a9f7..47f6a6176d 100644 --- a/.changeset/sharp-planes-turn.md +++ b/.changeset/sharp-planes-turn.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-vault-backend': patch +'@backstage/plugin-vault-backend': minor --- Throw exceptions instead of swallow them, remove some exported types from the `api-report`, small changes in the API responses & expose the vault `baseUrl` to the frontend as well From 9918c41309e8c9964f7a150cb1133180ff945278 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 12:22:09 +0000 Subject: [PATCH 517/550] chore(deps): update dependency @testing-library/react-hooks to v8.0.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c3ab158822..ccbfb88be7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5479,9 +5479,9 @@ redent "^3.0.0" "@testing-library/react-hooks@^8.0.0": - version "8.0.0" - resolved "https://registry.npmjs.org/@testing-library/react-hooks/-/react-hooks-8.0.0.tgz#7d0164bffce4647f506039de0a97f6fcbd20f4bf" - integrity sha512-uZqcgtcUUtw7Z9N32W13qQhVAD+Xki2hxbTR461MKax8T6Jr8nsUvZB+vcBTkzY2nFvsUet434CsgF0ncW2yFw== + version "8.0.1" + resolved "https://registry.npmjs.org/@testing-library/react-hooks/-/react-hooks-8.0.1.tgz#0924bbd5b55e0c0c0502d1754657ada66947ca12" + integrity sha512-Aqhl2IVmLt8IovEVarNDFuJDVWVvhnr9/GCU6UUnrYXwgDFF9h2L2o2P9KBni1AST5sT6riAyoukFLyjQUgD/g== dependencies: "@babel/runtime" "^7.12.5" react-error-boundary "^3.1.0" From b13f84f3e1c1c4e694bd138c15de5c8fb5adaf92 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 13:21:03 +0000 Subject: [PATCH 518/550] chore(deps): update dependency esbuild to v0.14.46 Signed-off-by: Renovate Bot --- yarn.lock | 206 +++++++++++++++++++++++++++--------------------------- 1 file changed, 103 insertions(+), 103 deletions(-) diff --git a/yarn.lock b/yarn.lock index ccbfb88be7..778c534858 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11756,75 +11756,75 @@ es6-error@^4.1.1: resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== -esbuild-android-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.45.tgz#696f078d97a1350ceea5db626b3bc4a60fc13555" - integrity sha512-krVmwL2uXQN1A+Ci4u2MR+Y0IAvQK0u3no5TsgguHVhTy138szjuohScCGjkpvLCpGLk7P4kFP1LKuntvJ0d4A== +esbuild-android-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.46.tgz#98d019853ca7b526d0d645bb4618fda425b74d35" + integrity sha512-ZyJqwAcjNbZprs0ZAxnUAOhEhdE5kTKwz+CZuLmZYNLAPyRgBtaC8pT2PCuPifNvV8Cl3yLlrQPaOCjovoyb5g== -esbuild-android-arm64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.45.tgz#d229da8040cea4a0041756d1abcea375b4e3f9db" - integrity sha512-62POGdzAjM+XOXEM5MmFW6k9Pjdjg1hTrXKKBbPE700LFF36B+1Jv9QkskT5UadbTk4cdH9BQ7bGiRPYY0p/Dw== +esbuild-android-arm64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.46.tgz#19835d5265b57120c14fba56a19fc317ca4bbda0" + integrity sha512-BKcnUksvCijO9ONv6b4SikZE/OZftwJvX91XROODZGQmuwGVg97jmLDVu3lxuHdFlMNNzxh8taJ2mbCWZzH/Iw== -esbuild-darwin-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.45.tgz#d7d38d91e4c03890d58c297131e9b82895a37a6a" - integrity sha512-dbkVUAnGx5IeZesWnIhnvxy7dSvgUQvfy0TVLzd9XVP3oI/VsKs8UNsfPrxI5HiN4SINv7oPAbxWceMpB7IqNA== +esbuild-darwin-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.46.tgz#2819465ab92f6df407e6462d9e56f6563a043a44" + integrity sha512-/ss2kO92sUJ9/1nHnMb3+oab8w6dyqKrMtPMvSYJ9KZIYGAZxz/WYxfFprY7Xk+ZxWnnlASSyZlG+If1nVmFYg== -esbuild-darwin-arm64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.45.tgz#d4df2871b94351d7d5561e41f91aadba46857838" - integrity sha512-O6Bz7nnOae5rvbh2Ueo8ibSr7+/eLjsbPdgeMsAZri+LkOa7nsVPnhmocpO3Hy/LWfagTtHy1O9HRPIaArPmTg== +esbuild-darwin-arm64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.46.tgz#2d523fa628930bba38a4f75cede75d6341bc3b5b" + integrity sha512-WX0JOaEFf6t+rIjXO6THsf/0fhQAt2Zb0/PSYlvXnuQQAmOmFAfPsuRNocp5ME0NGaUqZd4FxqqmLEVK3RzPAg== -esbuild-freebsd-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.45.tgz#e90106a2db3f5b0771392d3f9d8801b3138825c6" - integrity sha512-y1X2nr3XSWnDC7MRcy21EVAT0TiCtdefOntJ+SQcZnPBTURzX77f99S8lDF2KswukChkiacpd2Wd4VZieo7w7Q== +esbuild-freebsd-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.46.tgz#dbfbbb1cb943149aaa83b9e767ded6f14ad42ba5" + integrity sha512-o+ozPFuHRCAGCVWU2bLurOUgVkT0jcPEu082VBUY2Q/yLf+B+/3nXzh4Fjp5O21tOvJRTn7hUVydG9j5+vYE6A== -esbuild-freebsd-arm64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.45.tgz#e734c8ae8042cd9224406d45d6992261382bcbde" - integrity sha512-r3ZNejkx1BKXQ6sYOP6C5rTwgiUajyAh03wygLWZtl+SLyygvAnu+OouqtveesufjBDgujp4wZXP/n8PVqXkqg== +esbuild-freebsd-arm64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.46.tgz#fb066d6e7de2bd96138dd1c2fba5e8ce5233ed5a" + integrity sha512-9zicZ0X43WDKz3sjNfcqYO38xbfJpSWYXB+FxvYYkmBwGA52K0SAu4oKuTTLi8od8X2IIo1x5C5TUNvKDSVJww== -esbuild-linux-32@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.45.tgz#0f814a784c941bfd5a5dca7ff742b57744c5324b" - integrity sha512-Qk9cCO3PJig/Y+SdslN/Th4pbAjgaH9oUjVH28eMsLTPf6QDUuK6EED91jepJdR3vxhcnVjyl6JqtOWmP+uxCg== +esbuild-linux-32@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.46.tgz#ea2464b10fe188ee7c9be81a2757e2d69ffdb8c1" + integrity sha512-ZnTpZMVb0VGvL99R5eh4OrJwbUyvpM6M88VAMuHP4LvFjuvZrhgefjKqEGuWZZW7JRnAjKqjXLjWdhdSjwMFnQ== -esbuild-linux-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.45.tgz#2028a6dfb3fea7a5dd5e87cf00d02a36a3373e3c" - integrity sha512-IybO2ugqvc/Zzn1Kih3x0FVjYAy3GTCwhtcp91dbdqk3wPqxYCzObYspa8ca0s+OovI0Cnb+rhXrUtq8gBqlqw== +esbuild-linux-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.46.tgz#f4f2d181af6ea78137311712fca423f8fa954314" + integrity sha512-ECCRRZtX6l4ubeVhHhiVoK/uYAkvzNqfmR4gP4N/9H9RPu+b8YCcN4bQGp7xCuYIV6Xd41WpOMyO+xpcQvjtQQ== -esbuild-linux-arm64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.45.tgz#6fef4165583215918d45150148ac0a18d5ef6323" - integrity sha512-UNEyuHTwztrkEU/+mWIxGzKrYBo2cEtjYAZQVZB1kliANKgRITktg2miaO/b/VtNe84ob1aXSvW8XOPEn5RTGQ== +esbuild-linux-arm64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.46.tgz#113d17c523dfe80c9d4981d05c58f5ada3470e30" + integrity sha512-HX0TXCHyI0NEWG4jg8LlW1PbZQbnz+PUH56yjx996cgM5pC90u32drKs/tyJiyyQmNk9OXOogjKw7LEdp/Qc1w== -esbuild-linux-arm@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.45.tgz#e454f701ae5371322c8265f4356e098611e51f96" - integrity sha512-qKWJ4A4TAcxXV2TBLPw3Av5X2SYNfyNnBHNJTQJ5VuevK6Aq5i6XEMvUgdlcVuZ9MYPfS5aJZWglzDzJMf1Lpw== +esbuild-linux-arm@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.46.tgz#1b6ba77b0301572b2fed35fe922b1613b10b5c7e" + integrity sha512-RvTJEi4vj13c5FP9YPp+8Y6x6HK1E7uSqfy3y9UoeaNAzNZWA7fN1U3hQjTL/dy5zTJH5KE64mrt5k5+he+CQA== -esbuild-linux-mips64le@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.45.tgz#093cc86be71f9b0cd2876da23ee2f5d35b09a247" - integrity sha512-s/jcfw3Vpku5dIVSFVY7idJsGdIpIJ88IrkyprVgCG2yBeXatb67B7yIt0E1tL+OHrJJdNBw6GikCiMPAAu1VA== +esbuild-linux-mips64le@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.46.tgz#8775e12510eaf988a9bc5e6787cf0c87c3eb40d6" + integrity sha512-jnb2NDwGqJUVmxn1v0f7seNdDm0nRNWHP9Z3MrWAGnBCdnnDlsjqRFDnbKoaQvWONEa+rOOr/giK+VL0hgQExA== -esbuild-linux-ppc64le@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.45.tgz#8bddbf67157027e917b6e5b04230d7cf14d62cf2" - integrity sha512-lJItl6ESZnhSx951U9R7MTBopgwIELHlQzC6SBR023V5JC1rPRFDZ/UEBsV+7BFcCAfqlyb+odGEAmcBSf4XCA== +esbuild-linux-ppc64le@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.46.tgz#da003df59859b02e160827e26bc1e107bec23d07" + integrity sha512-uu3JTQUrwwauKY9z8yq5MnDyOlT3f2DNOzBcYz4dB78HqwEqilCsifoBGd0WcbED5n57dc59X+LZMTZ8Ose44w== -esbuild-linux-riscv64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.45.tgz#0f234f63595159cfc976fd5310e7902e8b5a7ad7" - integrity sha512-8anMu+QLl9MununVCGJN2I/JvUWPm1EVsBBLq/J+Nz4hr8t6QOCuEp0HRaeMohyl2XiMFBchVu0mwa05rF7GFQ== +esbuild-linux-riscv64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.46.tgz#b6c4faf9f8482e2a898ec2becac4a6789ae3ff22" + integrity sha512-OB29r1EG44ZY34JnXCRERxo7k4pRKoQdaoRg2HIeCavatsXZwW4LCakpLnMQ72vXT1HtpBUABEjHkKkn5JyrUg== -esbuild-linux-s390x@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.45.tgz#272288e0f30e4fa0f01d6df6572602c7df78c256" - integrity sha512-1TPeNvNCoahMw745KNTA6POKaFfSqQrBb3fdOL82GXZqyKU/6rHNwGP0NgHe88bAUMp3QZfjGfCGKxfBHL77RQ== +esbuild-linux-s390x@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.46.tgz#d30d0f7ee8466c4ec99ac2c689b70514320406b2" + integrity sha512-XQ/U9TueMSGYyPTKyZsJVraiuvxhwCDIMn/QwFXCRCJ6H/Cy/Rq33u9qhpeSziinHKfzJROGx5A8mQY6aYamdQ== esbuild-loader@^2.18.0: version "2.19.0" @@ -11838,61 +11838,61 @@ esbuild-loader@^2.18.0: tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.45.tgz#0f9af25773e025cd1ca5e22277661cb15d36b406" - integrity sha512-55f2eZ8EQhhOZosqX0mApgRoI9PrVyXlHd9Uivk+B0B4WTKUgzkoHaVk4EkIUtNRQTpDWPciTlpb/C2tUYVejA== +esbuild-netbsd-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.46.tgz#fcf2b739b63731b5b264dc584240c0b61dbbf035" + integrity sha512-i15BwqHaAIFp1vBJkitAbHtwXcLk9TdHs/Ia1xGIAutQYXSJNPLM3Z4B4hyfHNEFl2yBqBIYpglMohv2ClNdOQ== -esbuild-openbsd-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.45.tgz#6d47a564eb4b80d9e3aeb4493918b36d17440228" - integrity sha512-Z5sNcT3oN9eryMW3mGn5HAgg7XCxiUS4isqH1tZXpsdOdOESbgbTEP0mBEJU0WU7Vt2gIN5XMbAp7Oigm0k71g== +esbuild-openbsd-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.46.tgz#fc7880751b78b325216e66470b9a3df7b1c21cbf" + integrity sha512-XwOIFCE140Y/PvjrwjFfa/QLWBuvhR1mPCOa35mKx02jt++wPNgf0qhn6HfdVC3vQe7R46RwTp4q2cp99fepEg== -esbuild-sunos-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.45.tgz#cca97d7d31214bddfa1970386883d1f3f2868cec" - integrity sha512-WmWu4wAm8mIxxK9aWFCj5VHunY3BHQDT3dAPexMLLszPyMF7RDtUYf+Dash9tjyitvnoxPAvR7DpWpirDLQIlQ== +esbuild-sunos-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.46.tgz#ab73b91e79ae53dddb035da9bb69ba7dd44d36ee" + integrity sha512-+kV3JnmfdxBVpHyFvuGXWtu6tXxXApOLPkSrVkMJf6+ns/3PLtPndpzwCzHjD+qYUEk8ln4MA+ufQ2qmjW5mZg== -esbuild-windows-32@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.45.tgz#afd98449fd6a741a4655e3e4f0e5ae7081765baf" - integrity sha512-DPPehKwPJFBoSG+jILc/vcJNN8pTwz1m6FWojxqtqPhgw8OabTgN4vL7gNMqL/FSeDxF+zyvZeeMrZFYF1d81Q== +esbuild-windows-32@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.46.tgz#88ad388c896325d273e92dbf28f146d1d34d4351" + integrity sha512-gzGC1Q11B/Bo5A2EX4N22oigWmhL7Z0eDyc8kbSoJjqSrGQuRE7B0uMpluO+q0O/gZ1S3zdw+M4PCWlqOIeXLA== -esbuild-windows-64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.45.tgz#5d284b712b119c6306ac5f32e2a611ac6eec2842" - integrity sha512-t6bxFZcp9bLmSs+1pCNL/BW2bq3QEQHxU4HoiMEyWfF8QBU8iNXFI1iLGdyCzB1Ue2739h55tpOvojFrfyNPWA== +esbuild-windows-64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.46.tgz#bfb21b68d54d0db86190f8073cbf66a86bd0de14" + integrity sha512-Do2daaskfOjmCB7o3ygz6fD3K6SPjZLERiZLktzHz2oUCwsebKu/gmop0+j/XdrVIXC32wFzHzDS+9CTu9OShw== -esbuild-windows-arm64@0.14.45: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.45.tgz#08089d4cc921939ed352d9c2d928b5d867a6dc67" - integrity sha512-DnhrvjECBJ2L0owoznPb4RqQKZ498SM8J+YHqmqzi0Gf/enkUwwTjB8vPCK6dDuFnNU/NE8f94FhKdkBHYruDQ== +esbuild-windows-arm64@0.14.46: + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.46.tgz#b8aa66a0c347342b9ae780b537d5574e9691c123" + integrity sha512-VEzMy6bM60/HT/URTDElyhfi2Pk0quCCrEhRlI4MRno/AIqYUGw0rZwkPl6PeoqVI6BgoBHGY576GWTiPmshCA== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: - version "0.14.45" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.45.tgz#3e3192894f91c32cf19207726f136278be46e968" - integrity sha512-JOxGUD8jcs8xE8DjyGWC8by/vLMCXTJ/wuauWipL5kJRZx1dhpqIntb31QHjA45GZJWaXv7SjC/Zwu1bCkXWtQ== + version "0.14.46" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.46.tgz#d548cfc13fecfd4bc074ce38e0122d1dd9b067db" + integrity sha512-vdm5G1JdZBktva8dwQci/s44VbeBUg8g907xoZx77mqFZ4gU5GlMULNsdGeID+qXCXocsfYSGtE0LvqH3eiNQg== optionalDependencies: - esbuild-android-64 "0.14.45" - esbuild-android-arm64 "0.14.45" - esbuild-darwin-64 "0.14.45" - esbuild-darwin-arm64 "0.14.45" - esbuild-freebsd-64 "0.14.45" - esbuild-freebsd-arm64 "0.14.45" - esbuild-linux-32 "0.14.45" - esbuild-linux-64 "0.14.45" - esbuild-linux-arm "0.14.45" - esbuild-linux-arm64 "0.14.45" - esbuild-linux-mips64le "0.14.45" - esbuild-linux-ppc64le "0.14.45" - esbuild-linux-riscv64 "0.14.45" - esbuild-linux-s390x "0.14.45" - esbuild-netbsd-64 "0.14.45" - esbuild-openbsd-64 "0.14.45" - esbuild-sunos-64 "0.14.45" - esbuild-windows-32 "0.14.45" - esbuild-windows-64 "0.14.45" - esbuild-windows-arm64 "0.14.45" + esbuild-android-64 "0.14.46" + esbuild-android-arm64 "0.14.46" + esbuild-darwin-64 "0.14.46" + esbuild-darwin-arm64 "0.14.46" + esbuild-freebsd-64 "0.14.46" + esbuild-freebsd-arm64 "0.14.46" + esbuild-linux-32 "0.14.46" + esbuild-linux-64 "0.14.46" + esbuild-linux-arm "0.14.46" + esbuild-linux-arm64 "0.14.46" + esbuild-linux-mips64le "0.14.46" + esbuild-linux-ppc64le "0.14.46" + esbuild-linux-riscv64 "0.14.46" + esbuild-linux-s390x "0.14.46" + esbuild-netbsd-64 "0.14.46" + esbuild-openbsd-64 "0.14.46" + esbuild-sunos-64 "0.14.46" + esbuild-windows-32 "0.14.46" + esbuild-windows-64 "0.14.46" + esbuild-windows-arm64 "0.14.46" escalade@^3.1.1: version "3.1.1" From 3830cc6e521fc129771d630ad179c26154100d56 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 14:10:32 +0000 Subject: [PATCH 519/550] fix(deps): update dependency rollup to v2.75.7 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a4cb216837..0fbd49a0f6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22544,9 +22544,9 @@ rollup@^0.63.4: "@types/node" "*" rollup@^2.60.2: - version "2.75.6" - resolved "https://registry.npmjs.org/rollup/-/rollup-2.75.6.tgz#ac4dc8600f95942a0180f61c7c9d6200e374b439" - integrity sha512-OEf0TgpC9vU6WGROJIk1JA3LR5vk/yvqlzxqdrE2CzzXnqKXNzbAwlWUXis8RS3ZPe7LAq+YUxsRa0l3r27MLA== + version "2.75.7" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.75.7.tgz#221ff11887ae271e37dcc649ba32ce1590aaa0b9" + integrity sha512-VSE1iy0eaAYNCxEXaleThdFXqZJ42qDBatAwrfnPlENEZ8erQ+0LYX4JXOLPceWfZpV1VtZwZ3dFCuOZiSyFtQ== optionalDependencies: fsevents "~2.3.2" From 4d1e94f1ec2e6852f2b752495efe29b365566188 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 14:11:25 +0000 Subject: [PATCH 520/550] fix(deps): update apollo graphql packages to v3.9.0 Signed-off-by: Renovate Bot --- yarn.lock | 106 +++++++++++++++++++++++++++++------------------------- 1 file changed, 58 insertions(+), 48 deletions(-) diff --git a/yarn.lock b/yarn.lock index a4cb216837..55f88ef402 100644 --- a/yarn.lock +++ b/yarn.lock @@ -49,6 +49,14 @@ resolved "https://registry.npmjs.org/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz#02b04006442eaf037f4c4624146b12775d70d929" integrity sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg== +"@apollo/utils.keyvaluecache@^1.0.1": + version "1.0.1" + resolved "https://registry.npmjs.org/@apollo/utils.keyvaluecache/-/utils.keyvaluecache-1.0.1.tgz#46f310f859067efe9fa126156c6954f8381080d2" + integrity sha512-nLgYLomqjVimEzQ4cdvVQkcryi970NDvcRVPfd0OPeXhBfda38WjBq+WhQFk+czSHrmrSp34YHBxpat0EtiowA== + dependencies: + "@apollo/utils.logger" "^1.0.0" + lru-cache "^7.10.1" + "@apollo/utils.logger@^1.0.0": version "1.0.0" resolved "https://registry.npmjs.org/@apollo/utils.logger/-/utils.logger-1.0.0.tgz#6e3460a2250c2ef7c2c3b0be6b5e148a1596f12b" @@ -5964,7 +5972,7 @@ resolved "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz#8288e51737bf7e3ab5d7c77bfa695883745264e5" integrity sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg== -"@types/express-serve-static-core@*", "@types/express-serve-static-core@4.17.28", "@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.5": +"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.5": version "4.17.28" resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8" integrity sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig== @@ -5973,6 +5981,15 @@ "@types/qs" "*" "@types/range-parser" "*" +"@types/express-serve-static-core@4.17.29": + version "4.17.29" + resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.29.tgz#2a1795ea8e9e9c91b4a4bbe475034b20c1ec711c" + integrity sha512-uMd++6dMKS32EOuw1Uli3e3BPgdLIXmezcfHv7N4c1s3gkhikBplORPpMq3fuWkxncZN1reb16d5n8yhQ80x7Q== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + "@types/express-session@^1.17.2": version "1.17.4" resolved "https://registry.npmjs.org/@types/express-session/-/express-session-1.17.4.tgz#97a30a35e853a61bdd26e727453b8ed314d6166b" @@ -7592,12 +7609,12 @@ anymatch@^3.0.3, anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -apollo-datasource@^3.3.1: - version "3.3.1" - resolved "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-3.3.1.tgz#a1168dd68371930de3ed4245ad12fa8600efe2cc" - integrity sha512-Z3a8rEUXVPIZ1p8xrFL8bcNhWmhOmovgDArvwIwmJOBnh093ZpRfO+ESJEDAN4KswmyzCLDAwjsW4zQOONdRUw== +apollo-datasource@^3.3.2: + version "3.3.2" + resolved "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-3.3.2.tgz#5711f8b38d4b7b53fb788cb4dbd4a6a526ea74c8" + integrity sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg== dependencies: - apollo-server-caching "^3.3.0" + "@apollo/utils.keyvaluecache" "^1.0.1" apollo-server-env "^4.2.1" apollo-reporting-protobuf@^3.3.1: @@ -7607,18 +7624,12 @@ apollo-reporting-protobuf@^3.3.1: dependencies: "@apollo/protobufjs" "1.2.2" -apollo-server-caching@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-3.3.0.tgz#f501cbeb820a4201d98c2b768c085f22848d9dc5" - integrity sha512-Wgcb0ArjZ5DjQ7ID+tvxUcZ7Yxdbk5l1MxZL8D8gkyjooOkhPNzjRVQ7ubPoXqO54PrOMOTm1ejVhsF+AfIirQ== - dependencies: - lru-cache "^6.0.0" - -apollo-server-core@^3.8.2: - version "3.8.2" - resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.8.2.tgz#a065e00220d6c709b11b824197520adee6d897d2" - integrity sha512-cbzG928HG27W+juMVCIL1O//iyAj/Q2hnOu6YwrGrcqeE75ZIJSgSBm/gPHK20cI7nEjK2IWACx8Hj1nGAQ5Zg== +apollo-server-core@^3.9.0: + version "3.9.0" + resolved "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.9.0.tgz#44b39e378314cfc0596be7003d3f1f1397c88eea" + integrity sha512-WS54C33cTriDaBIcj7ijWv/fgeJICcrQKlP1Cn6pnZp/eumpMraezLeJ3gFWAXprOuR2E3fZe64lNlup0fMu8w== dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" "@apollo/utils.logger" "^1.0.0" "@apollo/utils.usagereporting" "^1.0.0" "@apollographql/apollo-tools" "^0.5.3" @@ -7626,13 +7637,12 @@ apollo-server-core@^3.8.2: "@graphql-tools/mock" "^8.1.2" "@graphql-tools/schema" "^8.0.0" "@josephg/resolvable" "^1.0.0" - apollo-datasource "^3.3.1" + apollo-datasource "^3.3.2" apollo-reporting-protobuf "^3.3.1" - apollo-server-caching "^3.3.0" apollo-server-env "^4.2.1" apollo-server-errors "^3.3.1" - apollo-server-plugin-base "^3.6.0" - apollo-server-types "^3.6.0" + apollo-server-plugin-base "^3.6.1" + apollo-server-types "^3.6.1" async-retry "^1.2.1" fast-json-stable-stringify "^2.1.0" graphql-tag "^2.11.0" @@ -7654,48 +7664,48 @@ apollo-server-errors@^3.3.1: resolved "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz#ba5c00cdaa33d4cbd09779f8cb6f47475d1cd655" integrity sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA== -apollo-server-express@^3.0.0, apollo-server-express@^3.8.2: - version "3.8.2" - resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.8.2.tgz#51285279f8a52eb7d88a4f4145261b6f69b12ba6" - integrity sha512-UIpjs0qwOGJ0U1IokrtfjgpQVoirr7E1w446mx6B0EqV8sIFgdEE253utxtHi80va37h/xuEIUuAZFRQaY6ClQ== +apollo-server-express@^3.0.0, apollo-server-express@^3.9.0: + version "3.9.0" + resolved "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.9.0.tgz#1ff3b53fe76e4e8be04b8477ea8a3d9586313af1" + integrity sha512-scSeHy9iB7W3OiF3uLQEzad9Jm9tEfDF8ACsJb2P+xX69uqg6zizsrQvj3qRhazCO7FKMcMu9zQFR0hy7zKbUA== dependencies: "@types/accepts" "^1.3.5" "@types/body-parser" "1.19.2" "@types/cors" "2.8.12" "@types/express" "4.17.13" - "@types/express-serve-static-core" "4.17.28" + "@types/express-serve-static-core" "4.17.29" accepts "^1.3.5" - apollo-server-core "^3.8.2" - apollo-server-types "^3.6.0" + apollo-server-core "^3.9.0" + apollo-server-types "^3.6.1" body-parser "^1.19.0" cors "^2.8.5" parseurl "^1.3.3" -apollo-server-plugin-base@^3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.6.0.tgz#f85e19fa4a33866ef1b4235077397a63a9a7343e" - integrity sha512-GtXhczRGpTLQyFPWeWSnX1VcN2JaaAU7WT8PzoTQuJKYJ/Aj5mPebHbfG+PXQlDmI8IgyCKf7B1HIRnJqvAZbg== +apollo-server-plugin-base@^3.6.1: + version "3.6.1" + resolved "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.6.1.tgz#33e9f26433d5a8b8ed5d27e9fa88de9ef0c2c704" + integrity sha512-bFpxzWO0LTTtSAkGVBeaAtnQXJ5ZCi8eaLN/eMSju8RByifmF3Kr6gAqcOZhOH/geQEt3Y6G8n3bR0eHTGxljQ== dependencies: - apollo-server-types "^3.6.0" + apollo-server-types "^3.6.1" -apollo-server-types@^3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.6.0.tgz#29fd8369aad99d42f72b760eb12bfe2c888da901" - integrity sha512-zISCkwXvwTHK2AysWSfLAUvDLSDJ0xj8pnfxDv34hqA+G9JqsLbykJdSL1Y1kT53HU4RWF6ymTuTwwOmmBiAWA== +apollo-server-types@^3.6.1: + version "3.6.1" + resolved "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.6.1.tgz#704e5309bd947306030df01f982e36d1d4753eaa" + integrity sha512-XOPlBlRdwP00PrG03OffGGWuzyei+J9t1rAnvyHsSdP0JCgQWigHJfvL1N9Bhgi4UTjl9JadKOJh1znLNlqIFQ== dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" "@apollo/utils.logger" "^1.0.0" apollo-reporting-protobuf "^3.3.1" - apollo-server-caching "^3.3.0" apollo-server-env "^4.2.1" apollo-server@^3.0.0: - version "3.8.2" - resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.8.2.tgz#15a9263d56ac3a44a5c186d9aafed90c1c2687da" - integrity sha512-XBWTn9uMLKgob60qOlAphOIpY81dDfF5uonCvO154Qx5TJ6IRqER38StIgEgQLLRcR4RZ40uMvbwofZRHfXecA== + version "3.9.0" + resolved "https://registry.npmjs.org/apollo-server/-/apollo-server-3.9.0.tgz#391b60c4c24d37c65855cccc8aa886e684bc1776" + integrity sha512-g80gXDuK8fl2W0fQF/hEyeoO9AU+sO2gBzeJAYUyGLotYc+oL/Y3mTRk5GB8C7cXUXCg5uvWbUj8va0E5UZE7w== dependencies: "@types/express" "4.17.13" - apollo-server-core "^3.8.2" - apollo-server-express "^3.8.2" + apollo-server-core "^3.9.0" + apollo-server-express "^3.9.0" express "^4.17.1" aproba@^1.0.3: @@ -17434,16 +17444,16 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^7.10.1, lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: + version "7.10.1" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.10.1.tgz#db577f42a94c168f676b638d15da8fb073448cab" + integrity sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A== + lru-cache@^7.3.1: version "7.3.1" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.3.1.tgz#7702e80694ec2bf19865567a469f2b081fcf53f5" integrity sha512-nX1x4qUrKqwbIAhv4s9et4FIUVzNOpeY07bsjGUy8gwJrXH/wScImSQqXErmo/b2jZY2r0mohbLA9zVj7u1cNw== -lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: - version "7.10.1" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.10.1.tgz#db577f42a94c168f676b638d15da8fb073448cab" - integrity sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A== - lunr@^2.3.9: version "2.3.9" resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" From cc2e92c20119f0be96bd8276f1e968f4f5a6c4c2 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Mon, 20 Jun 2022 16:12:24 +0200 Subject: [PATCH 521/550] chore: Bump got to version 11.8.5 Signed-off-by: Johan Haals --- yarn.lock | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index a4cb216837..e0c1da48d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13766,7 +13766,7 @@ google-protobuf@^3.15.8, google-protobuf@^3.19.1: resolved "https://registry.npmjs.org/google-protobuf/-/google-protobuf-3.20.1.tgz#1b255c2b59bcda7c399df46c65206aa3c7a0ce8b" integrity sha512-XMf1+O32FjYIV3CYu6Tuh5PNbfNEU5Xu22X+Xkdb/DUexFlCzhvv7d5Iirm4AOwn8lv4al1YvIhzGrg2j9Zfzw== -got@11.8.3, got@^11.8.0: +got@11.8.3: version "11.8.3" resolved "https://registry.npmjs.org/got/-/got-11.8.3.tgz#f496c8fdda5d729a90b4905d2b07dbd148170770" integrity sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg== @@ -13783,6 +13783,23 @@ got@11.8.3, got@^11.8.0: p-cancelable "^2.0.0" responselike "^2.0.0" +got@^11.8.0: + version "11.8.5" + resolved "https://registry.npmjs.org/got/-/got-11.8.5.tgz#ce77d045136de56e8f024bebb82ea349bc730046" + integrity sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ== + dependencies: + "@sindresorhus/is" "^4.0.0" + "@szmarczak/http-timer" "^4.0.5" + "@types/cacheable-request" "^6.0.1" + "@types/responselike" "^1.0.0" + cacheable-lookup "^5.0.3" + cacheable-request "^7.0.2" + decompress-response "^6.0.0" + http2-wrapper "^1.0.0-beta.5.2" + lowercase-keys "^2.0.0" + p-cancelable "^2.0.0" + responselike "^2.0.0" + got@^9.6.0: version "9.6.0" resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" From 887feaf6e428a765afefa6a6193f170e07436c8d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 15:01:49 +0000 Subject: [PATCH 522/550] fix(deps): update dependency @azure/msal-node to v1.10.0 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0fbd49a0f6..f800b27e98 100644 --- a/yarn.lock +++ b/yarn.lock @@ -320,17 +320,17 @@ dependencies: debug "^4.1.1" -"@azure/msal-common@^6.4.0": - version "6.4.0" - resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.4.0.tgz#434a55be9639cb5c7910c0cc1a46555ff0bc6c39" - integrity sha512-WZdgq9f9O8cbxGzdRwLLMM5xjmLJ2mdtuzgXeiGxIRkVVlJ9nZ6sWnDFKa2TX8j72UXD1IfL0p/RYNoTXYoGfg== +"@azure/msal-common@^7.0.0": + version "7.0.0" + resolved "https://registry.npmjs.org/@azure/msal-common/-/msal-common-7.0.0.tgz#f4b52c6d9591cf8720dcb24c1d21fce2d186f871" + integrity sha512-EkaHGjv0kw1RljhboeffM91b+v9d5VtmyG+0a/gvdqjbLu3kDzEfoaS5BNM9QqMzbxgZylsjAjQDtxdHLX/ziA== "@azure/msal-node@^1.1.0", "@azure/msal-node@^1.3.0": - version "1.9.1" - resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.9.1.tgz#86f130fa50a5409a0e47a0ba192c7cdec42bd34c" - integrity sha512-chr914ZuKPvKEW1JPNDRhgdrzbA9PkVknV+q01h+eVhFZvHfO0pIFoP4dOU96ZdBkMmdD5kAP1Snv1gAdVXMIg== + version "1.10.0" + resolved "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.10.0.tgz#ee3a26201c4899cc6928cc331c31d3568d3cb728" + integrity sha512-oSv9mg199FpRTe+fZ3o9NDYpKShOHqeceaNcCHJcKUaAaCojAbfbxD1Cvsti8BEsLKE6x0HcnjilnM1MKmZekA== dependencies: - "@azure/msal-common" "^6.4.0" + "@azure/msal-common" "^7.0.0" jsonwebtoken "^8.5.1" uuid "^8.3.0" From 29004975bf631d7e848bc4ed9bbc41be481e63b3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 15:02:36 +0000 Subject: [PATCH 523/550] fix(deps): update dependency @microsoft/microsoft-graph-types to v2.21.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0fbd49a0f6..c5eb52f5de 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4175,9 +4175,9 @@ typescript "~4.6.3" "@microsoft/microsoft-graph-types@^2.6.0": - version "2.20.0" - resolved "https://registry.npmjs.org/@microsoft/microsoft-graph-types/-/microsoft-graph-types-2.20.0.tgz#fc532a5dc146c0b8a6f78a633fe930535f8cdc42" - integrity sha512-T1EPoYdH4124Rg+h261dvW2qAeSRAotHM/6lv10fDsYX4DWsppvresmfhGbPrLApK/lRTRj93bn4/Nwwmdv4Zg== + version "2.21.0" + resolved "https://registry.npmjs.org/@microsoft/microsoft-graph-types/-/microsoft-graph-types-2.21.0.tgz#3244b41374307f590948e25fb2de8dad2a8a81c9" + integrity sha512-ZbYetXyUqHZliM8exZzF7IPEKVMvR+PaY+P9bjNHpxeiacF3U9+c40YRv0TJHpF6+50GWmJmPD6BsKHVRBZiCA== "@microsoft/tsdoc-config@~0.16.1": version "0.16.1" From dfff843da20830255255c80333a7e5fc4b141a9e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 16:01:15 +0000 Subject: [PATCH 524/550] chore(deps): update dependency @types/express-serve-static-core to v4.17.29 Signed-off-by: Renovate Bot --- yarn.lock | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index e5c3f7e7b0..6e3c54533a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5972,16 +5972,7 @@ resolved "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz#8288e51737bf7e3ab5d7c77bfa695883745264e5" integrity sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg== -"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.5": - version "4.17.28" - resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8" - integrity sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" - -"@types/express-serve-static-core@4.17.29": +"@types/express-serve-static-core@*", "@types/express-serve-static-core@4.17.29", "@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.5": version "4.17.29" resolved "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.29.tgz#2a1795ea8e9e9c91b4a4bbe475034b20c1ec711c" integrity sha512-uMd++6dMKS32EOuw1Uli3e3BPgdLIXmezcfHv7N4c1s3gkhikBplORPpMq3fuWkxncZN1reb16d5n8yhQ80x7Q== From a0462863e556ca232a9611522eef4c4b1548e758 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 16:02:13 +0000 Subject: [PATCH 525/550] fix(deps): update dependency @octokit/webhooks to v9.26.0 Signed-off-by: Renovate Bot --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index e5c3f7e7b0..c252eec6c9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4878,19 +4878,19 @@ resolved "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-2.0.0.tgz#1108b9ea661ca6c81e4a8bfa63a09eb27d5bc2db" integrity sha512-35cfQ4YWlnZnmZKmIxlGPUPLtbkF8lr/A/1Sk1eC0ddLMwQN06dOuLc+dI3YLQS+T+MoNt3DIQ0NynwgKPilig== -"@octokit/webhooks-types@5.7.1": - version "5.7.1" - resolved "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.7.1.tgz#26452dcd72fa77ac85bb188fda2a5980eb292932" - integrity sha512-zabCzfWvvquxDzj1lU7GhJQteACGfGXnHfROJD4A7LKhRjlkaggoSkE5cWQJJ6nW2t/UI51dSFrEA+A4mhqfPw== +"@octokit/webhooks-types@5.8.0": + version "5.8.0" + resolved "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.8.0.tgz#b76d1a3e3ad82cec5680d3c6c3443a620047a6ef" + integrity sha512-8adktjIb76A7viIdayQSFuBEwOzwhDC+9yxZpKNHjfzrlostHCw0/N7JWpWMObfElwvJMk2fY2l1noENCk9wmw== "@octokit/webhooks@^9.0.1", "@octokit/webhooks@^9.14.1": - version "9.25.0" - resolved "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.25.0.tgz#f1bd7815af59fb37892b87c86d2cb8625a570e9a" - integrity sha512-pyCraAmxHSnfTMe4K+QnNH/nSCJolCc++J2SAfYBwPFm6gg2WTGxWuegzuHul+Xm71+V9qL2NhIXX48U7MvTIA== + version "9.26.0" + resolved "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.26.0.tgz#cf453bb313da3b66f1a90c84464d978e1c625cce" + integrity sha512-foZlsgrTDwAmD5j2Czn6ji10lbWjGDVsUxTIydjG9KTkAWKJrFapXJgO5SbGxRwfPd3OJdhK3nA2YPqVhxLXqA== dependencies: "@octokit/request-error" "^2.0.2" "@octokit/webhooks-methods" "^2.0.0" - "@octokit/webhooks-types" "5.7.1" + "@octokit/webhooks-types" "5.8.0" aggregate-error "^3.1.0" "@open-draft/until@^1.0.3": From 78a2a631f9498e43070bd555567840b06a72619c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 17:09:22 +0000 Subject: [PATCH 526/550] fix(deps): update dependency aws-sdk to v2.1157.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8ff0237204..6334baa237 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8057,9 +8057,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1151.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1151.0.tgz#8fcb41c3b919842a7b4e5c4cd9e124f6439b5b67" - integrity sha512-VvyzXAmWrX+klvwzA+9gSTY7blDnZOTl0UTKrqmFL4K7tOLieGLYTUkpUegcPxCjYgEg7JwvYolYUnUKiHa4oA== + version "2.1157.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1157.0.tgz#d00b5ea932439de38e19435b48a6a2b38aa7c805" + integrity sha512-30t+zhCECib8uaggd0Du8ifab4vtJjgVvNKxHWTpiLa3deTnM+0K7x3pwM99zxw0gLDxAUet/oURaoPJHwk/5Q== dependencies: buffer "4.9.2" events "1.1.1" From 113da5b9bad61ec02884ebdffadf7da4eb481ca7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 17:10:11 +0000 Subject: [PATCH 527/550] fix(deps): update dependency core-js to v3.23.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8ff0237204..f82a89200b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10069,9 +10069,9 @@ core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.10: integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== core-js@^3.4.1, core-js@^3.6.5: - version "3.22.8" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.22.8.tgz#23f860b1fe60797cc4f704d76c93fea8a2f60631" - integrity sha512-UoGQ/cfzGYIuiq6Z7vWL1HfkE9U9IZ4Ub+0XSiJTCzvbZzgPA69oDF2f+lgJ6dFFLEdjW5O6svvoKzXX23xFkA== + version "3.23.1" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.23.1.tgz#9f9a9255115f62c512db56d567f636da32ca0b78" + integrity sha512-wfMYHWi1WQjpgZNC9kAlN4ut04TM9fUTdi7CqIoTVM7yaiOUQTklOzfb+oWH3r9edQcT3F887swuVmxrV+CC8w== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" From 79bc3dadfa64b4021c6e88c74c57477fe9a0569e Mon Sep 17 00:00:00 2001 From: apacciaroni Date: Mon, 20 Jun 2022 14:47:45 -0300 Subject: [PATCH 528/550] Added Funding Circle to ADOPTERS Signed-off-by: apacciaroni --- ADOPTERS.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 538ae8b11e..10b605a8d4 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -181,5 +181,5 @@ _If you're using Backstage in your organization, please try to add your company | [Polarpoint](https://polarpoint.io/) | [Surj Bains](https://github.com/polarpoint-io) | We are using Backstage as our Developer portal as well as for hosting our DevOps portal for software catalog. | | [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | | [Mercedes-Benz.io](https://www.mercedes-benz.io/) | [Manuel Santos](https://github.com/manusant) | At Mercedes-Benz we use it as a developer portal with software catalog, TechDocs, Scaffolding and custom plugins. It provides an overview of our tech ecosystem to our product development teams. The portal also serves as a way to foster collaboration among the numerous companies of the Mercedes-Benz Group. - - +| [Funding Circle](https://www.fundingcircle.com/) | [Ariel Pacciaroni](https://github.com/arielpacciaroni) | We are building the internal developer portal using Backstage project and centralizing all services information at one place. The portal helps us track down repositories ownership as well as direct access to key information on every component. + From 0054d54afa494aa344c8797fe3e0228139d75d96 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 18:08:47 +0000 Subject: [PATCH 529/550] fix(deps): update dependency cronstrue to v2.10.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9363076f63..5431e7d274 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10187,9 +10187,9 @@ cron@^2.0.0: luxon "^1.23.x" cronstrue@^2.2.0: - version "2.9.0" - resolved "https://registry.npmjs.org/cronstrue/-/cronstrue-2.9.0.tgz#f63c376060c8e019d748564d6eb128d6cac76210" - integrity sha512-PZSsUZU7O+R0JdsquKMXlm41tm62oO5fVYoXi6QI/eRAYxgbkPJ/OcLrVxUM+JNRy5yv0QEI84YG1mUjEo4RLA== + version "2.10.0" + resolved "https://registry.npmjs.org/cronstrue/-/cronstrue-2.10.0.tgz#9b57e9acc18eb44ebe9be5dc993753fd7d6d8e56" + integrity sha512-WCCaKuuzjZJl/xTaJiK2KB2lhHqAz+cTAHgSiZQc/pNnF2XUSZX0FBfxAG0qa9CogToNoQw7pEBJExc77QnFBQ== cross-env@^7.0.0: version "7.0.3" From 652cd7744ad2a21eedbe34a3241baa0fc77a608f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 18:09:36 +0000 Subject: [PATCH 530/550] fix(deps): update dependency eslint to v8.18.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9363076f63..49b2188a30 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12126,9 +12126,9 @@ eslint-webpack-plugin@^3.1.1: schema-utils "^3.1.1" eslint@^8.6.0: - version "8.17.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-8.17.0.tgz#1cfc4b6b6912f77d24b874ca1506b0fe09328c21" - integrity sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw== + version "8.18.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-8.18.0.tgz#78d565d16c993d0b73968c523c0446b13da784fd" + integrity sha512-As1EfFMVk7Xc6/CvhssHUjsAQSkpfXvUGMFC3ce8JDe6WvqCgRrLOBQbVpsBFr1X1V+RACOadnzVvcUS5ni2bA== dependencies: "@eslint/eslintrc" "^1.3.0" "@humanwhocodes/config-array" "^0.9.2" From 626dcdc688e33ee0b1ea6bc0ec40f8b265a6f3b2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 19:07:49 +0000 Subject: [PATCH 531/550] fix(deps): update dependency keyv to v4.3.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8a48471223..84a14a2b9c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16660,9 +16660,9 @@ keyv@^3.0.0: json-buffer "3.0.0" keyv@^4.0.0, keyv@^4.0.3: - version "4.3.0" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.3.0.tgz#b4352e0e4fe7c94111947d6738a6d3fe7903027c" - integrity sha512-C30Un9+63J0CsR7Wka5quXKqYZsT6dcRQ2aOwGcSc3RiQ4HGWpTAHlCA+puNfw2jA/s11EsxA1nCXgZRuRKMQQ== + version "4.3.1" + resolved "https://registry.npmjs.org/keyv/-/keyv-4.3.1.tgz#7970672f137d987945821b1a07b524ce5a4edd27" + integrity sha512-nwP7AQOxFzELXsNq3zCx/oh81zu4DHWwCE6W9RaeHb7OHO0JpmKS8n801ovVQC7PTsZDWtPA5j1QY+/WWtARYg== dependencies: compress-brotli "^1.3.8" json-buffer "3.0.1" From f3bf1051fba99a6768ca3a24ac251ec8135aa1f1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 19:08:55 +0000 Subject: [PATCH 532/550] fix(deps): update dependency aws-sdk to v2.1158.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8a48471223..f1e48ae0d4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8057,9 +8057,9 @@ aws-sdk-mock@^5.2.1: traverse "^0.6.6" aws-sdk@^2.1122.0, aws-sdk@^2.840.0, aws-sdk@^2.948.0: - version "2.1157.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1157.0.tgz#d00b5ea932439de38e19435b48a6a2b38aa7c805" - integrity sha512-30t+zhCECib8uaggd0Du8ifab4vtJjgVvNKxHWTpiLa3deTnM+0K7x3pwM99zxw0gLDxAUet/oURaoPJHwk/5Q== + version "2.1158.0" + resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1158.0.tgz#924fb6dda1acecb1dc1c8901095cf64d6acdade4" + integrity sha512-uHYzZMGE+b50sWXaLhga4aD1SpB3+DEZclAkg9aYz2pDZlSDTOMh3uJ/ufsMBs7VcDKGS7mQRibCmCbwRGTIlg== dependencies: buffer "4.9.2" events "1.1.1" From 10a2ea28a35dbe0351626ca7e68e11711bed4e66 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 20:10:06 +0000 Subject: [PATCH 533/550] fix(deps): update dependency @google-cloud/container to v4.0.1 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 139d32e691..b82d3c8041 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2059,9 +2059,9 @@ xcase "^2.0.1" "@google-cloud/container@^4.0.0": - version "4.0.0" - resolved "https://registry.npmjs.org/@google-cloud/container/-/container-4.0.0.tgz#9bcfe2d404b739844766a91c0dd2b3fc63d014d1" - integrity sha512-nndrAVyZ34I9LykL1DIDONskl/hRmXmvtTbWrcm+Jep6Lm1bCJ0LkgMGg8yLS1tqWrdhIl73+xwcVfiY2dm7ig== + version "4.0.1" + resolved "https://registry.npmjs.org/@google-cloud/container/-/container-4.0.1.tgz#a3206d3030539e09b7beee8f351fad86c77af79d" + integrity sha512-JpsOsdKnCQm1b5aVNnO/2Urdg+qbCLi/srEnTupRj73Pu5wXLHXOCe3vy8Z2GvyCqu7qr89fMREQ4kO4QijnHA== dependencies: google-gax "^3.0.1" From c8b2509afb3af648a3e628dc347013cbb8c6c690 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 20:10:53 +0000 Subject: [PATCH 534/550] fix(deps): update dependency core-js to v3.23.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 139d32e691..958a700c27 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10069,9 +10069,9 @@ core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.10: integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== core-js@^3.4.1, core-js@^3.6.5: - version "3.23.1" - resolved "https://registry.npmjs.org/core-js/-/core-js-3.23.1.tgz#9f9a9255115f62c512db56d567f636da32ca0b78" - integrity sha512-wfMYHWi1WQjpgZNC9kAlN4ut04TM9fUTdi7CqIoTVM7yaiOUQTklOzfb+oWH3r9edQcT3F887swuVmxrV+CC8w== + version "3.23.2" + resolved "https://registry.npmjs.org/core-js/-/core-js-3.23.2.tgz#e07a60ca8b14dd129cabdc3d2551baf5a01c76f0" + integrity sha512-ELJOWxNrJfOH/WK4VJ3Qd+fOqZuOuDNDJz0xG6Bt4mGg2eO/UT9CljCrbqDGovjLKUrGajEEBcoTOc0w+yBYeQ== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" From b199c774efba110b044d67e8f0a02d2f45bec1ef Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 22:29:14 +0000 Subject: [PATCH 535/550] fix(deps): update dependency @roadiehq/backstage-plugin-github-pull-requests to v2.2.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a7821c4c16..1d2789e9a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5078,9 +5078,9 @@ zustand "3.6.9" "@roadiehq/backstage-plugin-github-pull-requests@^2.0.0": - version "2.1.4" - resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.1.4.tgz#2b60230a0a6330c9c7d6a8c08492361b12a1b83a" - integrity sha512-H0Nr2MFQ2iiMLve/l3jqe6HMYwKRkeWNPEvPGkAMMtYmtnMTRMrXuYv+5piPzlwXiwss0NedNdwlVcGsY1J/cw== + version "2.2.0" + resolved "https://registry.npmjs.org/@roadiehq/backstage-plugin-github-pull-requests/-/backstage-plugin-github-pull-requests-2.2.0.tgz#6c62c965842819bae185f96e1fbd1c26cf64c564" + integrity sha512-UNpfVMEx3WmUqIpIWPvf8uEZzCClff5H2krT/8iS3yaEP1ng9ZfLQPV7JgF8Bvaad37M08mCuvdmurtL6L3xSw== dependencies: "@backstage/catalog-model" "^1.0.0" "@backstage/core-components" "^0.9.0" From 0137c4a57c09fd4b8fa15f3e51321d4ae70627c4 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 22:30:52 +0000 Subject: [PATCH 536/550] fix(deps): update dependency eslint-plugin-react-hooks to v4.6.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index a7821c4c16..1f6bf1d974 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12057,9 +12057,9 @@ eslint-plugin-notice@^0.9.10: metric-lcs "^0.1.2" eslint-plugin-react-hooks@^4.3.0: - version "4.5.0" - resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.5.0.tgz#5f762dfedf8b2cf431c689f533c9d3fa5dcf25ad" - integrity sha512-8k1gRt7D7h03kd+SAAlzXkQwWK22BnK6GKZG+FJA6BAGy22CFvl8kCIXKpVux0cCxMWDQUPqSok0LKaZ0aOcCw== + version "4.6.0" + resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" + integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g== eslint-plugin-react@^7.28.0: version "7.30.0" From ca2885d5bc05114699ab4d9781cabc1120f98af7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 23:17:08 +0000 Subject: [PATCH 537/550] fix(deps): update dependency express-prom-bundle to v6.5.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1d2789e9a2..95fae6249c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12485,9 +12485,9 @@ expect@^27.5.1: jest-message-util "^27.5.1" express-prom-bundle@^6.3.6: - version "6.4.1" - resolved "https://registry.npmjs.org/express-prom-bundle/-/express-prom-bundle-6.4.1.tgz#a688050b9e090f6969825c33143106d3e0e5a70e" - integrity sha512-Sg0svLQe/SS5z1tHDTVfZVjNumobiDlXM0jmemt5Dm9K6BX8z9yCwEr93zbko6fNMR4zKav77iPfxUWi6gAjNA== + version "6.5.0" + resolved "https://registry.npmjs.org/express-prom-bundle/-/express-prom-bundle-6.5.0.tgz#cdf28b29907618cae933ed14d5b727f7404e810b" + integrity sha512-paFAm0FK7TV1Ln6Blh9edDt2mJ4Pk6Py/fjhZDMcoMHENYryBjCpnXDXuCu8NE1kkvp58IrPcAAkNeNqdvZnnw== dependencies: on-finished "^2.3.0" url-value-parser "^2.0.0" From 032f16f5dc29a98033cd135a4314d2accc1a7bea Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 20 Jun 2022 23:17:54 +0000 Subject: [PATCH 538/550] fix(deps): update dependency graphql-ws to v5.9.0 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1d2789e9a2..464890a6f4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13896,9 +13896,9 @@ graphql-type-json@^0.3.2: integrity sha512-J+vjof74oMlCWXSvt0DOf2APEdZOCdubEvGDUAlqH//VBYcOYsGgRW7Xzorr44LvkjiuvecWc8fChxuZZbChtg== graphql-ws@^5.4.1: - version "5.8.2" - resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.8.2.tgz#800184b1addb20b3010dc06cb70877703a5fff20" - integrity sha512-hYo8kTGzxePFJtMGC7Y4cbypwifMphIJJ7n4TDcVUAfviRwQBnmZAbfZlC+XFwWDUaR7raEDQPxWctpccmE0JQ== + version "5.9.0" + resolved "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.9.0.tgz#1fea3cca4582bbda15bc3a50bf30b539869b826f" + integrity sha512-CXv0l0nI1bgChwl4Rm+BqNOAKwL/C9T2N8RfmTkhQ38YLFdUXCi2WNW4oFp8BJP+t75nCLzjHHgR04sP1oF02w== graphql@^16.0.0, graphql@^16.3.0: version "16.5.0" From 71f102c1b5c33652b6536df1c90a1117d38bce26 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 02:22:25 +0000 Subject: [PATCH 539/550] chore(deps): update dependency esbuild to v0.14.47 Signed-off-by: Renovate Bot --- yarn.lock | 206 +++++++++++++++++++++++++++--------------------------- 1 file changed, 103 insertions(+), 103 deletions(-) diff --git a/yarn.lock b/yarn.lock index a2ffb79d08..6cdb59046f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11757,75 +11757,75 @@ es6-error@^4.1.1: resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg== -esbuild-android-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.46.tgz#98d019853ca7b526d0d645bb4618fda425b74d35" - integrity sha512-ZyJqwAcjNbZprs0ZAxnUAOhEhdE5kTKwz+CZuLmZYNLAPyRgBtaC8pT2PCuPifNvV8Cl3yLlrQPaOCjovoyb5g== +esbuild-android-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.47.tgz#ef95b42c67bcf4268c869153fa3ad1466c4cea6b" + integrity sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g== -esbuild-android-arm64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.46.tgz#19835d5265b57120c14fba56a19fc317ca4bbda0" - integrity sha512-BKcnUksvCijO9ONv6b4SikZE/OZftwJvX91XROODZGQmuwGVg97jmLDVu3lxuHdFlMNNzxh8taJ2mbCWZzH/Iw== +esbuild-android-arm64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.47.tgz#4ebd7ce9fb250b4695faa3ee46fd3b0754ecd9e6" + integrity sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ== -esbuild-darwin-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.46.tgz#2819465ab92f6df407e6462d9e56f6563a043a44" - integrity sha512-/ss2kO92sUJ9/1nHnMb3+oab8w6dyqKrMtPMvSYJ9KZIYGAZxz/WYxfFprY7Xk+ZxWnnlASSyZlG+If1nVmFYg== +esbuild-darwin-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.47.tgz#e0da6c244f497192f951807f003f6a423ed23188" + integrity sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA== -esbuild-darwin-arm64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.46.tgz#2d523fa628930bba38a4f75cede75d6341bc3b5b" - integrity sha512-WX0JOaEFf6t+rIjXO6THsf/0fhQAt2Zb0/PSYlvXnuQQAmOmFAfPsuRNocp5ME0NGaUqZd4FxqqmLEVK3RzPAg== +esbuild-darwin-arm64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.47.tgz#cd40fd49a672fca581ed202834239dfe540a9028" + integrity sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw== -esbuild-freebsd-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.46.tgz#dbfbbb1cb943149aaa83b9e767ded6f14ad42ba5" - integrity sha512-o+ozPFuHRCAGCVWU2bLurOUgVkT0jcPEu082VBUY2Q/yLf+B+/3nXzh4Fjp5O21tOvJRTn7hUVydG9j5+vYE6A== +esbuild-freebsd-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.47.tgz#8da6a14c095b29c01fc8087a16cb7906debc2d67" + integrity sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ== -esbuild-freebsd-arm64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.46.tgz#fb066d6e7de2bd96138dd1c2fba5e8ce5233ed5a" - integrity sha512-9zicZ0X43WDKz3sjNfcqYO38xbfJpSWYXB+FxvYYkmBwGA52K0SAu4oKuTTLi8od8X2IIo1x5C5TUNvKDSVJww== +esbuild-freebsd-arm64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.47.tgz#ad31f9c92817ff8f33fd253af7ab5122dc1b83f6" + integrity sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ== -esbuild-linux-32@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.46.tgz#ea2464b10fe188ee7c9be81a2757e2d69ffdb8c1" - integrity sha512-ZnTpZMVb0VGvL99R5eh4OrJwbUyvpM6M88VAMuHP4LvFjuvZrhgefjKqEGuWZZW7JRnAjKqjXLjWdhdSjwMFnQ== +esbuild-linux-32@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.47.tgz#de085e4db2e692ea30c71208ccc23fdcf5196c58" + integrity sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw== -esbuild-linux-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.46.tgz#f4f2d181af6ea78137311712fca423f8fa954314" - integrity sha512-ECCRRZtX6l4ubeVhHhiVoK/uYAkvzNqfmR4gP4N/9H9RPu+b8YCcN4bQGp7xCuYIV6Xd41WpOMyO+xpcQvjtQQ== +esbuild-linux-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.47.tgz#2a9321bbccb01f01b04cebfcfccbabeba3658ba1" + integrity sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw== -esbuild-linux-arm64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.46.tgz#113d17c523dfe80c9d4981d05c58f5ada3470e30" - integrity sha512-HX0TXCHyI0NEWG4jg8LlW1PbZQbnz+PUH56yjx996cgM5pC90u32drKs/tyJiyyQmNk9OXOogjKw7LEdp/Qc1w== +esbuild-linux-arm64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.47.tgz#b9da7b6fc4b0ca7a13363a0c5b7bb927e4bc535a" + integrity sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw== -esbuild-linux-arm@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.46.tgz#1b6ba77b0301572b2fed35fe922b1613b10b5c7e" - integrity sha512-RvTJEi4vj13c5FP9YPp+8Y6x6HK1E7uSqfy3y9UoeaNAzNZWA7fN1U3hQjTL/dy5zTJH5KE64mrt5k5+he+CQA== +esbuild-linux-arm@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.47.tgz#56fec2a09b9561c337059d4af53625142aded853" + integrity sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA== -esbuild-linux-mips64le@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.46.tgz#8775e12510eaf988a9bc5e6787cf0c87c3eb40d6" - integrity sha512-jnb2NDwGqJUVmxn1v0f7seNdDm0nRNWHP9Z3MrWAGnBCdnnDlsjqRFDnbKoaQvWONEa+rOOr/giK+VL0hgQExA== +esbuild-linux-mips64le@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.47.tgz#9db21561f8f22ed79ef2aedb7bbef082b46cf823" + integrity sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg== -esbuild-linux-ppc64le@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.46.tgz#da003df59859b02e160827e26bc1e107bec23d07" - integrity sha512-uu3JTQUrwwauKY9z8yq5MnDyOlT3f2DNOzBcYz4dB78HqwEqilCsifoBGd0WcbED5n57dc59X+LZMTZ8Ose44w== +esbuild-linux-ppc64le@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.47.tgz#dc3a3da321222b11e96e50efafec9d2de408198b" + integrity sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w== -esbuild-linux-riscv64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.46.tgz#b6c4faf9f8482e2a898ec2becac4a6789ae3ff22" - integrity sha512-OB29r1EG44ZY34JnXCRERxo7k4pRKoQdaoRg2HIeCavatsXZwW4LCakpLnMQ72vXT1HtpBUABEjHkKkn5JyrUg== +esbuild-linux-riscv64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.47.tgz#9bd6dcd3dca6c0357084ecd06e1d2d4bf105335f" + integrity sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g== -esbuild-linux-s390x@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.46.tgz#d30d0f7ee8466c4ec99ac2c689b70514320406b2" - integrity sha512-XQ/U9TueMSGYyPTKyZsJVraiuvxhwCDIMn/QwFXCRCJ6H/Cy/Rq33u9qhpeSziinHKfzJROGx5A8mQY6aYamdQ== +esbuild-linux-s390x@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.47.tgz#a458af939b52f2cd32fc561410d441a51f69d41f" + integrity sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw== esbuild-loader@^2.18.0: version "2.19.0" @@ -11839,61 +11839,61 @@ esbuild-loader@^2.18.0: tapable "^2.2.0" webpack-sources "^2.2.0" -esbuild-netbsd-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.46.tgz#fcf2b739b63731b5b264dc584240c0b61dbbf035" - integrity sha512-i15BwqHaAIFp1vBJkitAbHtwXcLk9TdHs/Ia1xGIAutQYXSJNPLM3Z4B4hyfHNEFl2yBqBIYpglMohv2ClNdOQ== +esbuild-netbsd-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.47.tgz#6388e785d7e7e4420cb01348d7483ab511b16aa8" + integrity sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ== -esbuild-openbsd-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.46.tgz#fc7880751b78b325216e66470b9a3df7b1c21cbf" - integrity sha512-XwOIFCE140Y/PvjrwjFfa/QLWBuvhR1mPCOa35mKx02jt++wPNgf0qhn6HfdVC3vQe7R46RwTp4q2cp99fepEg== +esbuild-openbsd-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.47.tgz#309af806db561aa886c445344d1aacab850dbdc5" + integrity sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw== -esbuild-sunos-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.46.tgz#ab73b91e79ae53dddb035da9bb69ba7dd44d36ee" - integrity sha512-+kV3JnmfdxBVpHyFvuGXWtu6tXxXApOLPkSrVkMJf6+ns/3PLtPndpzwCzHjD+qYUEk8ln4MA+ufQ2qmjW5mZg== +esbuild-sunos-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.47.tgz#3f19612dcdb89ba6c65283a7ff6e16f8afbf8aaa" + integrity sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ== -esbuild-windows-32@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.46.tgz#88ad388c896325d273e92dbf28f146d1d34d4351" - integrity sha512-gzGC1Q11B/Bo5A2EX4N22oigWmhL7Z0eDyc8kbSoJjqSrGQuRE7B0uMpluO+q0O/gZ1S3zdw+M4PCWlqOIeXLA== +esbuild-windows-32@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.47.tgz#a92d279c8458d5dc319abcfeb30aa49e8f2e6f7f" + integrity sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ== -esbuild-windows-64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.46.tgz#bfb21b68d54d0db86190f8073cbf66a86bd0de14" - integrity sha512-Do2daaskfOjmCB7o3ygz6fD3K6SPjZLERiZLktzHz2oUCwsebKu/gmop0+j/XdrVIXC32wFzHzDS+9CTu9OShw== +esbuild-windows-64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.47.tgz#2564c3fcf0c23d701edb71af8c52d3be4cec5f8a" + integrity sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ== -esbuild-windows-arm64@0.14.46: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.46.tgz#b8aa66a0c347342b9ae780b537d5574e9691c123" - integrity sha512-VEzMy6bM60/HT/URTDElyhfi2Pk0quCCrEhRlI4MRno/AIqYUGw0rZwkPl6PeoqVI6BgoBHGY576GWTiPmshCA== +esbuild-windows-arm64@0.14.47: + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.47.tgz#86d9db1a22d83360f726ac5fba41c2f625db6878" + integrity sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ== esbuild@^0.14.1, esbuild@^0.14.10, esbuild@^0.14.39: - version "0.14.46" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.46.tgz#d548cfc13fecfd4bc074ce38e0122d1dd9b067db" - integrity sha512-vdm5G1JdZBktva8dwQci/s44VbeBUg8g907xoZx77mqFZ4gU5GlMULNsdGeID+qXCXocsfYSGtE0LvqH3eiNQg== + version "0.14.47" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.14.47.tgz#0d6415f6bd8eb9e73a58f7f9ae04c5276cda0e4d" + integrity sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA== optionalDependencies: - esbuild-android-64 "0.14.46" - esbuild-android-arm64 "0.14.46" - esbuild-darwin-64 "0.14.46" - esbuild-darwin-arm64 "0.14.46" - esbuild-freebsd-64 "0.14.46" - esbuild-freebsd-arm64 "0.14.46" - esbuild-linux-32 "0.14.46" - esbuild-linux-64 "0.14.46" - esbuild-linux-arm "0.14.46" - esbuild-linux-arm64 "0.14.46" - esbuild-linux-mips64le "0.14.46" - esbuild-linux-ppc64le "0.14.46" - esbuild-linux-riscv64 "0.14.46" - esbuild-linux-s390x "0.14.46" - esbuild-netbsd-64 "0.14.46" - esbuild-openbsd-64 "0.14.46" - esbuild-sunos-64 "0.14.46" - esbuild-windows-32 "0.14.46" - esbuild-windows-64 "0.14.46" - esbuild-windows-arm64 "0.14.46" + esbuild-android-64 "0.14.47" + esbuild-android-arm64 "0.14.47" + esbuild-darwin-64 "0.14.47" + esbuild-darwin-arm64 "0.14.47" + esbuild-freebsd-64 "0.14.47" + esbuild-freebsd-arm64 "0.14.47" + esbuild-linux-32 "0.14.47" + esbuild-linux-64 "0.14.47" + esbuild-linux-arm "0.14.47" + esbuild-linux-arm64 "0.14.47" + esbuild-linux-mips64le "0.14.47" + esbuild-linux-ppc64le "0.14.47" + esbuild-linux-riscv64 "0.14.47" + esbuild-linux-s390x "0.14.47" + esbuild-netbsd-64 "0.14.47" + esbuild-openbsd-64 "0.14.47" + esbuild-sunos-64 "0.14.47" + esbuild-windows-32 "0.14.47" + esbuild-windows-64 "0.14.47" + esbuild-windows-arm64 "0.14.47" escalade@^3.1.1: version "3.1.1" From 2ef58ab539d4e6fcf4f286d2a2e24159467e01ab Mon Sep 17 00:00:00 2001 From: Niklas Aronsson Date: Tue, 21 Jun 2022 06:59:44 +0200 Subject: [PATCH 540/550] TechInsightsBackend: Added 'scheduler' to code examples Signed-off-by: Niklas Aronsson --- .changeset/breezy-poems-grab.md | 5 +++++ plugins/tech-insights-backend/README.md | 3 +++ 2 files changed, 8 insertions(+) create mode 100644 .changeset/breezy-poems-grab.md diff --git a/.changeset/breezy-poems-grab.md b/.changeset/breezy-poems-grab.md new file mode 100644 index 0000000000..ac250b9c7e --- /dev/null +++ b/.changeset/breezy-poems-grab.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-tech-insights-backend': patch +--- + +TechInsightsBackend: Added missing 'scheduler' to code examples diff --git a/plugins/tech-insights-backend/README.md b/plugins/tech-insights-backend/README.md index e88d150393..c5c6e66270 100644 --- a/plugins/tech-insights-backend/README.md +++ b/plugins/tech-insights-backend/README.md @@ -106,6 +106,7 @@ const builder = buildTechInsightsContext({ database: env.database, discovery: env.discovery, tokenManager: env.tokenManager, + scheduler: env.scheduler, - factRetrievers: [], + factRetrievers: [myFactRetrieverRegistration], }); @@ -122,6 +123,7 @@ const builder = buildTechInsightsContext({ database: env.database, discovery: env.discovery, tokenManager: env.tokenManager, + scheduler: env.scheduler, - factRetrievers: [], + factRetrievers: process.env.MAIN_FACT_RETRIEVER_INSTANCE ? [myFactRetrieverRegistration] : [], }); @@ -281,6 +283,7 @@ export default async function createPlugin( database: env.database, discovery: env.discovery, tokenManager: env.tokenManager, + scheduler: env.scheduler, factRetrievers: [ createFactRetrieverRegistration({ cadence: '0 */6 * * *', // Run every 6 hours - https://crontab.guru/#0_*/6_*_*_* From df8a7349fab6f0f7c3bc536df7d9cc562b7df9c8 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Tue, 21 Jun 2022 09:43:00 +0200 Subject: [PATCH 541/550] chore/changeset: change from major to minor Signed-off-by: Johan Haals --- .changeset/red-games-decide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/red-games-decide.md b/.changeset/red-games-decide.md index ca5ff580b4..208cecfc0a 100644 --- a/.changeset/red-games-decide.md +++ b/.changeset/red-games-decide.md @@ -1,5 +1,5 @@ --- -'@backstage/plugin-api-docs-module-protoc-gen-doc': major +'@backstage/plugin-api-docs-module-protoc-gen-doc': minor --- Added the new `grpcDocsApiWidget` to render `protoc-gen-doc` generated descriptors by the `grpc-docs` package. From 37539e29d840212ffeb962e56fc493b4f9a96e74 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 21 Jun 2022 09:47:10 +0200 Subject: [PATCH 542/550] scaffolder: show dry-run error cause Signed-off-by: Patrik Oldsberg --- .changeset/breezy-seas-exist.md | 5 +++++ .../TemplateEditorPage/TemplateEditorForm.tsx | 16 +++++++++++----- 2 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 .changeset/breezy-seas-exist.md diff --git a/.changeset/breezy-seas-exist.md b/.changeset/breezy-seas-exist.md new file mode 100644 index 0000000000..2b061f11a8 --- /dev/null +++ b/.changeset/breezy-seas-exist.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +The template editor now shows the cause of request errors that happen during a dry-run. diff --git a/plugins/scaffolder/src/components/TemplateEditorPage/TemplateEditorForm.tsx b/plugins/scaffolder/src/components/TemplateEditorPage/TemplateEditorForm.tsx index 11b4da246d..d802ab07dc 100644 --- a/plugins/scaffolder/src/components/TemplateEditorPage/TemplateEditorForm.tsx +++ b/plugins/scaffolder/src/components/TemplateEditorPage/TemplateEditorForm.tsx @@ -212,11 +212,17 @@ export function TemplateEditorFormDirectoryEditorDryRun( return; } - await dryRun.execute({ - templateContent: selectedFile.content, - values: data, - files: directoryEditor.files, - }); + try { + await dryRun.execute({ + templateContent: selectedFile.content, + values: data, + files: directoryEditor.files, + }); + setErrorText(); + } catch (e) { + setErrorText(String(e.cause || e)); + throw e; + } }; const content = From 464bb0e6c80cd950b3432f6134d47650fa021138 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 21 Jun 2022 10:00:12 +0200 Subject: [PATCH 543/550] scaffolder: reduce max file size for dry-run content Signed-off-by: Patrik Oldsberg --- .changeset/strange-trains-collect.md | 5 +++++ .../src/components/TemplateEditorPage/DryRunContext.tsx | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/strange-trains-collect.md diff --git a/.changeset/strange-trains-collect.md b/.changeset/strange-trains-collect.md new file mode 100644 index 0000000000..3da9aff515 --- /dev/null +++ b/.changeset/strange-trains-collect.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +The max content size for dry-run files has been reduced from 256k to 64k. diff --git a/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx index 0a5bfeefd5..b592e3cecd 100644 --- a/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx +++ b/plugins/scaffolder/src/components/TemplateEditorPage/DryRunContext.tsx @@ -29,8 +29,8 @@ import React, { import { scaffolderApiRef } from '../../api'; import { ScaffolderDryRunResponse } from '../../types'; -const MAX_CONTENT_SIZE = 256 * 1024; -const CHUNK_SIZE = 0x8000; +const MAX_CONTENT_SIZE = 64 * 1024; +const CHUNK_SIZE = 32 * 1024; interface DryRunOptions { templateContent: string; From 842282ecf94f597c189c053216e02da6951d3aa8 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Tue, 21 Jun 2022 09:35:17 +0200 Subject: [PATCH 544/550] scaffolder: bump codemirror deps Signed-off-by: Patrik Oldsberg --- .changeset/curly-candles-battle.md | 5 + plugins/scaffolder/package.json | 8 +- yarn.lock | 192 ++++++++++++++--------------- 3 files changed, 104 insertions(+), 101 deletions(-) create mode 100644 .changeset/curly-candles-battle.md diff --git a/.changeset/curly-candles-battle.md b/.changeset/curly-candles-battle.md new file mode 100644 index 0000000000..9a4d850fd1 --- /dev/null +++ b/.changeset/curly-candles-battle.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder': patch +--- + +Bumped `codemirror` dependencies to `v6.0.0`. diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index fd8161646c..c6da6b8f2f 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -49,9 +49,9 @@ "@backstage/plugin-scaffolder-common": "^1.1.1", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", - "@codemirror/language": "^0.20.0", - "@codemirror/legacy-modes": "^0.20.0", - "@codemirror/view": "^0.20.2", + "@codemirror/language": "^6.0.0", + "@codemirror/legacy-modes": "^6.1.0", + "@codemirror/view": "^6.0.0", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", @@ -59,7 +59,7 @@ "@rjsf/core": "^3.2.1", "@rjsf/material-ui": "^3.2.1", "@types/json-schema": "^7.0.9", - "@uiw/react-codemirror": "^4.7.0", + "@uiw/react-codemirror": "^4.9.3", "classnames": "^2.2.6", "git-url-parse": "^11.6.0", "humanize-duration": "^3.25.1", diff --git a/yarn.lock b/yarn.lock index a4cb216837..9690ad9b73 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1718,97 +1718,84 @@ human-id "^1.0.2" prettier "^1.19.1" -"@codemirror/autocomplete@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-0.20.0.tgz#390cc444ea36474e77117f2153caad84214f0edf" - integrity sha512-F6VOM8lImn5ApqxJcaWgdl7hhlw8B5yAfZJGlsQifcpNotkZOMND61mBFZ84OmSLWxtT8/smkSeLvJupKbjP9w== +"@codemirror/autocomplete@^6.0.0": + version "6.0.2" + resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.0.2.tgz#119b9d147456418895de6fae09419465b58d7beb" + integrity sha512-9PDjnllmXan/7Uax87KGORbxerDJ/cu10SB+n4Jz0zXMEvIh3+TGgZxhIvDOtaQ4jDBQEM7kHYW4vLdQB0DGZQ== dependencies: - "@codemirror/language" "^0.20.0" - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" - "@lezer/common" "^0.16.0" + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + "@lezer/common" "^1.0.0" -"@codemirror/basic-setup@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/basic-setup/-/basic-setup-0.20.0.tgz#ed331e0b2d29efc0a09317de9e10467b992b0c7b" - integrity sha512-W/ERKMLErWkrVLyP5I8Yh8PXl4r+WFNkdYVSzkXYPQv2RMPSkWpr2BgggiSJ8AHF/q3GuApncDD8I4BZz65fyg== +"@codemirror/commands@^6.0.0": + version "6.0.0" + resolved "https://registry.npmjs.org/@codemirror/commands/-/commands-6.0.0.tgz#9eaa4d53e9cdb2e13da52c8a03636a9f9ad45d2b" + integrity sha512-nVJDPiCQXWXj5AZxqNVXyIM3nOYauF4Dko9NGPSwgVdK+lXWJQhI5LGhS/AvdG5b7u7/pTQBkrQmzkLWRBF62A== dependencies: - "@codemirror/autocomplete" "^0.20.0" - "@codemirror/commands" "^0.20.0" - "@codemirror/language" "^0.20.0" - "@codemirror/lint" "^0.20.0" - "@codemirror/search" "^0.20.0" - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + "@lezer/common" "^1.0.0" -"@codemirror/commands@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/commands/-/commands-0.20.0.tgz#51405d442e6b8687b63e8fa27effc28179917c88" - integrity sha512-v9L5NNVA+A9R6zaFvaTbxs30kc69F6BkOoiEbeFw4m4I0exmDEKBILN6mK+GksJtvTzGBxvhAPlVFTdQW8GB7Q== +"@codemirror/language@^6.0.0": + version "6.1.0" + resolved "https://registry.npmjs.org/@codemirror/language/-/language-6.1.0.tgz#7686f0ecafd958c35332c3cc2aa3d564fd33dc44" + integrity sha512-CeqY80nvUFrJcXcBW115aNi06D0PS8NSW6nuJRSwbrYFkE0SfJnPfyLGrcM90AV95lqg5+4xUi99BCmzNaPGJg== dependencies: - "@codemirror/language" "^0.20.0" - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" - "@lezer/common" "^0.16.0" - -"@codemirror/language@^0.20.0": - version "0.20.2" - resolved "https://registry.npmjs.org/@codemirror/language/-/language-0.20.2.tgz#31c3712eac2251810986272dcd6a50510e0c1529" - integrity sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw== - dependencies: - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" - "@lezer/common" "^0.16.0" - "@lezer/highlight" "^0.16.0" - "@lezer/lr" "^0.16.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + "@lezer/common" "^1.0.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.0.0" style-mod "^4.0.0" -"@codemirror/legacy-modes@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/legacy-modes/-/legacy-modes-0.20.0.tgz#a1cea5eed05fa09a0cac4a39f41e362a136da5ea" - integrity sha512-SYllodnzD8OI6Y6NoFzCv+77cU9aTdfqDO0Zn8j5PbjUIAD+pIofwHAvecd9/ePLAICr+EYCEuqUxldHAR+pLQ== +"@codemirror/legacy-modes@^6.1.0": + version "6.1.0" + resolved "https://registry.npmjs.org/@codemirror/legacy-modes/-/legacy-modes-6.1.0.tgz#f1c6d504069509c8d3d9220453132e559477400c" + integrity sha512-V/PgGpndkZeTn3Hdlg/gd8MLFdyvTCIX+iwJzjUw5iNziWiNsAY8X0jvf7m3gSfxnKkNzmid6l0g4rYSpiDaCw== dependencies: - "@codemirror/language" "^0.20.0" + "@codemirror/language" "^6.0.0" -"@codemirror/lint@^0.20.0": - version "0.20.1" - resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-0.20.1.tgz#791c83642f76103bbf6b8bfdc8020eff2b78b5e2" - integrity sha512-aWbeicDiNe5tb2aZuXs7sKk3hQ89Z1YcUuUX8ngQu23tT6EY4kcY2cayDjizvkLn8iHkObNf97uSudjNmUon2Q== +"@codemirror/lint@^6.0.0": + version "6.0.0" + resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-6.0.0.tgz#a249b021ac9933b94fe312d994d220f0ef11a157" + integrity sha512-nUUXcJW1Xp54kNs+a1ToPLK8MadO0rMTnJB8Zk4Z8gBdrN0kqV7uvUraU/T2yqg+grDNR38Vmy/MrhQN/RgwiA== dependencies: - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.2" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" crelt "^1.0.5" -"@codemirror/search@^0.20.0": - version "0.20.1" - resolved "https://registry.npmjs.org/@codemirror/search/-/search-0.20.1.tgz#9eba0514218a673e29501a889a4fcb7da7ce24ad" - integrity sha512-ROe6gRboQU5E4z6GAkNa2kxhXqsGNbeLEisbvzbOeB7nuDYXUZ70vGIgmqPu0tB+1M3F9yWk6W8k2vrFpJaD4Q== +"@codemirror/search@^6.0.0": + version "6.0.0" + resolved "https://registry.npmjs.org/@codemirror/search/-/search-6.0.0.tgz#43bd6341d9aff18869386d2fce27519850e919e3" + integrity sha512-rL0rd3AhI0TAsaJPUaEwC63KHLO7KL0Z/dYozXj6E7L3wNHRyx7RfE0/j5HsIf912EE5n2PCb4Vg0rGYmDv4UQ== dependencies: - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" crelt "^1.0.5" -"@codemirror/state@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/state/-/state-0.20.0.tgz#3343d209169813b0152b77361cd78bea01549a73" - integrity sha512-R3XrAWCS5Xm9lx+4pDET4EUPEg+8bDfAa5zoOFIhx+VChsfew9Vy33dAjCXS5ES4Q8UecW4WM4UudmUFpZ+86A== +"@codemirror/state@^6.0.0": + version "6.0.1" + resolved "https://registry.npmjs.org/@codemirror/state/-/state-6.0.1.tgz#a1994f14c49e2f77cb9e26aef35f63a8b3707c6c" + integrity sha512-6vYgaXc4KjSY0BUfSVDJooGcoswg/RJZpq/ZGjsUYmY0KN1lmB8u03nv+jiG1ncUV5qoggyxFT5AGD5Ak+5Zrw== -"@codemirror/theme-one-dark@^0.20.0": - version "0.20.0" - resolved "https://registry.npmjs.org/@codemirror/theme-one-dark/-/theme-one-dark-0.20.0.tgz#112074e446d46931d1104405154ccbe8c8874009" - integrity sha512-iqTKaiOZddwlc2rYF+9D60Gfyz9EsSawVejSjyP2FCtOwZ1X0frG5/ByTKH5FBDD2+P7W8+h/OIG4r5dWq4bgA== +"@codemirror/theme-one-dark@^6.0.0": + version "6.0.0" + resolved "https://registry.npmjs.org/@codemirror/theme-one-dark/-/theme-one-dark-6.0.0.tgz#81a999a568217f68522bd8846cbf7210ca2a59df" + integrity sha512-jTCfi1I8QT++3m21Ui6sU8qwu3F/hLv161KLxfvkV1cYWSBwyUanmQFs89ChobQjBHi2x7s2k71wF9WYvE8fdw== dependencies: - "@codemirror/language" "^0.20.0" - "@codemirror/state" "^0.20.0" - "@codemirror/view" "^0.20.0" - "@lezer/highlight" "^0.16.0" + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + "@lezer/highlight" "^1.0.0" -"@codemirror/view@^0.20.0", "@codemirror/view@^0.20.2": - version "0.20.7" - resolved "https://registry.npmjs.org/@codemirror/view/-/view-0.20.7.tgz#1d0acc740f71f92abef4b437c030d4e6c39ab6dc" - integrity sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ== +"@codemirror/view@^6.0.0": + version "6.0.1" + resolved "https://registry.npmjs.org/@codemirror/view/-/view-6.0.1.tgz#f56327a5cd241eff5393cfdfbceea897b5266967" + integrity sha512-n5olUr4Ld+XDTZN8+cnUHzkqJPeO2kr55HvBQ+4C1xWlDaRGrsedAoxCgeuGZsXRTUup/H/0e2kAN+a0R3skdA== dependencies: - "@codemirror/state" "^0.20.0" + "@codemirror/state" "^6.0.0" style-mod "^4.0.0" w3c-keyname "^2.2.4" @@ -3933,24 +3920,24 @@ npmlog "^4.1.2" write-file-atomic "^3.0.3" -"@lezer/common@^0.16.0": - version "0.16.0" - resolved "https://registry.npmjs.org/@lezer/common/-/common-0.16.0.tgz#b6023a0a682b0b7676d0e7f0e0838f71bde39fcd" - integrity sha512-H6sPCku+asKWYaNjwfQ1Uvcay9UP1Pdzu4qpy8GtRZ0cKT2AAGnj9MQGiRtY18MDntvhYRJxNGv7FNWOSV/e8A== +"@lezer/common@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@lezer/common/-/common-1.0.0.tgz#1c95ae53ec17706aa3cbcc88b52c23f22ed56096" + integrity sha512-ohydQe+Hb+w4oMDvXzs8uuJd2NoA3D8YDcLiuDsLqH+yflDTPEpgCsWI3/6rH5C3BAedtH1/R51dxENldQceEA== -"@lezer/highlight@^0.16.0": - version "0.16.0" - resolved "https://registry.npmjs.org/@lezer/highlight/-/highlight-0.16.0.tgz#95f7b7ee3c32c8a0f6ce499c085e8b1f927ffbdc" - integrity sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ== +"@lezer/highlight@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.0.0.tgz#1dc82300f5d39fbd67ae1194b5519b4c381878d3" + integrity sha512-nsCnNtim90UKsB5YxoX65v3GEIw3iCHw9RM2DtdgkiqAbKh9pCdvi8AWNwkYf10Lu6fxNhXPpkpHbW6mihhvJA== dependencies: - "@lezer/common" "^0.16.0" + "@lezer/common" "^1.0.0" -"@lezer/lr@^0.16.0": - version "0.16.1" - resolved "https://registry.npmjs.org/@lezer/lr/-/lr-0.16.1.tgz#abe8c538d3f1a811ce5731847e3d0470c7709dcd" - integrity sha512-RuRD84dWY9If8BanfaaWNe0YhRdYWtni92GpB4C4/7JgHyAIfdkJz7miBjgILm3gOsBjJsJh56vb1ckxSQEWBg== +"@lezer/lr@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@lezer/lr/-/lr-1.0.0.tgz#89e30c1e710b8715ac5c847ad063418c51d6e750" + integrity sha512-k6DEqBh4HxqO/cVGedb6Ern6LS7K6IOzfydJ5WaqCR26v6UR9sIFyb6PS+5rPUs/mXgnBR/QQCW7RkyjSCMoQA== dependencies: - "@lezer/common" "^0.16.0" + "@lezer/common" "^1.0.0" "@manypkg/find-root@^1.1.0": version "1.1.0" @@ -6809,9 +6796,9 @@ "@types/node" "*" "@types/tern@*": - version "0.23.3" - resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.3.tgz#4b54538f04a88c9ff79de1f6f94f575a7f339460" - integrity sha512-imDtS4TAoTcXk0g7u4kkWqedB3E4qpjXzCpD2LU5M5NAXHzCDsypyvXSaG7mM8DKYkCRa7tFp4tS/lp/Wo7Q3w== + version "0.23.4" + resolved "https://registry.npmjs.org/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" + integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== dependencies: "@types/estree" "*" @@ -7131,16 +7118,14 @@ "@typescript-eslint/types" "5.9.0" eslint-visitor-keys "^3.0.0" -"@uiw/react-codemirror@^4.7.0": - version "4.7.0" - resolved "https://registry.npmjs.org/@uiw/react-codemirror/-/react-codemirror-4.7.0.tgz#cca6cb2e91f5c5c5e545b389cc55fb307087be75" - integrity sha512-gRBsIScecZzqj1/vqPZ6XxykccBkp+qv6wLFyTk2DxHzuPl4cDIQwqCBl81u80by5nCKambceRkTvpiQ6oJ2Ew== +"@uiw/react-codemirror@^4.9.3": + version "4.9.3" + resolved "https://registry.npmjs.org/@uiw/react-codemirror/-/react-codemirror-4.9.3.tgz#3d7abc434b140f01119332e25e9f49ace7c381bf" + integrity sha512-iT/daKF852ZsNJGvqmxRFJ4KTOJSikeoCMl7jhUUJTETdozUf0/DqUQhvazAoduMRzqqHYnN/5isdITCyy2P6g== dependencies: "@babel/runtime" ">=7.11.0" - "@codemirror/basic-setup" "^0.20.0" - "@codemirror/state" "^0.20.0" - "@codemirror/theme-one-dark" "^0.20.0" - "@codemirror/view" "^0.20.0" + "@codemirror/theme-one-dark" "^6.0.0" + codemirror "^6.0.0" "@webassemblyjs/ast@1.11.1": version "1.11.1" @@ -9496,6 +9481,19 @@ codemirror@^5.65.3: resolved "https://registry.npmjs.org/codemirror/-/codemirror-5.65.3.tgz#2d029930d5a293bc5fb96ceea64654803c0d4ac7" integrity sha512-kCC0iwGZOVZXHEKW3NDTObvM7pTIyowjty4BUqeREROc/3I6bWbgZDA3fGDwlA+rbgRjvnRnfqs9SfXynel1AQ== +codemirror@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/codemirror/-/codemirror-6.0.0.tgz#48aac6370d188f0761807ad9c3b62da7e7f72446" + integrity sha512-c4XR9QtDn+NhKLM2FBsnRn9SFdRH7G6594DYC/fyKKIsTOcdLF0WNWRd+f6kNyd5j1vgYPucbIeq2XkywYCwhA== + dependencies: + "@codemirror/autocomplete" "^6.0.0" + "@codemirror/commands" "^6.0.0" + "@codemirror/language" "^6.0.0" + "@codemirror/lint" "^6.0.0" + "@codemirror/search" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + codeowners-utils@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/codeowners-utils/-/codeowners-utils-1.0.2.tgz#9d30148bf957c53d55f75df432cb1e3b4bc6ee28" From a0c54475a69deb9ba37be1cba6a9269d23f490db Mon Sep 17 00:00:00 2001 From: tomasrb Date: Thu, 16 Jun 2022 21:43:41 -0700 Subject: [PATCH 545/550] Add DORA metrics plugin Signed-off-by: tomasrb --- microsite/data/plugins/dora-metrics.yaml | 9 +++++++++ microsite/static/img/okay.png | Bin 0 -> 46181 bytes 2 files changed, 9 insertions(+) create mode 100644 microsite/data/plugins/dora-metrics.yaml create mode 100644 microsite/static/img/okay.png diff --git a/microsite/data/plugins/dora-metrics.yaml b/microsite/data/plugins/dora-metrics.yaml new file mode 100644 index 0000000000..b94499e324 --- /dev/null +++ b/microsite/data/plugins/dora-metrics.yaml @@ -0,0 +1,9 @@ +--- +title: DORA Metrics +author: Okay +authorUrl: https://www.okayhq.com +category: Metrics +description: Embed dashboards (like DORA metrics) in your team or service pages from any dev tools (including Github, Gitlab, Jira, Argo, CircleCI, Buildkite, Pagerduty, Rollbar, Sentry, etc). +documentation: https://github.com/OkayHQ/backstage-plugin +iconUrl: img/okay.png +npmPackageName: '@okayhq/backstage-plugin' diff --git a/microsite/static/img/okay.png b/microsite/static/img/okay.png new file mode 100644 index 0000000000000000000000000000000000000000..357219d9d2c51e1d9a16f3f7a0c4fc476936d685 GIT binary patch literal 46181 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 literal 0 HcmV?d00001 From 2231987c104c09f4462f9125a6c09546c2890f67 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 21 Jun 2022 09:04:17 +0000 Subject: [PATCH 546/550] Version Packages (next) --- .changeset/pre.json | 37 +- docs/releases/v1.4.0-next.0-changelog.md | 1365 +++++++++++++++++ package.json | 2 +- packages/app-defaults/CHANGELOG.md | 8 + packages/app-defaults/package.json | 10 +- packages/app/CHANGELOG.md | 55 + packages/app/package.json | 102 +- packages/backend-common/CHANGELOG.md | 9 + packages/backend-common/package.json | 8 +- packages/backend-tasks/CHANGELOG.md | 7 + packages/backend-tasks/package.json | 8 +- packages/backend-test-utils/CHANGELOG.md | 8 + packages/backend-test-utils/package.json | 8 +- packages/backend/CHANGELOG.md | 38 + packages/backend/package.json | 66 +- packages/catalog-client/CHANGELOG.md | 7 + packages/catalog-client/package.json | 6 +- packages/catalog-model/CHANGELOG.md | 10 + packages/catalog-model/package.json | 4 +- packages/cli/CHANGELOG.md | 6 + packages/cli/package.json | 12 +- packages/config/package.json | 2 +- packages/core-app-api/CHANGELOG.md | 6 + packages/core-app-api/package.json | 6 +- packages/core-components/CHANGELOG.md | 6 + packages/core-components/package.json | 8 +- packages/core-plugin-api/package.json | 6 +- packages/create-app/CHANGELOG.md | 14 + packages/create-app/package.json | 2 +- packages/dev-utils/CHANGELOG.md | 13 + packages/dev-utils/package.json | 18 +- packages/errors/package.json | 2 +- packages/integration-react/CHANGELOG.md | 8 + packages/integration-react/package.json | 12 +- packages/integration/CHANGELOG.md | 6 + packages/integration/package.json | 6 +- packages/release-manifests/package.json | 2 +- .../techdocs-cli-embedded-app/CHANGELOG.md | 16 + .../techdocs-cli-embedded-app/package.json | 24 +- packages/techdocs-cli/CHANGELOG.md | 10 + packages/techdocs-cli/package.json | 10 +- packages/test-utils/CHANGELOG.md | 7 + packages/test-utils/package.json | 6 +- packages/theme/package.json | 2 +- packages/types/package.json | 2 +- packages/version-bridge/package.json | 2 +- plugins/adr-backend/CHANGELOG.md | 11 + plugins/adr-backend/package.json | 14 +- plugins/adr-common/CHANGELOG.md | 8 + plugins/adr-common/package.json | 8 +- plugins/adr/CHANGELOG.md | 12 + plugins/adr/package.json | 20 +- plugins/airbrake-backend/CHANGELOG.md | 7 + plugins/airbrake-backend/package.json | 6 +- plugins/airbrake/CHANGELOG.md | 11 + plugins/airbrake/package.json | 20 +- plugins/allure/CHANGELOG.md | 9 + plugins/allure/package.json | 16 +- plugins/analytics-module-ga/CHANGELOG.md | 7 + plugins/analytics-module-ga/package.json | 12 +- plugins/apache-airflow/CHANGELOG.md | 7 + plugins/apache-airflow/package.json | 12 +- .../CHANGELOG.md | 7 + .../package.json | 4 +- plugins/api-docs/CHANGELOG.md | 10 + plugins/api-docs/package.json | 18 +- plugins/app-backend/CHANGELOG.md | 7 + plugins/app-backend/package.json | 8 +- plugins/auth-backend/CHANGELOG.md | 11 + plugins/auth-backend/package.json | 14 +- plugins/auth-node/CHANGELOG.md | 7 + plugins/auth-node/package.json | 6 +- plugins/azure-devops-backend/CHANGELOG.md | 8 + plugins/azure-devops-backend/package.json | 6 +- plugins/azure-devops-common/package.json | 2 +- plugins/azure-devops/CHANGELOG.md | 10 + plugins/azure-devops/package.json | 16 +- plugins/badges-backend/CHANGELOG.md | 9 + plugins/badges-backend/package.json | 10 +- plugins/badges/CHANGELOG.md | 9 + plugins/badges/package.json | 16 +- plugins/bazaar-backend/CHANGELOG.md | 8 + plugins/bazaar-backend/package.json | 8 +- plugins/bazaar/CHANGELOG.md | 12 + plugins/bazaar/package.json | 18 +- plugins/bitbucket-cloud-common/CHANGELOG.md | 7 + plugins/bitbucket-cloud-common/package.json | 6 +- plugins/bitrise/CHANGELOG.md | 9 + plugins/bitrise/package.json | 16 +- .../catalog-backend-module-aws/CHANGELOG.md | 11 + .../catalog-backend-module-aws/package.json | 14 +- .../catalog-backend-module-azure/CHANGELOG.md | 11 + .../catalog-backend-module-azure/package.json | 16 +- .../CHANGELOG.md | 10 + .../package.json | 16 +- .../CHANGELOG.md | 11 + .../package.json | 16 +- .../CHANGELOG.md | 11 + .../package.json | 16 +- .../CHANGELOG.md | 11 + .../package.json | 16 +- .../CHANGELOG.md | 11 + .../package.json | 16 +- .../catalog-backend-module-ldap/CHANGELOG.md | 9 + .../catalog-backend-module-ldap/package.json | 10 +- .../CHANGELOG.md | 9 + .../package.json | 14 +- plugins/catalog-backend/CHANGELOG.md | 12 + plugins/catalog-backend/package.json | 20 +- plugins/catalog-common/package.json | 2 +- plugins/catalog-graph/CHANGELOG.md | 10 + plugins/catalog-graph/package.json | 20 +- plugins/catalog-graphql/CHANGELOG.md | 7 + plugins/catalog-graphql/package.json | 8 +- plugins/catalog-import/CHANGELOG.md | 13 + plugins/catalog-import/package.json | 22 +- plugins/catalog-react/CHANGELOG.md | 10 + plugins/catalog-react/package.json | 18 +- plugins/catalog/CHANGELOG.md | 32 + plugins/catalog/package.json | 22 +- .../CHANGELOG.md | 8 + .../package.json | 8 +- plugins/cicd-statistics/CHANGELOG.md | 8 + plugins/cicd-statistics/package.json | 6 +- plugins/circleci/CHANGELOG.md | 9 + plugins/circleci/package.json | 16 +- plugins/cloudbuild/CHANGELOG.md | 9 + plugins/cloudbuild/package.json | 16 +- plugins/code-climate/CHANGELOG.md | 9 + plugins/code-climate/package.json | 14 +- plugins/code-coverage-backend/CHANGELOG.md | 10 + plugins/code-coverage-backend/package.json | 12 +- plugins/code-coverage/CHANGELOG.md | 9 + plugins/code-coverage/package.json | 16 +- plugins/codescene/CHANGELOG.md | 7 + plugins/codescene/package.json | 12 +- plugins/config-schema/CHANGELOG.md | 7 + plugins/config-schema/package.json | 12 +- plugins/cost-insights/CHANGELOG.md | 8 + plugins/cost-insights/package.json | 14 +- plugins/dynatrace/CHANGELOG.md | 9 + plugins/dynatrace/package.json | 16 +- .../example-todo-list-backend/CHANGELOG.md | 8 + .../example-todo-list-backend/package.json | 8 +- plugins/example-todo-list-common/package.json | 8 +- plugins/example-todo-list/CHANGELOG.md | 7 + plugins/example-todo-list/package.json | 12 +- plugins/explore-react/package.json | 6 +- plugins/explore/CHANGELOG.md | 9 + plugins/explore/package.json | 16 +- plugins/firehydrant/CHANGELOG.md | 8 + plugins/firehydrant/package.json | 14 +- plugins/fossa/CHANGELOG.md | 9 + plugins/fossa/package.json | 16 +- plugins/gcalendar/CHANGELOG.md | 7 + plugins/gcalendar/package.json | 12 +- plugins/gcp-projects/CHANGELOG.md | 7 + plugins/gcp-projects/package.json | 12 +- plugins/git-release-manager/CHANGELOG.md | 8 + plugins/git-release-manager/package.json | 14 +- plugins/github-actions/CHANGELOG.md | 11 + plugins/github-actions/package.json | 18 +- plugins/github-deployments/CHANGELOG.md | 11 + plugins/github-deployments/package.json | 20 +- .../github-pull-requests-board/CHANGELOG.md | 12 + .../github-pull-requests-board/package.json | 16 +- plugins/gitops-profiles/CHANGELOG.md | 7 + plugins/gitops-profiles/package.json | 12 +- plugins/gocd/CHANGELOG.md | 9 + plugins/gocd/package.json | 16 +- plugins/graphiql/CHANGELOG.md | 7 + plugins/graphiql/package.json | 12 +- plugins/graphql-backend/CHANGELOG.md | 8 + plugins/graphql-backend/package.json | 8 +- plugins/home/CHANGELOG.md | 10 + plugins/home/package.json | 18 +- plugins/ilert/CHANGELOG.md | 9 + plugins/ilert/package.json | 16 +- plugins/jenkins-backend/CHANGELOG.md | 10 + plugins/jenkins-backend/package.json | 12 +- plugins/jenkins-common/package.json | 2 +- plugins/jenkins/CHANGELOG.md | 9 + plugins/jenkins/package.json | 16 +- plugins/kafka-backend/CHANGELOG.md | 8 + plugins/kafka-backend/package.json | 8 +- plugins/kafka/CHANGELOG.md | 9 + plugins/kafka/package.json | 16 +- plugins/kubernetes-backend/CHANGELOG.md | 13 + plugins/kubernetes-backend/package.json | 10 +- plugins/kubernetes-common/CHANGELOG.md | 11 + plugins/kubernetes-common/package.json | 6 +- plugins/kubernetes/CHANGELOG.md | 10 + plugins/kubernetes/package.json | 18 +- plugins/lighthouse/CHANGELOG.md | 9 + plugins/lighthouse/package.json | 16 +- plugins/newrelic-dashboard/CHANGELOG.md | 9 + plugins/newrelic-dashboard/package.json | 12 +- plugins/newrelic/CHANGELOG.md | 7 + plugins/newrelic/package.json | 12 +- plugins/org/CHANGELOG.md | 9 + plugins/org/package.json | 18 +- plugins/pagerduty/CHANGELOG.md | 36 + plugins/pagerduty/package.json | 16 +- plugins/periskop-backend/CHANGELOG.md | 7 + plugins/periskop-backend/package.json | 6 +- plugins/periskop/CHANGELOG.md | 9 + plugins/periskop/package.json | 16 +- plugins/permission-backend/CHANGELOG.md | 9 + plugins/permission-backend/package.json | 10 +- plugins/permission-common/package.json | 2 +- plugins/permission-node/CHANGELOG.md | 8 + plugins/permission-node/package.json | 8 +- plugins/permission-react/package.json | 4 +- plugins/proxy-backend/CHANGELOG.md | 7 + plugins/proxy-backend/package.json | 6 +- plugins/rollbar-backend/CHANGELOG.md | 7 + plugins/rollbar-backend/package.json | 8 +- plugins/rollbar/CHANGELOG.md | 9 + plugins/rollbar/package.json | 16 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- .../CHANGELOG.md | 9 + .../package.json | 10 +- .../CHANGELOG.md | 7 + .../package.json | 6 +- plugins/scaffolder-backend/CHANGELOG.md | 16 + plugins/scaffolder-backend/package.json | 18 +- plugins/scaffolder-common/CHANGELOG.md | 7 + plugins/scaffolder-common/package.json | 6 +- plugins/scaffolder/CHANGELOG.md | 23 + plugins/scaffolder/package.json | 26 +- .../CHANGELOG.md | 7 + .../package.json | 8 +- plugins/search-backend-module-pg/CHANGELOG.md | 8 + plugins/search-backend-module-pg/package.json | 10 +- plugins/search-backend-node/CHANGELOG.md | 8 + plugins/search-backend-node/package.json | 10 +- plugins/search-backend/CHANGELOG.md | 10 + plugins/search-backend/package.json | 12 +- plugins/search-common/package.json | 2 +- plugins/search-react/CHANGELOG.md | 7 + plugins/search-react/package.json | 8 +- plugins/search/CHANGELOG.md | 10 + plugins/search/package.json | 18 +- plugins/sentry/CHANGELOG.md | 9 + plugins/sentry/package.json | 16 +- plugins/shortcuts/CHANGELOG.md | 7 + plugins/shortcuts/package.json | 12 +- plugins/sonarqube/CHANGELOG.md | 9 + plugins/sonarqube/package.json | 16 +- plugins/splunk-on-call/CHANGELOG.md | 9 + plugins/splunk-on-call/package.json | 16 +- plugins/stack-overflow/CHANGELOG.md | 10 + plugins/stack-overflow/package.json | 14 +- .../CHANGELOG.md | 8 + .../package.json | 8 +- plugins/tech-insights-backend/CHANGELOG.md | 12 + plugins/tech-insights-backend/package.json | 16 +- plugins/tech-insights-common/package.json | 2 +- plugins/tech-insights-node/CHANGELOG.md | 7 + plugins/tech-insights-node/package.json | 6 +- plugins/tech-insights/CHANGELOG.md | 9 + plugins/tech-insights/package.json | 16 +- plugins/tech-radar/CHANGELOG.md | 7 + plugins/tech-radar/package.json | 12 +- .../techdocs-addons-test-utils/CHANGELOG.md | 14 + .../techdocs-addons-test-utils/package.json | 22 +- plugins/techdocs-backend/CHANGELOG.md | 11 + plugins/techdocs-backend/package.json | 18 +- .../CHANGELOG.md | 10 + .../package.json | 20 +- plugins/techdocs-node/CHANGELOG.md | 9 + plugins/techdocs-node/package.json | 10 +- plugins/techdocs-react/CHANGELOG.md | 9 + plugins/techdocs-react/package.json | 8 +- plugins/techdocs/CHANGELOG.md | 14 + plugins/techdocs/package.json | 24 +- plugins/todo-backend/CHANGELOG.md | 10 + plugins/todo-backend/package.json | 12 +- plugins/todo/CHANGELOG.md | 9 + plugins/todo/package.json | 16 +- plugins/user-settings/CHANGELOG.md | 7 + plugins/user-settings/package.json | 12 +- plugins/vault-backend/CHANGELOG.md | 13 + plugins/vault-backend/package.json | 10 +- plugins/vault/CHANGELOG.md | 10 + plugins/vault/package.json | 16 +- plugins/xcmetrics/CHANGELOG.md | 7 + plugins/xcmetrics/package.json | 12 +- yarn.lock | 285 +++- 290 files changed, 3954 insertions(+), 1028 deletions(-) create mode 100644 docs/releases/v1.4.0-next.0-changelog.md create mode 100644 plugins/api-docs-module-protoc-gen-doc/CHANGELOG.md diff --git a/.changeset/pre.json b/.changeset/pre.json index 500bf4ac83..6ea515cda8 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -156,7 +156,40 @@ "@backstage/plugin-user-settings": "0.4.5", "@backstage/plugin-vault": "0.1.0", "@backstage/plugin-vault-backend": "0.1.0", - "@backstage/plugin-xcmetrics": "0.2.26" + "@backstage/plugin-xcmetrics": "0.2.26", + "@backstage/plugin-api-docs-module-protoc-gen-doc": "0.0.0" }, - "changesets": [] + "changesets": [ + "beige-horses-scream", + "breezy-poems-grab", + "breezy-seas-exist", + "chilled-mirrors-grab", + "curly-candles-battle", + "curvy-weeks-matter", + "eleven-mice-collect", + "great-roses-pump", + "large-kangaroos-poke", + "modern-ducks-lay", + "nasty-zoos-cross", + "nervous-humans-sip", + "polite-eagles-invite", + "purple-beans-march", + "red-games-decide", + "renovate-9454dab", + "rude-llamas-lie", + "shaggy-melons-drive", + "sharp-planes-turn", + "short-olives-train", + "smooth-sheep-hide", + "strange-trains-collect", + "sweet-plants-sparkle", + "tame-guests-wave", + "techdocs-gorgeous-plants-sniff", + "techdocs-the-whole-pulse", + "thick-radios-drive", + "unlucky-stingrays-juggle", + "weak-bananas-deliver", + "wet-dolphins-act", + "wicked-icons-grin" + ] } diff --git a/docs/releases/v1.4.0-next.0-changelog.md b/docs/releases/v1.4.0-next.0-changelog.md new file mode 100644 index 0000000000..c6b9fd7cf9 --- /dev/null +++ b/docs/releases/v1.4.0-next.0-changelog.md @@ -0,0 +1,1365 @@ +# Release v1.4.0-next.0 + +## @backstage/catalog-model@1.1.0-next.0 + +### Minor Changes + +- 1380b389dc: Adding an optional type field to entity links to group and categorize links + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. + +## @backstage/plugin-api-docs-module-protoc-gen-doc@0.1.0-next.0 + +### Minor Changes + +- e0328f2107: Added the new `grpcDocsApiWidget` to render `protoc-gen-doc` generated descriptors by the `grpc-docs` package. + +## @backstage/plugin-kubernetes-backend@0.7.0-next.0 + +### Minor Changes + +- 0791af993f: Refactor `KubernetesObjectsProvider` with new methods, `KubernetesServiceLocator` now takes an `Entity` instead of `serviceId` + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-kubernetes-common@0.4.0-next.0 + +## @backstage/plugin-kubernetes-common@0.4.0-next.0 + +### Minor Changes + +- 0791af993f: Refactor `KubernetesObjectsProvider` with new methods, `KubernetesServiceLocator` now takes an `Entity` instead of `serviceId` + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + +## @backstage/plugin-pagerduty@0.5.0-next.0 + +### Minor Changes + +- 8798f8d93f: Introduces a new annotation `pagerduty.com/service-id` that can be used instead of the `pagerduty.com/integration-key` annotation. + _Note: If both annotations are specified on a given Entity, then the `pagerduty.com/integration-key` annotation will be prefered_ + + **BREAKING** The `PagerDutyClient.fromConfig` static method now expects a `FetchApi` compatible object and has been refactored to + accept 2 arguments: config and ClientApiDependencies + The `PagerDutyClient` now relies on a `fetchApi` being available to execute `fetch` requests. + + **BREAKING** A new query method `getServiceByEntity` that is used to query for Services by either the `integrationKey` or `serviceId` + annotation values if they are defined. The `integrationKey` value is preferred currently over `serviceId`. As such, the previous + `getServiceByIntegrationKey` method has been removed. + + **BREAKING** The return values for each Client query method has been changed to return an object instead of raw values. + For example, the `getIncidentsByServiceId` query method now returns an object in the shape of `{ incidents: Incident[] }` + instead of just `Incident[]`. + This same pattern goes for `getChangeEventsByServiceId` and `getOnCallByPolicyId` functions. + + **BREAKING** All public exported types that relate to entities within PagerDuty have been prefixed with `PagerDuty` (e.g. `ServicesResponse` is now `PagerDutyServicesResponse` and `User` is now `PagerDutyUser`) + + In addition, various enhancements/bug fixes were introduced: + + - The `PagerDutyCard` component now wraps error and loading messages with an `InfoCard` to contain errors/messages. This enforces a consistent experience on the EntityPage + - If no service can be found for the provided integration key, a new Error Message Empty State component will be shown instead of an error alert + - Introduces the `fetchApi` to replace standard `window.fetch` + - ensures that Identity Authorization is respected and provided in API requests + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-scaffolder@1.4.0-next.0 + +### Minor Changes + +- 3500c13a33: A new template editor has been added which is accessible via the context menu on the top right hand corner of the Create page. It allows you to load a template from a local directory, edit it with a preview, execute it in dry-run mode, and view the results. Note that the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) must be supported by your browser for this to be available. + + To support the new template editor the `ScaffolderApi` now has an optional `dryRun` method, which is implemented by the default `ScaffolderClient`. + +### Patch Changes + +- 37539e29d8: The template editor now shows the cause of request errors that happen during a dry-run. +- 842282ecf9: Bumped `codemirror` dependencies to `v6.0.0`. +- 464bb0e6c8: The max content size for dry-run files has been reduced from 256k to 64k. +- a7c0b34d70: Swap usage of `MaterialTable` with `Table` from `core-components` +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + +## @backstage/plugin-scaffolder-backend@1.4.0-next.0 + +### Minor Changes + +- 3500c13a33: Added a new `/v2/dry-run` endpoint that allows for a synchronous dry run of a provided template. A `supportsDryRun` option has been added to `createTemplateAction`, which signals whether the action should be executed during dry runs. When enabled, the action context will have the new `isDryRun` property set to signal if the action is being executed during a dry run. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + +## @backstage/plugin-vault-backend@0.2.0-next.0 + +### Minor Changes + +- 5ebf2c7023: Throw exceptions instead of swallow them, remove some exported types from the `api-report`, small changes in the API responses & expose the vault `baseUrl` to the frontend as well + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/backend-test-utils@0.1.26-next.0 + +## @backstage/app-defaults@1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/core-app-api@1.0.4-next.0 + +## @backstage/backend-common@0.14.1-next.0 + +### Patch Changes + +- b1edb5cfd9: Fix parsing of S3 URLs for the default region. +- c3cfc83af2: Updated JSDoc to be MDX compatible. +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + +## @backstage/backend-tasks@0.3.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/backend-test-utils@0.1.26-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/cli@0.17.3-next.0 + +## @backstage/catalog-client@1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + +## @backstage/cli@0.17.3-next.0 + +### Patch Changes + +- d2256c0384: Fix `webpack-dev-server` deprecations. + +## @backstage/core-app-api@1.0.4-next.0 + +### Patch Changes + +- 8fe2357101: The `signOut` method of the `IdentityApi` will now navigate the user back to the base URL of the app as indicated by the `app.baseUrl` config. + +## @backstage/core-components@0.9.6-next.0 + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. + +## @backstage/create-app@0.4.29-next.0 + +### Patch Changes + +- bc87604c26: Added an explicit `node-gyp` dependency to the root `package.json`. This is to work around a bug in older versions of `node-gyp` that causes Python execution to fail on macOS. + + You can add this workaround to your existing project by adding `node-gyp` as a `devDependency` in your root `package.json` file: + + ```diff + "devDependencies": { + + "node-gyp": "^9.0.0" + }, + ``` + +## @backstage/dev-utils@1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + +## @backstage/integration@1.2.2-next.0 + +### Patch Changes + +- 8829e175f2: Allow frontend visibility for `integrations` itself. + +## @backstage/integration-react@1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + +## @techdocs/cli@1.1.3-next.0 + +### Patch Changes + +- 14ce0d9347: Fixed a bug that prevented docker images from being pulled by default when generating TechDocs. +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-techdocs-node@1.1.3-next.0 + +## @backstage/test-utils@1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-app-api@1.0.4-next.0 + +## @backstage/plugin-adr@0.1.2-next.0 + +### Patch Changes + +- 7d47e7e512: Track discover event and result rank for `AdrSearchResultListItem` +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-adr-common@0.1.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + +## @backstage/plugin-adr-backend@0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-adr-common@0.1.2-next.0 + +## @backstage/plugin-adr-common@0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-airbrake@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/dev-utils@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + +## @backstage/plugin-airbrake-backend@0.2.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-allure@0.1.23-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-analytics-module-ga@0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-apache-airflow@0.1.15-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-api-docs@0.8.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-app-backend@0.3.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-auth-backend@0.14.2-next.0 + +### Patch Changes + +- 859346bfbb: Updated dependency `google-auth-library` to `^8.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-auth-node@0.2.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-azure-devops@0.1.23-next.0 + +### Patch Changes + +- e049e41048: Exporting azureDevOpsApiRef, AzureGitTagsIcon, and all hooks for the benefit of other plugins. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-azure-devops-backend@0.3.13-next.0 + +### Patch Changes + +- 13a232ec22: Added comments to example to help avoid confusion as to where lines need to be added +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-badges@0.2.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-badges-backend@0.1.28-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-bazaar@0.1.22-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-bazaar-backend@0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-test-utils@0.1.26-next.0 + +## @backstage/plugin-bitbucket-cloud-common@0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-bitrise@0.1.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-catalog@1.3.1-next.0 + +### Patch Changes + +- dcaf1cb418: Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as `white`. + + This was an issue for themes that use a header with a white background. By default, the color of the icon is now `theme.palette.bursts.fontColor`. + + It can now also be overridden in the theme, which is only necessary if the header title, subtitle and three-dots icon need to have different colors. For example: + + ```typescript + export function createThemeOverrides(theme: BackstageTheme): Overrides { + return { + PluginCatalogEntityContextMenu: { + button: { + color: 'blue', + }, + }, + ... + }, + ... + } + ``` + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + +## @backstage/plugin-catalog-backend@1.2.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + +## @backstage/plugin-catalog-backend-module-aws@0.1.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-azure@0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-bitbucket@0.2.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-bitbucket-cloud-common@0.1.1-next.0 + +## @backstage/plugin-catalog-backend-module-bitbucket-cloud@0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-bitbucket-cloud-common@0.1.1-next.0 + +## @backstage/plugin-catalog-backend-module-gerrit@0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-github@0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-gitlab@0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-ldap@0.5.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-backend-module-msgraph@0.3.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + +## @backstage/plugin-catalog-graph@0.2.19-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-catalog-graphql@0.3.11-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + +## @backstage/plugin-catalog-import@0.8.10-next.0 + +### Patch Changes + +- 272106fdad: Support use without `integrations` or only integrations without frontend visible properties (e.g., `bitbucketCloud`) being configured by checking `integrations.github` directly without attempting to load `integrations`. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + +## @backstage/plugin-catalog-react@1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-cicd-statistics@0.1.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-cicd-statistics-module-gitlab@0.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-cicd-statistics@0.1.9-next.0 + +## @backstage/plugin-circleci@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-cloudbuild@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-code-climate@0.1.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-code-coverage@0.1.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-code-coverage-backend@0.1.32-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-codescene@0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-config-schema@0.1.30-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-cost-insights@0.11.29-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-dynatrace@0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-explore@0.3.38-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-firehydrant@0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-fossa@0.2.39-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-gcalendar@0.3.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-gcp-projects@0.3.26-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-git-release-manager@0.3.20-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-github-actions@0.5.7-next.0 + +### Patch Changes + +- 217f919f0a: Minor cleanup of the API surface. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-github-deployments@0.1.38-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + +## @backstage/plugin-github-pull-requests-board@0.1.1-next.0 + +### Patch Changes + +- c6690d9d24: Fix bug on fetching teams repositories where were being filtered by type service unnecessarily +- 04e1504e85: Support namespaced teams and fetch all kinds +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-gitops-profiles@0.3.25-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-gocd@0.1.13-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-graphiql@0.2.39-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-graphql-backend@0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-catalog-graphql@0.3.11-next.0 + +## @backstage/plugin-home@0.4.23-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-stack-overflow@0.1.3-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-ilert@0.1.33-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-jenkins@0.7.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-jenkins-backend@0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-kafka@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-kafka-backend@0.2.27-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + +## @backstage/plugin-kubernetes@0.6.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-kubernetes-common@0.4.0-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-lighthouse@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-newrelic@0.3.25-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-newrelic-dashboard@0.1.15-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-org@0.5.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-periskop@0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-periskop-backend@0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-permission-backend@0.5.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + +## @backstage/plugin-permission-node@0.6.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + +## @backstage/plugin-proxy-backend@0.2.28-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-rollbar@0.4.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-rollbar-backend@0.1.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-scaffolder-backend-module-cookiecutter@0.2.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-scaffolder-backend-module-rails@0.4.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-scaffolder-backend-module-yeoman@0.2.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + +## @backstage/plugin-scaffolder-common@1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + +## @backstage/plugin-search@0.9.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + +## @backstage/plugin-search-backend@0.5.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + +## @backstage/plugin-search-backend-module-elasticsearch@0.1.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-backend-node@0.6.3-next.0 + +## @backstage/plugin-search-backend-module-pg@0.3.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + +## @backstage/plugin-search-backend-node@0.6.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + +## @backstage/plugin-search-react@0.2.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-sentry@0.3.45-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-shortcuts@0.2.8-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-sonarqube@0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-splunk-on-call@0.3.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-stack-overflow@0.1.3-next.0 + +### Patch Changes + +- 12ae3eed2f: - Publicly exports `StackOverflowIcon`. + - `HomePageStackOverflowQuestions` accepts optional icon property. +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-home@0.4.23-next.0 + +## @backstage/plugin-tech-insights@0.2.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-tech-insights-backend@0.4.2-next.0 + +### Patch Changes + +- 2ef58ab539: TechInsightsBackend: Added missing 'scheduler' to code examples +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + +## @backstage/plugin-tech-insights-node@0.3.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + +## @backstage/plugin-tech-radar@0.5.14-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-techdocs@1.2.1-next.0 + +### Patch Changes + +- 3cbebf710e: Reorder browser tab title in Techdocs pages to have the site name first. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + +## @backstage/plugin-techdocs-addons-test-utils@1.0.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + +## @backstage/plugin-techdocs-backend@1.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-techdocs-node@1.1.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-techdocs-module-addons-contrib@1.0.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + +## @backstage/plugin-techdocs-node@1.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + +## @backstage/plugin-techdocs-react@1.0.2-next.0 + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-todo@0.2.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-todo-backend@0.1.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## @backstage/plugin-user-settings@0.4.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @backstage/plugin-vault@0.1.1-next.0 + +### Patch Changes + +- 5ebf2c7023: Export missing parameters and added them to the api-report. Also adapted the API to the expected response from the backend +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + +## @backstage/plugin-xcmetrics@0.2.27-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## example-app@0.2.73-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder@1.4.0-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/plugin-stack-overflow@0.1.3-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/plugin-azure-devops@0.1.23-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/plugin-catalog-import@0.8.10-next.0 + - @backstage/plugin-pagerduty@0.5.0-next.0 + - @backstage/plugin-github-actions@0.5.7-next.0 + - @backstage/plugin-airbrake@0.3.7-next.0 + - @backstage/plugin-api-docs@0.8.7-next.0 + - @backstage/plugin-badges@0.2.31-next.0 + - @backstage/plugin-catalog-graph@0.2.19-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-circleci@0.3.7-next.0 + - @backstage/plugin-cloudbuild@0.3.7-next.0 + - @backstage/plugin-code-coverage@0.1.34-next.0 + - @backstage/plugin-cost-insights@0.11.29-next.0 + - @backstage/plugin-dynatrace@0.1.1-next.0 + - @backstage/plugin-explore@0.3.38-next.0 + - @backstage/plugin-gocd@0.1.13-next.0 + - @backstage/plugin-home@0.4.23-next.0 + - @backstage/plugin-jenkins@0.7.6-next.0 + - @backstage/plugin-kafka@0.3.7-next.0 + - @backstage/plugin-kubernetes@0.6.7-next.0 + - @backstage/plugin-lighthouse@0.3.7-next.0 + - @backstage/plugin-newrelic-dashboard@0.1.15-next.0 + - @backstage/plugin-org@0.5.7-next.0 + - @backstage/plugin-rollbar@0.4.7-next.0 + - @backstage/plugin-search@0.9.1-next.0 + - @backstage/plugin-sentry@0.3.45-next.0 + - @backstage/plugin-tech-insights@0.2.3-next.0 + - @backstage/plugin-todo@0.2.9-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-apache-airflow@0.1.15-next.0 + - @backstage/plugin-gcalendar@0.3.3-next.0 + - @backstage/plugin-gcp-projects@0.3.26-next.0 + - @backstage/plugin-graphiql@0.2.39-next.0 + - @backstage/plugin-newrelic@0.3.25-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + - @backstage/plugin-shortcuts@0.2.8-next.0 + - @backstage/plugin-tech-radar@0.5.14-next.0 + - @backstage/plugin-techdocs-module-addons-contrib@1.0.2-next.0 + - @backstage/plugin-user-settings@0.4.6-next.0 + +## example-backend@0.2.73-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-tech-insights-backend@0.4.2-next.0 + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/plugin-auth-backend@0.14.2-next.0 + - @backstage/plugin-kubernetes-backend@0.7.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-azure-devops-backend@0.3.13-next.0 + - example-app@0.2.73-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-app-backend@0.3.34-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-badges-backend@0.1.28-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-code-coverage-backend@0.1.32-next.0 + - @backstage/plugin-graphql-backend@0.1.24-next.0 + - @backstage/plugin-jenkins-backend@0.1.24-next.0 + - @backstage/plugin-kafka-backend@0.2.27-next.0 + - @backstage/plugin-permission-backend@0.5.9-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/plugin-proxy-backend@0.2.28-next.0 + - @backstage/plugin-rollbar-backend@0.1.31-next.0 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.2-next.0 + - @backstage/plugin-search-backend@0.5.4-next.0 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.6-next.0 + - @backstage/plugin-search-backend-module-pg@0.3.5-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.18-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + - @backstage/plugin-techdocs-backend@1.1.3-next.0 + - @backstage/plugin-todo-backend@0.1.31-next.0 + - @backstage/catalog-client@1.0.4-next.0 + +## techdocs-cli-embedded-app@0.2.72-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + +## @internal/plugin-todo-list@1.0.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + +## @internal/plugin-todo-list-backend@1.0.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 diff --git a/package.json b/package.json index dd2a85e757..823db687d3 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "@types/react": "^17", "@types/react-dom": "^17" }, - "version": "1.3.0", + "version": "1.4.0-next.0", "dependencies": { "@manypkg/get-packages": "^1.1.3", "@microsoft/api-documenter": "^7.17.11", diff --git a/packages/app-defaults/CHANGELOG.md b/packages/app-defaults/CHANGELOG.md index fb1756eba2..929e53e248 100644 --- a/packages/app-defaults/CHANGELOG.md +++ b/packages/app-defaults/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/app-defaults +## 1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/core-app-api@1.0.4-next.0 + ## 1.0.3 ### Patch Changes diff --git a/packages/app-defaults/package.json b/packages/app-defaults/package.json index 0a35b16c3a..92de05204d 100644 --- a/packages/app-defaults/package.json +++ b/packages/app-defaults/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/app-defaults", "description": "Provides the default wiring of a Backstage App", - "version": "1.0.3", + "version": "1.0.4-next.0", "private": false, "publishConfig": { "access": "public", @@ -33,8 +33,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-components": "^0.9.5", - "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.6-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/plugin-permission-react": "^0.4.2", "@backstage/theme": "^0.2.15", @@ -46,8 +46,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@types/jest": "^26.0.7", diff --git a/packages/app/CHANGELOG.md b/packages/app/CHANGELOG.md index 74601b6417..119200eca6 100644 --- a/packages/app/CHANGELOG.md +++ b/packages/app/CHANGELOG.md @@ -1,5 +1,60 @@ # example-app +## 0.2.73-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder@1.4.0-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/plugin-stack-overflow@0.1.3-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/plugin-azure-devops@0.1.23-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/plugin-catalog-import@0.8.10-next.0 + - @backstage/plugin-pagerduty@0.5.0-next.0 + - @backstage/plugin-github-actions@0.5.7-next.0 + - @backstage/plugin-airbrake@0.3.7-next.0 + - @backstage/plugin-api-docs@0.8.7-next.0 + - @backstage/plugin-badges@0.2.31-next.0 + - @backstage/plugin-catalog-graph@0.2.19-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-circleci@0.3.7-next.0 + - @backstage/plugin-cloudbuild@0.3.7-next.0 + - @backstage/plugin-code-coverage@0.1.34-next.0 + - @backstage/plugin-cost-insights@0.11.29-next.0 + - @backstage/plugin-dynatrace@0.1.1-next.0 + - @backstage/plugin-explore@0.3.38-next.0 + - @backstage/plugin-gocd@0.1.13-next.0 + - @backstage/plugin-home@0.4.23-next.0 + - @backstage/plugin-jenkins@0.7.6-next.0 + - @backstage/plugin-kafka@0.3.7-next.0 + - @backstage/plugin-kubernetes@0.6.7-next.0 + - @backstage/plugin-lighthouse@0.3.7-next.0 + - @backstage/plugin-newrelic-dashboard@0.1.15-next.0 + - @backstage/plugin-org@0.5.7-next.0 + - @backstage/plugin-rollbar@0.4.7-next.0 + - @backstage/plugin-search@0.9.1-next.0 + - @backstage/plugin-sentry@0.3.45-next.0 + - @backstage/plugin-tech-insights@0.2.3-next.0 + - @backstage/plugin-todo@0.2.9-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-apache-airflow@0.1.15-next.0 + - @backstage/plugin-gcalendar@0.3.3-next.0 + - @backstage/plugin-gcp-projects@0.3.26-next.0 + - @backstage/plugin-graphiql@0.2.39-next.0 + - @backstage/plugin-newrelic@0.3.25-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + - @backstage/plugin-shortcuts@0.2.8-next.0 + - @backstage/plugin-tech-radar@0.5.14-next.0 + - @backstage/plugin-techdocs-module-addons-contrib@1.0.2-next.0 + - @backstage/plugin-user-settings@0.4.6-next.0 + ## 0.2.72 ### Patch Changes diff --git a/packages/app/package.json b/packages/app/package.json index df9119d602..9c43f03f49 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,66 +1,66 @@ { "name": "example-app", - "version": "0.2.72", + "version": "0.2.73-next.0", "private": true, "backstage": { "role": "frontend" }, "bundled": true, "dependencies": { - "@backstage/app-defaults": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/cli": "^0.17.2", + "@backstage/app-defaults": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/cli": "^0.17.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-airbrake": "^0.3.6", - "@backstage/plugin-api-docs": "^0.8.6", - "@backstage/plugin-azure-devops": "^0.1.22", - "@backstage/plugin-apache-airflow": "^0.1.14", - "@backstage/plugin-badges": "^0.2.30", - "@backstage/plugin-catalog": "^1.3.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-airbrake": "^0.3.7-next.0", + "@backstage/plugin-api-docs": "^0.8.7-next.0", + "@backstage/plugin-azure-devops": "^0.1.23-next.0", + "@backstage/plugin-apache-airflow": "^0.1.15-next.0", + "@backstage/plugin-badges": "^0.2.31-next.0", + "@backstage/plugin-catalog": "^1.3.1-next.0", "@backstage/plugin-catalog-common": "^1.0.3", - "@backstage/plugin-catalog-graph": "^0.2.18", - "@backstage/plugin-catalog-import": "^0.8.9", - "@backstage/plugin-catalog-react": "^1.1.1", - "@backstage/plugin-circleci": "^0.3.6", - "@backstage/plugin-cloudbuild": "^0.3.6", - "@backstage/plugin-code-coverage": "^0.1.33", - "@backstage/plugin-cost-insights": "^0.11.28", - "@backstage/plugin-dynatrace": "^0.1.0", - "@backstage/plugin-explore": "^0.3.37", - "@backstage/plugin-gcalendar": "^0.3.2", - "@backstage/plugin-gcp-projects": "^0.3.25", - "@backstage/plugin-github-actions": "^0.5.6", - "@backstage/plugin-gocd": "^0.1.12", - "@backstage/plugin-graphiql": "^0.2.38", - "@backstage/plugin-home": "^0.4.22", - "@backstage/plugin-jenkins": "^0.7.5", - "@backstage/plugin-kafka": "^0.3.6", - "@backstage/plugin-kubernetes": "^0.6.6", - "@backstage/plugin-lighthouse": "^0.3.6", - "@backstage/plugin-newrelic": "^0.3.24", - "@backstage/plugin-newrelic-dashboard": "^0.1.14", - "@backstage/plugin-org": "^0.5.6", - "@backstage/plugin-pagerduty": "0.4.0", + "@backstage/plugin-catalog-graph": "^0.2.19-next.0", + "@backstage/plugin-catalog-import": "^0.8.10-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", + "@backstage/plugin-circleci": "^0.3.7-next.0", + "@backstage/plugin-cloudbuild": "^0.3.7-next.0", + "@backstage/plugin-code-coverage": "^0.1.34-next.0", + "@backstage/plugin-cost-insights": "^0.11.29-next.0", + "@backstage/plugin-dynatrace": "^0.1.1-next.0", + "@backstage/plugin-explore": "^0.3.38-next.0", + "@backstage/plugin-gcalendar": "^0.3.3-next.0", + "@backstage/plugin-gcp-projects": "^0.3.26-next.0", + "@backstage/plugin-github-actions": "^0.5.7-next.0", + "@backstage/plugin-gocd": "^0.1.13-next.0", + "@backstage/plugin-graphiql": "^0.2.39-next.0", + "@backstage/plugin-home": "^0.4.23-next.0", + "@backstage/plugin-jenkins": "^0.7.6-next.0", + "@backstage/plugin-kafka": "^0.3.7-next.0", + "@backstage/plugin-kubernetes": "^0.6.7-next.0", + "@backstage/plugin-lighthouse": "^0.3.7-next.0", + "@backstage/plugin-newrelic": "^0.3.25-next.0", + "@backstage/plugin-newrelic-dashboard": "^0.1.15-next.0", + "@backstage/plugin-org": "^0.5.7-next.0", + "@backstage/plugin-pagerduty": "0.5.0-next.0", "@backstage/plugin-permission-react": "^0.4.2", - "@backstage/plugin-rollbar": "^0.4.6", - "@backstage/plugin-scaffolder": "^1.3.0", - "@backstage/plugin-search": "^0.9.0", - "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-rollbar": "^0.4.7-next.0", + "@backstage/plugin-scaffolder": "^1.4.0-next.0", + "@backstage/plugin-search": "^0.9.1-next.0", + "@backstage/plugin-search-react": "^0.2.2-next.0", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-sentry": "^0.3.44", - "@backstage/plugin-shortcuts": "^0.2.7", - "@backstage/plugin-stack-overflow": "^0.1.2", - "@backstage/plugin-tech-radar": "^0.5.13", - "@backstage/plugin-techdocs": "^1.2.0", - "@backstage/plugin-techdocs-react": "^1.0.1", - "@backstage/plugin-techdocs-module-addons-contrib": "^1.0.1", - "@backstage/plugin-todo": "^0.2.8", - "@backstage/plugin-user-settings": "^0.4.5", - "@backstage/plugin-tech-insights": "^0.2.2", + "@backstage/plugin-sentry": "^0.3.45-next.0", + "@backstage/plugin-shortcuts": "^0.2.8-next.0", + "@backstage/plugin-stack-overflow": "^0.1.3-next.0", + "@backstage/plugin-tech-radar": "^0.5.14-next.0", + "@backstage/plugin-techdocs": "^1.2.1-next.0", + "@backstage/plugin-techdocs-react": "^1.0.2-next.0", + "@backstage/plugin-techdocs-module-addons-contrib": "^1.0.2-next.0", + "@backstage/plugin-todo": "^0.2.9-next.0", + "@backstage/plugin-user-settings": "^0.4.6-next.0", + "@backstage/plugin-tech-insights": "^0.2.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -81,7 +81,7 @@ "zen-observable": "^0.8.15" }, "devDependencies": { - "@backstage/test-utils": "^1.1.1", + "@backstage/test-utils": "^1.1.2-next.0", "@rjsf/core": "^3.2.1", "@testing-library/cypress": "^8.0.2", "@testing-library/jest-dom": "^5.10.1", diff --git a/packages/backend-common/CHANGELOG.md b/packages/backend-common/CHANGELOG.md index 9e5a28f76b..92b3271ec0 100644 --- a/packages/backend-common/CHANGELOG.md +++ b/packages/backend-common/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/backend-common +## 0.14.1-next.0 + +### Patch Changes + +- b1edb5cfd9: Fix parsing of S3 URLs for the default region. +- c3cfc83af2: Updated JSDoc to be MDX compatible. +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + ## 0.14.0 ### Minor Changes diff --git a/packages/backend-common/package.json b/packages/backend-common/package.json index d4da05eaa6..9c459373ff 100644 --- a/packages/backend-common/package.json +++ b/packages/backend-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-common", "description": "Common functionality library for Backstage backends", - "version": "0.14.0", + "version": "0.14.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -38,7 +38,7 @@ "@backstage/config": "^1.0.1", "@backstage/config-loader": "^1.1.2", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/types": "^1.0.0", "@google-cloud/storage": "^6.0.0", "@manypkg/get-packages": "^1.1.3", @@ -91,8 +91,8 @@ } }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/archiver": "^5.1.0", "@types/base64-stream": "^1.0.2", "@types/compression": "^1.7.0", diff --git a/packages/backend-tasks/CHANGELOG.md b/packages/backend-tasks/CHANGELOG.md index 34be280bbc..b73abb2d5a 100644 --- a/packages/backend-tasks/CHANGELOG.md +++ b/packages/backend-tasks/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/backend-tasks +## 0.3.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.3.2 ### Patch Changes diff --git a/packages/backend-tasks/package.json b/packages/backend-tasks/package.json index e96a71c597..f99baea1d5 100644 --- a/packages/backend-tasks/package.json +++ b/packages/backend-tasks/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-tasks", "description": "Common distributed task management library for Backstage backends", - "version": "0.3.2", + "version": "0.3.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -33,7 +33,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/types": "^1.0.0", @@ -48,8 +48,8 @@ "zod": "^3.9.5" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/cron": "^2.0.0", "wait-for-expect": "^3.0.2" }, diff --git a/packages/backend-test-utils/CHANGELOG.md b/packages/backend-test-utils/CHANGELOG.md index 104f17a2e8..a9da9b0a3c 100644 --- a/packages/backend-test-utils/CHANGELOG.md +++ b/packages/backend-test-utils/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/backend-test-utils +## 0.1.26-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/cli@0.17.3-next.0 + ## 0.1.25 ### Patch Changes diff --git a/packages/backend-test-utils/package.json b/packages/backend-test-utils/package.json index abc55944ea..56aa23bfd8 100644 --- a/packages/backend-test-utils/package.json +++ b/packages/backend-test-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/backend-test-utils", "description": "Test helpers library for Backstage backends", - "version": "0.1.25", + "version": "0.1.26-next.0", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -34,8 +34,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/cli": "^0.17.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/cli": "^0.17.3-next.0", "@backstage/config": "^1.0.1", "better-sqlite3": "^7.5.0", "knex": "^1.0.2", @@ -46,7 +46,7 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/packages/backend/CHANGELOG.md b/packages/backend/CHANGELOG.md index 1602a34c37..3dfde23cae 100644 --- a/packages/backend/CHANGELOG.md +++ b/packages/backend/CHANGELOG.md @@ -1,5 +1,43 @@ # example-backend +## 0.2.73-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-tech-insights-backend@0.4.2-next.0 + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/plugin-auth-backend@0.14.2-next.0 + - @backstage/plugin-kubernetes-backend@0.7.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-azure-devops-backend@0.3.13-next.0 + - example-app@0.2.73-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-app-backend@0.3.34-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-badges-backend@0.1.28-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-code-coverage-backend@0.1.32-next.0 + - @backstage/plugin-graphql-backend@0.1.24-next.0 + - @backstage/plugin-jenkins-backend@0.1.24-next.0 + - @backstage/plugin-kafka-backend@0.2.27-next.0 + - @backstage/plugin-permission-backend@0.5.9-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/plugin-proxy-backend@0.2.28-next.0 + - @backstage/plugin-rollbar-backend@0.1.31-next.0 + - @backstage/plugin-scaffolder-backend-module-rails@0.4.2-next.0 + - @backstage/plugin-search-backend@0.5.4-next.0 + - @backstage/plugin-search-backend-module-elasticsearch@0.1.6-next.0 + - @backstage/plugin-search-backend-module-pg@0.3.5-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + - @backstage/plugin-tech-insights-backend-module-jsonfc@0.1.18-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + - @backstage/plugin-techdocs-backend@1.1.3-next.0 + - @backstage/plugin-todo-backend@0.1.31-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.2.72 ### Patch Changes diff --git a/packages/backend/package.json b/packages/backend/package.json index 9dedf360c1..0023a169bf 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -1,6 +1,6 @@ { "name": "example-backend", - "version": "0.2.72", + "version": "0.2.73-next.0", "main": "dist/index.cjs.js", "types": "src/index.ts", "license": "Apache-2.0", @@ -26,39 +26,39 @@ "build-image": "docker build ../.. -f Dockerfile --tag example-backend" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-app-backend": "^0.3.33", - "@backstage/plugin-auth-backend": "^0.14.1", - "@backstage/plugin-auth-node": "^0.2.2", - "@backstage/plugin-azure-devops-backend": "^0.3.12", - "@backstage/plugin-badges-backend": "^0.1.27", - "@backstage/plugin-catalog-backend": "^1.2.0", - "@backstage/plugin-code-coverage-backend": "^0.1.31", - "@backstage/plugin-graphql-backend": "^0.1.23", - "@backstage/plugin-jenkins-backend": "^0.1.23", - "@backstage/plugin-kubernetes-backend": "^0.6.0", - "@backstage/plugin-kafka-backend": "^0.2.26", - "@backstage/plugin-permission-backend": "^0.5.8", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-app-backend": "^0.3.34-next.0", + "@backstage/plugin-auth-backend": "^0.14.2-next.0", + "@backstage/plugin-auth-node": "^0.2.3-next.0", + "@backstage/plugin-azure-devops-backend": "^0.3.13-next.0", + "@backstage/plugin-badges-backend": "^0.1.28-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", + "@backstage/plugin-code-coverage-backend": "^0.1.32-next.0", + "@backstage/plugin-graphql-backend": "^0.1.24-next.0", + "@backstage/plugin-jenkins-backend": "^0.1.24-next.0", + "@backstage/plugin-kubernetes-backend": "^0.7.0-next.0", + "@backstage/plugin-kafka-backend": "^0.2.27-next.0", + "@backstage/plugin-permission-backend": "^0.5.9-next.0", "@backstage/plugin-permission-common": "^0.6.2", - "@backstage/plugin-permission-node": "^0.6.2", - "@backstage/plugin-proxy-backend": "^0.2.27", - "@backstage/plugin-rollbar-backend": "^0.1.30", - "@backstage/plugin-scaffolder-backend": "^1.3.0", - "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.1", - "@backstage/plugin-search-backend": "^0.5.3", - "@backstage/plugin-search-backend-node": "^0.6.2", - "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.5", - "@backstage/plugin-search-backend-module-pg": "^0.3.4", - "@backstage/plugin-techdocs-backend": "^1.1.2", - "@backstage/plugin-tech-insights-backend": "^0.4.1", - "@backstage/plugin-tech-insights-node": "^0.3.1", - "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.17", - "@backstage/plugin-todo-backend": "^0.1.30", + "@backstage/plugin-permission-node": "^0.6.3-next.0", + "@backstage/plugin-proxy-backend": "^0.2.28-next.0", + "@backstage/plugin-rollbar-backend": "^0.1.31-next.0", + "@backstage/plugin-scaffolder-backend": "^1.4.0-next.0", + "@backstage/plugin-scaffolder-backend-module-rails": "^0.4.2-next.0", + "@backstage/plugin-search-backend": "^0.5.4-next.0", + "@backstage/plugin-search-backend-node": "^0.6.3-next.0", + "@backstage/plugin-search-backend-module-elasticsearch": "^0.1.6-next.0", + "@backstage/plugin-search-backend-module-pg": "^0.3.5-next.0", + "@backstage/plugin-techdocs-backend": "^1.1.3-next.0", + "@backstage/plugin-tech-insights-backend": "^0.4.2-next.0", + "@backstage/plugin-tech-insights-node": "^0.3.2-next.0", + "@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.18-next.0", + "@backstage/plugin-todo-backend": "^0.1.31-next.0", "@gitbeaker/node": "^35.1.0", "@octokit/rest": "^18.5.3", "better-sqlite3": "^7.5.0", @@ -75,7 +75,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/dockerode": "^3.3.0", "@types/express": "^4.17.6", "@types/express-serve-static-core": "^4.17.5", diff --git a/packages/catalog-client/CHANGELOG.md b/packages/catalog-client/CHANGELOG.md index 93d232dc24..8ea70b67be 100644 --- a/packages/catalog-client/CHANGELOG.md +++ b/packages/catalog-client/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/catalog-client +## 1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + ## 1.0.3 ### Patch Changes diff --git a/packages/catalog-client/package.json b/packages/catalog-client/package.json index 76818ed10f..893b057e37 100644 --- a/packages/catalog-client/package.json +++ b/packages/catalog-client/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/catalog-client", "description": "An isomorphic client for the catalog backend", - "version": "1.0.3", + "version": "1.0.4-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,12 +33,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/errors": "^1.0.0", "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "msw": "^0.42.0" }, diff --git a/packages/catalog-model/CHANGELOG.md b/packages/catalog-model/CHANGELOG.md index 7d491dad5b..6501c32409 100644 --- a/packages/catalog-model/CHANGELOG.md +++ b/packages/catalog-model/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/catalog-model +## 1.1.0-next.0 + +### Minor Changes + +- 1380b389dc: Adding an optional type field to entity links to group and categorize links + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. + ## 1.0.3 ### Patch Changes diff --git a/packages/catalog-model/package.json b/packages/catalog-model/package.json index 328482fd24..ba2521b927 100644 --- a/packages/catalog-model/package.json +++ b/packages/catalog-model/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/catalog-model", "description": "Types and validators that help describe the model of a Backstage Catalog", - "version": "1.0.3", + "version": "1.1.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -43,7 +43,7 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "@types/json-schema": "^7.0.5", "@types/lodash": "^4.14.151", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 4da56c18bd..dbceb46db1 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/cli +## 0.17.3-next.0 + +### Patch Changes + +- d2256c0384: Fix `webpack-dev-server` deprecations. + ## 0.17.2 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 071fc74f97..08f67249f5 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/cli", "description": "CLI for developing Backstage plugins and apps", - "version": "0.17.2", + "version": "0.17.3-next.0", "private": false, "publishConfig": { "access": "public" @@ -126,13 +126,13 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@types/diff": "^5.0.0", "@types/express": "^4.17.6", diff --git a/packages/config/package.json b/packages/config/package.json index bc0693fa73..fc99531bb4 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -37,7 +37,7 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@backstage/test-utils": "^1.1.1-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@types/jest": "^26.0.7", "@types/node": "^16.0.0" }, diff --git a/packages/core-app-api/CHANGELOG.md b/packages/core-app-api/CHANGELOG.md index 8d78e51c62..c4d2f9d8fe 100644 --- a/packages/core-app-api/CHANGELOG.md +++ b/packages/core-app-api/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/core-app-api +## 1.0.4-next.0 + +### Patch Changes + +- 8fe2357101: The `signOut` method of the `IdentityApi` will now navigate the user back to the base URL of the app as indicated by the `app.baseUrl` config. + ## 1.0.3 ### Patch Changes diff --git a/packages/core-app-api/package.json b/packages/core-app-api/package.json index cbf9d7eb40..be95a344fa 100644 --- a/packages/core-app-api/package.json +++ b/packages/core-app-api/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-app-api", "description": "Core app API used by Backstage apps", - "version": "1.0.3", + "version": "1.0.4-next.0", "private": false, "publishConfig": { "access": "public", @@ -49,8 +49,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/core-components/CHANGELOG.md b/packages/core-components/CHANGELOG.md index faec6d3d90..ccccade63d 100644 --- a/packages/core-components/CHANGELOG.md +++ b/packages/core-components/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/core-components +## 0.9.6-next.0 + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. + ## 0.9.5 ### Patch Changes diff --git a/packages/core-components/package.json b/packages/core-components/package.json index 867909b3cf..f4b4f55089 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/core-components", "description": "Core components used by Backstage plugins and apps", - "version": "0.9.5", + "version": "0.9.6-next.0", "private": false, "publishConfig": { "access": "public", @@ -79,9 +79,9 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/core-app-api": "^1.0.3", - "@backstage/cli": "^0.17.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/core-plugin-api/package.json b/packages/core-plugin-api/package.json index 8d525b5f0f..5f468dba51 100644 --- a/packages/core-plugin-api/package.json +++ b/packages/core-plugin-api/package.json @@ -46,9 +46,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/packages/create-app/CHANGELOG.md b/packages/create-app/CHANGELOG.md index 775aed3faa..77d36048ba 100644 --- a/packages/create-app/CHANGELOG.md +++ b/packages/create-app/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/create-app +## 0.4.29-next.0 + +### Patch Changes + +- bc87604c26: Added an explicit `node-gyp` dependency to the root `package.json`. This is to work around a bug in older versions of `node-gyp` that causes Python execution to fail on macOS. + + You can add this workaround to your existing project by adding `node-gyp` as a `devDependency` in your root `package.json` file: + + ```diff + "devDependencies": { + + "node-gyp": "^9.0.0" + }, + ``` + ## 0.4.28 ### Patch Changes diff --git a/packages/create-app/package.json b/packages/create-app/package.json index bca9fe9b68..d67e7c6f54 100644 --- a/packages/create-app/package.json +++ b/packages/create-app/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/create-app", "description": "A CLI that helps you create your own Backstage app", - "version": "0.4.28", + "version": "0.4.29-next.0", "private": false, "publishConfig": { "access": "public" diff --git a/packages/dev-utils/CHANGELOG.md b/packages/dev-utils/CHANGELOG.md index 563de9fc44..26aa5ce212 100644 --- a/packages/dev-utils/CHANGELOG.md +++ b/packages/dev-utils/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/dev-utils +## 1.0.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + ## 1.0.3 ### Patch Changes diff --git a/packages/dev-utils/package.json b/packages/dev-utils/package.json index 2da041d9b7..8835aea7c6 100644 --- a/packages/dev-utils/package.json +++ b/packages/dev-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/dev-utils", "description": "Utilities for developing Backstage plugins.", - "version": "1.0.3", + "version": "1.0.4-next.0", "private": false, "publishConfig": { "access": "public", @@ -33,14 +33,14 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/app-defaults": "^1.0.3", - "@backstage/core-app-api": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/app-defaults": "^1.0.4-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog-react": "^1.1.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -59,7 +59,7 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "@types/node": "^16.0.0" }, diff --git a/packages/errors/package.json b/packages/errors/package.json index 8327246224..849c451e84 100644 --- a/packages/errors/package.json +++ b/packages/errors/package.json @@ -38,7 +38,7 @@ "serialize-error": "^8.0.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7" }, "files": [ diff --git a/packages/integration-react/CHANGELOG.md b/packages/integration-react/CHANGELOG.md index d03553f50d..30326e1205 100644 --- a/packages/integration-react/CHANGELOG.md +++ b/packages/integration-react/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/integration-react +## 1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + ## 1.1.1 ### Patch Changes diff --git a/packages/integration-react/package.json b/packages/integration-react/package.json index 580b91509f..ea87dfc724 100644 --- a/packages/integration-react/package.json +++ b/packages/integration-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/integration-react", "description": "Frontend package for managing integrations towards external systems", - "version": "1.1.1", + "version": "1.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,9 +25,9 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -38,9 +38,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/packages/integration/CHANGELOG.md b/packages/integration/CHANGELOG.md index 736d9ff2a1..9a9b679b19 100644 --- a/packages/integration/CHANGELOG.md +++ b/packages/integration/CHANGELOG.md @@ -1,5 +1,11 @@ # @backstage/integration +## 1.2.2-next.0 + +### Patch Changes + +- 8829e175f2: Allow frontend visibility for `integrations` itself. + ## 1.2.1 ### Patch Changes diff --git a/packages/integration/package.json b/packages/integration/package.json index 06faef890d..f103d63bbb 100644 --- a/packages/integration/package.json +++ b/packages/integration/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/integration", "description": "Helpers for managing integrations towards external systems", - "version": "1.2.1", + "version": "1.2.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -43,9 +43,9 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@backstage/config-loader": "^1.1.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/test-utils": "^1.1.2-next.0", "@types/jest": "^26.0.7", "@types/luxon": "^2.0.4", "msw": "^0.42.0" diff --git a/packages/release-manifests/package.json b/packages/release-manifests/package.json index f0627a9c95..822c3c1a52 100644 --- a/packages/release-manifests/package.json +++ b/packages/release-manifests/package.json @@ -36,7 +36,7 @@ "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/test-utils": "^1.1.1", + "@backstage/test-utils": "^1.1.2-next.0", "msw": "^0.42.0", "@types/jest": "^26.0.7", "@types/node": "^16.0.0" diff --git a/packages/techdocs-cli-embedded-app/CHANGELOG.md b/packages/techdocs-cli-embedded-app/CHANGELOG.md index 58102369ed..b6ce6d4a97 100644 --- a/packages/techdocs-cli-embedded-app/CHANGELOG.md +++ b/packages/techdocs-cli-embedded-app/CHANGELOG.md @@ -1,5 +1,21 @@ # techdocs-cli-embedded-app +## 0.2.72-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/app-defaults@1.0.4-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + ## 0.2.71 ### Patch Changes diff --git a/packages/techdocs-cli-embedded-app/package.json b/packages/techdocs-cli-embedded-app/package.json index 8029d604db..959be03e52 100644 --- a/packages/techdocs-cli-embedded-app/package.json +++ b/packages/techdocs-cli-embedded-app/package.json @@ -1,24 +1,24 @@ { "name": "techdocs-cli-embedded-app", - "version": "0.2.71", + "version": "0.2.72-next.0", "private": true, "backstage": { "role": "frontend" }, "bundled": true, "dependencies": { - "@backstage/app-defaults": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/cli": "^0.17.2", + "@backstage/app-defaults": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/cli": "^0.17.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/plugin-techdocs": "^1.2.0", - "@backstage/plugin-techdocs-react": "^1.0.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/plugin-techdocs": "^1.2.1-next.0", + "@backstage/plugin-techdocs-react": "^1.0.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.11.0", "@material-ui/icons": "^4.9.1", @@ -30,7 +30,7 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/packages/techdocs-cli/CHANGELOG.md b/packages/techdocs-cli/CHANGELOG.md index 21eb2393b7..aa1870d5da 100644 --- a/packages/techdocs-cli/CHANGELOG.md +++ b/packages/techdocs-cli/CHANGELOG.md @@ -1,5 +1,15 @@ # @techdocs/cli +## 1.1.3-next.0 + +### Patch Changes + +- 14ce0d9347: Fixed a bug that prevented docker images from being pulled by default when generating TechDocs. +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-techdocs-node@1.1.3-next.0 + ## 1.1.2 ### Patch Changes diff --git a/packages/techdocs-cli/package.json b/packages/techdocs-cli/package.json index d1db470572..7f556a8dd7 100644 --- a/packages/techdocs-cli/package.json +++ b/packages/techdocs-cli/package.json @@ -1,7 +1,7 @@ { "name": "@techdocs/cli", "description": "Utility CLI for managing TechDocs sites in Backstage.", - "version": "1.1.2", + "version": "1.1.3-next.0", "private": false, "publishConfig": { "access": "public" @@ -37,7 +37,7 @@ "techdocs-cli": "bin/techdocs-cli" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/commander": "^2.12.2", "@types/fs-extra": "^9.0.6", "@types/http-proxy": "^1.17.4", @@ -62,11 +62,11 @@ "ext": "ts" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/cli-common": "^0.1.9", "@backstage/config": "^1.0.1", - "@backstage/plugin-techdocs-node": "^1.1.2", + "@backstage/plugin-techdocs-node": "^1.1.3-next.0", "@types/dockerode": "^3.3.0", "commander": "^9.1.0", "dockerode": "^3.3.1", diff --git a/packages/test-utils/CHANGELOG.md b/packages/test-utils/CHANGELOG.md index d8e9a8dd11..56bcd3ec62 100644 --- a/packages/test-utils/CHANGELOG.md +++ b/packages/test-utils/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/test-utils +## 1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-app-api@1.0.4-next.0 + ## 1.1.1 ### Patch Changes diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index 0c52f47325..17886b76ce 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/test-utils", "description": "Utilities to test Backstage plugins and apps.", - "version": "1.1.1", + "version": "1.1.2-next.0", "private": false, "publishConfig": { "access": "public", @@ -34,7 +34,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-app-api": "^1.0.3", + "@backstage/core-app-api": "^1.0.4-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/plugin-permission-common": "^0.6.2", "@backstage/plugin-permission-react": "^0.4.2", @@ -55,7 +55,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "msw": "^0.42.0" diff --git a/packages/theme/package.json b/packages/theme/package.json index d10999fefb..0e4d26fbea 100644 --- a/packages/theme/package.json +++ b/packages/theme/package.json @@ -36,7 +36,7 @@ "@material-ui/core": "^4.12.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/packages/types/package.json b/packages/types/package.json index 5ea10709ec..9d26ee25e7 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -34,7 +34,7 @@ }, "dependencies": {}, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/zen-observable": "^0.8.0", "zen-observable": "^0.8.15" }, diff --git a/packages/version-bridge/package.json b/packages/version-bridge/package.json index 81ec8017a1..357350bef7 100644 --- a/packages/version-bridge/package.json +++ b/packages/version-bridge/package.json @@ -37,7 +37,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.3-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0" diff --git a/plugins/adr-backend/CHANGELOG.md b/plugins/adr-backend/CHANGELOG.md index 946df67282..8262032252 100644 --- a/plugins/adr-backend/CHANGELOG.md +++ b/plugins/adr-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-adr-backend +## 0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-adr-common@0.1.2-next.0 + ## 0.1.1 ### Patch Changes diff --git a/plugins/adr-backend/package.json b/plugins/adr-backend/package.json index c192e0cd85..7ed696a650 100644 --- a/plugins/adr-backend/package.json +++ b/plugins/adr-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-adr-backend", - "version": "0.1.1", + "version": "0.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,13 +29,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-adr-common": "^0.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-adr-common": "^0.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", "luxon": "^2.0.2", "marked": "^4.0.14", @@ -44,7 +44,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/marked": "^4.0.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3", diff --git a/plugins/adr-common/CHANGELOG.md b/plugins/adr-common/CHANGELOG.md index d9a0207248..07bbac4e8e 100644 --- a/plugins/adr-common/CHANGELOG.md +++ b/plugins/adr-common/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-adr-common +## 0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + ## 0.1.1 ### Patch Changes diff --git a/plugins/adr-common/package.json b/plugins/adr-common/package.json index d3607f3a99..fee09a03e1 100644 --- a/plugins/adr-common/package.json +++ b/plugins/adr-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-adr-common", "description": "Common functionalities for the adr plugin", - "version": "0.1.1", + "version": "0.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,12 +30,12 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/integration": "^1.2.1", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/integration": "^1.2.2-next.0", "@backstage/plugin-search-common": "^0.3.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/adr/CHANGELOG.md b/plugins/adr/CHANGELOG.md index 61e28f3834..7d0e47a5f1 100644 --- a/plugins/adr/CHANGELOG.md +++ b/plugins/adr/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-adr +## 0.1.2-next.0 + +### Patch Changes + +- 7d47e7e512: Track discover event and result rank for `AdrSearchResultListItem` +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-adr-common@0.1.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + ## 0.1.1 ### Patch Changes diff --git a/plugins/adr/package.json b/plugins/adr/package.json index 194cc44ae4..4bff140277 100644 --- a/plugins/adr/package.json +++ b/plugins/adr/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-adr", - "version": "0.1.1", + "version": "0.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,13 +22,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-adr-common": "^0.1.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-adr-common": "^0.1.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-search-react": "^0.2.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -44,10 +44,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/airbrake-backend/CHANGELOG.md b/plugins/airbrake-backend/CHANGELOG.md index e24e510782..5810bda422 100644 --- a/plugins/airbrake-backend/CHANGELOG.md +++ b/plugins/airbrake-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-airbrake-backend +## 0.2.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.2.6 ### Patch Changes diff --git a/plugins/airbrake-backend/package.json b/plugins/airbrake-backend/package.json index 4e56593990..979137cbff 100644 --- a/plugins/airbrake-backend/package.json +++ b/plugins/airbrake-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-airbrake-backend", - "version": "0.2.6", + "version": "0.2.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,7 +22,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@types/express": "*", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/airbrake/CHANGELOG.md b/plugins/airbrake/CHANGELOG.md index a09bf6c668..b1a86b6e22 100644 --- a/plugins/airbrake/CHANGELOG.md +++ b/plugins/airbrake/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-airbrake +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/dev-utils@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/airbrake/package.json b/plugins/airbrake/package.json index b98785889f..755e99c522 100644 --- a/plugins/airbrake/package.json +++ b/plugins/airbrake/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-airbrake", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/app-defaults": "^1.0.3", - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/app-defaults": "^1.0.4-next.0", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/allure/CHANGELOG.md b/plugins/allure/CHANGELOG.md index 26b754fbf8..06f84b5f42 100644 --- a/plugins/allure/CHANGELOG.md +++ b/plugins/allure/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-allure +## 0.1.23-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.22 ### Patch Changes diff --git a/plugins/allure/package.json b/plugins/allure/package.json index b5d95973f2..2499a70f28 100644 --- a/plugins/allure/package.json +++ b/plugins/allure/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-allure", "description": "A Backstage plugin that integrates with Allure", - "version": "0.1.22", + "version": "0.1.23-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,10 +25,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/analytics-module-ga/CHANGELOG.md b/plugins/analytics-module-ga/CHANGELOG.md index b8a14619d4..d9fe0e6c0d 100644 --- a/plugins/analytics-module-ga/CHANGELOG.md +++ b/plugins/analytics-module-ga/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-analytics-module-ga +## 0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.1.17 ### Patch Changes diff --git a/plugins/analytics-module-ga/package.json b/plugins/analytics-module-ga/package.json index 7196539053..0b137d5a44 100644 --- a/plugins/analytics-module-ga/package.json +++ b/plugins/analytics-module-ga/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-analytics-module-ga", - "version": "0.1.17", + "version": "0.1.18-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -38,10 +38,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/apache-airflow/CHANGELOG.md b/plugins/apache-airflow/CHANGELOG.md index 7f1fc05e69..73c1c2ae18 100644 --- a/plugins/apache-airflow/CHANGELOG.md +++ b/plugins/apache-airflow/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-apache-airflow +## 0.1.15-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.1.14 ### Patch Changes diff --git a/plugins/apache-airflow/package.json b/plugins/apache-airflow/package.json index 5455bd602b..63f444075e 100644 --- a/plugins/apache-airflow/package.json +++ b/plugins/apache-airflow/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-apache-airflow", - "version": "0.1.14", + "version": "0.1.15-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -36,10 +36,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/api-docs-module-protoc-gen-doc/CHANGELOG.md b/plugins/api-docs-module-protoc-gen-doc/CHANGELOG.md new file mode 100644 index 0000000000..c6ca346a62 --- /dev/null +++ b/plugins/api-docs-module-protoc-gen-doc/CHANGELOG.md @@ -0,0 +1,7 @@ +# @backstage/plugin-api-docs-module-protoc-gen-doc + +## 0.1.0-next.0 + +### Minor Changes + +- e0328f2107: Added the new `grpcDocsApiWidget` to render `protoc-gen-doc` generated descriptors by the `grpc-docs` package. diff --git a/plugins/api-docs-module-protoc-gen-doc/package.json b/plugins/api-docs-module-protoc-gen-doc/package.json index 81e7b7ea45..2ce03b5803 100644 --- a/plugins/api-docs-module-protoc-gen-doc/package.json +++ b/plugins/api-docs-module-protoc-gen-doc/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-api-docs-module-protoc-gen-doc", "description": "Additional functionalities for the api-docs plugin that renders the output of the protoc-gen-doc", - "version": "0.0.0", + "version": "0.1.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -37,7 +37,7 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0", + "@backstage/cli": "^0.17.3-next.0", "@testing-library/jest-dom": "^5.16.4", "@types/react": "^16.13.1 || ^17.0.0" }, diff --git a/plugins/api-docs/CHANGELOG.md b/plugins/api-docs/CHANGELOG.md index 2d61c19e62..f5998235ca 100644 --- a/plugins/api-docs/CHANGELOG.md +++ b/plugins/api-docs/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-api-docs +## 0.8.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.8.6 ### Patch Changes diff --git a/plugins/api-docs/package.json b/plugins/api-docs/package.json index 9cd1e3aef0..9db7530f84 100644 --- a/plugins/api-docs/package.json +++ b/plugins/api-docs/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-api-docs", "description": "A Backstage plugin that helps represent API entities in the frontend", - "version": "0.8.6", + "version": "0.8.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ }, "dependencies": { "@asyncapi/react-component": "1.0.0-next.38", - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/app-backend/CHANGELOG.md b/plugins/app-backend/CHANGELOG.md index 6e86ece20d..aa3baa77da 100644 --- a/plugins/app-backend/CHANGELOG.md +++ b/plugins/app-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-app-backend +## 0.3.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.3.33 ### Patch Changes diff --git a/plugins/app-backend/package.json b/plugins/app-backend/package.json index 5efb839730..173b15c80c 100644 --- a/plugins/app-backend/package.json +++ b/plugins/app-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-app-backend", "description": "A Backstage backend plugin that serves the Backstage frontend app", - "version": "0.3.33", + "version": "0.3.34-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config-loader": "^1.1.2", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@backstage/types": "^1.0.0", "@types/supertest": "^2.0.8", "mock-fs": "^5.1.0", diff --git a/plugins/auth-backend/CHANGELOG.md b/plugins/auth-backend/CHANGELOG.md index 0f69289de5..00c8669c4d 100644 --- a/plugins/auth-backend/CHANGELOG.md +++ b/plugins/auth-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-auth-backend +## 0.14.2-next.0 + +### Patch Changes + +- 859346bfbb: Updated dependency `google-auth-library` to `^8.0.0`. +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.14.1 ### Patch Changes diff --git a/plugins/auth-backend/package.json b/plugins/auth-backend/package.json index d0a4438afa..c1fe319e3c 100644 --- a/plugins/auth-backend/package.json +++ b/plugins/auth-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-auth-backend", "description": "A Backstage backend plugin that handles authentication", - "version": "0.14.1", + "version": "0.14.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,10 +33,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/plugin-auth-node": "^0.2.2", - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/plugin-auth-node": "^0.2.3-next.0", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/types": "^1.0.0", @@ -76,8 +76,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/body-parser": "^1.19.0", "@types/cookie-parser": "^1.4.2", "@types/express-session": "^1.17.2", diff --git a/plugins/auth-node/CHANGELOG.md b/plugins/auth-node/CHANGELOG.md index 4381303915..68fef0b00d 100644 --- a/plugins/auth-node/CHANGELOG.md +++ b/plugins/auth-node/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-auth-node +## 0.2.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.2.2 ### Patch Changes diff --git a/plugins/auth-node/package.json b/plugins/auth-node/package.json index 2281d2d35e..bac48aa559 100644 --- a/plugins/auth-node/package.json +++ b/plugins/auth-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-auth-node", - "version": "0.2.2", + "version": "0.2.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "jose": "^4.6.0", @@ -31,7 +31,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "lodash": "^4.17.21", "msw": "^0.42.0", "uuid": "^8.0.0" diff --git a/plugins/azure-devops-backend/CHANGELOG.md b/plugins/azure-devops-backend/CHANGELOG.md index f9d414bef9..95fb110ed8 100644 --- a/plugins/azure-devops-backend/CHANGELOG.md +++ b/plugins/azure-devops-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-azure-devops-backend +## 0.3.13-next.0 + +### Patch Changes + +- 13a232ec22: Added comments to example to help avoid confusion as to where lines need to be added +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.3.12 ### Patch Changes diff --git a/plugins/azure-devops-backend/package.json b/plugins/azure-devops-backend/package.json index e85ba907c6..d0fd5eaf80 100644 --- a/plugins/azure-devops-backend/package.json +++ b/plugins/azure-devops-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-azure-devops-backend", - "version": "0.3.12", + "version": "0.3.13-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/plugin-azure-devops-common": "^0.2.3", "@types/express": "^4.17.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", "msw": "^0.42.0" diff --git a/plugins/azure-devops-common/package.json b/plugins/azure-devops-common/package.json index 0f52082db6..2e39961ca8 100644 --- a/plugins/azure-devops-common/package.json +++ b/plugins/azure-devops-common/package.json @@ -32,7 +32,7 @@ "clean": "backstage-cli package clean" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/azure-devops/CHANGELOG.md b/plugins/azure-devops/CHANGELOG.md index 8de9bd00a8..297dc81883 100644 --- a/plugins/azure-devops/CHANGELOG.md +++ b/plugins/azure-devops/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-azure-devops +## 0.1.23-next.0 + +### Patch Changes + +- e049e41048: Exporting azureDevOpsApiRef, AzureGitTagsIcon, and all hooks for the benefit of other plugins. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.22 ### Patch Changes diff --git a/plugins/azure-devops/package.json b/plugins/azure-devops/package.json index 8fad3a8697..5375737866 100644 --- a/plugins/azure-devops/package.json +++ b/plugins/azure-devops/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-azure-devops", - "version": "0.1.22", + "version": "0.1.23-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,12 +30,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/plugin-azure-devops-common": "^0.2.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/badges-backend/CHANGELOG.md b/plugins/badges-backend/CHANGELOG.md index 3b80f26ca1..6f69cf8662 100644 --- a/plugins/badges-backend/CHANGELOG.md +++ b/plugins/badges-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-badges-backend +## 0.1.28-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.1.27 ### Patch Changes diff --git a/plugins/badges-backend/package.json b/plugins/badges-backend/package.json index d1b5d094d9..b7a727c3b0 100644 --- a/plugins/badges-backend/package.json +++ b/plugins/badges-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-badges-backend", "description": "A Backstage backend plugin that generates README badges for your entities", - "version": "0.1.27", + "version": "0.1.28-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "^4.17.6", @@ -48,7 +48,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/badges/CHANGELOG.md b/plugins/badges/CHANGELOG.md index ff7b290b68..0d789f0f3d 100644 --- a/plugins/badges/CHANGELOG.md +++ b/plugins/badges/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-badges +## 0.2.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.2.30 ### Patch Changes diff --git a/plugins/badges/package.json b/plugins/badges/package.json index aeade2c50a..c12aedee98 100644 --- a/plugins/badges/package.json +++ b/plugins/badges/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-badges", "description": "A Backstage plugin that generates README badges for your entities", - "version": "0.2.30", + "version": "0.2.31-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,11 +30,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -46,10 +46,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/bazaar-backend/CHANGELOG.md b/plugins/bazaar-backend/CHANGELOG.md index 4b0cb04530..cfc222eb55 100644 --- a/plugins/bazaar-backend/CHANGELOG.md +++ b/plugins/bazaar-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-bazaar-backend +## 0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-test-utils@0.1.26-next.0 + ## 0.1.17 ### Patch Changes diff --git a/plugins/bazaar-backend/package.json b/plugins/bazaar-backend/package.json index 5f723a9dfb..c0769fe5b8 100644 --- a/plugins/bazaar-backend/package.json +++ b/plugins/bazaar-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-bazaar-backend", - "version": "0.1.17", + "version": "0.1.18-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-test-utils": "^0.1.25", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-test-utils": "^0.1.26-next.0", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -34,7 +34,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist", diff --git a/plugins/bazaar/CHANGELOG.md b/plugins/bazaar/CHANGELOG.md index 911390ee28..577b50f11e 100644 --- a/plugins/bazaar/CHANGELOG.md +++ b/plugins/bazaar/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-bazaar +## 0.1.22-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/cli@0.17.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.21 ### Patch Changes diff --git a/plugins/bazaar/package.json b/plugins/bazaar/package.json index cb3318b4e9..5f16d8a9bc 100644 --- a/plugins/bazaar/package.json +++ b/plugins/bazaar/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-bazaar", - "version": "0.1.21", + "version": "0.1.22-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/cli": "^0.17.2", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@date-io/luxon": "1.x", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -47,8 +47,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", "@testing-library/jest-dom": "^5.10.1", "cross-fetch": "^3.1.5" }, diff --git a/plugins/bitbucket-cloud-common/CHANGELOG.md b/plugins/bitbucket-cloud-common/CHANGELOG.md index 62100f2e0b..f066706277 100644 --- a/plugins/bitbucket-cloud-common/CHANGELOG.md +++ b/plugins/bitbucket-cloud-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-bitbucket-cloud-common +## 0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/bitbucket-cloud-common/package.json b/plugins/bitbucket-cloud-common/package.json index a02196bc39..46ec37791c 100644 --- a/plugins/bitbucket-cloud-common/package.json +++ b/plugins/bitbucket-cloud-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-bitbucket-cloud-common", "description": "Common functionalities for bitbucket-cloud plugins", - "version": "0.1.0", + "version": "0.1.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,11 +28,11 @@ "update-models": "yarn refresh-schema && yarn generate-models && yarn reduce-models" }, "dependencies": { - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "cross-fetch": "^3.1.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@openapitools/openapi-generator-cli": "^2.4.26", "msw": "^0.42.0", "ts-morph": "^15.0.0" diff --git a/plugins/bitrise/CHANGELOG.md b/plugins/bitrise/CHANGELOG.md index 0badfe894d..86662fdeba 100644 --- a/plugins/bitrise/CHANGELOG.md +++ b/plugins/bitrise/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-bitrise +## 0.1.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.33 ### Patch Changes diff --git a/plugins/bitrise/package.json b/plugins/bitrise/package.json index 1d17b5a4b5..a42a513fbf 100644 --- a/plugins/bitrise/package.json +++ b/plugins/bitrise/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-bitrise", "description": "A Backstage plugin that integrates towards Bitrise", - "version": "0.1.33", + "version": "0.1.34-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,10 +24,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/catalog-backend-module-aws/CHANGELOG.md b/plugins/catalog-backend-module-aws/CHANGELOG.md index d246ae9677..28bd008062 100644 --- a/plugins/catalog-backend-module-aws/CHANGELOG.md +++ b/plugins/catalog-backend-module-aws/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-aws +## 0.1.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.1.6 ### Patch Changes diff --git a/plugins/catalog-backend-module-aws/package.json b/plugins/catalog-backend-module-aws/package.json index 53ed33c47d..1a825a397d 100644 --- a/plugins/catalog-backend-module-aws/package.json +++ b/plugins/catalog-backend-module-aws/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-aws", "description": "A Backstage catalog backend module that helps integrate towards AWS", - "version": "0.1.6", + "version": "0.1.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "aws-sdk": "^2.840.0", "lodash": "^4.17.21", @@ -48,7 +48,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151", "aws-sdk-mock": "^5.2.1", "yaml": "^1.9.2" diff --git a/plugins/catalog-backend-module-azure/CHANGELOG.md b/plugins/catalog-backend-module-azure/CHANGELOG.md index fcc8126ad0..b39064e4e5 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.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.1.4 ### Patch Changes diff --git a/plugins/catalog-backend-module-azure/package.json b/plugins/catalog-backend-module-azure/package.json index 5b0966f960..3e244dc913 100644 --- a/plugins/catalog-backend-module-azure/package.json +++ b/plugins/catalog-backend-module-azure/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-azure", "description": "A Backstage catalog backend module that helps integrate towards Azure", - "version": "0.1.4", + "version": "0.1.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", - "@backstage/backend-tasks": "^0.3.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -48,8 +48,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md index 4f83b02e1f..c0d71dd190 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket-cloud/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-backend-module-bitbucket-cloud +## 0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-bitbucket-cloud-common@0.1.1-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/catalog-backend-module-bitbucket-cloud/package.json b/plugins/catalog-backend-module-bitbucket-cloud/package.json index aea92c3b56..d55e8d9c8f 100644 --- a/plugins/catalog-backend-module-bitbucket-cloud/package.json +++ b/plugins/catalog-backend-module-bitbucket-cloud/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket-cloud", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket Cloud", - "version": "0.1.0", + "version": "0.1.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,18 +33,18 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-tasks": "^0.3.2", + "@backstage/backend-tasks": "^0.3.3-next.0", "@backstage/config": "^1.0.1", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-bitbucket-cloud-common": "^0.1.0", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-bitbucket-cloud-common": "^0.1.1-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "uuid": "^8.0.0", "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "msw": "^0.42.0" }, "files": [ diff --git a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md index 8c3b2c6ad5..225e2cda88 100644 --- a/plugins/catalog-backend-module-bitbucket/CHANGELOG.md +++ b/plugins/catalog-backend-module-bitbucket/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-bitbucket +## 0.2.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/plugin-bitbucket-cloud-common@0.1.1-next.0 + ## 0.2.0 ### Minor Changes diff --git a/plugins/catalog-backend-module-bitbucket/package.json b/plugins/catalog-backend-module-bitbucket/package.json index 8b9c3b4e91..d7df9542a6 100644 --- a/plugins/catalog-backend-module-bitbucket/package.json +++ b/plugins/catalog-backend-module-bitbucket/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-bitbucket", "description": "A Backstage catalog backend module that helps integrate towards Bitbucket", - "version": "0.2.0", + "version": "0.2.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-bitbucket-cloud-common": "^0.1.0", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-bitbucket-cloud-common": "^0.1.1-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -47,8 +47,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gerrit/CHANGELOG.md b/plugins/catalog-backend-module-gerrit/CHANGELOG.md index 8654556d28..483ff47997 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.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.1.1 ### Patch Changes diff --git a/plugins/catalog-backend-module-gerrit/package.json b/plugins/catalog-backend-module-gerrit/package.json index 55c33d2578..0668a2858b 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.1.1", + "version": "0.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,13 +28,13 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "fs-extra": "10.1.0", "msw": "^0.42.0", "node-fetch": "^2.6.7", @@ -42,8 +42,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/fs-extra": "^9.0.1" }, "files": [ diff --git a/plugins/catalog-backend-module-github/CHANGELOG.md b/plugins/catalog-backend-module-github/CHANGELOG.md index 553504c46f..b97a043aba 100644 --- a/plugins/catalog-backend-module-github/CHANGELOG.md +++ b/plugins/catalog-backend-module-github/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-github +## 0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.1.4 ### Patch Changes diff --git a/plugins/catalog-backend-module-github/package.json b/plugins/catalog-backend-module-github/package.json index 680c812c4c..c3adbbf212 100644 --- a/plugins/catalog-backend-module-github/package.json +++ b/plugins/catalog-backend-module-github/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-github", "description": "A Backstage catalog backend module that helps integrate towards GitHub", - "version": "0.1.4", + "version": "0.1.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "@octokit/graphql": "^4.5.8", "lodash": "^4.17.21", @@ -49,8 +49,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-gitlab/CHANGELOG.md b/plugins/catalog-backend-module-gitlab/CHANGELOG.md index f785a935e6..343b2b9d7b 100644 --- a/plugins/catalog-backend-module-gitlab/CHANGELOG.md +++ b/plugins/catalog-backend-module-gitlab/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-catalog-backend-module-gitlab +## 0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.1.4 ### Patch Changes diff --git a/plugins/catalog-backend-module-gitlab/package.json b/plugins/catalog-backend-module-gitlab/package.json index 4780d86530..8d39a8dc05 100644 --- a/plugins/catalog-backend-module-gitlab/package.json +++ b/plugins/catalog-backend-module-gitlab/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-gitlab", "description": "A Backstage catalog backend module that helps integrate towards GitLab", - "version": "0.1.4", + "version": "0.1.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,13 +33,13 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", - "@backstage/backend-tasks": "^0.3.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "lodash": "^4.17.21", "msw": "^0.42.0", @@ -48,8 +48,8 @@ "uuid": "^8.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151", "@types/uuid": "^8.0.0" }, diff --git a/plugins/catalog-backend-module-ldap/CHANGELOG.md b/plugins/catalog-backend-module-ldap/CHANGELOG.md index 072ef991d4..3afb99dc79 100644 --- a/plugins/catalog-backend-module-ldap/CHANGELOG.md +++ b/plugins/catalog-backend-module-ldap/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-backend-module-ldap +## 0.5.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.5.0 ### Minor Changes diff --git a/plugins/catalog-backend-module-ldap/package.json b/plugins/catalog-backend-module-ldap/package.json index 288fccf7a5..a8c28018f2 100644 --- a/plugins/catalog-backend-module-ldap/package.json +++ b/plugins/catalog-backend-module-ldap/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-ldap", "description": "A Backstage catalog backend module that helps integrate towards LDAP", - "version": "0.5.0", + "version": "0.5.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,11 +33,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@backstage/types": "^1.0.0", "@types/ldapjs": "^2.2.0", "ldapjs": "^2.2.0", @@ -46,7 +46,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151" }, "files": [ diff --git a/plugins/catalog-backend-module-msgraph/CHANGELOG.md b/plugins/catalog-backend-module-msgraph/CHANGELOG.md index d6a0f7c7b7..d50e93edcc 100644 --- a/plugins/catalog-backend-module-msgraph/CHANGELOG.md +++ b/plugins/catalog-backend-module-msgraph/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-catalog-backend-module-msgraph +## 0.3.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + ## 0.3.3 ### Patch Changes diff --git a/plugins/catalog-backend-module-msgraph/package.json b/plugins/catalog-backend-module-msgraph/package.json index 3131dc6daa..e2e75af446 100644 --- a/plugins/catalog-backend-module-msgraph/package.json +++ b/plugins/catalog-backend-module-msgraph/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend-module-msgraph", "description": "A Backstage catalog backend module that helps integrate towards Microsoft Graph", - "version": "0.3.3", + "version": "0.3.4-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ }, "dependencies": { "@azure/msal-node": "^1.1.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-catalog-backend": "^1.2.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", "@microsoft/microsoft-graph-types": "^2.6.0", "@types/node-fetch": "^2.5.12", "lodash": "^4.17.21", @@ -48,9 +48,9 @@ "qs": "^6.9.4" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151", "msw": "^0.42.0" }, diff --git a/plugins/catalog-backend/CHANGELOG.md b/plugins/catalog-backend/CHANGELOG.md index f235285617..84f80243fd 100644 --- a/plugins/catalog-backend/CHANGELOG.md +++ b/plugins/catalog-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-catalog-backend +## 1.2.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + ## 1.2.0 ### Minor Changes diff --git a/plugins/catalog-backend/package.json b/plugins/catalog-backend/package.json index c33dccd8a7..61a8e68412 100644 --- a/plugins/catalog-backend/package.json +++ b/plugins/catalog-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-backend", "description": "The Backstage backend plugin that provides the Backstage catalog", - "version": "1.2.0", + "version": "1.2.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/plugin-catalog-common": "^1.0.3", "@backstage/plugin-permission-common": "^0.6.2", - "@backstage/plugin-permission-node": "^0.6.2", - "@backstage/plugin-scaffolder-common": "^1.1.1", + "@backstage/plugin-permission-node": "^0.6.3-next.0", + "@backstage/plugin-scaffolder-common": "^1.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", @@ -68,10 +68,10 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@backstage/plugin-permission-common": "^0.6.2", - "@backstage/plugin-search-backend-node": "0.6.2", + "@backstage/plugin-search-backend-node": "0.6.3-next.0", "@types/core-js": "^2.5.4", "@types/git-url-parse": "^9.0.0", "@types/lodash": "^4.14.151", diff --git a/plugins/catalog-common/package.json b/plugins/catalog-common/package.json index 27e7764812..3adb442c3e 100644 --- a/plugins/catalog-common/package.json +++ b/plugins/catalog-common/package.json @@ -38,7 +38,7 @@ "@backstage/plugin-search-common": "^0.3.5" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist", diff --git a/plugins/catalog-graph/CHANGELOG.md b/plugins/catalog-graph/CHANGELOG.md index 2afbca45c5..5ce0a2d31b 100644 --- a/plugins/catalog-graph/CHANGELOG.md +++ b/plugins/catalog-graph/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-graph +## 0.2.19-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.2.18 ### Patch Changes diff --git a/plugins/catalog-graph/package.json b/plugins/catalog-graph/package.json index 508453b387..786f284628 100644 --- a/plugins/catalog-graph/package.json +++ b/plugins/catalog-graph/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-catalog-graph", - "version": "0.2.18", + "version": "0.2.19-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,11 +24,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -45,11 +45,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/types": "^1.0.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", diff --git a/plugins/catalog-graphql/CHANGELOG.md b/plugins/catalog-graphql/CHANGELOG.md index b7c6aa5723..16f0bb50d9 100644 --- a/plugins/catalog-graphql/CHANGELOG.md +++ b/plugins/catalog-graphql/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-catalog-graphql +## 0.3.11-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + ## 0.3.10 ### Patch Changes diff --git a/plugins/catalog-graphql/package.json b/plugins/catalog-graphql/package.json index 3e631906a6..411ae5ec17 100644 --- a/plugins/catalog-graphql/package.json +++ b/plugins/catalog-graphql/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-graphql", "description": "An experimental Backstage catalog GraphQL module", - "version": "0.3.10", + "version": "0.3.11-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "apollo-server": "^3.0.0", @@ -46,8 +46,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@graphql-codegen/cli": "^2.3.1", "@graphql-codegen/graphql-modules-preset": "^2.3.2", "@graphql-codegen/typescript": "^2.4.2", diff --git a/plugins/catalog-import/CHANGELOG.md b/plugins/catalog-import/CHANGELOG.md index 5ee8857f18..1240ab1fc4 100644 --- a/plugins/catalog-import/CHANGELOG.md +++ b/plugins/catalog-import/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-catalog-import +## 0.8.10-next.0 + +### Patch Changes + +- 272106fdad: Support use without `integrations` or only integrations without frontend visible properties (e.g., `bitbucketCloud`) being configured by checking `integrations.github` directly without attempting to load `integrations`. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + ## 0.8.9 ### Patch Changes diff --git a/plugins/catalog-import/package.json b/plugins/catalog-import/package.json index 0c72baaf9f..527faad4b3 100644 --- a/plugins/catalog-import/package.json +++ b/plugins/catalog-import/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-import", "description": "A Backstage plugin the helps you import entities into your catalog", - "version": "0.8.9", + "version": "0.8.10-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,15 +34,15 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", @@ -60,10 +60,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/catalog-react/CHANGELOG.md b/plugins/catalog-react/CHANGELOG.md index ba7f7deb6d..8b396ca878 100644 --- a/plugins/catalog-react/CHANGELOG.md +++ b/plugins/catalog-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-catalog-react +## 1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 1.1.1 ### Patch Changes diff --git a/plugins/catalog-react/package.json b/plugins/catalog-react/package.json index 47e99f23d8..a525a0af50 100644 --- a/plugins/catalog-react/package.json +++ b/plugins/catalog-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog-react", "description": "A frontend library that helps other Backstage plugins interact with the catalog", - "version": "1.1.1", + "version": "1.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,12 +34,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/plugin-catalog-common": "^1.0.3", "@backstage/plugin-permission-common": "^0.6.2", "@backstage/plugin-permission-react": "^0.4.2", @@ -63,11 +63,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", "@backstage/plugin-catalog-common": "^1.0.3", - "@backstage/plugin-scaffolder-common": "^1.1.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/plugin-scaffolder-common": "^1.1.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/catalog/CHANGELOG.md b/plugins/catalog/CHANGELOG.md index 5f4e9809c0..cc64ccd3ee 100644 --- a/plugins/catalog/CHANGELOG.md +++ b/plugins/catalog/CHANGELOG.md @@ -1,5 +1,37 @@ # @backstage/plugin-catalog +## 1.3.1-next.0 + +### Patch Changes + +- dcaf1cb418: Previously, the color of the Entity Context Menu (in the Entity Page Header) was hardcoded as `white`. + + This was an issue for themes that use a header with a white background. By default, the color of the icon is now `theme.palette.bursts.fontColor`. + + It can now also be overridden in the theme, which is only necessary if the header title, subtitle and three-dots icon need to have different colors. For example: + + ```typescript + export function createThemeOverrides(theme: BackstageTheme): Overrides { + return { + PluginCatalogEntityContextMenu: { + button: { + color: 'blue', + }, + }, + ... + }, + ... + } + ``` + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + ## 1.3.0 ### Minor Changes diff --git a/plugins/catalog/package.json b/plugins/catalog/package.json index 792df94e18..786083356a 100644 --- a/plugins/catalog/package.json +++ b/plugins/catalog/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-catalog", "description": "The Backstage plugin for browsing the Backstage catalog", - "version": "1.3.0", + "version": "1.3.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration-react": "^1.1.1", + "@backstage/integration-react": "^1.1.2-next.0", "@backstage/plugin-catalog-common": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-search-react": "^0.2.2-next.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@material-ui/core": "^4.12.2", @@ -61,11 +61,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", "@backstage/plugin-permission-react": "^0.4.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cicd-statistics-module-gitlab/CHANGELOG.md b/plugins/cicd-statistics-module-gitlab/CHANGELOG.md index de73c87469..14d234e35c 100644 --- a/plugins/cicd-statistics-module-gitlab/CHANGELOG.md +++ b/plugins/cicd-statistics-module-gitlab/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-cicd-statistics-module-gitlab +## 0.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-cicd-statistics@0.1.9-next.0 + ## 0.1.2 ### Patch Changes diff --git a/plugins/cicd-statistics-module-gitlab/package.json b/plugins/cicd-statistics-module-gitlab/package.json index dd48ad7719..3f6d9d6731 100644 --- a/plugins/cicd-statistics-module-gitlab/package.json +++ b/plugins/cicd-statistics-module-gitlab/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cicd-statistics-module-gitlab", "description": "CI/CD Statistics plugin module; Gitlab CICD", - "version": "0.1.2", + "version": "0.1.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,16 +29,16 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/plugin-cicd-statistics": "^0.1.8", + "@backstage/plugin-cicd-statistics": "^0.1.9-next.0", "@gitbeaker/browser": "^35.6.0", "@gitbeaker/core": "^35.6.0", "luxon": "^2.0.2", "p-limit": "^4.0.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/catalog-model": "^1.0.3" + "@backstage/catalog-model": "^1.1.0-next.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/cicd-statistics/CHANGELOG.md b/plugins/cicd-statistics/CHANGELOG.md index 498cfa47a3..e8856187c9 100644 --- a/plugins/cicd-statistics/CHANGELOG.md +++ b/plugins/cicd-statistics/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-cicd-statistics +## 0.1.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.8 ### Patch Changes diff --git a/plugins/cicd-statistics/package.json b/plugins/cicd-statistics/package.json index 0859afd945..c09dc7c995 100644 --- a/plugins/cicd-statistics/package.json +++ b/plugins/cicd-statistics/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cicd-statistics", "description": "A frontend plugin visualizing CI/CD pipeline statistics (build time)", - "version": "0.1.8", + "version": "0.1.9-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -37,9 +37,9 @@ "@types/luxon": "^2.0.5" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@date-io/luxon": "^1.3.13", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.11.2", diff --git a/plugins/circleci/CHANGELOG.md b/plugins/circleci/CHANGELOG.md index 39cfcea568..1c1b551102 100644 --- a/plugins/circleci/CHANGELOG.md +++ b/plugins/circleci/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-circleci +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/circleci/package.json b/plugins/circleci/package.json index 3e00add228..789c6f5668 100644 --- a/plugins/circleci/package.json +++ b/plugins/circleci/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-circleci", "description": "A Backstage plugin that integrates towards Circle CI", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -55,10 +55,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cloudbuild/CHANGELOG.md b/plugins/cloudbuild/CHANGELOG.md index 8454cc5cd4..d31721fee7 100644 --- a/plugins/cloudbuild/CHANGELOG.md +++ b/plugins/cloudbuild/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-cloudbuild +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/cloudbuild/package.json b/plugins/cloudbuild/package.json index b1f14356e0..b95a6253cc 100644 --- a/plugins/cloudbuild/package.json +++ b/plugins/cloudbuild/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cloudbuild", "description": "A Backstage plugin that integrates towards Google Cloud Build", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -52,10 +52,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/code-climate/CHANGELOG.md b/plugins/code-climate/CHANGELOG.md index 7cc1362a4d..407aacb6e2 100644 --- a/plugins/code-climate/CHANGELOG.md +++ b/plugins/code-climate/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-code-climate +## 0.1.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.6 ### Patch Changes diff --git a/plugins/code-climate/package.json b/plugins/code-climate/package.json index 193fc71f3c..2bb8e7aaf2 100644 --- a/plugins/code-climate/package.json +++ b/plugins/code-climate/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-code-climate", - "version": "0.1.6", + "version": "0.1.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -40,9 +40,9 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/code-coverage-backend/CHANGELOG.md b/plugins/code-coverage-backend/CHANGELOG.md index ebf82cc984..b354cd364a 100644 --- a/plugins/code-coverage-backend/CHANGELOG.md +++ b/plugins/code-coverage-backend/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-code-coverage-backend +## 0.1.32-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.1.31 ### Patch Changes diff --git a/plugins/code-coverage-backend/package.json b/plugins/code-coverage-backend/package.json index 0bc5281648..78b57974b9 100644 --- a/plugins/code-coverage-backend/package.json +++ b/plugins/code-coverage-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-code-coverage-backend", "description": "A Backstage backend plugin that helps you keep track of your code coverage", - "version": "0.1.31", + "version": "0.1.32-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,12 +23,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -39,7 +39,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/express-xml-bodyparser": "^0.3.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/code-coverage/CHANGELOG.md b/plugins/code-coverage/CHANGELOG.md index 474c324e98..90fef2528b 100644 --- a/plugins/code-coverage/CHANGELOG.md +++ b/plugins/code-coverage/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-code-coverage +## 0.1.34-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.33 ### Patch Changes diff --git a/plugins/code-coverage/package.json b/plugins/code-coverage/package.json index f72d73d293..793fc61ee0 100644 --- a/plugins/code-coverage/package.json +++ b/plugins/code-coverage/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-code-coverage", "description": "A Backstage plugin that helps you keep track of your code coverage", - "version": "0.1.33", + "version": "0.1.34-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,12 +24,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -46,10 +46,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/codescene/CHANGELOG.md b/plugins/codescene/CHANGELOG.md index 2443fda056..17a14cd3a9 100644 --- a/plugins/codescene/CHANGELOG.md +++ b/plugins/codescene/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-codescene +## 0.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.1.1 ### Patch Changes diff --git a/plugins/codescene/package.json b/plugins/codescene/package.json index 47006c25c7..41190404cb 100644 --- a/plugins/codescene/package.json +++ b/plugins/codescene/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-codescene", - "version": "0.1.1", + "version": "0.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,7 +23,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -38,10 +38,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/config-schema/CHANGELOG.md b/plugins/config-schema/CHANGELOG.md index 1128a525fe..3943ec30c5 100644 --- a/plugins/config-schema/CHANGELOG.md +++ b/plugins/config-schema/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-config-schema +## 0.1.30-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.1.29 ### Patch Changes diff --git a/plugins/config-schema/package.json b/plugins/config-schema/package.json index 0a6c6f2d88..d806bf6d70 100644 --- a/plugins/config-schema/package.json +++ b/plugins/config-schema/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-config-schema", "description": "A Backstage plugin that lets you browse the configuration schema of your app", - "version": "0.1.29", + "version": "0.1.30-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,7 +25,7 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -41,10 +41,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/cost-insights/CHANGELOG.md b/plugins/cost-insights/CHANGELOG.md index 5b726f558c..1c51ec6050 100644 --- a/plugins/cost-insights/CHANGELOG.md +++ b/plugins/cost-insights/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-cost-insights +## 0.11.29-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + ## 0.11.28 ### Patch Changes diff --git a/plugins/cost-insights/package.json b/plugins/cost-insights/package.json index 9cb8d22db9..6ea67d5425 100644 --- a/plugins/cost-insights/package.json +++ b/plugins/cost-insights/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-cost-insights", "description": "A Backstage plugin that helps you keep track of your cloud spend", - "version": "0.11.28", + "version": "0.11.29-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -60,10 +60,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/dynatrace/CHANGELOG.md b/plugins/dynatrace/CHANGELOG.md index fddf3667af..a7a17ce678 100644 --- a/plugins/dynatrace/CHANGELOG.md +++ b/plugins/dynatrace/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-dynatrace +## 0.1.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/dynatrace/package.json b/plugins/dynatrace/package.json index 9ee59f38a3..018d3fdb19 100644 --- a/plugins/dynatrace/package.json +++ b/plugins/dynatrace/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-dynatrace", - "version": "0.1.0", + "version": "0.1.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,8 +22,8 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", @@ -33,14 +33,14 @@ "react-use": "^17.2.4" }, "peerDependencies": { - "@backstage/plugin-catalog-react": "^1.1.1-next.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/example-todo-list-backend/CHANGELOG.md b/plugins/example-todo-list-backend/CHANGELOG.md index 46a980fbe3..17b2afc9ec 100644 --- a/plugins/example-todo-list-backend/CHANGELOG.md +++ b/plugins/example-todo-list-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @internal/plugin-todo-list-backend +## 1.0.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + ## 1.0.2 ### Patch Changes diff --git a/plugins/example-todo-list-backend/package.json b/plugins/example-todo-list-backend/package.json index 7aaed0532b..b27b050a50 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.2", + "version": "1.0.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -20,10 +20,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-auth-node": "^0.2.3-next.0", "@types/express": "^4.17.6", "cross-fetch": "^3.1.5", "express": "^4.17.1", @@ -33,7 +33,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", "msw": "^0.42.0", diff --git a/plugins/example-todo-list-common/package.json b/plugins/example-todo-list-common/package.json index 596a37b210..1e90afb13a 100644 --- a/plugins/example-todo-list-common/package.json +++ b/plugins/example-todo-list-common/package.json @@ -26,10 +26,10 @@ "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@types/node": "^16.11.26", "msw": "^0.42.0", "cross-fetch": "^3.1.5" diff --git a/plugins/example-todo-list/CHANGELOG.md b/plugins/example-todo-list/CHANGELOG.md index 31404fa73d..f33b659b7e 100644 --- a/plugins/example-todo-list/CHANGELOG.md +++ b/plugins/example-todo-list/CHANGELOG.md @@ -1,5 +1,12 @@ # @internal/plugin-todo-list +## 1.0.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 1.0.2 ### Patch Changes diff --git a/plugins/example-todo-list/package.json b/plugins/example-todo-list/package.json index c80b9a48ea..4c5fb0c83e 100644 --- a/plugins/example-todo-list/package.json +++ b/plugins/example-todo-list/package.json @@ -1,6 +1,6 @@ { "name": "@internal/plugin-todo-list", - "version": "1.0.2", + "version": "1.0.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -21,7 +21,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -33,10 +33,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/explore-react/package.json b/plugins/explore-react/package.json index 00ec76258d..021365d056 100644 --- a/plugins/explore-react/package.json +++ b/plugins/explore-react/package.json @@ -36,9 +36,9 @@ "@backstage/core-plugin-api": "^1.0.3" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/explore/CHANGELOG.md b/plugins/explore/CHANGELOG.md index 712e3203fb..895dd9b0ab 100644 --- a/plugins/explore/CHANGELOG.md +++ b/plugins/explore/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-explore +## 0.3.38-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.37 ### Patch Changes diff --git a/plugins/explore/package.json b/plugins/explore/package.json index 201be77085..4290cf668c 100644 --- a/plugins/explore/package.json +++ b/plugins/explore/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-explore", "description": "A Backstage plugin for building an exploration page of your software ecosystem", - "version": "0.3.37", + "version": "0.3.38-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-explore-react": "^0.0.18", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/firehydrant/CHANGELOG.md b/plugins/firehydrant/CHANGELOG.md index 065d6e0bd5..6b02c041dc 100644 --- a/plugins/firehydrant/CHANGELOG.md +++ b/plugins/firehydrant/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-firehydrant +## 0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.23 ### Patch Changes diff --git a/plugins/firehydrant/package.json b/plugins/firehydrant/package.json index a86a122fd0..2574e28871 100644 --- a/plugins/firehydrant/package.json +++ b/plugins/firehydrant/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-firehydrant", "description": "A Backstage plugin that integrates towards FireHydrant", - "version": "0.1.23", + "version": "0.1.24-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,9 +25,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -39,10 +39,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/fossa/CHANGELOG.md b/plugins/fossa/CHANGELOG.md index 07880deb60..e3710b1d3e 100644 --- a/plugins/fossa/CHANGELOG.md +++ b/plugins/fossa/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-fossa +## 0.2.39-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.2.38 ### Patch Changes diff --git a/plugins/fossa/package.json b/plugins/fossa/package.json index e97dc7c0f9..c286f8fd82 100644 --- a/plugins/fossa/package.json +++ b/plugins/fossa/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-fossa", "description": "A Backstage plugin that integrates towards FOSSA", - "version": "0.2.38", + "version": "0.2.39-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gcalendar/CHANGELOG.md b/plugins/gcalendar/CHANGELOG.md index c5d63a19db..7c6db3657b 100644 --- a/plugins/gcalendar/CHANGELOG.md +++ b/plugins/gcalendar/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-gcalendar +## 0.3.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.3.2 ### Patch Changes diff --git a/plugins/gcalendar/package.json b/plugins/gcalendar/package.json index b74129b8bc..77dfc8af18 100644 --- a/plugins/gcalendar/package.json +++ b/plugins/gcalendar/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-gcalendar", - "version": "0.3.2", + "version": "0.3.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,7 +22,7 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gcp-projects/CHANGELOG.md b/plugins/gcp-projects/CHANGELOG.md index 6c95f8ea4d..4420fb00cc 100644 --- a/plugins/gcp-projects/CHANGELOG.md +++ b/plugins/gcp-projects/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-gcp-projects +## 0.3.26-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.3.25 ### Patch Changes diff --git a/plugins/gcp-projects/package.json b/plugins/gcp-projects/package.json index 0434e6b25a..fa1aa611bd 100644 --- a/plugins/gcp-projects/package.json +++ b/plugins/gcp-projects/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gcp-projects", "description": "A Backstage plugin that helps you manage projects in GCP", - "version": "0.3.25", + "version": "0.3.26-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/git-release-manager/CHANGELOG.md b/plugins/git-release-manager/CHANGELOG.md index 7b3a0bc993..c4a44de3c8 100644 --- a/plugins/git-release-manager/CHANGELOG.md +++ b/plugins/git-release-manager/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-git-release-manager +## 0.3.20-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + ## 0.3.19 ### Patch Changes diff --git a/plugins/git-release-manager/package.json b/plugins/git-release-manager/package.json index 9ae263b882..2d6bf1ec73 100644 --- a/plugins/git-release-manager/package.json +++ b/plugins/git-release-manager/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-git-release-manager", "description": "A Backstage plugin that helps you manage releases in git", - "version": "0.3.19", + "version": "0.3.20-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,9 +24,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/github-actions/CHANGELOG.md b/plugins/github-actions/CHANGELOG.md index 23e66cc1f6..01e47f8e49 100644 --- a/plugins/github-actions/CHANGELOG.md +++ b/plugins/github-actions/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-github-actions +## 0.5.7-next.0 + +### Patch Changes + +- 217f919f0a: Minor cleanup of the API surface. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.5.6 ### Patch Changes diff --git a/plugins/github-actions/package.json b/plugins/github-actions/package.json index f843755e9b..16122a2d12 100644 --- a/plugins/github-actions/package.json +++ b/plugins/github-actions/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-actions", "description": "A Backstage plugin that integrates towards GitHub Actions", - "version": "0.5.6", + "version": "0.5.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,11 +36,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -55,10 +55,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/github-deployments/CHANGELOG.md b/plugins/github-deployments/CHANGELOG.md index 45a93e3b34..1ba6a113a5 100644 --- a/plugins/github-deployments/CHANGELOG.md +++ b/plugins/github-deployments/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-github-deployments +## 0.1.38-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + ## 0.1.37 ### Patch Changes diff --git a/plugins/github-deployments/package.json b/plugins/github-deployments/package.json index 1a27d21aa2..dd537c4b21 100644 --- a/plugins/github-deployments/package.json +++ b/plugins/github-deployments/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-deployments", "description": "A Backstage plugin that integrates towards GitHub Deployments", - "version": "0.1.37", + "version": "0.1.38-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/github-pull-requests-board/CHANGELOG.md b/plugins/github-pull-requests-board/CHANGELOG.md index 629713540e..483329f784 100644 --- a/plugins/github-pull-requests-board/CHANGELOG.md +++ b/plugins/github-pull-requests-board/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-github-pull-requests-board +## 0.1.1-next.0 + +### Patch Changes + +- c6690d9d24: Fix bug on fetching teams repositories where were being filtered by type service unnecessarily +- 04e1504e85: Support namespaced teams and fetch all kinds +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/github-pull-requests-board/package.json b/plugins/github-pull-requests-board/package.json index 24909c5b5d..6f12e656ca 100644 --- a/plugins/github-pull-requests-board/package.json +++ b/plugins/github-pull-requests-board/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-github-pull-requests-board", "description": "A Backstage plugin that allows you to see all open Pull Requests for all the repositories owned by your team", - "version": "0.1.0", + "version": "0.1.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,9 +49,9 @@ "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gitops-profiles/CHANGELOG.md b/plugins/gitops-profiles/CHANGELOG.md index eea6cc0554..611f5dab40 100644 --- a/plugins/gitops-profiles/CHANGELOG.md +++ b/plugins/gitops-profiles/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-gitops-profiles +## 0.3.25-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.3.24 ### Patch Changes diff --git a/plugins/gitops-profiles/package.json b/plugins/gitops-profiles/package.json index ee7b3da11b..3246b5edb7 100644 --- a/plugins/gitops-profiles/package.json +++ b/plugins/gitops-profiles/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gitops-profiles", "description": "A Backstage plugin that helps you manage GitOps profiles", - "version": "0.3.24", + "version": "0.3.25-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,7 +35,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/gocd/CHANGELOG.md b/plugins/gocd/CHANGELOG.md index 1df24b97cd..9c37f08aad 100644 --- a/plugins/gocd/CHANGELOG.md +++ b/plugins/gocd/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-gocd +## 0.1.13-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.12 ### Patch Changes diff --git a/plugins/gocd/package.json b/plugins/gocd/package.json index 1bf938fb1d..25af6a6d4d 100644 --- a/plugins/gocd/package.json +++ b/plugins/gocd/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-gocd", "description": "A Backstage plugin that integrates towards GoCD", - "version": "0.1.12", + "version": "0.1.13-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -31,11 +31,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/graphiql/CHANGELOG.md b/plugins/graphiql/CHANGELOG.md index 56cc49f3a4..8fb1c85078 100644 --- a/plugins/graphiql/CHANGELOG.md +++ b/plugins/graphiql/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-graphiql +## 0.2.39-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.2.38 ### Patch Changes diff --git a/plugins/graphiql/package.json b/plugins/graphiql/package.json index 4cbbc7f262..9d933da2e1 100644 --- a/plugins/graphiql/package.json +++ b/plugins/graphiql/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-graphiql", "description": "Backstage plugin for browsing GraphQL APIs", - "version": "0.2.38", + "version": "0.2.39-next.0", "private": false, "publishConfig": { "access": "public", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/graphql-backend/CHANGELOG.md b/plugins/graphql-backend/CHANGELOG.md index d1426552e0..0f826cd492 100644 --- a/plugins/graphql-backend/CHANGELOG.md +++ b/plugins/graphql-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-graphql-backend +## 0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-catalog-graphql@0.3.11-next.0 + ## 0.1.23 ### Patch Changes diff --git a/plugins/graphql-backend/package.json b/plugins/graphql-backend/package.json index d7b03bddf5..6293b17f4f 100644 --- a/plugins/graphql-backend/package.json +++ b/plugins/graphql-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-graphql-backend", "description": "An experimental Backstage backend plugin for GraphQL", - "version": "0.1.23", + "version": "0.1.24-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-catalog-graphql": "^0.3.10", + "@backstage/plugin-catalog-graphql": "^0.3.11-next.0", "@graphql-tools/schema": "^8.3.1", "@types/express": "^4.17.6", "apollo-server": "^3.0.0", @@ -51,7 +51,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/home/CHANGELOG.md b/plugins/home/CHANGELOG.md index ef03c3797c..a5069b9352 100644 --- a/plugins/home/CHANGELOG.md +++ b/plugins/home/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-home +## 0.4.23-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-stack-overflow@0.1.3-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.4.22 ### Patch Changes diff --git a/plugins/home/package.json b/plugins/home/package.json index d1529a37fd..c3ec2f3a51 100644 --- a/plugins/home/package.json +++ b/plugins/home/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-home", "description": "A Backstage plugin that helps you build a home page", - "version": "0.4.22", + "version": "0.4.23-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,12 +34,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", - "@backstage/plugin-stack-overflow": "^0.1.2", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", + "@backstage/plugin-stack-overflow": "^0.1.3-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/ilert/CHANGELOG.md b/plugins/ilert/CHANGELOG.md index cd74af4e74..f6845ac116 100644 --- a/plugins/ilert/CHANGELOG.md +++ b/plugins/ilert/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-ilert +## 0.1.33-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.32 ### Patch Changes diff --git a/plugins/ilert/package.json b/plugins/ilert/package.json index 341c934836..69a1728b76 100644 --- a/plugins/ilert/package.json +++ b/plugins/ilert/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-ilert", "description": "A Backstage plugin that integrates towards iLert", - "version": "0.1.32", + "version": "0.1.33-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,11 +24,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@date-io/luxon": "1.x", "@material-ui/core": "^4.12.2", @@ -43,10 +43,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/jenkins-backend/CHANGELOG.md b/plugins/jenkins-backend/CHANGELOG.md index ef18b5708d..ff91e37269 100644 --- a/plugins/jenkins-backend/CHANGELOG.md +++ b/plugins/jenkins-backend/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-jenkins-backend +## 0.1.24-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.1.23 ### Patch Changes diff --git a/plugins/jenkins-backend/package.json b/plugins/jenkins-backend/package.json index 1ab98c3255..ac78d61831 100644 --- a/plugins/jenkins-backend/package.json +++ b/plugins/jenkins-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-jenkins-backend", "description": "A Backstage backend plugin that integrates towards Jenkins", - "version": "0.1.23", + "version": "0.1.24-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,12 +25,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-auth-node": "^0.2.3-next.0", "@backstage/plugin-jenkins-common": "^0.1.5", "@backstage/plugin-permission-common": "^0.6.2", "@types/express": "^4.17.6", @@ -41,7 +41,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jenkins": "^0.23.1", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/jenkins-common/package.json b/plugins/jenkins-common/package.json index c47ac94a2b..78d9cf2532 100644 --- a/plugins/jenkins-common/package.json +++ b/plugins/jenkins-common/package.json @@ -26,7 +26,7 @@ "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/jenkins/CHANGELOG.md b/plugins/jenkins/CHANGELOG.md index fd4e4420e7..4519ba9e78 100644 --- a/plugins/jenkins/CHANGELOG.md +++ b/plugins/jenkins/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-jenkins +## 0.7.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.7.5 ### Patch Changes diff --git a/plugins/jenkins/package.json b/plugins/jenkins/package.json index ae86828505..586fcf04dd 100644 --- a/plugins/jenkins/package.json +++ b/plugins/jenkins/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-jenkins", "description": "A Backstage plugin that integrates towards Jenkins", - "version": "0.7.5", + "version": "0.7.6-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-jenkins-common": "^0.1.5", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -54,10 +54,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/kafka-backend/CHANGELOG.md b/plugins/kafka-backend/CHANGELOG.md index 32b147ffdd..9a912b07ef 100644 --- a/plugins/kafka-backend/CHANGELOG.md +++ b/plugins/kafka-backend/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-kafka-backend +## 0.2.27-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + ## 0.2.26 ### Patch Changes diff --git a/plugins/kafka-backend/package.json b/plugins/kafka-backend/package.json index 965b15bd6b..b78c297586 100644 --- a/plugins/kafka-backend/package.json +++ b/plugins/kafka-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kafka-backend", "description": "A Backstage backend plugin that integrates towards Kafka", - "version": "0.2.26", + "version": "0.2.27-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,8 +35,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "^4.17.6", @@ -47,7 +47,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest-when": "^3.5.0", "@types/lodash": "^4.14.151", "jest-when": "^3.1.0", diff --git a/plugins/kafka/CHANGELOG.md b/plugins/kafka/CHANGELOG.md index c2743bf92b..06d84866f6 100644 --- a/plugins/kafka/CHANGELOG.md +++ b/plugins/kafka/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-kafka +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/kafka/package.json b/plugins/kafka/package.json index 43f4b8d35c..18dfdc05fc 100644 --- a/plugins/kafka/package.json +++ b/plugins/kafka/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kafka", "description": "A Backstage plugin that integrates towards Kafka", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,10 +24,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -39,10 +39,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/kubernetes-backend/CHANGELOG.md b/plugins/kubernetes-backend/CHANGELOG.md index d829136819..a3747e47aa 100644 --- a/plugins/kubernetes-backend/CHANGELOG.md +++ b/plugins/kubernetes-backend/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-kubernetes-backend +## 0.7.0-next.0 + +### Minor Changes + +- 0791af993f: Refactor `KubernetesObjectsProvider` with new methods, `KubernetesServiceLocator` now takes an `Entity` instead of `serviceId` + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/plugin-kubernetes-common@0.4.0-next.0 + ## 0.6.0 ### Minor Changes diff --git a/plugins/kubernetes-backend/package.json b/plugins/kubernetes-backend/package.json index 33dcc1dfff..5ee2dfbc61 100644 --- a/plugins/kubernetes-backend/package.json +++ b/plugins/kubernetes-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes-backend", "description": "A Backstage backend plugin that integrates towards Kubernetes", - "version": "0.6.0", + "version": "0.7.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,11 +36,11 @@ }, "dependencies": { "@azure/identity": "^2.0.4", - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-kubernetes-common": "^0.3.0", + "@backstage/plugin-kubernetes-common": "^0.4.0-next.0", "@google-cloud/container": "^4.0.0", "@kubernetes/client-node": "^0.16.0", "@types/express": "^4.17.6", @@ -61,7 +61,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/aws4": "^1.5.1", "aws-sdk-mock": "^5.2.1", "supertest": "^6.1.3" diff --git a/plugins/kubernetes-common/CHANGELOG.md b/plugins/kubernetes-common/CHANGELOG.md index d9f7e60c13..560f700be0 100644 --- a/plugins/kubernetes-common/CHANGELOG.md +++ b/plugins/kubernetes-common/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-kubernetes-common +## 0.4.0-next.0 + +### Minor Changes + +- 0791af993f: Refactor `KubernetesObjectsProvider` with new methods, `KubernetesServiceLocator` now takes an `Entity` instead of `serviceId` + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + ## 0.3.0 ### Minor Changes diff --git a/plugins/kubernetes-common/package.json b/plugins/kubernetes-common/package.json index 62c9eb9745..6b576f79ca 100644 --- a/plugins/kubernetes-common/package.json +++ b/plugins/kubernetes-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes-common", "description": "Common functionalities for kubernetes, to be shared between kubernetes and kubernetes-backend plugin", - "version": "0.3.0", + "version": "0.4.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -38,11 +38,11 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@kubernetes/client-node": "^0.16.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "jest": { "roots": [ diff --git a/plugins/kubernetes/CHANGELOG.md b/plugins/kubernetes/CHANGELOG.md index 29f0ed0241..3765441a95 100644 --- a/plugins/kubernetes/CHANGELOG.md +++ b/plugins/kubernetes/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-kubernetes +## 0.6.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-kubernetes-common@0.4.0-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.6.6 ### Patch Changes diff --git a/plugins/kubernetes/package.json b/plugins/kubernetes/package.json index 1b63484224..1bc3b47f3c 100644 --- a/plugins/kubernetes/package.json +++ b/plugins/kubernetes/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-kubernetes", "description": "A Backstage plugin that integrates towards Kubernetes", - "version": "0.6.6", + "version": "0.6.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,12 +34,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", - "@backstage/plugin-kubernetes-common": "^0.3.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", + "@backstage/plugin-kubernetes-common": "^0.4.0-next.0", "@backstage/theme": "^0.2.15", "@kubernetes/client-node": "^0.16.0", "@material-ui/core": "^4.12.2", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/lighthouse/CHANGELOG.md b/plugins/lighthouse/CHANGELOG.md index 7dc3e30b1f..f3dc92b790 100644 --- a/plugins/lighthouse/CHANGELOG.md +++ b/plugins/lighthouse/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-lighthouse +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/lighthouse/package.json b/plugins/lighthouse/package.json index 5f7097c704..2dc5aa5f04 100644 --- a/plugins/lighthouse/package.json +++ b/plugins/lighthouse/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-lighthouse", "description": "A Backstage plugin that integrates towards Lighthouse", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,11 +35,11 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -51,10 +51,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/newrelic-dashboard/CHANGELOG.md b/plugins/newrelic-dashboard/CHANGELOG.md index 54a058fcb9..b10750b453 100644 --- a/plugins/newrelic-dashboard/CHANGELOG.md +++ b/plugins/newrelic-dashboard/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-newrelic-dashboard +## 0.1.15-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.14 ### Patch Changes diff --git a/plugins/newrelic-dashboard/package.json b/plugins/newrelic-dashboard/package.json index 8166928a6a..969853a9dc 100644 --- a/plugins/newrelic-dashboard/package.json +++ b/plugins/newrelic-dashboard/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-newrelic-dashboard", - "version": "0.1.14", + "version": "0.1.15-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,19 +23,19 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", "@material-ui/lab": "4.0.0-alpha.57", "react-use": "^17.2.4" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", "@testing-library/jest-dom": "^5.10.1", "@types/react": "^16.13.1 || ^17.0.0", "cross-fetch": "^3.1.5" diff --git a/plugins/newrelic/CHANGELOG.md b/plugins/newrelic/CHANGELOG.md index 97da241a56..7753c672c8 100644 --- a/plugins/newrelic/CHANGELOG.md +++ b/plugins/newrelic/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-newrelic +## 0.3.25-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.3.24 ### Patch Changes diff --git a/plugins/newrelic/package.json b/plugins/newrelic/package.json index 09f3d3196d..7c67d63436 100644 --- a/plugins/newrelic/package.json +++ b/plugins/newrelic/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-newrelic", "description": "A Backstage plugin that integrates towards New Relic", - "version": "0.3.24", + "version": "0.3.25-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,7 +35,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/org/CHANGELOG.md b/plugins/org/CHANGELOG.md index 73129feed6..0432f9ef45 100644 --- a/plugins/org/CHANGELOG.md +++ b/plugins/org/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-org +## 0.5.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.5.6 ### Patch Changes diff --git a/plugins/org/package.json b/plugins/org/package.json index 2b62e81683..33d9f6da7f 100644 --- a/plugins/org/package.json +++ b/plugins/org/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-org", "description": "A Backstage plugin that helps you create entity pages for your organization", - "version": "0.5.6", + "version": "0.5.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,10 +29,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -48,11 +48,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/pagerduty/CHANGELOG.md b/plugins/pagerduty/CHANGELOG.md index 3f6a54f367..5222d06b45 100644 --- a/plugins/pagerduty/CHANGELOG.md +++ b/plugins/pagerduty/CHANGELOG.md @@ -1,5 +1,41 @@ # @backstage/plugin-pagerduty +## 0.5.0-next.0 + +### Minor Changes + +- 8798f8d93f: Introduces a new annotation `pagerduty.com/service-id` that can be used instead of the `pagerduty.com/integration-key` annotation. + _Note: If both annotations are specified on a given Entity, then the `pagerduty.com/integration-key` annotation will be prefered_ + + **BREAKING** The `PagerDutyClient.fromConfig` static method now expects a `FetchApi` compatible object and has been refactored to + accept 2 arguments: config and ClientApiDependencies + The `PagerDutyClient` now relies on a `fetchApi` being available to execute `fetch` requests. + + **BREAKING** A new query method `getServiceByEntity` that is used to query for Services by either the `integrationKey` or `serviceId` + annotation values if they are defined. The `integrationKey` value is preferred currently over `serviceId`. As such, the previous + `getServiceByIntegrationKey` method has been removed. + + **BREAKING** The return values for each Client query method has been changed to return an object instead of raw values. + For example, the `getIncidentsByServiceId` query method now returns an object in the shape of `{ incidents: Incident[] }` + instead of just `Incident[]`. + This same pattern goes for `getChangeEventsByServiceId` and `getOnCallByPolicyId` functions. + + **BREAKING** All public exported types that relate to entities within PagerDuty have been prefixed with `PagerDuty` (e.g. `ServicesResponse` is now `PagerDutyServicesResponse` and `User` is now `PagerDutyUser`) + + In addition, various enhancements/bug fixes were introduced: + + - The `PagerDutyCard` component now wraps error and loading messages with an `InfoCard` to contain errors/messages. This enforces a consistent experience on the EntityPage + - If no service can be found for the provided integration key, a new Error Message Empty State component will be shown instead of an error alert + - Introduces the `fetchApi` to replace standard `window.fetch` + - ensures that Identity Authorization is respected and provided in API requests + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.4.0 ### Minor Changes diff --git a/plugins/pagerduty/package.json b/plugins/pagerduty/package.json index 6d11ee8d69..0c81aba5ad 100644 --- a/plugins/pagerduty/package.json +++ b/plugins/pagerduty/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-pagerduty", "description": "A Backstage plugin that integrates towards PagerDuty", - "version": "0.4.0", + "version": "0.5.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/periskop-backend/CHANGELOG.md b/plugins/periskop-backend/CHANGELOG.md index 3a4de21e28..0a270b9f0a 100644 --- a/plugins/periskop-backend/CHANGELOG.md +++ b/plugins/periskop-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-periskop-backend +## 0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.1.4 ### Patch Changes diff --git a/plugins/periskop-backend/package.json b/plugins/periskop-backend/package.json index a555124743..bc27a76e81 100644 --- a/plugins/periskop-backend/package.json +++ b/plugins/periskop-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-periskop-backend", - "version": "0.1.4", + "version": "0.1.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@types/express": "*", "cross-fetch": "^3.0.6", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.6" diff --git a/plugins/periskop/CHANGELOG.md b/plugins/periskop/CHANGELOG.md index 9c5887509b..eb82d4cbac 100644 --- a/plugins/periskop/CHANGELOG.md +++ b/plugins/periskop/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-periskop +## 0.1.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.4 ### Patch Changes diff --git a/plugins/periskop/package.json b/plugins/periskop/package.json index c7c6af850b..b5c72b52fe 100644 --- a/plugins/periskop/package.json +++ b/plugins/periskop/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-periskop", - "version": "0.1.4", + "version": "0.1.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,11 +25,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -42,10 +42,10 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/permission-backend/CHANGELOG.md b/plugins/permission-backend/CHANGELOG.md index f0e391d8d8..3c86015f00 100644 --- a/plugins/permission-backend/CHANGELOG.md +++ b/plugins/permission-backend/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-permission-backend +## 0.5.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + ## 0.5.8 ### Patch Changes diff --git a/plugins/permission-backend/package.json b/plugins/permission-backend/package.json index fd3ce984cc..69762f67de 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.8", + "version": "0.5.9-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -22,12 +22,12 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-auth-node": "^0.2.3-next.0", "@backstage/plugin-permission-common": "^0.6.2", - "@backstage/plugin-permission-node": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.3-next.0", "@types/express": "*", "dataloader": "^2.0.0", "express": "^4.17.1", @@ -39,7 +39,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/lodash": "^4.14.151", "@types/supertest": "^2.0.8", "supertest": "^6.1.6", diff --git a/plugins/permission-common/package.json b/plugins/permission-common/package.json index 82ab09c853..3988bc0ded 100644 --- a/plugins/permission-common/package.json +++ b/plugins/permission-common/package.json @@ -48,7 +48,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "msw": "^0.42.0" } diff --git a/plugins/permission-node/CHANGELOG.md b/plugins/permission-node/CHANGELOG.md index 889b3ba374..190dfbdbb5 100644 --- a/plugins/permission-node/CHANGELOG.md +++ b/plugins/permission-node/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-permission-node +## 0.6.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + ## 0.6.2 ### Patch Changes diff --git a/plugins/permission-node/package.json b/plugins/permission-node/package.json index 1281b4ecba..b6ef506197 100644 --- a/plugins/permission-node/package.json +++ b/plugins/permission-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-permission-node", "description": "Common permission and authorization utilities for backend plugins", - "version": "0.6.2", + "version": "0.6.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,10 +33,10 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-auth-node": "^0.2.3-next.0", "@backstage/plugin-permission-common": "^0.6.2", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -44,7 +44,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/permission-react/package.json b/plugins/permission-react/package.json index ffdb72d385..98f1200881 100644 --- a/plugins/permission-react/package.json +++ b/plugins/permission-react/package.json @@ -44,8 +44,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@types/jest": "^26.0.7" diff --git a/plugins/proxy-backend/CHANGELOG.md b/plugins/proxy-backend/CHANGELOG.md index b23cce864d..fe6aaf541d 100644 --- a/plugins/proxy-backend/CHANGELOG.md +++ b/plugins/proxy-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-proxy-backend +## 0.2.28-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.2.27 ### Patch Changes diff --git a/plugins/proxy-backend/package.json b/plugins/proxy-backend/package.json index a0f7668e3e..12a265516b 100644 --- a/plugins/proxy-backend/package.json +++ b/plugins/proxy-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-proxy-backend", "description": "A Backstage backend plugin that helps you set up proxy endpoints in the backend", - "version": "0.2.27", + "version": "0.2.28-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,7 +32,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "express": "^4.17.1", @@ -46,7 +46,7 @@ "yup": "^0.32.9" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/http-proxy-middleware": "^0.19.3", "@types/supertest": "^2.0.8", "@types/uuid": "^8.0.0", diff --git a/plugins/rollbar-backend/CHANGELOG.md b/plugins/rollbar-backend/CHANGELOG.md index 75e665c02d..1947f00622 100644 --- a/plugins/rollbar-backend/CHANGELOG.md +++ b/plugins/rollbar-backend/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-rollbar-backend +## 0.1.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.1.30 ### Patch Changes diff --git a/plugins/rollbar-backend/package.json b/plugins/rollbar-backend/package.json index 53fba7bfe3..bcea34e3c4 100644 --- a/plugins/rollbar-backend/package.json +++ b/plugins/rollbar-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-rollbar-backend", "description": "A Backstage backend plugin that integrates towards Rollbar", - "version": "0.1.30", + "version": "0.1.31-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@types/express": "^4.17.6", "camelcase-keys": "^7.0.1", @@ -50,8 +50,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/rollbar/CHANGELOG.md b/plugins/rollbar/CHANGELOG.md index bb55d819a3..67288eb5f0 100644 --- a/plugins/rollbar/CHANGELOG.md +++ b/plugins/rollbar/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-rollbar +## 0.4.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.4.6 ### Patch Changes diff --git a/plugins/rollbar/package.json b/plugins/rollbar/package.json index 5633c9b09a..c75896f622 100644 --- a/plugins/rollbar/package.json +++ b/plugins/rollbar/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-rollbar", "description": "A Backstage plugin that integrates towards Rollbar", - "version": "0.4.6", + "version": "0.4.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md index 698a746a2a..199920e449 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-cookiecutter/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-backend-module-cookiecutter +## 0.2.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/integration@1.2.2-next.0 + ## 0.2.8 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-cookiecutter/package.json b/plugins/scaffolder-backend-module-cookiecutter/package.json index 630f672231..b6e7a04b64 100644 --- a/plugins/scaffolder-backend-module-cookiecutter/package.json +++ b/plugins/scaffolder-backend-module-cookiecutter/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-cookiecutter", "description": "A module for the scaffolder backend that lets you template projects using cookiecutter", - "version": "0.2.8", + "version": "0.2.9-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-scaffolder-backend": "^1.4.0-next.0", "@backstage/config": "^1.0.1", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", @@ -35,7 +35,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/fs-extra": "^9.0.1", "@types/mock-fs": "^4.13.0", "@types/jest": "^26.0.7", diff --git a/plugins/scaffolder-backend-module-rails/CHANGELOG.md b/plugins/scaffolder-backend-module-rails/CHANGELOG.md index 6a1f59ef7e..d5967d3c5f 100644 --- a/plugins/scaffolder-backend-module-rails/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-rails/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-scaffolder-backend-module-rails +## 0.4.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + - @backstage/integration@1.2.2-next.0 + ## 0.4.1 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-rails/package.json b/plugins/scaffolder-backend-module-rails/package.json index 1f755a8f81..2223c4787e 100644 --- a/plugins/scaffolder-backend-module-rails/package.json +++ b/plugins/scaffolder-backend-module-rails/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend-module-rails", "description": "A module for the scaffolder backend that lets you template projects using Rails", - "version": "0.4.1", + "version": "0.4.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,17 +24,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/plugin-scaffolder-backend": "^1.3.0", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/plugin-scaffolder-backend": "^1.4.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/types": "^1.0.0", "command-exists": "^1.2.9", "fs-extra": "^10.0.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/jest": "^26.0.7", "@types/node": "^16.11.26", "@types/command-exists": "^1.2.0", diff --git a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md index a6da817ba6..367adc7034 100644 --- a/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md +++ b/plugins/scaffolder-backend-module-yeoman/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-scaffolder-backend-module-yeoman +## 0.2.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-scaffolder-backend@1.4.0-next.0 + ## 0.2.6 ### Patch Changes diff --git a/plugins/scaffolder-backend-module-yeoman/package.json b/plugins/scaffolder-backend-module-yeoman/package.json index b876b5e87c..123d563fad 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.2.6", + "version": "0.2.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,13 +24,13 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/plugin-scaffolder-backend": "^1.3.0", + "@backstage/plugin-scaffolder-backend": "^1.4.0-next.0", "@backstage/types": "^1.0.0", "winston": "^3.2.1", "yeoman-environment": "^3.9.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@types/jest": "^26.0.7" }, "files": [ diff --git a/plugins/scaffolder-backend/CHANGELOG.md b/plugins/scaffolder-backend/CHANGELOG.md index 598de4122f..ba7ffe278c 100644 --- a/plugins/scaffolder-backend/CHANGELOG.md +++ b/plugins/scaffolder-backend/CHANGELOG.md @@ -1,5 +1,21 @@ # @backstage/plugin-scaffolder-backend +## 1.4.0-next.0 + +### Minor Changes + +- 3500c13a33: Added a new `/v2/dry-run` endpoint that allows for a synchronous dry run of a provided template. A `supportsDryRun` option has been added to `createTemplateAction`, which signals whether the action should be executed during dry runs. When enabled, the action context will have the new `isDryRun` property set to signal if the action is being executed during a dry run. + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-backend@1.2.1-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + ## 1.3.0 ### Minor Changes diff --git a/plugins/scaffolder-backend/package.json b/plugins/scaffolder-backend/package.json index 9dfe00672e..dba891bfa2 100644 --- a/plugins/scaffolder-backend/package.json +++ b/plugins/scaffolder-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-backend", "description": "The Backstage backend plugin that helps you create new things", - "version": "1.3.0", + "version": "1.4.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,14 +34,14 @@ "build:assets": "node scripts/build-nunjucks.js" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/plugin-catalog-backend": "^1.2.0", - "@backstage/plugin-scaffolder-common": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/plugin-catalog-backend": "^1.2.1-next.0", + "@backstage/plugin-scaffolder-common": "^1.1.2-next.0", "@backstage/types": "^1.0.0", "@gitbeaker/core": "^35.6.0", "@gitbeaker/node": "^35.1.0", @@ -76,8 +76,8 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/command-exists": "^1.2.0", "@types/fs-extra": "^9.0.1", "@types/git-url-parse": "^9.0.0", diff --git a/plugins/scaffolder-common/CHANGELOG.md b/plugins/scaffolder-common/CHANGELOG.md index 27a1abc7d2..1370f192f6 100644 --- a/plugins/scaffolder-common/CHANGELOG.md +++ b/plugins/scaffolder-common/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-scaffolder-common +## 1.1.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + ## 1.1.1 ### Patch Changes diff --git a/plugins/scaffolder-common/package.json b/plugins/scaffolder-common/package.json index beeec6430d..06d178caf3 100644 --- a/plugins/scaffolder-common/package.json +++ b/plugins/scaffolder-common/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder-common", "description": "Common functionalities for the scaffolder, to be shared between scaffolder and scaffolder-backend plugin", - "version": "1.1.1", + "version": "1.1.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -39,10 +39,10 @@ "url": "https://github.com/backstage/backstage/issues" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/types": "^1.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" } } diff --git a/plugins/scaffolder/CHANGELOG.md b/plugins/scaffolder/CHANGELOG.md index 617fe95457..715c2136f8 100644 --- a/plugins/scaffolder/CHANGELOG.md +++ b/plugins/scaffolder/CHANGELOG.md @@ -1,5 +1,28 @@ # @backstage/plugin-scaffolder +## 1.4.0-next.0 + +### Minor Changes + +- 3500c13a33: A new template editor has been added which is accessible via the context menu on the top right hand corner of the Create page. It allows you to load a template from a local directory, edit it with a preview, execute it in dry-run mode, and view the results. Note that the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) must be supported by your browser for this to be available. + + To support the new template editor the `ScaffolderApi` now has an optional `dryRun` method, which is implemented by the default `ScaffolderClient`. + +### Patch Changes + +- 37539e29d8: The template editor now shows the cause of request errors that happen during a dry-run. +- 842282ecf9: Bumped `codemirror` dependencies to `v6.0.0`. +- 464bb0e6c8: The max content size for dry-run files has been reduced from 256k to 64k. +- a7c0b34d70: Swap usage of `MaterialTable` with `Table` from `core-components` +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-scaffolder-common@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + ## 1.3.0 ### Minor Changes diff --git a/plugins/scaffolder/package.json b/plugins/scaffolder/package.json index c6da6b8f2f..2c81ef7162 100644 --- a/plugins/scaffolder/package.json +++ b/plugins/scaffolder/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-scaffolder", "description": "The Backstage plugin that helps you create new things", - "version": "1.3.0", + "version": "1.4.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,18 +35,18 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/integration-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/integration-react": "^1.1.2-next.0", "@backstage/plugin-catalog-common": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-permission-react": "^0.4.2", - "@backstage/plugin-scaffolder-common": "^1.1.1", + "@backstage/plugin-scaffolder-common": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@codemirror/language": "^6.0.0", @@ -80,11 +80,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/search-backend-module-elasticsearch/CHANGELOG.md b/plugins/search-backend-module-elasticsearch/CHANGELOG.md index a4247a2210..72b81689dd 100644 --- a/plugins/search-backend-module-elasticsearch/CHANGELOG.md +++ b/plugins/search-backend-module-elasticsearch/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-search-backend-module-elasticsearch +## 0.1.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/plugin-search-backend-node@0.6.3-next.0 + ## 0.1.5 ### Patch Changes diff --git a/plugins/search-backend-module-elasticsearch/package.json b/plugins/search-backend-module-elasticsearch/package.json index 719e923c5b..99339ef99c 100644 --- a/plugins/search-backend-module-elasticsearch/package.json +++ b/plugins/search-backend-module-elasticsearch/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-elasticsearch", "description": "A module for the search backend that implements search using ElasticSearch", - "version": "0.1.5", + "version": "0.1.6-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -25,7 +25,7 @@ "dependencies": { "@acuris/aws-es-connection": "^2.2.0", "@backstage/config": "^1.0.1", - "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-search-backend-node": "^0.6.3-next.0", "@backstage/plugin-search-common": "^0.3.5", "@elastic/elasticsearch": "7.13.0", "aws-sdk": "^2.948.0", @@ -35,8 +35,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/cli": "^0.17.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/cli": "^0.17.3-next.0", "@elastic/elasticsearch-mock": "^1.0.0" }, "files": [ diff --git a/plugins/search-backend-module-pg/CHANGELOG.md b/plugins/search-backend-module-pg/CHANGELOG.md index fe18f8254b..054c477cfb 100644 --- a/plugins/search-backend-module-pg/CHANGELOG.md +++ b/plugins/search-backend-module-pg/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-search-backend-module-pg +## 0.3.5-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + ## 0.3.4 ### Patch Changes diff --git a/plugins/search-backend-module-pg/package.json b/plugins/search-backend-module-pg/package.json index b34d2c65b8..cf072f5fe3 100644 --- a/plugins/search-backend-module-pg/package.json +++ b/plugins/search-backend-module-pg/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-module-pg", "description": "A module for the search backend that implements search using PostgreSQL", - "version": "0.3.4", + "version": "0.3.5-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,15 +23,15 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/plugin-search-backend-node": "^0.6.3-next.0", "@backstage/plugin-search-common": "^0.3.5", "lodash": "^4.17.21", "knex": "^1.0.2" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2" + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist", diff --git a/plugins/search-backend-node/CHANGELOG.md b/plugins/search-backend-node/CHANGELOG.md index 82f83436cd..366cf55e6e 100644 --- a/plugins/search-backend-node/CHANGELOG.md +++ b/plugins/search-backend-node/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-search-backend-node +## 0.6.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + ## 0.6.2 ### Patch Changes diff --git a/plugins/search-backend-node/package.json b/plugins/search-backend-node/package.json index 3ebfb8782f..0db5793549 100644 --- a/plugins/search-backend-node/package.json +++ b/plugins/search-backend-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend-node", "description": "A library for Backstage backend plugins that want to interact with the search backend plugin", - "version": "0.6.2", + "version": "0.6.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,8 +23,8 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-permission-common": "^0.6.2", @@ -38,8 +38,8 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/cli": "^0.17.2", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/ndjson": "^2.0.1" }, "files": [ diff --git a/plugins/search-backend/CHANGELOG.md b/plugins/search-backend/CHANGELOG.md index e214d6bb16..9640805095 100644 --- a/plugins/search-backend/CHANGELOG.md +++ b/plugins/search-backend/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search-backend +## 0.5.4-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-auth-node@0.2.3-next.0 + - @backstage/plugin-permission-node@0.6.3-next.0 + - @backstage/plugin-search-backend-node@0.6.3-next.0 + ## 0.5.3 ### Patch Changes diff --git a/plugins/search-backend/package.json b/plugins/search-backend/package.json index 6daa65bcb4..bd2cc3ecb6 100644 --- a/plugins/search-backend/package.json +++ b/plugins/search-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search-backend", "description": "The Backstage backend plugin that provides your backstage app with search", - "version": "0.5.3", + "version": "0.5.4-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -23,13 +23,13 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/plugin-auth-node": "^0.2.2", + "@backstage/plugin-auth-node": "^0.2.3-next.0", "@backstage/plugin-permission-common": "^0.6.2", - "@backstage/plugin-permission-node": "^0.6.2", - "@backstage/plugin-search-backend-node": "^0.6.2", + "@backstage/plugin-permission-node": "^0.6.3-next.0", + "@backstage/plugin-search-backend-node": "^0.6.3-next.0", "@backstage/plugin-search-common": "^0.3.5", "@backstage/types": "^1.0.0", "@types/express": "^4.17.6", @@ -43,7 +43,7 @@ "zod": "^3.11.6" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "supertest": "^6.1.3" }, diff --git a/plugins/search-common/package.json b/plugins/search-common/package.json index ae4c65d11e..86005e8756 100644 --- a/plugins/search-common/package.json +++ b/plugins/search-common/package.json @@ -43,7 +43,7 @@ "@backstage/plugin-permission-common": "^0.6.2" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "jest": { "roots": [ diff --git a/plugins/search-react/CHANGELOG.md b/plugins/search-react/CHANGELOG.md index 5f38994eeb..0d203f1c06 100644 --- a/plugins/search-react/CHANGELOG.md +++ b/plugins/search-react/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-search-react +## 0.2.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.2.1 ### Patch Changes diff --git a/plugins/search-react/package.json b/plugins/search-react/package.json index c0914e6409..925804ea52 100644 --- a/plugins/search-react/package.json +++ b/plugins/search-react/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-search-react", - "version": "0.2.1", + "version": "0.2.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,7 +32,7 @@ }, "dependencies": { "@backstage/plugin-search-common": "^0.3.5", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/version-bridge": "^1.0.1", "@backstage/theme": "^0.2.15", @@ -48,8 +48,8 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/core-app-api": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", "@testing-library/jest-dom": "^5.10.1", diff --git a/plugins/search/CHANGELOG.md b/plugins/search/CHANGELOG.md index 6283cee29b..985b7807c3 100644 --- a/plugins/search/CHANGELOG.md +++ b/plugins/search/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-search +## 0.9.1-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + ## 0.9.0 ### Minor Changes diff --git a/plugins/search/package.json b/plugins/search/package.json index b658490b00..196b09a874 100644 --- a/plugins/search/package.json +++ b/plugins/search/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-search", "description": "The Backstage plugin that provides your backstage app with search", - "version": "0.9.0", + "version": "0.9.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,14 +33,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-search-react": "^0.2.1", + "@backstage/plugin-search-react": "^0.2.2-next.0", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", "@backstage/version-bridge": "^1.0.1", @@ -57,10 +57,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/sentry/CHANGELOG.md b/plugins/sentry/CHANGELOG.md index 1a469a83af..7a87d94aa6 100644 --- a/plugins/sentry/CHANGELOG.md +++ b/plugins/sentry/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-sentry +## 0.3.45-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.44 ### Patch Changes diff --git a/plugins/sentry/package.json b/plugins/sentry/package.json index a75447f0ab..aaa008b368 100644 --- a/plugins/sentry/package.json +++ b/plugins/sentry/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-sentry", "description": "A Backstage plugin that integrates towards Sentry", - "version": "0.3.44", + "version": "0.3.45-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,10 +35,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-table/core": "^3.1.0", "@material-ui/core": "^4.12.2", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/shortcuts/CHANGELOG.md b/plugins/shortcuts/CHANGELOG.md index 4513e09dab..6343bf2b58 100644 --- a/plugins/shortcuts/CHANGELOG.md +++ b/plugins/shortcuts/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-shortcuts +## 0.2.8-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.2.7 ### Patch Changes diff --git a/plugins/shortcuts/package.json b/plugins/shortcuts/package.json index d1d3f9fba4..651cbf64e1 100644 --- a/plugins/shortcuts/package.json +++ b/plugins/shortcuts/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-shortcuts", "description": "A Backstage plugin that provides a shortcuts feature to the sidebar", - "version": "0.2.7", + "version": "0.2.8-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -42,10 +42,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/sonarqube/CHANGELOG.md b/plugins/sonarqube/CHANGELOG.md index 2b3d6840da..01b09623e4 100644 --- a/plugins/sonarqube/CHANGELOG.md +++ b/plugins/sonarqube/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-sonarqube +## 0.3.7-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.6 ### Patch Changes diff --git a/plugins/sonarqube/package.json b/plugins/sonarqube/package.json index d9310ffdde..6deb2cbebd 100644 --- a/plugins/sonarqube/package.json +++ b/plugins/sonarqube/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-sonarqube", "description": "", - "version": "0.3.6", + "version": "0.3.7-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -36,10 +36,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -53,10 +53,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/splunk-on-call/CHANGELOG.md b/plugins/splunk-on-call/CHANGELOG.md index e65afb1285..d7f227a116 100644 --- a/plugins/splunk-on-call/CHANGELOG.md +++ b/plugins/splunk-on-call/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-splunk-on-call +## 0.3.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.3.30 ### Patch Changes diff --git a/plugins/splunk-on-call/package.json b/plugins/splunk-on-call/package.json index baecd2f9c5..ca97ebca34 100644 --- a/plugins/splunk-on-call/package.json +++ b/plugins/splunk-on-call/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-splunk-on-call", "description": "A Backstage plugin that integrates towards Splunk On-Call", - "version": "0.3.30", + "version": "0.3.31-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,10 +34,10 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -51,10 +51,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/stack-overflow/CHANGELOG.md b/plugins/stack-overflow/CHANGELOG.md index d0f5f39f4b..0b0845b7b6 100644 --- a/plugins/stack-overflow/CHANGELOG.md +++ b/plugins/stack-overflow/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-stack-overflow +## 0.1.3-next.0 + +### Patch Changes + +- 12ae3eed2f: - Publicly exports `StackOverflowIcon`. + - `HomePageStackOverflowQuestions` accepts optional icon property. +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-home@0.4.23-next.0 + ## 0.1.2 ### Patch Changes diff --git a/plugins/stack-overflow/package.json b/plugins/stack-overflow/package.json index 1438ddcd50..922277c74a 100644 --- a/plugins/stack-overflow/package.json +++ b/plugins/stack-overflow/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-stack-overflow", - "version": "0.1.2", + "version": "0.1.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,9 +24,9 @@ }, "dependencies": { "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/plugin-home": "^0.4.22", + "@backstage/plugin-home": "^0.4.23-next.0", "@backstage/plugin-search-common": "^0.3.5", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -42,10 +42,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", "@types/jest": "^26.0.7", diff --git a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md index ba2392b5ee..3911f2111f 100644 --- a/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md +++ b/plugins/tech-insights-backend-module-jsonfc/CHANGELOG.md @@ -1,5 +1,13 @@ # @backstage/plugin-tech-insights-backend-module-jsonfc +## 0.1.18-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + ## 0.1.17 ### Patch Changes diff --git a/plugins/tech-insights-backend-module-jsonfc/package.json b/plugins/tech-insights-backend-module-jsonfc/package.json index a6782c57fb..c1d9b020e6 100644 --- a/plugins/tech-insights-backend-module-jsonfc/package.json +++ b/plugins/tech-insights-backend-module-jsonfc/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend-module-jsonfc", - "version": "0.1.17", + "version": "0.1.18-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1", + "@backstage/plugin-tech-insights-node": "^0.3.2-next.0", "ajv": "^8.10.0", "json-rules-engine": "^6.1.2", "lodash": "^4.17.21", @@ -46,7 +46,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/tech-insights-backend/CHANGELOG.md b/plugins/tech-insights-backend/CHANGELOG.md index 9e496d9046..41b303b5ca 100644 --- a/plugins/tech-insights-backend/CHANGELOG.md +++ b/plugins/tech-insights-backend/CHANGELOG.md @@ -1,5 +1,17 @@ # @backstage/plugin-tech-insights-backend +## 0.4.2-next.0 + +### Patch Changes + +- 2ef58ab539: TechInsightsBackend: Added missing 'scheduler' to code examples +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/plugin-tech-insights-node@0.3.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.4.1 ### Patch Changes diff --git a/plugins/tech-insights-backend/package.json b/plugins/tech-insights-backend/package.json index 5ae890ae1b..5461f22789 100644 --- a/plugins/tech-insights-backend/package.json +++ b/plugins/tech-insights-backend/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-backend", - "version": "0.4.1", + "version": "0.4.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,14 +34,14 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@backstage/plugin-tech-insights-common": "^0.2.4", - "@backstage/plugin-tech-insights-node": "^0.3.1", + "@backstage/plugin-tech-insights-node": "^0.3.2-next.0", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -54,8 +54,8 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "@types/semver": "^7.3.8", "supertest": "^6.1.3", diff --git a/plugins/tech-insights-common/package.json b/plugins/tech-insights-common/package.json index bc9bbcd792..5d6bc49611 100644 --- a/plugins/tech-insights-common/package.json +++ b/plugins/tech-insights-common/package.json @@ -38,7 +38,7 @@ "@backstage/types": "^1.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2-next.0" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/tech-insights-node/CHANGELOG.md b/plugins/tech-insights-node/CHANGELOG.md index c6af55abd5..64d150d275 100644 --- a/plugins/tech-insights-node/CHANGELOG.md +++ b/plugins/tech-insights-node/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-tech-insights-node +## 0.3.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + ## 0.3.1 ### Patch Changes diff --git a/plugins/tech-insights-node/package.json b/plugins/tech-insights-node/package.json index 904f149d6c..f4e53ca987 100644 --- a/plugins/tech-insights-node/package.json +++ b/plugins/tech-insights-node/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights-node", - "version": "0.3.1", + "version": "0.3.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -33,7 +33,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", + "@backstage/backend-common": "^0.14.1-next.0", "@backstage/config": "^1.0.1", "@backstage/plugin-tech-insights-common": "^0.2.4", "@backstage/types": "^1.0.0", @@ -42,7 +42,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2" + "@backstage/cli": "^0.17.3-next.0" }, "files": [ "dist" diff --git a/plugins/tech-insights/CHANGELOG.md b/plugins/tech-insights/CHANGELOG.md index 867f639067..3a900ddda9 100644 --- a/plugins/tech-insights/CHANGELOG.md +++ b/plugins/tech-insights/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-tech-insights +## 0.2.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.2.2 ### Patch Changes diff --git a/plugins/tech-insights/package.json b/plugins/tech-insights/package.json index 0956db7cf3..bcf8037b5d 100644 --- a/plugins/tech-insights/package.json +++ b/plugins/tech-insights/package.json @@ -1,6 +1,6 @@ { "name": "@backstage/plugin-tech-insights", - "version": "0.2.2", + "version": "0.2.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -28,11 +28,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-tech-insights-common": "^0.2.4", "@backstage/theme": "^0.2.15", "@backstage/types": "^1.0.0", @@ -47,10 +47,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/tech-radar/CHANGELOG.md b/plugins/tech-radar/CHANGELOG.md index 049a1b9c4c..96455c64b1 100644 --- a/plugins/tech-radar/CHANGELOG.md +++ b/plugins/tech-radar/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-tech-radar +## 0.5.14-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.5.13 ### Patch Changes diff --git a/plugins/tech-radar/package.json b/plugins/tech-radar/package.json index de2eab6fd1..4bd4462cd1 100644 --- a/plugins/tech-radar/package.json +++ b/plugins/tech-radar/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-tech-radar", "description": "A Backstage plugin that lets you display a Tech Radar for your organization", - "version": "0.5.13", + "version": "0.5.14-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-addons-test-utils/CHANGELOG.md b/plugins/techdocs-addons-test-utils/CHANGELOG.md index aabdec8922..711a426a6a 100644 --- a/plugins/techdocs-addons-test-utils/CHANGELOG.md +++ b/plugins/techdocs-addons-test-utils/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-techdocs-addons-test-utils +## 1.0.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/plugin-catalog@1.3.1-next.0 + - @backstage/core-app-api@1.0.4-next.0 + - @backstage/plugin-techdocs@1.2.1-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + - @backstage/test-utils@1.1.2-next.0 + ## 1.0.1 ### Patch Changes diff --git a/plugins/techdocs-addons-test-utils/package.json b/plugins/techdocs-addons-test-utils/package.json index 35d176566e..0debd31d49 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.1", + "version": "1.0.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -32,15 +32,15 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5", - "@backstage/core-app-api": "^1.0.3", + "@backstage/core-components": "^0.9.6-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog": "^1.3.0", - "@backstage/plugin-search-react": "^0.2.1", - "@backstage/plugin-techdocs": "^1.2.0", - "@backstage/plugin-techdocs-react": "^1.0.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog": "^1.3.1-next.0", + "@backstage/plugin-search-react": "^0.2.2-next.0", + "@backstage/plugin-techdocs": "^1.2.1-next.0", + "@backstage/plugin-techdocs-react": "^1.0.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -56,8 +56,8 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/dev-utils": "^1.0.3", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-backend/CHANGELOG.md b/plugins/techdocs-backend/CHANGELOG.md index 861bf37bef..b8bdde8fca 100644 --- a/plugins/techdocs-backend/CHANGELOG.md +++ b/plugins/techdocs-backend/CHANGELOG.md @@ -1,5 +1,16 @@ # @backstage/plugin-techdocs-backend +## 1.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-techdocs-node@1.1.3-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 1.1.2 ### Patch Changes diff --git a/plugins/techdocs-backend/package.json b/plugins/techdocs-backend/package.json index d7e9326fe5..bf29eeb9af 100644 --- a/plugins/techdocs-backend/package.json +++ b/plugins/techdocs-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-backend", "description": "The Backstage backend plugin that renders technical documentation for your components", - "version": "1.1.2", + "version": "1.1.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,16 +34,16 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/plugin-catalog-common": "^1.0.3", "@backstage/plugin-permission-common": "^0.6.2", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-techdocs-node": "^1.1.2", + "@backstage/plugin-techdocs-node": "^1.1.3-next.0", "@types/express": "^4.17.6", "dockerode": "^3.3.1", "express": "^4.17.1", @@ -56,9 +56,9 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/backend-test-utils": "^0.1.25", - "@backstage/cli": "^0.17.2", - "@backstage/plugin-search-backend-node": "0.6.2", + "@backstage/backend-test-utils": "^0.1.26-next.0", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/plugin-search-backend-node": "0.6.3-next.0", "@types/dockerode": "^3.3.0", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/techdocs-module-addons-contrib/CHANGELOG.md b/plugins/techdocs-module-addons-contrib/CHANGELOG.md index 4219157392..1a1d9812bb 100644 --- a/plugins/techdocs-module-addons-contrib/CHANGELOG.md +++ b/plugins/techdocs-module-addons-contrib/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-techdocs-module-addons-contrib +## 1.0.2-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + ## 1.0.1 ### Patch Changes diff --git a/plugins/techdocs-module-addons-contrib/package.json b/plugins/techdocs-module-addons-contrib/package.json index 92c0d8d4af..864262b773 100644 --- a/plugins/techdocs-module-addons-contrib/package.json +++ b/plugins/techdocs-module-addons-contrib/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-module-addons-contrib", "description": "Plugin module for contributed TechDocs Addons", - "version": "1.0.1", + "version": "1.0.2-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", - "@backstage/integration": "^1.2.1", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-techdocs-react": "^1.0.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-techdocs-react": "^1.0.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.9.13", "@material-ui/icons": "^4.9.1", @@ -51,11 +51,11 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/plugin-techdocs-addons-test-utils": "^1.0.1", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/plugin-techdocs-addons-test-utils": "^1.0.2-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/techdocs-node/CHANGELOG.md b/plugins/techdocs-node/CHANGELOG.md index 1902f80171..8a99e3a036 100644 --- a/plugins/techdocs-node/CHANGELOG.md +++ b/plugins/techdocs-node/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-techdocs-node +## 1.1.3-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + ## 1.1.2 ### Patch Changes diff --git a/plugins/techdocs-node/package.json b/plugins/techdocs-node/package.json index 9cd737db80..8d9e493d05 100644 --- a/plugins/techdocs-node/package.json +++ b/plugins/techdocs-node/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-node", "description": "Common node.js functionalities for TechDocs, to be shared between techdocs-backend plugin and techdocs-cli", - "version": "1.1.2", + "version": "1.1.3-next.0", "main": "src/index.ts", "types": "src/index.ts", "private": false, @@ -42,11 +42,11 @@ "dependencies": { "@azure/identity": "^2.0.1", "@azure/storage-blob": "^12.5.0", - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@backstage/plugin-search-common": "^0.3.5", "@google-cloud/storage": "^6.0.0", "@trendyol-js/openstack-swift-sdk": "^0.0.5", @@ -64,7 +64,7 @@ "winston": "^3.2.1" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/fs-extra": "^9.0.5", "@types/js-yaml": "^4.0.0", "@types/mime-types": "^2.1.0", diff --git a/plugins/techdocs-react/CHANGELOG.md b/plugins/techdocs-react/CHANGELOG.md index 904eacff26..6feb9062d3 100644 --- a/plugins/techdocs-react/CHANGELOG.md +++ b/plugins/techdocs-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-techdocs-react +## 1.0.2-next.0 + +### Patch Changes + +- c3cfc83af2: Updated JSDoc to be MDX compatible. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + ## 1.0.1 ### Patch Changes diff --git a/plugins/techdocs-react/package.json b/plugins/techdocs-react/package.json index f4a51bfe42..698cff4c84 100644 --- a/plugins/techdocs-react/package.json +++ b/plugins/techdocs-react/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs-react", "description": "Shared frontend utilities for TechDocs and Addons", - "version": "1.0.1", + "version": "1.0.2-next.0", "private": false, "publishConfig": { "access": "public", @@ -35,8 +35,8 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/version-bridge": "^1.0.1", "@material-ui/core": "^4.12.2", @@ -56,7 +56,7 @@ "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", - "@backstage/test-utils": "^1.1.1", + "@backstage/test-utils": "^1.1.2-next.0", "@backstage/theme": "^0.2.15" }, "files": [ diff --git a/plugins/techdocs/CHANGELOG.md b/plugins/techdocs/CHANGELOG.md index 91babd6fba..b7367c4ee5 100644 --- a/plugins/techdocs/CHANGELOG.md +++ b/plugins/techdocs/CHANGELOG.md @@ -1,5 +1,19 @@ # @backstage/plugin-techdocs +## 1.2.1-next.0 + +### Patch Changes + +- 3cbebf710e: Reorder browser tab title in Techdocs pages to have the site name first. +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-techdocs-react@1.0.2-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + - @backstage/integration-react@1.1.2-next.0 + - @backstage/plugin-search-react@0.2.2-next.0 + ## 1.2.0 ### Minor Changes diff --git a/plugins/techdocs/package.json b/plugins/techdocs/package.json index 45c6d98aec..9890173851 100644 --- a/plugins/techdocs/package.json +++ b/plugins/techdocs/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-techdocs", "description": "The Backstage plugin that renders technical documentation for your components", - "version": "1.2.0", + "version": "1.2.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -35,17 +35,17 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", - "@backstage/integration-react": "^1.1.1", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/integration": "^1.2.2-next.0", + "@backstage/integration-react": "^1.1.2-next.0", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/plugin-search-common": "^0.3.5", - "@backstage/plugin-search-react": "^0.2.1", - "@backstage/plugin-techdocs-react": "^1.0.1", + "@backstage/plugin-search-react": "^0.2.2-next.0", + "@backstage/plugin-techdocs-react": "^1.0.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -67,10 +67,10 @@ "react-dom": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/react-hooks": "^8.0.0", diff --git a/plugins/todo-backend/CHANGELOG.md b/plugins/todo-backend/CHANGELOG.md index 8fc6adbfcb..e2cec9e01e 100644 --- a/plugins/todo-backend/CHANGELOG.md +++ b/plugins/todo-backend/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-todo-backend +## 0.1.31-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/integration@1.2.2-next.0 + - @backstage/catalog-client@1.0.4-next.0 + ## 0.1.30 ### Patch Changes diff --git a/plugins/todo-backend/package.json b/plugins/todo-backend/package.json index 235e05a93b..97053da997 100644 --- a/plugins/todo-backend/package.json +++ b/plugins/todo-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-todo-backend", "description": "A Backstage backend plugin that lets you browse TODO comments in your source code", - "version": "0.1.30", + "version": "0.1.31-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -29,12 +29,12 @@ "start": "backstage-cli package start" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/catalog-client": "^1.0.3", - "@backstage/catalog-model": "^1.0.3", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/catalog-client": "^1.0.4-next.0", + "@backstage/catalog-model": "^1.1.0-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", - "@backstage/integration": "^1.2.1", + "@backstage/integration": "^1.2.2-next.0", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", @@ -43,7 +43,7 @@ "yn": "^4.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/supertest": "^2.0.8", "msw": "^0.42.0", "supertest": "^6.1.3" diff --git a/plugins/todo/CHANGELOG.md b/plugins/todo/CHANGELOG.md index 77eda64a68..a1ef01aea5 100644 --- a/plugins/todo/CHANGELOG.md +++ b/plugins/todo/CHANGELOG.md @@ -1,5 +1,14 @@ # @backstage/plugin-todo +## 0.2.9-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.2.8 ### Patch Changes diff --git a/plugins/todo/package.json b/plugins/todo/package.json index 7fbf79cd3a..0e17b6ef10 100644 --- a/plugins/todo/package.json +++ b/plugins/todo/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-todo", "description": "A Backstage plugin that lets you browse TODO comments in your source code", - "version": "0.2.8", + "version": "0.2.9-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -30,11 +30,11 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -45,10 +45,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/user-settings/CHANGELOG.md b/plugins/user-settings/CHANGELOG.md index 81cc4a891f..1fcdc650d1 100644 --- a/plugins/user-settings/CHANGELOG.md +++ b/plugins/user-settings/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-user-settings +## 0.4.6-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.4.5 ### Patch Changes diff --git a/plugins/user-settings/package.json b/plugins/user-settings/package.json index aa4335856e..e186e2539d 100644 --- a/plugins/user-settings/package.json +++ b/plugins/user-settings/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-user-settings", "description": "A Backstage plugin that provides a settings page", - "version": "0.4.5", + "version": "0.4.6-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,7 +34,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", @@ -48,10 +48,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/vault-backend/CHANGELOG.md b/plugins/vault-backend/CHANGELOG.md index 302b27afa8..5c12ada8f5 100644 --- a/plugins/vault-backend/CHANGELOG.md +++ b/plugins/vault-backend/CHANGELOG.md @@ -1,5 +1,18 @@ # @backstage/plugin-vault-backend +## 0.2.0-next.0 + +### Minor Changes + +- 5ebf2c7023: Throw exceptions instead of swallow them, remove some exported types from the `api-report`, small changes in the API responses & expose the vault `baseUrl` to the frontend as well + +### Patch Changes + +- Updated dependencies + - @backstage/backend-common@0.14.1-next.0 + - @backstage/backend-tasks@0.3.3-next.0 + - @backstage/backend-test-utils@0.1.26-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/vault-backend/package.json b/plugins/vault-backend/package.json index d0e3990aee..490a19be6d 100644 --- a/plugins/vault-backend/package.json +++ b/plugins/vault-backend/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault-backend", "description": "A Backstage backend plugin that integrates towards Vault", - "version": "0.1.0", + "version": "0.2.0-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,9 +34,9 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/backend-common": "^0.14.0", - "@backstage/backend-tasks": "^0.3.2", - "@backstage/backend-test-utils": "^0.1.25", + "@backstage/backend-common": "^0.14.1-next.0", + "@backstage/backend-tasks": "^0.3.3-next.0", + "@backstage/backend-test-utils": "^0.1.26-next.0", "@backstage/config": "^1.0.1", "@backstage/errors": "^1.0.0", "@types/express": "*", @@ -51,7 +51,7 @@ "yn": "^5.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", + "@backstage/cli": "^0.17.3-next.0", "@types/compression": "^1.7.2", "@types/supertest": "^2.0.8", "msw": "^0.42.0", diff --git a/plugins/vault/CHANGELOG.md b/plugins/vault/CHANGELOG.md index 205b537dd4..3b371bf5b9 100644 --- a/plugins/vault/CHANGELOG.md +++ b/plugins/vault/CHANGELOG.md @@ -1,5 +1,15 @@ # @backstage/plugin-vault +## 0.1.1-next.0 + +### Patch Changes + +- 5ebf2c7023: Export missing parameters and added them to the api-report. Also adapted the API to the expected response from the backend +- Updated dependencies + - @backstage/catalog-model@1.1.0-next.0 + - @backstage/core-components@0.9.6-next.0 + - @backstage/plugin-catalog-react@1.1.2-next.0 + ## 0.1.0 ### Minor Changes diff --git a/plugins/vault/package.json b/plugins/vault/package.json index c4b447eaca..01b3182641 100644 --- a/plugins/vault/package.json +++ b/plugins/vault/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-vault", "description": "A Backstage plugin that integrates towards Vault", - "version": "0.1.0", + "version": "0.1.1-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -34,11 +34,11 @@ "postpack": "backstage-cli package postpack" }, "dependencies": { - "@backstage/catalog-model": "^1.0.3", - "@backstage/core-components": "^0.9.5", + "@backstage/catalog-model": "^1.1.0-next.0", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", - "@backstage/plugin-catalog-react": "^1.1.1", + "@backstage/plugin-catalog-react": "^1.1.2-next.0", "@backstage/theme": "^0.2.15", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", @@ -49,10 +49,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/plugins/xcmetrics/CHANGELOG.md b/plugins/xcmetrics/CHANGELOG.md index 01d99a138f..3e1e1ad9c2 100644 --- a/plugins/xcmetrics/CHANGELOG.md +++ b/plugins/xcmetrics/CHANGELOG.md @@ -1,5 +1,12 @@ # @backstage/plugin-xcmetrics +## 0.2.27-next.0 + +### Patch Changes + +- Updated dependencies + - @backstage/core-components@0.9.6-next.0 + ## 0.2.26 ### Patch Changes diff --git a/plugins/xcmetrics/package.json b/plugins/xcmetrics/package.json index 1c93a9c8cb..1ab1c9f844 100644 --- a/plugins/xcmetrics/package.json +++ b/plugins/xcmetrics/package.json @@ -1,7 +1,7 @@ { "name": "@backstage/plugin-xcmetrics", "description": "A Backstage plugin that shows XCode build metrics for your components", - "version": "0.2.26", + "version": "0.2.27-next.0", "main": "src/index.ts", "types": "src/index.ts", "license": "Apache-2.0", @@ -24,7 +24,7 @@ "clean": "backstage-cli package clean" }, "dependencies": { - "@backstage/core-components": "^0.9.5", + "@backstage/core-components": "^0.9.6-next.0", "@backstage/core-plugin-api": "^1.0.3", "@backstage/errors": "^1.0.0", "@backstage/theme": "^0.2.15", @@ -40,10 +40,10 @@ "react": "^16.13.1 || ^17.0.0" }, "devDependencies": { - "@backstage/cli": "^0.17.2", - "@backstage/core-app-api": "^1.0.3", - "@backstage/dev-utils": "^1.0.3", - "@backstage/test-utils": "^1.1.1", + "@backstage/cli": "^0.17.3-next.0", + "@backstage/core-app-api": "^1.0.4-next.0", + "@backstage/dev-utils": "^1.0.4-next.0", + "@backstage/test-utils": "^1.1.2-next.0", "@testing-library/jest-dom": "^5.10.1", "@testing-library/react": "^12.1.3", "@testing-library/user-event": "^14.0.0", diff --git a/yarn.lock b/yarn.lock index e5a30f4b9e..4b0ab66cef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1512,6 +1512,169 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" +"@backstage/catalog-client@^1.0.3": + version "1.0.3" + resolved "https://registry.npmjs.org/@backstage/catalog-client/-/catalog-client-1.0.3.tgz#cb91472ccc31df322f69e7e4e80939b3535660cd" + integrity sha512-35Es9jFB9jOZTEtEeCyZHES0bcQkfX4qbmY1GuC6e6ZtO120w+595kmKxc744d7X2WXUIWvhRubqc9/w5blKbg== + dependencies: + "@backstage/catalog-model" "^1.0.3" + "@backstage/errors" "^1.0.0" + cross-fetch "^3.1.5" + +"@backstage/catalog-model@^1.0.0", "@backstage/catalog-model@^1.0.3": + version "1.0.3" + resolved "https://registry.npmjs.org/@backstage/catalog-model/-/catalog-model-1.0.3.tgz#0d7bd832add56650871b95894878540fc41a4ef9" + integrity sha512-rbXdA/CI8EzpsthlSI4JonLd4RZoki7IN6tFvivjKDMlW8IVb63BJXWO4VnvHH+LLYzH4/OaL051YeoaicdqYw== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@backstage/types" "^1.0.0" + ajv "^8.10.0" + json-schema "^0.4.0" + lodash "^4.17.21" + uuid "^8.0.0" + +"@backstage/core-components@^0.9.0", "@backstage/core-components@^0.9.5": + version "0.9.5" + resolved "https://registry.npmjs.org/@backstage/core-components/-/core-components-0.9.5.tgz#5a0b34867aaee0549bfa67b39a69c09588fa3c7a" + integrity sha512-kfAdN70idiEqHeH9ZQryn6C0RxJEKiRc/7srYIz0CVV88zJfc0nmZ5C/S10Gkht2xWfm95tTSw2P1vEYIBbfxg== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/errors" "^1.0.0" + "@backstage/theme" "^0.2.15" + "@backstage/version-bridge" "^1.0.1" + "@material-table/core" "^3.1.0" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + "@react-hookz/web" "^14.0.0" + "@types/react-sparklines" "^1.7.0" + "@types/react-text-truncate" "^0.14.0" + ansi-regex "^6.0.1" + classnames "^2.2.6" + d3-selection "^3.0.0" + d3-shape "^3.0.0" + d3-zoom "^3.0.0" + dagre "^0.8.5" + history "^5.0.0" + immer "^9.0.1" + lodash "^4.17.21" + pluralize "^8.0.0" + prop-types "^15.7.2" + qs "^6.9.4" + rc-progress "3.3.3" + react-helmet "6.1.0" + react-hook-form "^7.12.2" + react-markdown "^8.0.0" + react-router "6.0.0-beta.0" + react-router-dom "6.0.0-beta.0" + react-sparklines "^1.7.0" + react-syntax-highlighter "^15.4.5" + react-text-truncate "^0.19.0" + react-use "^17.3.2" + react-virtualized-auto-sizer "^1.0.6" + react-window "^1.8.6" + remark-gfm "^3.0.1" + zen-observable "^0.8.15" + zod "^3.11.6" + +"@backstage/integration-react@^1.0.0": + version "1.1.1" + resolved "https://registry.npmjs.org/@backstage/integration-react/-/integration-react-1.1.1.tgz#936fd1441c47709fa8825360ea14ada26046b910" + integrity sha512-vCXErMhj90eW74A9gQwgKrc0Go5RXSEyM1wQV6+S91CZHYc3fdQJAfrxcmmUybGFtX2a2Yrmm67K8owG9WaYnQ== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/integration" "^1.2.1" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + react-use "^17.2.4" + +"@backstage/integration@^1.2.1": + version "1.2.1" + resolved "https://registry.npmjs.org/@backstage/integration/-/integration-1.2.1.tgz#a1931d240c2fbd304f0b87d54272709f4ffe83ed" + integrity sha512-9rXD1iIGhKRCfowxWx9sRKxiv1JvDI6ucvtUeXIj1G27kT/Xy7uUcgB8CkVxsvSeog5Z1VdYkFkDmQbKQ6GPrg== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/errors" "^1.0.0" + "@octokit/auth-app" "^3.4.0" + "@octokit/rest" "^18.5.3" + cross-fetch "^3.1.5" + git-url-parse "^11.6.0" + lodash "^4.17.21" + luxon "^2.0.2" + +"@backstage/plugin-catalog-react@^1.0.0", "@backstage/plugin-catalog-react@^1.1.1": + version "1.1.1" + resolved "https://registry.npmjs.org/@backstage/plugin-catalog-react/-/plugin-catalog-react-1.1.1.tgz#0441bcf1291349ad355ff51e28245d7ea26a3e01" + integrity sha512-HxowTsFaNmAp+TEb0YgBak/61SkwwRV3tUdF5O2dQugbgI3Ci8dMjN2J18LiOEFS13m6IlrCpNC1Db3QMRjwBA== + dependencies: + "@backstage/catalog-client" "^1.0.3" + "@backstage/catalog-model" "^1.0.3" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/errors" "^1.0.0" + "@backstage/integration" "^1.2.1" + "@backstage/plugin-catalog-common" "^1.0.3" + "@backstage/plugin-permission-common" "^0.6.2" + "@backstage/plugin-permission-react" "^0.4.2" + "@backstage/theme" "^0.2.15" + "@backstage/types" "^1.0.0" + "@backstage/version-bridge" "^1.0.1" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + classnames "^2.2.6" + jwt-decode "^3.1.0" + lodash "^4.17.21" + qs "^6.9.4" + react-router "6.0.0-beta.0" + react-use "^17.2.4" + yaml "^1.10.0" + zen-observable "^0.8.15" + +"@backstage/plugin-home@^0.4.19", "@backstage/plugin-home@^0.4.22": + version "0.4.22" + resolved "https://registry.npmjs.org/@backstage/plugin-home/-/plugin-home-0.4.22.tgz#efc54ebffb83a2a36dcd43e65142c30be5d8559d" + integrity sha512-0LPCyz1/nJraVdq+vkpS8g+8rnVTqY9oz5a+tOEnA6Beldlnd1xGa/qYfaH7s/5jFjd+XQRYoNw7qvioHLC16Q== + dependencies: + "@backstage/catalog-model" "^1.0.3" + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/plugin-catalog-react" "^1.1.1" + "@backstage/plugin-stack-overflow" "^0.1.2" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@material-ui/lab" "4.0.0-alpha.57" + lodash "^4.17.21" + react-router "6.0.0-beta.0" + react-use "^17.2.4" + +"@backstage/plugin-stack-overflow@^0.1.2": + version "0.1.2" + resolved "https://registry.npmjs.org/@backstage/plugin-stack-overflow/-/plugin-stack-overflow-0.1.2.tgz#bc140bb22d239a7106f91ea1d4c637551dc91ca5" + integrity sha512-6phLbR7E/iZjuNFFStsO2zcJYDijPTS8WEyxhM/rX1Q/OeliMgGBs8V4j1hfHgcjjLz4PPI+EDz/+eeDMi1c4w== + dependencies: + "@backstage/config" "^1.0.1" + "@backstage/core-components" "^0.9.5" + "@backstage/core-plugin-api" "^1.0.3" + "@backstage/plugin-home" "^0.4.22" + "@backstage/plugin-search-common" "^0.3.5" + "@backstage/theme" "^0.2.15" + "@material-ui/core" "^4.12.2" + "@material-ui/icons" "^4.9.1" + "@testing-library/jest-dom" "^5.10.1" + cross-fetch "^3.1.5" + lodash "^4.17.21" + qs "^6.9.4" + react-use "^17.2.4" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -12284,62 +12447,62 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" "example-app@link:packages/app": - version "0.2.72" + version "0.2.73-next.0" dependencies: - "@backstage/app-defaults" "^1.0.3" - "@backstage/catalog-model" "^1.0.3" - "@backstage/cli" "^0.17.2" + "@backstage/app-defaults" "^1.0.4-next.0" + "@backstage/catalog-model" "^1.1.0-next.0" + "@backstage/cli" "^0.17.3-next.0" "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.3" - "@backstage/core-components" "^0.9.5" + "@backstage/core-app-api" "^1.0.4-next.0" + "@backstage/core-components" "^0.9.6-next.0" "@backstage/core-plugin-api" "^1.0.3" - "@backstage/integration-react" "^1.1.1" - "@backstage/plugin-airbrake" "^0.3.6" - "@backstage/plugin-apache-airflow" "^0.1.14" - "@backstage/plugin-api-docs" "^0.8.6" - "@backstage/plugin-azure-devops" "^0.1.22" - "@backstage/plugin-badges" "^0.2.30" - "@backstage/plugin-catalog" "^1.3.0" + "@backstage/integration-react" "^1.1.2-next.0" + "@backstage/plugin-airbrake" "^0.3.7-next.0" + "@backstage/plugin-apache-airflow" "^0.1.15-next.0" + "@backstage/plugin-api-docs" "^0.8.7-next.0" + "@backstage/plugin-azure-devops" "^0.1.23-next.0" + "@backstage/plugin-badges" "^0.2.31-next.0" + "@backstage/plugin-catalog" "^1.3.1-next.0" "@backstage/plugin-catalog-common" "^1.0.3" - "@backstage/plugin-catalog-graph" "^0.2.18" - "@backstage/plugin-catalog-import" "^0.8.9" - "@backstage/plugin-catalog-react" "^1.1.1" - "@backstage/plugin-circleci" "^0.3.6" - "@backstage/plugin-cloudbuild" "^0.3.6" - "@backstage/plugin-code-coverage" "^0.1.33" - "@backstage/plugin-cost-insights" "^0.11.28" - "@backstage/plugin-dynatrace" "^0.1.0" - "@backstage/plugin-explore" "^0.3.37" - "@backstage/plugin-gcalendar" "^0.3.2" - "@backstage/plugin-gcp-projects" "^0.3.25" - "@backstage/plugin-github-actions" "^0.5.6" - "@backstage/plugin-gocd" "^0.1.12" - "@backstage/plugin-graphiql" "^0.2.38" - "@backstage/plugin-home" "^0.4.22" - "@backstage/plugin-jenkins" "^0.7.5" - "@backstage/plugin-kafka" "^0.3.6" - "@backstage/plugin-kubernetes" "^0.6.6" - "@backstage/plugin-lighthouse" "^0.3.6" - "@backstage/plugin-newrelic" "^0.3.24" - "@backstage/plugin-newrelic-dashboard" "^0.1.14" - "@backstage/plugin-org" "^0.5.6" - "@backstage/plugin-pagerduty" "0.4.0" + "@backstage/plugin-catalog-graph" "^0.2.19-next.0" + "@backstage/plugin-catalog-import" "^0.8.10-next.0" + "@backstage/plugin-catalog-react" "^1.1.2-next.0" + "@backstage/plugin-circleci" "^0.3.7-next.0" + "@backstage/plugin-cloudbuild" "^0.3.7-next.0" + "@backstage/plugin-code-coverage" "^0.1.34-next.0" + "@backstage/plugin-cost-insights" "^0.11.29-next.0" + "@backstage/plugin-dynatrace" "^0.1.1-next.0" + "@backstage/plugin-explore" "^0.3.38-next.0" + "@backstage/plugin-gcalendar" "^0.3.3-next.0" + "@backstage/plugin-gcp-projects" "^0.3.26-next.0" + "@backstage/plugin-github-actions" "^0.5.7-next.0" + "@backstage/plugin-gocd" "^0.1.13-next.0" + "@backstage/plugin-graphiql" "^0.2.39-next.0" + "@backstage/plugin-home" "^0.4.23-next.0" + "@backstage/plugin-jenkins" "^0.7.6-next.0" + "@backstage/plugin-kafka" "^0.3.7-next.0" + "@backstage/plugin-kubernetes" "^0.6.7-next.0" + "@backstage/plugin-lighthouse" "^0.3.7-next.0" + "@backstage/plugin-newrelic" "^0.3.25-next.0" + "@backstage/plugin-newrelic-dashboard" "^0.1.15-next.0" + "@backstage/plugin-org" "^0.5.7-next.0" + "@backstage/plugin-pagerduty" "0.5.0-next.0" "@backstage/plugin-permission-react" "^0.4.2" - "@backstage/plugin-rollbar" "^0.4.6" - "@backstage/plugin-scaffolder" "^1.3.0" - "@backstage/plugin-search" "^0.9.0" + "@backstage/plugin-rollbar" "^0.4.7-next.0" + "@backstage/plugin-scaffolder" "^1.4.0-next.0" + "@backstage/plugin-search" "^0.9.1-next.0" "@backstage/plugin-search-common" "^0.3.5" - "@backstage/plugin-search-react" "^0.2.1" - "@backstage/plugin-sentry" "^0.3.44" - "@backstage/plugin-shortcuts" "^0.2.7" - "@backstage/plugin-stack-overflow" "^0.1.2" - "@backstage/plugin-tech-insights" "^0.2.2" - "@backstage/plugin-tech-radar" "^0.5.13" - "@backstage/plugin-techdocs" "^1.2.0" - "@backstage/plugin-techdocs-module-addons-contrib" "^1.0.1" - "@backstage/plugin-techdocs-react" "^1.0.1" - "@backstage/plugin-todo" "^0.2.8" - "@backstage/plugin-user-settings" "^0.4.5" + "@backstage/plugin-search-react" "^0.2.2-next.0" + "@backstage/plugin-sentry" "^0.3.45-next.0" + "@backstage/plugin-shortcuts" "^0.2.8-next.0" + "@backstage/plugin-stack-overflow" "^0.1.3-next.0" + "@backstage/plugin-tech-insights" "^0.2.3-next.0" + "@backstage/plugin-tech-radar" "^0.5.14-next.0" + "@backstage/plugin-techdocs" "^1.2.1-next.0" + "@backstage/plugin-techdocs-module-addons-contrib" "^1.0.2-next.0" + "@backstage/plugin-techdocs-react" "^1.0.2-next.0" + "@backstage/plugin-todo" "^0.2.9-next.0" + "@backstage/plugin-user-settings" "^0.4.6-next.0" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.12.2" "@material-ui/icons" "^4.9.1" @@ -24193,20 +24356,20 @@ tdigest@^0.1.1: bintrees "1.0.1" "techdocs-cli-embedded-app@link:packages/techdocs-cli-embedded-app": - version "0.2.71" + version "0.2.72-next.0" dependencies: - "@backstage/app-defaults" "^1.0.3" - "@backstage/catalog-model" "^1.0.3" - "@backstage/cli" "^0.17.2" + "@backstage/app-defaults" "^1.0.4-next.0" + "@backstage/catalog-model" "^1.1.0-next.0" + "@backstage/cli" "^0.17.3-next.0" "@backstage/config" "^1.0.1" - "@backstage/core-app-api" "^1.0.3" - "@backstage/core-components" "^0.9.5" + "@backstage/core-app-api" "^1.0.4-next.0" + "@backstage/core-components" "^0.9.6-next.0" "@backstage/core-plugin-api" "^1.0.3" - "@backstage/integration-react" "^1.1.1" - "@backstage/plugin-catalog" "^1.3.0" - "@backstage/plugin-techdocs" "^1.2.0" - "@backstage/plugin-techdocs-react" "^1.0.1" - "@backstage/test-utils" "^1.1.1" + "@backstage/integration-react" "^1.1.2-next.0" + "@backstage/plugin-catalog" "^1.3.1-next.0" + "@backstage/plugin-techdocs" "^1.2.1-next.0" + "@backstage/plugin-techdocs-react" "^1.0.2-next.0" + "@backstage/test-utils" "^1.1.2-next.0" "@backstage/theme" "^0.2.15" "@material-ui/core" "^4.11.0" "@material-ui/icons" "^4.9.1" From 65ab365be22346bb43e9ea3c17d768a7eb6b2b36 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 09:09:37 +0000 Subject: [PATCH 547/550] fix(deps): update dependency isomorphic-git to v1.18.3 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e5a30f4b9e..f19c47b5b5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15516,9 +15516,9 @@ isomorphic-form-data@^2.0.0: form-data "^2.3.2" isomorphic-git@^1.8.0: - version "1.17.3" - resolved "https://registry.npmjs.org/isomorphic-git/-/isomorphic-git-1.17.3.tgz#d4a4e7a2defc7e9c80d4d0bfd43c1e7d2bfb25ee" - integrity sha512-jEQtmg1lJ8ZiJLjJCCJDDIdXaeoHwqHFY7QCLgNw7GzZ6MktXLzKXnQsFRfIcm7sNYGt+w1/6FQTwO9zoHq/Fw== + version "1.18.3" + resolved "https://registry.npmjs.org/isomorphic-git/-/isomorphic-git-1.18.3.tgz#b2ef91688ac8f4315a8f3ce72f24a76c17bf61ad" + integrity sha512-CVTNt0uU5RQ4g626LxqUyShdoeD15uZppKA0tk7iY/PyikCbRG594a7BksU4JZcOC6RsqUkURdIlFyKhAfdbqg== dependencies: async-lock "^1.1.0" clean-git-ref "^2.0.1" From ec4ddcb36bad60120d9efbd46e5af91e3bfbc6af Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 09:10:32 +0000 Subject: [PATCH 548/550] fix(deps): update dependency octokit to v1.8.0 Signed-off-by: Renovate Bot --- yarn.lock | 41 ++++++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/yarn.lock b/yarn.lock index e5a30f4b9e..bbf9cd7eb4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4732,6 +4732,11 @@ resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== +"@octokit/openapi-types@^12.4.0": + version "12.4.0" + resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.4.0.tgz#fd8bf5db72bd566c5ba2cb76754512a9ebe66e71" + integrity sha512-Npcb7Pv30b33U04jvcD7l75yLU0mxhuX2Xqrn51YyZ5WTkF04bpbxLaZ6GcaTqu03WZQHoO/Gbfp95NGRueDUA== + "@octokit/openapi-types@^7.3.2": version "7.3.2" resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.3.2.tgz#065ce49b338043ec7f741316ce06afd4d459d944" @@ -4749,6 +4754,13 @@ dependencies: "@octokit/types" "^6.34.0" +"@octokit/plugin-paginate-rest@^2.18.0": + version "2.19.0" + resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.19.0.tgz#b52eae6ecacfa1f5583dc2cc0985cfbed3ca78b0" + integrity sha512-hQ4Qysg2hNmEMuZeJkvyzM4eSZiTifOKqYAMsW8FnxFKowhuwWICSgBQ9Gn9GpUmgKB7qaf1hFvMjYaTAg5jQA== + dependencies: + "@octokit/types" "^6.36.0" + "@octokit/plugin-paginate-rest@^2.6.2": version "2.7.0" resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.7.0.tgz#6bb7b043c246e0654119a6ec4e72a172c9e2c7f3" @@ -4782,6 +4794,14 @@ "@octokit/types" "^6.34.0" deprecation "^2.3.1" +"@octokit/plugin-rest-endpoint-methods@^5.14.0": + version "5.15.0" + resolved "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.15.0.tgz#6c8251b55c33315a6e53e5b55654f72023ed5049" + integrity sha512-Gsw9+Xm56jVhfbJoy4pt6eOOyf8/3K6CAnx1Sl7U2GhZWcg8MR6YgXWnpfdF69S2ViMXLA7nfvTDAsZpFlkLRw== + dependencies: + "@octokit/types" "^6.36.0" + deprecation "^2.3.1" + "@octokit/plugin-retry@^3.0.9": version "3.0.9" resolved "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-3.0.9.tgz#ae625cca1e42b0253049102acd71c1d5134788fe" @@ -4853,13 +4873,20 @@ dependencies: "@octokit/openapi-types" "^7.3.2" -"@octokit/types@^6.26.0", "@octokit/types@^6.27.1", "@octokit/types@^6.34.0": +"@octokit/types@^6.27.1", "@octokit/types@^6.34.0": version "6.34.0" resolved "https://registry.npmjs.org/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== dependencies: "@octokit/openapi-types" "^11.2.0" +"@octokit/types@^6.35.0", "@octokit/types@^6.36.0": + version "6.37.0" + resolved "https://registry.npmjs.org/@octokit/types/-/types-6.37.0.tgz#32eb78edb34cf5cea4ba5753ab8db75b776d617a" + integrity sha512-BXWQhFKRkjX4dVW5L2oYa0hzWOAqsEsujXsQLSdepPoDZfYdubrD1KDGpyNldGXtR8QM/WezDcxcIN1UKJMGPA== + dependencies: + "@octokit/openapi-types" "^12.4.0" + "@octokit/webhooks-methods@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-2.0.0.tgz#1108b9ea661ca6c81e4a8bfa63a09eb27d5bc2db" @@ -19326,18 +19353,18 @@ octokit-plugin-create-pull-request@^3.10.0: "@octokit/types" "^6.8.2" octokit@^1.7.1: - version "1.7.2" - resolved "https://registry.npmjs.org/octokit/-/octokit-1.7.2.tgz#c5f11699c39ba5526ff170cbfcb7eaa291ddf11a" - integrity sha512-C+iwOeUMWwbvHxGbLX5rAde5WuEVGe/hNQniU1haZAPMHqUz1+ppffvkP4v/2R3dkSLJnzceUG+ir0klNmEoBA== + version "1.8.0" + resolved "https://registry.npmjs.org/octokit/-/octokit-1.8.0.tgz#c2ea6ace083b3be1d594aa7eb2e05fccd14e7ca5" + integrity sha512-HtArk9ttGy5effKNiaqKCirR6VSZoYjqgLgvVm/1mSRR4WYmww5DHjLnZlCbvj8+DwBLLLduJ3XnX/SPCCcp6A== dependencies: "@octokit/app" "^12.0.4" "@octokit/core" "^3.5.1" "@octokit/oauth-app" "^3.5.1" - "@octokit/plugin-paginate-rest" "^2.16.8" - "@octokit/plugin-rest-endpoint-methods" "^5.12.0" + "@octokit/plugin-paginate-rest" "^2.18.0" + "@octokit/plugin-rest-endpoint-methods" "^5.14.0" "@octokit/plugin-retry" "^3.0.9" "@octokit/plugin-throttling" "^3.5.1" - "@octokit/types" "^6.26.0" + "@octokit/types" "^6.35.0" oidc-token-hash@^5.0.1: version "5.0.1" From 667df77fdd2e3a11b79a0d1acd383fe3f84756ab Mon Sep 17 00:00:00 2001 From: "Carteni, Gabriele" Date: Thu, 16 Jun 2022 17:37:57 +0200 Subject: [PATCH 549/550] Add Clarivate.com as adopter Signed-off-by: Carteni, Gabriele --- ADOPTERS.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ADOPTERS.md b/ADOPTERS.md index 10b605a8d4..44e9dc9b44 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -181,5 +181,5 @@ _If you're using Backstage in your organization, please try to add your company | [Polarpoint](https://polarpoint.io/) | [Surj Bains](https://github.com/polarpoint-io) | We are using Backstage as our Developer portal as well as for hosting our DevOps portal for software catalog. | | [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. | | [Mercedes-Benz.io](https://www.mercedes-benz.io/) | [Manuel Santos](https://github.com/manusant) | At Mercedes-Benz we use it as a developer portal with software catalog, TechDocs, Scaffolding and custom plugins. It provides an overview of our tech ecosystem to our product development teams. The portal also serves as a way to foster collaboration among the numerous companies of the Mercedes-Benz Group. -| [Funding Circle](https://www.fundingcircle.com/) | [Ariel Pacciaroni](https://github.com/arielpacciaroni) | We are building the internal developer portal using Backstage project and centralizing all services information at one place. The portal helps us track down repositories ownership as well as direct access to key information on every component. - +| [Funding Circle](https://www.fundingcircle.com/) | [Ariel Pacciaroni](https://github.com/arielpacciaroni) | We are building the internal developer portal using Backstage project and centralizing all services information at one place. The portal helps us track down repositories ownership as well as direct access to key information on every component. +| [Clarivate](https://www.clarivate.com) | [Gabriele Carteni](mailto:gabriele.carteni@clarivate.com) | We are building our Developer Portal using Backstage to have a better control over our software ecosystem, integrate SDLC tools and promote best practices | From eb0b3abb641d88e263c100f67e3bf98e9749b915 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 11:09:11 +0000 Subject: [PATCH 550/550] fix(deps): update dependency react-hook-form to v7.32.2 Signed-off-by: Renovate Bot --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9c6b94a4d7..e74fe0618f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21610,9 +21610,9 @@ react-helmet@6.1.0: react-side-effect "^2.1.0" react-hook-form@^7.12.2, react-hook-form@^7.13.0: - version "7.31.3" - resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.31.3.tgz#b61bafb9a7435f91695351a7a9f714d8c4df0121" - integrity sha512-NVZdCWViIWXXXlQ3jxVQH0NuNfwPf8A/0KvuCxrM9qxtP1qYosfR2ZudarziFrVOC7eTUbWbm1T4OyYCwv9oSQ== + version "7.32.2" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.32.2.tgz#58ec2ab0239ce97969baa2faa03ced13fae913ac" + integrity sha512-F1A6n762xaRhvtQH5SkQQhMr19cCkHZYesTcKJJeNmrphiZp/cYFTIzC05FnQry0SspM54oPJ9tXFXlzya8VNQ== react-hot-loader@^4.13.0: version "4.13.0"