diff --git a/.changeset/many-jars-obey.md b/.changeset/many-jars-obey.md new file mode 100644 index 000000000..e29a6396a --- /dev/null +++ b/.changeset/many-jars-obey.md @@ -0,0 +1,5 @@ +--- +"heureka-next": minor +--- + +The app is now able to communicate with the GraphQL backend. diff --git a/.github/workflows/deploy-pr-preview.yaml b/.github/workflows/deploy-pr-preview.yaml index 2b0a95983..a35914a70 100644 --- a/.github/workflows/deploy-pr-preview.yaml +++ b/.github/workflows/deploy-pr-preview.yaml @@ -155,7 +155,7 @@ jobs: env: PACKAGE_PATH: apps/heureka-next TARGET_FOLDER: heureka_next - APP_PROPS_BASE64: ${{ secrets.HEUREKA_NEXT_APP_PROPS_BASE64 }} + APP_PROPS_BASE64: ${{ secrets.HEUREKA_APP_PROPS_BASE64 }} continue-on-error: true - name: Generate index.html for Deployed Apps diff --git a/apps/heureka-next/.env.template b/apps/heureka-next/.env.template new file mode 100644 index 000000000..fb4bb7b4a --- /dev/null +++ b/apps/heureka-next/.env.template @@ -0,0 +1,6 @@ +# +# SPDX-FileCopyrightText: 2024 SAP SE or an SAP affiliate company and Juno contributors +# SPDX-License-Identifier: Apache-2.0 +# + +API_ENDPOINT=SOME_URL diff --git a/apps/heureka-next/README.md b/apps/heureka-next/README.md index c766d74ca..3ae20a200 100644 --- a/apps/heureka-next/README.md +++ b/apps/heureka-next/README.md @@ -4,6 +4,52 @@ This app will eventually become a successor to the existing Heureka app. +## How to run locally? + +1. Go to app directory: + ```bash + cd apps/heureka-next + ``` +2. If you are running the app for the first time, follow these steps. Otherwise, skip to step 3: + 1. Create `appProps.json` and change the configurations accordingly: + ```bash + cp appProps.template.json appProps.json + ``` + 2. Create `.env` file and change configurations accordingly: + ```bash + cp .env.template .env + ``` +3. Install dependencies: + ```bash + npm i + ``` +4. Run the development server: + ```bash + npm run dev + ``` + +## How to update GraphQL types? + +1. Go to app directory: + ```bash + cd apps/heureka-next + ``` +2. Update GraphQL types from the latest GraphQL schema: + ```bash + npm run generate:types + ``` + +## How to run tests? + +1. Go to app directory: + ```bash + cd apps/heureka-next + ``` +2. Run tests: + ```bash + npm run test + ``` + ## Contributing We welcome contributions from the community. Please follow our [contribution guidelines] to contribute to this project. diff --git a/apps/heureka-next/appProps.template.json b/apps/heureka-next/appProps.template.json new file mode 100644 index 000000000..1da480a0f --- /dev/null +++ b/apps/heureka-next/appProps.template.json @@ -0,0 +1,5 @@ +{ + "apiEndpoint": "YOUR_GRAPHQL_API_ENDPOINT", + "embedded": false, + "theme": "light" +} diff --git a/apps/heureka-next/codegen.ts b/apps/heureka-next/codegen.ts new file mode 100644 index 000000000..84fcd2221 --- /dev/null +++ b/apps/heureka-next/codegen.ts @@ -0,0 +1,23 @@ +import { CodegenConfig } from "@graphql-codegen/cli" +import * as dotenv from "dotenv" + +// Load environment variables from .env file +dotenv.config() + +const config: CodegenConfig = { + schema: process.env.API_ENDPOINT, + documents: "src/**/*.graphql", + + generates: { + "src/generated/graphql.tsx": { + plugins: ["typescript", "typescript-operations", "typescript-react-apollo"], + config: { + withHooks: true, + withHOC: false, + withComponent: false, + }, + }, + }, +} + +export default config diff --git a/apps/heureka-next/index.html b/apps/heureka-next/index.html index ecbf0f5d8..d00de00ad 100644 --- a/apps/heureka-next/index.html +++ b/apps/heureka-next/index.html @@ -7,6 +7,19 @@ Heureka Next +
diff --git a/apps/heureka-next/package.json b/apps/heureka-next/package.json index c996166ca..91eedd02f 100644 --- a/apps/heureka-next/package.json +++ b/apps/heureka-next/package.json @@ -17,6 +17,7 @@ "dev": "vite", "build": "vite build", "build:static": "vite build --mode static", + "generate:types": "graphql-codegen --config codegen.ts", "serve": "vite preview", "test": "vitest run", "lint": "eslint", @@ -31,6 +32,11 @@ "react-dom": "18.3.1" }, "devDependencies": { + "@apollo/client": "^3.11.10", + "@graphql-codegen/cli": "^5.0.3", + "@graphql-codegen/typescript": "^4.1.2", + "@graphql-codegen/typescript-operations": "^4.4.0", + "@graphql-codegen/typescript-react-apollo": "^4.3.2", "@cloudoperators/juno-config": "*", "@testing-library/jest-dom": "6.6.3", "@testing-library/react": "16.2.0", diff --git a/apps/heureka-next/src/App.tsx b/apps/heureka-next/src/App.tsx index b85b74823..3966ffc38 100644 --- a/apps/heureka-next/src/App.tsx +++ b/apps/heureka-next/src/App.tsx @@ -7,16 +7,23 @@ import React from "react" import { AppShellProvider } from "@cloudoperators/juno-ui-components" import { ErrorBoundary } from "./components/ErrorBoundary" import { Shell } from "./components/Shell" +import { ApolloProvider } from "@apollo/client" +import { getClient } from "./apollo-client" export type AppProps = { theme?: "theme-dark" | "theme-light" + apiEndpoint?: string embedded?: boolean } -export const App = (props: AppProps) => ( - - - - - +const App = (props: AppProps) => ( + + + + + + + ) + +export default App diff --git a/apps/heureka-next/src/apollo-client.ts b/apps/heureka-next/src/apollo-client.ts new file mode 100644 index 000000000..415948fb9 --- /dev/null +++ b/apps/heureka-next/src/apollo-client.ts @@ -0,0 +1,15 @@ +import { ApolloClient, InMemoryCache } from "@apollo/client" + +type ClientOptions = { + uri?: string +} + +export const getClient = ({ uri }: ClientOptions) => { + if (typeof uri === "undefined") { + throw new Error("No API endpoint provided.") + } + return new ApolloClient({ + uri, + cache: new InMemoryCache(), + }) +} diff --git a/apps/heureka-next/src/components/Services/Services.test.tsx b/apps/heureka-next/src/components/Services/Services.test.tsx index dc443c2fb..56bd1f50a 100644 --- a/apps/heureka-next/src/components/Services/Services.test.tsx +++ b/apps/heureka-next/src/components/Services/Services.test.tsx @@ -5,11 +5,42 @@ import React from "react" import { render, screen } from "@testing-library/react" +import { MockedProvider } from "@apollo/client/testing" import { Services } from "./Services" +import { GetServicesDocument } from "../../generated/graphql" + +const mocks = [ + { + request: { + query: GetServicesDocument, + }, + result: { + data: { + Services: { + edges: [ + { + node: { + id: "some-id", + ccrn: "some-ccrn", + __typename: "Service", + }, + __typename: "ServiceEdge", + }, + ], + __typename: "ServiceConnection", + }, + }, + }, + }, +] describe("Services", () => { - it("should render correctly", () => { - render() - expect(screen.getByText("render services here...")).toBeInTheDocument() + it("should render correctly", async () => { + render( + + + + ) + expect(await screen.findByText("some-ccrn")).toBeInTheDocument() }) }) diff --git a/apps/heureka-next/src/components/Services/Services.tsx b/apps/heureka-next/src/components/Services/Services.tsx index 76a9d9d55..4e2d4577f 100644 --- a/apps/heureka-next/src/components/Services/Services.tsx +++ b/apps/heureka-next/src/components/Services/Services.tsx @@ -4,5 +4,12 @@ */ import React from "react" +import { useGetServicesQuery } from "../../generated/graphql" -export const Services = () =>
render services here...
+export const Services = () => { + const { data, loading, error } = useGetServicesQuery() + if (loading) return

Loading...

+ if (error) return

Error

+ + return
{data?.Services?.edges?.map((service) =>
{service?.node.ccrn}
)}
+} diff --git a/apps/heureka-next/src/components/Shell/Shell.test.tsx b/apps/heureka-next/src/components/Shell/Shell.test.tsx index 16574646f..094431628 100644 --- a/apps/heureka-next/src/components/Shell/Shell.test.tsx +++ b/apps/heureka-next/src/components/Shell/Shell.test.tsx @@ -6,15 +6,46 @@ import React from "react" import { render, screen } from "@testing-library/react" import userEvent from "@testing-library/user-event" +import { MockedProvider } from "@apollo/client/testing" import { Shell } from "./Shell" +import { GetServicesDocument } from "../../generated/graphql" + +const mocks = [ + { + request: { + query: GetServicesDocument, + }, + result: { + data: { + Services: { + edges: [ + { + node: { + id: "some-id", + ccrn: "some-ccrn", + __typename: "Service", + }, + __typename: "ServiceEdge", + }, + ], + __typename: "ServiceConnection", + }, + }, + }, + }, +] const renderShell = () => ({ user: userEvent.setup(), - ...render(), + ...render( + + + + ), }) describe("Shell", () => { - it("should render correctly", () => { + it("should render correctly", async () => { renderShell() // assert that page header is rendered expect(screen.getByText("Heureka")).toBeInTheDocument() @@ -22,17 +53,13 @@ describe("Shell", () => { expect(screen.getByText("Services")).toBeInTheDocument() expect(screen.getByText("Vulnerabilities")).toBeInTheDocument() expect(screen.getByText("Images")).toBeInTheDocument() - }) - - it("should render services view by default", () => { - renderShell() - expect(screen.getByText("render services here...")).toBeInTheDocument() + // assert that the default view 'Services' is rendered + expect(await screen.findByText("some-ccrn")).toBeInTheDocument() }) it("should allow switching to other view", async () => { const { user } = renderShell() await user.click(screen.getByText("Vulnerabilities")) expect(screen.getByText("render vulnerabilities here...")).toBeInTheDocument() - expect(screen.queryByText("render services here...")).not.toBeInTheDocument() }) }) diff --git a/apps/heureka-next/src/components/Shell/Shell.tsx b/apps/heureka-next/src/components/Shell/Shell.tsx index 936bcad06..136fa2063 100644 --- a/apps/heureka-next/src/components/Shell/Shell.tsx +++ b/apps/heureka-next/src/components/Shell/Shell.tsx @@ -6,14 +6,34 @@ import React, { useState, ReactNode } from "react" import { AppShell, Container, PageHeader } from "@cloudoperators/juno-ui-components" import { MessagesProvider, Messages } from "@cloudoperators/juno-messages-provider" -import { Navigation } from "../Navigation" -import { ShellContent } from "./ShellContent" -import { AppProps } from "../../App" -import { SERVICES } from "../../constants" import styles from "../../styles.scss?inline" +import { Navigation } from "../Navigation" +import { IMAGES, SERVICES, VULNERABILITIES } from "../../constants" +import { Services } from "../Services" +import { Vulnerabilities } from "../Vulnerabilities" +import { Images } from "../Images" + +const getViewComponent = (selectedView: ReactNode) => { + switch (selectedView) { + case SERVICES: + return Services + case VULNERABILITIES: + return Vulnerabilities + case IMAGES: + return Images + default: + return () => null + } +} + +type ShellProps = { + embedded?: boolean + defaultSelectedView?: ReactNode +} -export const Shell = ({ embedded }: AppProps) => { - const [selectedView, setSelectedView] = useState(SERVICES) +export const Shell = ({ embedded, defaultSelectedView = SERVICES }: ShellProps) => { + const [selectedView, setSelectedView] = useState(defaultSelectedView) + const SelectedViewComponent = getViewComponent(selectedView) return ( { - + diff --git a/apps/heureka-next/src/components/Shell/ShellContent/ShellContent.tsx b/apps/heureka-next/src/components/Shell/ShellContent/ShellContent.tsx deleted file mode 100644 index adfd67108..000000000 --- a/apps/heureka-next/src/components/Shell/ShellContent/ShellContent.tsx +++ /dev/null @@ -1,23 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2024 SAP SE or an SAP affiliate company and Juno contributors - * SPDX-License-Identifier: Apache-2.0 - */ - -import React, { ReactNode } from "react" -import { SERVICES, IMAGES, VULNERABILITIES } from "../../../constants" -import { Services } from "../../Services" -import { Vulnerabilities } from "../../Vulnerabilities" -import { Images } from "../../Images" - -export const ShellContent = ({ selectedView }: { selectedView: ReactNode }) => { - switch (selectedView) { - case SERVICES: - return - case VULNERABILITIES: - return - case IMAGES: - return - default: - return null - } -} diff --git a/apps/heureka-next/src/components/Shell/ShellContent/index.ts b/apps/heureka-next/src/components/Shell/ShellContent/index.ts deleted file mode 100644 index 4f4cc6694..000000000 --- a/apps/heureka-next/src/components/Shell/ShellContent/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2024 SAP SE or an SAP affiliate company and Juno contributors - * SPDX-License-Identifier: Apache-2.0 - */ - -export { ShellContent } from "./ShellContent" diff --git a/apps/heureka-next/src/generated/graphql.tsx b/apps/heureka-next/src/generated/graphql.tsx new file mode 100644 index 000000000..01a5e5dc5 --- /dev/null +++ b/apps/heureka-next/src/generated/graphql.tsx @@ -0,0 +1,1414 @@ +import { gql } from "@apollo/client" +import * as Apollo from "@apollo/client" +export type Maybe = T | null +export type InputMaybe = Maybe +export type Exact = { [K in keyof T]: T[K] } +export type MakeOptional = Omit & { [SubKey in K]?: Maybe } +export type MakeMaybe = Omit & { [SubKey in K]: Maybe } +export type MakeEmpty = { [_ in K]?: never } +export type Incremental = T | { [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never } +const defaultOptions = {} as const +/** All built-in and custom scalars, mapped to their actual values */ +export type Scalars = { + ID: { input: string; output: string } + String: { input: string; output: string } + Boolean: { input: boolean; output: boolean } + Int: { input: number; output: number } + Float: { input: number; output: number } + DateTime: { input: any; output: any } +} + +export type Activity = Node & { + __typename?: "Activity" + evidences?: Maybe + id: Scalars["ID"]["output"] + issueMatchChanges?: Maybe + issues?: Maybe + metadata?: Maybe + services?: Maybe + status?: Maybe +} + +export type ActivityEvidencesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ActivityIssueMatchChangesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ActivityIssuesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ActivityServicesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ActivityConnection = Connection & { + __typename?: "ActivityConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type ActivityEdge = Edge & { + __typename?: "ActivityEdge" + cursor?: Maybe + metadata?: Maybe + node: Activity +} + +export type ActivityFilter = { + serviceCcrn?: InputMaybe>> + status?: InputMaybe>> +} + +export type ActivityInput = { + status?: InputMaybe +} + +export enum ActivityStatusValues { + Closed = "closed", + InProgress = "in_progress", + Open = "open", +} + +export type Cvss = { + __typename?: "CVSS" + base?: Maybe + environmental?: Maybe + temporal?: Maybe + vector?: Maybe +} + +export type CvssBase = { + __typename?: "CVSSBase" + attackComplexity?: Maybe + attackVector?: Maybe + availabilityImpact?: Maybe + confidentialityImpact?: Maybe + integrityImpact?: Maybe + privilegesRequired?: Maybe + scope?: Maybe + score?: Maybe + userInteraction?: Maybe +} + +export type CvssEnvironmental = { + __typename?: "CVSSEnvironmental" + availabilityRequirement?: Maybe + confidentialityRequirement?: Maybe + integrityRequirement?: Maybe + modifiedAttackComplexity?: Maybe + modifiedAttackVector?: Maybe + modifiedAvailabilityImpact?: Maybe + modifiedConfidentialityImpact?: Maybe + modifiedIntegrityImpact?: Maybe + modifiedPrivilegesRequired?: Maybe + modifiedScope?: Maybe + modifiedUserInteraction?: Maybe + score?: Maybe +} + +export type CvssParameter = { + __typename?: "CVSSParameter" + name?: Maybe + value?: Maybe +} + +export type CvssTemporal = { + __typename?: "CVSSTemporal" + exploitCodeMaturity?: Maybe + remediationLevel?: Maybe + reportConfidence?: Maybe + score?: Maybe +} + +export type Component = Node & { + __typename?: "Component" + ccrn?: Maybe + componentVersions?: Maybe + id: Scalars["ID"]["output"] + metadata?: Maybe + type?: Maybe +} + +export type ComponentComponentVersionsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ComponentConnection = Connection & { + __typename?: "ComponentConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type ComponentEdge = Edge & { + __typename?: "ComponentEdge" + cursor?: Maybe + node: Component +} + +export type ComponentFilter = { + componentCcrn?: InputMaybe>> +} + +export type ComponentFilterValue = { + __typename?: "ComponentFilterValue" + componentCcrn?: Maybe +} + +export type ComponentFilterValueComponentCcrnArgs = { + filter?: InputMaybe +} + +export type ComponentInput = { + ccrn?: InputMaybe + type?: InputMaybe +} + +export type ComponentInstance = Node & { + __typename?: "ComponentInstance" + ccrn?: Maybe + componentVersion?: Maybe + componentVersionId?: Maybe + count?: Maybe + id: Scalars["ID"]["output"] + issueMatches?: Maybe + metadata?: Maybe + service?: Maybe + serviceId?: Maybe +} + +export type ComponentInstanceIssueMatchesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ComponentInstanceConnection = Connection & { + __typename?: "ComponentInstanceConnection" + edges: Array> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type ComponentInstanceEdge = Edge & { + __typename?: "ComponentInstanceEdge" + cursor?: Maybe + node: ComponentInstance +} + +export type ComponentInstanceFilter = { + ccrn?: InputMaybe>> + search?: InputMaybe>> + serviceCcrn?: InputMaybe>> + supportGroup?: InputMaybe>> +} + +export type ComponentInstanceFilterValue = { + __typename?: "ComponentInstanceFilterValue" + ccrn?: Maybe + serviceCcrn?: Maybe + supportGroupCcrn?: Maybe +} + +export type ComponentInstanceFilterValueCcrnArgs = { + filter?: InputMaybe +} + +export type ComponentInstanceFilterValueServiceCcrnArgs = { + filter?: InputMaybe +} + +export type ComponentInstanceFilterValueSupportGroupCcrnArgs = { + filter?: InputMaybe +} + +export type ComponentInstanceInput = { + ccrn?: InputMaybe + componentVersionId?: InputMaybe + count?: InputMaybe + serviceId?: InputMaybe +} + +export enum ComponentTypeValues { + ContainerImage = "containerImage", + Repository = "repository", + VirtualMachineImage = "virtualMachineImage", +} + +export type ComponentVersion = Node & { + __typename?: "ComponentVersion" + component?: Maybe + componentId?: Maybe + componentInstances?: Maybe + id: Scalars["ID"]["output"] + issues?: Maybe + metadata?: Maybe + version?: Maybe +} + +export type ComponentVersionComponentInstancesArgs = { + after?: InputMaybe + first?: InputMaybe +} + +export type ComponentVersionIssuesArgs = { + after?: InputMaybe + first?: InputMaybe +} + +export type ComponentVersionConnection = Connection & { + __typename?: "ComponentVersionConnection" + edges: Array> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type ComponentVersionEdge = Edge & { + __typename?: "ComponentVersionEdge" + cursor?: Maybe + node: ComponentVersion +} + +export type ComponentVersionFilter = { + componentCcrn?: InputMaybe>> + componentId?: InputMaybe>> + issueId?: InputMaybe>> + version?: InputMaybe>> +} + +export type ComponentVersionInput = { + componentId?: InputMaybe + version?: InputMaybe +} + +export type Connection = { + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type DateTimeFilter = { + after?: InputMaybe + before?: InputMaybe +} + +export type Edge = { + cursor?: Maybe + node: Node +} + +export type Evidence = Node & { + __typename?: "Evidence" + activity?: Maybe + activityId?: Maybe + author?: Maybe + authorId?: Maybe + description?: Maybe + id: Scalars["ID"]["output"] + issueMatches?: Maybe + metadata?: Maybe + raaEnd?: Maybe + type?: Maybe + vector?: Maybe +} + +export type EvidenceIssueMatchesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type EvidenceConnection = Connection & { + __typename?: "EvidenceConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type EvidenceEdge = Edge & { + __typename?: "EvidenceEdge" + cursor?: Maybe + node: Evidence +} + +export type EvidenceFilter = { + placeholder?: InputMaybe>> +} + +export type EvidenceInput = { + activityId?: InputMaybe + authorId?: InputMaybe + description?: InputMaybe + raaEnd?: InputMaybe + severity?: InputMaybe + type?: InputMaybe +} + +export type FilterItem = { + __typename?: "FilterItem" + displayName?: Maybe + filterName?: Maybe + values?: Maybe>> +} + +export type Issue = Node & { + __typename?: "Issue" + activities?: Maybe + componentVersions?: Maybe + description?: Maybe + id: Scalars["ID"]["output"] + issueMatches?: Maybe + issueVariants?: Maybe + lastModified?: Maybe + metadata?: Maybe + objectMetadata?: Maybe + primaryName?: Maybe + type?: Maybe +} + +export type IssueActivitiesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueComponentVersionsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueIssueMatchesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueIssueVariantsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueConnection = Connection & { + __typename?: "IssueConnection" + edges: Array> + pageInfo?: Maybe + policyViolationCount: Scalars["Int"]["output"] + securityEventCount: Scalars["Int"]["output"] + totalCount: Scalars["Int"]["output"] + vulnerabilityCount: Scalars["Int"]["output"] +} + +export type IssueEdge = Edge & { + __typename?: "IssueEdge" + cursor?: Maybe + node: Issue +} + +export type IssueFilter = { + affectedService?: InputMaybe>> + componentVersionId?: InputMaybe>> + issueMatchStatus?: InputMaybe>> + issueType?: InputMaybe>> + primaryName?: InputMaybe>> + search?: InputMaybe>> +} + +export type IssueInput = { + description?: InputMaybe + primaryName?: InputMaybe + type?: InputMaybe +} + +export type IssueMatch = Node & { + __typename?: "IssueMatch" + componentInstance: ComponentInstance + componentInstanceId?: Maybe + discoveryDate?: Maybe + effectiveIssueVariants?: Maybe + evidences?: Maybe + id: Scalars["ID"]["output"] + issue: Issue + issueId?: Maybe + issueMatchChanges?: Maybe + metadata?: Maybe + remediationDate?: Maybe + severity?: Maybe + status?: Maybe + targetRemediationDate?: Maybe + user?: Maybe + userId?: Maybe +} + +export type IssueMatchEffectiveIssueVariantsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueMatchEvidencesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueMatchIssueMatchChangesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueMatchChange = Node & { + __typename?: "IssueMatchChange" + action?: Maybe + activity: Activity + activityId?: Maybe + id: Scalars["ID"]["output"] + issueMatch: IssueMatch + issueMatchId?: Maybe + metadata?: Maybe +} + +export enum IssueMatchChangeActions { + Add = "add", + Remove = "remove", +} + +export type IssueMatchChangeConnection = Connection & { + __typename?: "IssueMatchChangeConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type IssueMatchChangeEdge = Edge & { + __typename?: "IssueMatchChangeEdge" + cursor?: Maybe + node: IssueMatchChange +} + +export type IssueMatchChangeFilter = { + action?: InputMaybe>> +} + +export type IssueMatchChangeInput = { + action?: InputMaybe + activityId?: InputMaybe + issueMatchId?: InputMaybe +} + +export type IssueMatchConnection = Connection & { + __typename?: "IssueMatchConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type IssueMatchEdge = Edge & { + __typename?: "IssueMatchEdge" + cursor?: Maybe + node: IssueMatch +} + +export type IssueMatchFilter = { + affectedService?: InputMaybe>> + componentCcrn?: InputMaybe>> + id?: InputMaybe>> + issueType?: InputMaybe>> + primaryName?: InputMaybe>> + search?: InputMaybe>> + severity?: InputMaybe>> + status?: InputMaybe>> + supportGroupCcrn?: InputMaybe>> +} + +export type IssueMatchFilterValue = { + __typename?: "IssueMatchFilterValue" + affectedService?: Maybe + componentCcrn?: Maybe + issueType?: Maybe + primaryName?: Maybe + severity?: Maybe + status?: Maybe + supportGroupCcrn?: Maybe +} + +export type IssueMatchFilterValueAffectedServiceArgs = { + filter?: InputMaybe +} + +export type IssueMatchFilterValueComponentCcrnArgs = { + filter?: InputMaybe +} + +export type IssueMatchFilterValuePrimaryNameArgs = { + filter?: InputMaybe +} + +export type IssueMatchFilterValueSupportGroupCcrnArgs = { + filter?: InputMaybe +} + +export type IssueMatchInput = { + componentInstanceId?: InputMaybe + discoveryDate?: InputMaybe + issueId?: InputMaybe + remediationDate?: InputMaybe + status?: InputMaybe + targetRemediationDate?: InputMaybe + userId?: InputMaybe +} + +export enum IssueMatchStatusValues { + FalsePositive = "false_positive", + Mitigated = "mitigated", + New = "new", + RiskAccepted = "risk_accepted", +} + +export type IssueMetadata = { + __typename?: "IssueMetadata" + activityCount: Scalars["Int"]["output"] + componentInstanceCount: Scalars["Int"]["output"] + componentVersionCount: Scalars["Int"]["output"] + earliestDiscoveryDate: Scalars["DateTime"]["output"] + earliestTargetRemediationDate: Scalars["DateTime"]["output"] + issueMatchCount: Scalars["Int"]["output"] + serviceCount: Scalars["Int"]["output"] +} + +export type IssueRepository = Node & { + __typename?: "IssueRepository" + id: Scalars["ID"]["output"] + issueVariants?: Maybe + metadata?: Maybe + name?: Maybe + services?: Maybe + url?: Maybe +} + +export type IssueRepositoryIssueVariantsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueRepositoryServicesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type IssueRepositoryConnection = Connection & { + __typename?: "IssueRepositoryConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type IssueRepositoryEdge = Edge & { + __typename?: "IssueRepositoryEdge" + cursor?: Maybe + metadata?: Maybe + node: IssueRepository + priority?: Maybe +} + +export type IssueRepositoryFilter = { + name?: InputMaybe>> + serviceCcrn?: InputMaybe>> + serviceId?: InputMaybe>> +} + +export type IssueRepositoryInput = { + name?: InputMaybe + url?: InputMaybe +} + +export enum IssueStatusValues { + Open = "open", + Overdue = "overdue", + Remediated = "remediated", + Unaffected = "unaffected", +} + +export enum IssueTypes { + PolicyViolation = "PolicyViolation", + SecurityEvent = "SecurityEvent", + Vulnerability = "Vulnerability", +} + +export type IssueVariant = Node & { + __typename?: "IssueVariant" + description?: Maybe + id: Scalars["ID"]["output"] + issue?: Maybe + issueId?: Maybe + issueRepository?: Maybe + issueRepositoryId?: Maybe + metadata?: Maybe + secondaryName?: Maybe + severity?: Maybe +} + +export type IssueVariantConnection = Connection & { + __typename?: "IssueVariantConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type IssueVariantEdge = Edge & { + __typename?: "IssueVariantEdge" + cursor?: Maybe + metadata?: Maybe + node: IssueVariant +} + +export type IssueVariantFilter = { + secondaryName?: InputMaybe>> +} + +export type IssueVariantInput = { + description?: InputMaybe + issueId?: InputMaybe + issueRepositoryId?: InputMaybe + secondaryName?: InputMaybe + severity?: InputMaybe +} + +export type Metadata = { + __typename?: "Metadata" + created_at?: Maybe + created_by?: Maybe + deleted_at?: Maybe + updated_at?: Maybe + updated_by?: Maybe +} + +export type Mutation = { + __typename?: "Mutation" + addComponentVersionToIssue: Issue + addEvidenceToIssueMatch: IssueMatch + addIssueRepositoryToService: Service + addIssueToActivity: Activity + addOwnerToService: Service + addServiceToActivity: Activity + addServiceToSupportGroup: SupportGroup + addUserToSupportGroup: SupportGroup + createActivity: Activity + createComponent: Component + createComponentInstance: ComponentInstance + createComponentVersion: ComponentVersion + createEvidence: Evidence + createIssue: Issue + createIssueMatch: IssueMatch + createIssueMatchChange: IssueMatchChange + createIssueRepository: IssueRepository + createIssueVariant: IssueVariant + createService: Service + createSupportGroup: SupportGroup + createUser: User + deleteActivity: Scalars["String"]["output"] + deleteComponent: Scalars["String"]["output"] + deleteComponentInstance: Scalars["String"]["output"] + deleteComponentVersion: Scalars["String"]["output"] + deleteEvidence: Scalars["String"]["output"] + deleteIssue: Scalars["String"]["output"] + deleteIssueMatch: Scalars["String"]["output"] + deleteIssueMatchChange: Scalars["String"]["output"] + deleteIssueRepository: Scalars["String"]["output"] + deleteIssueVariant: Scalars["String"]["output"] + deleteService: Scalars["String"]["output"] + deleteSupportGroup: Scalars["String"]["output"] + deleteUser: Scalars["String"]["output"] + removeComponentVersionFromIssue: Issue + removeEvidenceFromIssueMatch: IssueMatch + removeIssueFromActivity: Activity + removeIssueRepositoryFromService: Service + removeOwnerFromService: Service + removeServiceFromActivity: Activity + removeServiceFromSupportGroup: SupportGroup + removeUserFromSupportGroup: SupportGroup + updateActivity: Activity + updateComponent: Component + updateComponentInstance: ComponentInstance + updateComponentVersion: ComponentVersion + updateEvidence: Evidence + updateIssue: Issue + updateIssueMatch: IssueMatch + updateIssueMatchChange: IssueMatchChange + updateIssueRepository: IssueRepository + updateIssueVariant: IssueVariant + updateService: Service + updateSupportGroup: SupportGroup + updateUser: User +} + +export type MutationAddComponentVersionToIssueArgs = { + componentVersionId: Scalars["ID"]["input"] + issueId: Scalars["ID"]["input"] +} + +export type MutationAddEvidenceToIssueMatchArgs = { + evidenceId: Scalars["ID"]["input"] + issueMatchId: Scalars["ID"]["input"] +} + +export type MutationAddIssueRepositoryToServiceArgs = { + issueRepositoryId: Scalars["ID"]["input"] + priority: Scalars["Int"]["input"] + serviceId: Scalars["ID"]["input"] +} + +export type MutationAddIssueToActivityArgs = { + activityId: Scalars["ID"]["input"] + issueId: Scalars["ID"]["input"] +} + +export type MutationAddOwnerToServiceArgs = { + serviceId: Scalars["ID"]["input"] + userId: Scalars["ID"]["input"] +} + +export type MutationAddServiceToActivityArgs = { + activityId: Scalars["ID"]["input"] + serviceId: Scalars["ID"]["input"] +} + +export type MutationAddServiceToSupportGroupArgs = { + serviceId: Scalars["ID"]["input"] + supportGroupId: Scalars["ID"]["input"] +} + +export type MutationAddUserToSupportGroupArgs = { + supportGroupId: Scalars["ID"]["input"] + userId: Scalars["ID"]["input"] +} + +export type MutationCreateActivityArgs = { + input: ActivityInput +} + +export type MutationCreateComponentArgs = { + input: ComponentInput +} + +export type MutationCreateComponentInstanceArgs = { + input: ComponentInstanceInput +} + +export type MutationCreateComponentVersionArgs = { + input: ComponentVersionInput +} + +export type MutationCreateEvidenceArgs = { + input: EvidenceInput +} + +export type MutationCreateIssueArgs = { + input: IssueInput +} + +export type MutationCreateIssueMatchArgs = { + input: IssueMatchInput +} + +export type MutationCreateIssueMatchChangeArgs = { + input: IssueMatchChangeInput +} + +export type MutationCreateIssueRepositoryArgs = { + input: IssueRepositoryInput +} + +export type MutationCreateIssueVariantArgs = { + input: IssueVariantInput +} + +export type MutationCreateServiceArgs = { + input: ServiceInput +} + +export type MutationCreateSupportGroupArgs = { + input: SupportGroupInput +} + +export type MutationCreateUserArgs = { + input: UserInput +} + +export type MutationDeleteActivityArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteComponentArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteComponentInstanceArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteComponentVersionArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteEvidenceArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteIssueArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteIssueMatchArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteIssueMatchChangeArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteIssueRepositoryArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteIssueVariantArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteServiceArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteSupportGroupArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationDeleteUserArgs = { + id: Scalars["ID"]["input"] +} + +export type MutationRemoveComponentVersionFromIssueArgs = { + componentVersionId: Scalars["ID"]["input"] + issueId: Scalars["ID"]["input"] +} + +export type MutationRemoveEvidenceFromIssueMatchArgs = { + evidenceId: Scalars["ID"]["input"] + issueMatchId: Scalars["ID"]["input"] +} + +export type MutationRemoveIssueFromActivityArgs = { + activityId: Scalars["ID"]["input"] + issueId: Scalars["ID"]["input"] +} + +export type MutationRemoveIssueRepositoryFromServiceArgs = { + issueRepositoryId: Scalars["ID"]["input"] + serviceId: Scalars["ID"]["input"] +} + +export type MutationRemoveOwnerFromServiceArgs = { + serviceId: Scalars["ID"]["input"] + userId: Scalars["ID"]["input"] +} + +export type MutationRemoveServiceFromActivityArgs = { + activityId: Scalars["ID"]["input"] + serviceId: Scalars["ID"]["input"] +} + +export type MutationRemoveServiceFromSupportGroupArgs = { + serviceId: Scalars["ID"]["input"] + supportGroupId: Scalars["ID"]["input"] +} + +export type MutationRemoveUserFromSupportGroupArgs = { + supportGroupId: Scalars["ID"]["input"] + userId: Scalars["ID"]["input"] +} + +export type MutationUpdateActivityArgs = { + id: Scalars["ID"]["input"] + input: ActivityInput +} + +export type MutationUpdateComponentArgs = { + id: Scalars["ID"]["input"] + input: ComponentInput +} + +export type MutationUpdateComponentInstanceArgs = { + id: Scalars["ID"]["input"] + input: ComponentInstanceInput +} + +export type MutationUpdateComponentVersionArgs = { + id: Scalars["ID"]["input"] + input: ComponentVersionInput +} + +export type MutationUpdateEvidenceArgs = { + id: Scalars["ID"]["input"] + input: EvidenceInput +} + +export type MutationUpdateIssueArgs = { + id: Scalars["ID"]["input"] + input: IssueInput +} + +export type MutationUpdateIssueMatchArgs = { + id: Scalars["ID"]["input"] + input: IssueMatchInput +} + +export type MutationUpdateIssueMatchChangeArgs = { + id: Scalars["ID"]["input"] + input: IssueMatchChangeInput +} + +export type MutationUpdateIssueRepositoryArgs = { + id: Scalars["ID"]["input"] + input: IssueRepositoryInput +} + +export type MutationUpdateIssueVariantArgs = { + id: Scalars["ID"]["input"] + input: IssueVariantInput +} + +export type MutationUpdateServiceArgs = { + id: Scalars["ID"]["input"] + input: ServiceInput +} + +export type MutationUpdateSupportGroupArgs = { + id: Scalars["ID"]["input"] + input: SupportGroupInput +} + +export type MutationUpdateUserArgs = { + id: Scalars["ID"]["input"] + input: UserInput +} + +export type Node = { + id: Scalars["ID"]["output"] +} + +export type Page = { + __typename?: "Page" + after?: Maybe + isCurrent?: Maybe + pageCount?: Maybe + pageNumber?: Maybe +} + +export type PageInfo = { + __typename?: "PageInfo" + hasNextPage?: Maybe + hasPreviousPage?: Maybe + isValidPage?: Maybe + nextPageAfter?: Maybe + pageNumber?: Maybe + pages?: Maybe>> +} + +export type Query = { + __typename?: "Query" + Activities?: Maybe + ComponentFilterValues?: Maybe + ComponentInstanceFilterValues?: Maybe + ComponentInstances?: Maybe + ComponentVersions?: Maybe + Components?: Maybe + Evidences?: Maybe + IssueMatchChanges?: Maybe + IssueMatchFilterValues?: Maybe + IssueMatches?: Maybe + IssueRepositories?: Maybe + IssueVariants?: Maybe + Issues?: Maybe + ServiceFilterValues?: Maybe + Services?: Maybe + SupportGroups?: Maybe + Users?: Maybe +} + +export type QueryActivitiesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryComponentInstancesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryComponentVersionsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryComponentsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryEvidencesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryIssueMatchChangesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryIssueMatchesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryIssueRepositoriesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryIssueVariantsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryIssuesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryServicesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QuerySupportGroupsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type QueryUsersArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type Service = Node & { + __typename?: "Service" + activities?: Maybe + ccrn?: Maybe + componentInstances?: Maybe + id: Scalars["ID"]["output"] + issueRepositories?: Maybe + metadata?: Maybe + objectMetadata?: Maybe + owners?: Maybe + supportGroups?: Maybe +} + +export type ServiceActivitiesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ServiceComponentInstancesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ServiceIssueRepositoriesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ServiceOwnersArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ServiceSupportGroupsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type ServiceConnection = Connection & { + __typename?: "ServiceConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type ServiceEdge = Edge & { + __typename?: "ServiceEdge" + cursor?: Maybe + node: Service + priority?: Maybe +} + +export type ServiceFilter = { + search?: InputMaybe>> + serviceCcrn?: InputMaybe>> + supportGroupCcrn?: InputMaybe>> + type?: InputMaybe>> + uniqueUserId?: InputMaybe>> + userName?: InputMaybe>> +} + +export type ServiceFilterValue = { + __typename?: "ServiceFilterValue" + serviceCcrn?: Maybe + supportGroupCcrn?: Maybe + uniqueUserId?: Maybe + userName?: Maybe +} + +export type ServiceFilterValueServiceCcrnArgs = { + filter?: InputMaybe +} + +export type ServiceFilterValueSupportGroupCcrnArgs = { + filter?: InputMaybe +} + +export type ServiceFilterValueUniqueUserIdArgs = { + filter?: InputMaybe +} + +export type ServiceFilterValueUserNameArgs = { + filter?: InputMaybe +} + +export type ServiceInput = { + ccrn?: InputMaybe +} + +export type ServiceMetadata = { + __typename?: "ServiceMetadata" + componentInstanceCount: Scalars["Int"]["output"] + issueMatchCount: Scalars["Int"]["output"] +} + +export type Severity = { + __typename?: "Severity" + cvss?: Maybe + score?: Maybe + value?: Maybe +} + +export type SeverityInput = { + rating?: InputMaybe + vector?: InputMaybe +} + +export enum SeverityValues { + Critical = "Critical", + High = "High", + Low = "Low", + Medium = "Medium", + None = "None", +} + +export type SupportGroup = Node & { + __typename?: "SupportGroup" + ccrn?: Maybe + id: Scalars["ID"]["output"] + metadata?: Maybe + services?: Maybe + users?: Maybe +} + +export type SupportGroupServicesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type SupportGroupUsersArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type SupportGroupConnection = Connection & { + __typename?: "SupportGroupConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type SupportGroupEdge = Edge & { + __typename?: "SupportGroupEdge" + cursor?: Maybe + node: SupportGroup +} + +export type SupportGroupFilter = { + supportGroupCcrn?: InputMaybe>> + userIds?: InputMaybe>> +} + +export type SupportGroupInput = { + ccrn?: InputMaybe +} + +export type User = Node & { + __typename?: "User" + id: Scalars["ID"]["output"] + metadata?: Maybe + name?: Maybe + services?: Maybe + supportGroups?: Maybe + type: Scalars["Int"]["output"] + uniqueUserId?: Maybe +} + +export type UserServicesArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type UserSupportGroupsArgs = { + after?: InputMaybe + filter?: InputMaybe + first?: InputMaybe +} + +export type UserConnection = Connection & { + __typename?: "UserConnection" + edges?: Maybe>> + pageInfo?: Maybe + totalCount: Scalars["Int"]["output"] +} + +export type UserEdge = Edge & { + __typename?: "UserEdge" + cursor?: Maybe + node: User +} + +export type UserFilter = { + supportGroupIds?: InputMaybe>> + uniqueUserId?: InputMaybe>> + userName?: InputMaybe>> +} + +export type UserInput = { + name?: InputMaybe + type?: InputMaybe + uniqueUserId?: InputMaybe +} + +export type GetServicesQueryVariables = Exact<{ + filter?: InputMaybe + first?: InputMaybe + after?: InputMaybe +}> + +export type GetServicesQuery = { + __typename?: "Query" + Services?: { + __typename?: "ServiceConnection" + edges?: Array<{ + __typename?: "ServiceEdge" + node: { __typename?: "Service"; id: string; ccrn?: string | null } + } | null> | null + } | null +} + +export const GetServicesDocument = gql` + query GetServices($filter: ServiceFilter, $first: Int, $after: String) { + Services(filter: $filter, first: $first, after: $after) { + edges { + node { + id + ccrn + } + } + } + } +` + +/** + * __useGetServicesQuery__ + * + * To run a query within a React component, call `useGetServicesQuery` and pass it any options that fit your needs. + * When your component renders, `useGetServicesQuery` returns an object from Apollo Client that contains loading, error, and data properties + * you can use to render your UI. + * + * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options; + * + * @example + * const { data, loading, error } = useGetServicesQuery({ + * variables: { + * filter: // value for 'filter' + * first: // value for 'first' + * after: // value for 'after' + * }, + * }); + */ +export function useGetServicesQuery( + baseOptions?: Apollo.QueryHookOptions +) { + const options = { ...defaultOptions, ...baseOptions } + return Apollo.useQuery(GetServicesDocument, options) +} +export function useGetServicesLazyQuery( + baseOptions?: Apollo.LazyQueryHookOptions +) { + const options = { ...defaultOptions, ...baseOptions } + return Apollo.useLazyQuery(GetServicesDocument, options) +} +export function useGetServicesSuspenseQuery( + baseOptions?: Apollo.SkipToken | Apollo.SuspenseQueryHookOptions +) { + const options = baseOptions === Apollo.skipToken ? baseOptions : { ...defaultOptions, ...baseOptions } + return Apollo.useSuspenseQuery(GetServicesDocument, options) +} +export type GetServicesQueryHookResult = ReturnType +export type GetServicesLazyQueryHookResult = ReturnType +export type GetServicesSuspenseQueryHookResult = ReturnType +export type GetServicesQueryResult = Apollo.QueryResult diff --git a/apps/heureka-next/src/graphql/Services/getServices.graphql b/apps/heureka-next/src/graphql/Services/getServices.graphql new file mode 100644 index 000000000..8dd0e7114 --- /dev/null +++ b/apps/heureka-next/src/graphql/Services/getServices.graphql @@ -0,0 +1,10 @@ +query GetServices($filter: ServiceFilter, $first: Int, $after: String) { + Services(filter: $filter, first: $first, after: $after) { + edges { + node { + id + ccrn + } + } + } +} diff --git a/apps/heureka-next/src/index.tsx b/apps/heureka-next/src/index.tsx index 99a0665ca..5c0f541fd 100644 --- a/apps/heureka-next/src/index.tsx +++ b/apps/heureka-next/src/index.tsx @@ -1,10 +1,21 @@ +/* + * SPDX-FileCopyrightText: 2024 SAP SE or an SAP affiliate company and Greenhouse contributors + * SPDX-License-Identifier: Apache-2.0 + */ + import React from "react" -import { createRoot } from "react-dom/client" +import { createRoot, Root } from "react-dom/client" import "tailwindcss/tailwind.css" import "./index.scss" -import { App } from "./App" +import { AppProps } from "./App" + +let root: Root -const container: HTMLElement = document.getElementById("root")! -const root = createRoot(container) +export const mount = (container: HTMLElement, props: AppProps = {}) => { + import("./App").then((App) => { + root = createRoot(container) + root.render(React.createElement(App.default, props)) + }) +} -root.render() +export const unmount = () => root?.unmount() diff --git a/apps/heureka-next/vite.config.ts b/apps/heureka-next/vite.config.ts index 6a82fa6c8..f7d3115b8 100644 --- a/apps/heureka-next/vite.config.ts +++ b/apps/heureka-next/vite.config.ts @@ -28,6 +28,7 @@ export default defineConfig(({ mode }) => { server: { host: "0.0.0.0", port: parseInt(process.env.PORT || "3000"), + allowedHosts: true, }, } @@ -52,7 +53,7 @@ export default defineConfig(({ mode }) => { lib: { entry: "src/index.tsx", formats: ["es"], - fileName: (format) => `index.js`, + fileName: () => `index.js`, }, }, } diff --git a/package-lock.json b/package-lock.json index 2fd67ea85..76f122c1a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -300,7 +300,7 @@ }, "apps/doop": { "name": "@cloudoperators/juno-app-doop", - "version": "2.3.3", + "version": "2.3.4", "license": "Apache-2.0", "dependencies": { "@cloudoperators/juno-communicator": "*", @@ -716,7 +716,7 @@ }, "apps/greenhouse": { "name": "@cloudoperators/juno-app-greenhouse", - "version": "0.4.0", + "version": "0.4.2", "license": "Apache-2.0", "dependencies": { "@cloudoperators/juno-app-doop": "*", @@ -856,7 +856,7 @@ }, "apps/heureka": { "name": "@cloudoperators/juno-app-heureka", - "version": "2.11.3", + "version": "2.11.4", "license": "Apache-2.0", "dependencies": { "@cloudoperators/juno-communicator": "*", @@ -940,7 +940,12 @@ "react-dom": "18.3.1" }, "devDependencies": { + "@apollo/client": "^3.11.10", "@cloudoperators/juno-config": "*", + "@graphql-codegen/cli": "^5.0.3", + "@graphql-codegen/typescript": "^4.1.2", + "@graphql-codegen/typescript-operations": "^4.4.0", + "@graphql-codegen/typescript-react-apollo": "^4.3.2", "@testing-library/jest-dom": "6.6.3", "@testing-library/react": "16.2.0", "@types/node": "20.17.16", @@ -1534,7 +1539,7 @@ }, "apps/supernova": { "name": "@cloudoperators/juno-app-supernova", - "version": "0.16.1", + "version": "0.16.2", "license": "Apache-2.0", "dependencies": { "@cloudoperators/juno-messages-provider": "*", @@ -2027,6 +2032,92 @@ "node": ">=6.0.0" } }, + "node_modules/@apollo/client": { + "version": "3.12.11", + "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.12.11.tgz", + "integrity": "sha512-1RppV9U3E6Uusl/33yGkZa+rXpkGU5iCstcYltwWjdTjoA/YBD2Yyu0aHy8J4uKfIExUgnMW1HJWn4A0E0rRsw==", + "dev": true, + "dependencies": { + "@graphql-typed-document-node/core": "^3.1.1", + "@wry/caches": "^1.0.0", + "@wry/equality": "^0.5.6", + "@wry/trie": "^0.5.0", + "graphql-tag": "^2.12.6", + "hoist-non-react-statics": "^3.3.2", + "optimism": "^0.18.0", + "prop-types": "^15.7.2", + "rehackt": "^0.1.0", + "symbol-observable": "^4.0.0", + "ts-invariant": "^0.10.3", + "tslib": "^2.3.0", + "zen-observable-ts": "^1.2.5" + }, + "peerDependencies": { + "graphql": "^15.0.0 || ^16.0.0", + "graphql-ws": "^5.5.5 || ^6.0.3", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc", + "subscriptions-transport-ws": "^0.9.0 || ^0.11.0" + }, + "peerDependenciesMeta": { + "graphql-ws": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "subscriptions-transport-ws": { + "optional": true + } + } + }, + "node_modules/@apollo/client/node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@ardatan/relay-compiler": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.1.tgz", + "integrity": "sha512-q89DkY9HnvsyBRMu5YiYAJUN+B7cST364iCKLzeNqn0BUG3LWez2KfyKTbxPDdqSzGyUmIfUgTm/ThckIReF4g==", + "dev": true, + "dependencies": { + "@babel/generator": "^7.14.0", + "@babel/parser": "^7.14.0", + "@babel/runtime": "^7.0.0", + "babel-preset-fbjs": "^3.4.0", + "chalk": "^4.0.0", + "fb-watchman": "^2.0.0", + "fbjs": "^3.0.0", + "immutable": "~3.7.6", + "invariant": "^2.2.4", + "nullthrows": "^1.1.1", + "relay-runtime": "12.0.0", + "signedsource": "^1.0.0" + }, + "bin": { + "relay-compiler": "bin/relay-compiler" + }, + "peerDependencies": { + "graphql": "*" + } + }, + "node_modules/@ardatan/relay-compiler/node_modules/immutable": { + "version": "3.7.6", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz", + "integrity": "sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.26.2", "dev": true, @@ -2466,6 +2557,43 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-proposal-private-property-in-object": { "version": "7.21.0-placeholder-for-preset-env.2", "dev": true, @@ -2507,8 +2635,6 @@ "version": "7.12.13", "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.12.13" }, @@ -2532,6 +2658,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-flow": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.26.0.tgz", + "integrity": "sha512-B+O2DnPc0iG+YXFqOxv2WNuNU97ToWjOomUQ78DouOENWUaM5sVrmet9mcomUGQFwpJd//gvUagXBSdzO1fRKg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-import-assertions": { "version": "7.26.0", "dev": true, @@ -2643,8 +2784,6 @@ "version": "7.8.3", "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -2986,6 +3125,22 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-transform-flow-strip-types": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.26.5.tgz", + "integrity": "sha512-eGK26RsbIkYUns3Y8qKl362juDDYK+wEdPGHGrhzUl6CewZFo55VZ7hg+CyMFU4dd5QQakBN86nBMpRsFpRvbQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/plugin-syntax-flow": "^7.26.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-transform-for-of": { "version": "7.25.9", "dev": true, @@ -4587,6 +4742,31 @@ "dev": true, "license": "MIT" }, + "node_modules/@envelop/core": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@envelop/core/-/core-5.0.3.tgz", + "integrity": "sha512-SE3JxL7odst8igN6x77QWyPpXKXz/Hs5o5Y27r+9Br6WHIhkW90lYYVITWIJQ/qYgn5PkpbaVgeFY9rgqQaZ/A==", + "dev": true, + "dependencies": { + "@envelop/types": "5.0.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@envelop/types": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@envelop/types/-/types-5.0.0.tgz", + "integrity": "sha512-IPjmgSc4KpQRlO4qbEDnBEixvtb06WDmjKfi/7fkZaryh5HuOmTtixe1EupQI5XfXO8joc3d27uUZ0QdC++euA==", + "dev": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", @@ -5130,136 +5310,1312 @@ "dev": true, "license": "MIT" }, - "node_modules/@graphql-typed-document-node/core": { - "version": "3.2.0", + "node_modules/@graphql-codegen/add": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@graphql-codegen/add/-/add-5.0.3.tgz", + "integrity": "sha512-SxXPmramkth8XtBlAHu4H4jYcYXM/o3p01+psU+0NADQowA8jtYkK6MW5rV6T+CxkEaNZItfSmZRPgIuypcqnA==", "dev": true, - "license": "MIT", + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.0.3", + "tslib": "~2.6.0" + }, "peerDependencies": { - "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@headlessui-float/react": { - "version": "0.15.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.5.3", - "@floating-ui/dom": "^1.5.4", - "@floating-ui/react": "^0.26.5" + "node_modules/@graphql-codegen/add/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/cli": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-5.0.4.tgz", + "integrity": "sha512-vPO1mCtrttFVy8mPR+jMAvsYTv8E/7payIPaneeGE15mQjyvQXXsHoAg06Qpf6tykOdCwKVLWre0Mf6g0KBwUg==", + "dev": true, + "dependencies": { + "@babel/generator": "^7.18.13", + "@babel/template": "^7.18.10", + "@babel/types": "^7.18.13", + "@graphql-codegen/client-preset": "^4.6.0", + "@graphql-codegen/core": "^4.0.2", + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-tools/apollo-engine-loader": "^8.0.0", + "@graphql-tools/code-file-loader": "^8.0.0", + "@graphql-tools/git-loader": "^8.0.0", + "@graphql-tools/github-loader": "^8.0.0", + "@graphql-tools/graphql-file-loader": "^8.0.0", + "@graphql-tools/json-file-loader": "^8.0.0", + "@graphql-tools/load": "^8.0.0", + "@graphql-tools/prisma-loader": "^8.0.0", + "@graphql-tools/url-loader": "^8.0.0", + "@graphql-tools/utils": "^10.0.0", + "@whatwg-node/fetch": "^0.10.0", + "chalk": "^4.1.0", + "cosmiconfig": "^8.1.3", + "debounce": "^1.2.0", + "detect-indent": "^6.0.0", + "graphql-config": "^5.1.1", + "inquirer": "^8.0.0", + "is-glob": "^4.0.1", + "jiti": "^1.17.1", + "json-to-pretty-yaml": "^1.2.2", + "listr2": "^4.0.5", + "log-symbols": "^4.0.0", + "micromatch": "^4.0.5", + "shell-quote": "^1.7.3", + "string-env-interpolation": "^1.0.1", + "ts-log": "^2.2.3", + "tslib": "^2.4.0", + "yaml": "^2.3.1", + "yargs": "^17.0.0" + }, + "bin": { + "gql-gen": "cjs/bin.js", + "graphql-code-generator": "cjs/bin.js", + "graphql-codegen": "cjs/bin.js", + "graphql-codegen-esm": "esm/bin.js" + }, + "engines": { + "node": ">=16" }, "peerDependencies": { - "@headlessui/react": "^1.0.0", - "react": "^18", - "react-dom": "^18" + "@parcel/watcher": "^2.1.0", + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + }, + "peerDependenciesMeta": { + "@parcel/watcher": { + "optional": true + } } }, - "node_modules/@headlessui/react": { - "version": "1.7.19", + "node_modules/@graphql-codegen/cli/node_modules/yaml": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", + "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@graphql-codegen/client-preset": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/client-preset/-/client-preset-4.6.2.tgz", + "integrity": "sha512-C7BihcGMSZq95ppLGi2HI0zt4w+n2FDoXzrP1/SUS32zbJlvb3Vod/fHdHTWcFZzlAZFCue7MNU3DbiuRjGYQg==", "dev": true, - "license": "MIT", "dependencies": { - "@tanstack/react-virtual": "^3.0.0-beta.60", - "client-only": "^0.0.1" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7", + "@graphql-codegen/add": "^5.0.3", + "@graphql-codegen/gql-tag-operations": "4.0.14", + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-codegen/typed-document-node": "^5.0.13", + "@graphql-codegen/typescript": "^4.1.3", + "@graphql-codegen/typescript-operations": "^4.4.1", + "@graphql-codegen/visitor-plugin-common": "^5.6.1", + "@graphql-tools/documents": "^1.0.0", + "@graphql-tools/utils": "^10.0.0", + "@graphql-typed-document-node/core": "3.2.0", + "tslib": "~2.6.0" }, "engines": { - "node": ">=10" + "node": ">=16" }, "peerDependencies": { - "react": "^16 || ^17 || ^18", - "react-dom": "^16 || ^17 || ^18" + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@humanfs/core": { - "version": "0.19.0", + "node_modules/@graphql-codegen/client-preset/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/core": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/core/-/core-4.0.2.tgz", + "integrity": "sha512-IZbpkhwVqgizcjNiaVzNAzm/xbWT6YnGgeOLwVjm4KbJn3V2jchVtuzHH09G5/WkkLSk2wgbXNdwjM41JxO6Eg==", "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-tools/schema": "^10.0.0", + "@graphql-tools/utils": "^10.0.0", + "tslib": "~2.6.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@humanfs/node": { - "version": "0.16.5", + "node_modules/@graphql-codegen/core/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/gql-tag-operations": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/@graphql-codegen/gql-tag-operations/-/gql-tag-operations-4.0.14.tgz", + "integrity": "sha512-/jyW6zbIt9xiLAmkLsLwJDegeFytg6n5yf79dEbkhOflclIM2t1YhEAXQxIuqgDgM/PQ34Zfu3wtgWSgUOReXg==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "@humanfs/core": "^0.19.0", - "@humanwhocodes/retry": "^0.3.0" + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-codegen/visitor-plugin-common": "5.6.1", + "@graphql-tools/utils": "^10.0.0", + "auto-bind": "~4.0.0", + "tslib": "~2.6.0" }, "engines": { - "node": ">=18.18.0" + "node": ">=16" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.13.0", + "node_modules/@graphql-codegen/gql-tag-operations/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/plugin-helpers": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-5.1.0.tgz", + "integrity": "sha512-Y7cwEAkprbTKzVIe436TIw4w03jorsMruvCvu0HJkavaKMQbWY+lQ1RIuROgszDbxAyM35twB5/sUvYG5oW+yg==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" + "@graphql-tools/utils": "^10.0.0", + "change-case-all": "1.0.15", + "common-tags": "1.8.2", + "import-from": "4.0.0", + "lodash": "~4.17.0", + "tslib": "~2.6.0" }, "engines": { - "node": ">=10.10.0" + "node": ">=16" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", + "node_modules/@graphql-codegen/plugin-helpers/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/schema-ast": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-4.1.0.tgz", + "integrity": "sha512-kZVn0z+th9SvqxfKYgztA6PM7mhnSZaj4fiuBWvMTqA+QqQ9BBed6Pz41KuD/jr0gJtnlr2A4++/0VlpVbCTmQ==", "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-tools/utils": "^10.0.0", + "tslib": "~2.6.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "dev": true, - "license": "BSD-3-Clause" + "node_modules/@graphql-codegen/schema-ast/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true }, - "node_modules/@humanwhocodes/retry": { - "version": "0.3.1", + "node_modules/@graphql-codegen/typed-document-node": { + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typed-document-node/-/typed-document-node-5.0.13.tgz", + "integrity": "sha512-/r23W1WF9PKymIET3SdCDfyuZ6tHeflvbZF3mL3cMp4849M1fe1J2eWefeqn2MMbKATstNqRVxtrq6peJ3A/Ew==", "dev": true, - "license": "Apache-2.0", + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-codegen/visitor-plugin-common": "5.6.1", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.15", + "tslib": "~2.6.0" + }, "engines": { - "node": ">=18.18" + "node": ">=16" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@inquirer/confirm": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.0.2.tgz", - "integrity": "sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==", - "license": "MIT", + "node_modules/@graphql-codegen/typed-document-node/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-4.1.3.tgz", + "integrity": "sha512-/7qNPj+owhxBZB3Kv0FuUILZq9A6Gl5P5wiIZGAmw500n6Vc8ceOFLRXeVkyvDccxTGWS/vJv+sUnl94T2Pu+A==", + "dev": true, "dependencies": { - "@inquirer/core": "^10.1.0", - "@inquirer/type": "^3.0.1" + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-codegen/schema-ast": "^4.0.2", + "@graphql-codegen/visitor-plugin-common": "5.6.1", + "auto-bind": "~4.0.0", + "tslib": "~2.6.0" }, "engines": { - "node": ">=18" + "node": ">=16" }, "peerDependencies": { - "@types/node": ">=18" + "graphql": "^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@inquirer/core": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.0.tgz", - "integrity": "sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==", - "license": "MIT", + "node_modules/@graphql-codegen/typescript-operations": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript-operations/-/typescript-operations-4.4.1.tgz", + "integrity": "sha512-iqAdEe4wfxGPT9s/VD+EhehBzaTxvWdisbsqiM6dMfk+8FfjrOj8SDBsHzKwmkRcrpMK6h9gLr3XcuBPu0JoFg==", + "dev": true, "dependencies": { - "@inquirer/figures": "^1.0.8", - "@inquirer/type": "^3.0.1", - "ansi-escapes": "^4.3.2", - "cli-width": "^4.1.0", - "mute-stream": "^2.0.0", - "signal-exit": "^4.1.0", - "strip-ansi": "^6.0.1", + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-codegen/typescript": "^4.1.3", + "@graphql-codegen/visitor-plugin-common": "5.6.1", + "auto-bind": "~4.0.0", + "tslib": "~2.6.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-operations/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript-react-apollo": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript-react-apollo/-/typescript-react-apollo-4.3.2.tgz", + "integrity": "sha512-io2tWfeehBqOB2X6llqLE6B9wjjsXZT/GTZlguGVXdbR7WhSJO9GXyLflXYKxom/h2bPjkVL534Ev6wZLcs0wA==", + "dev": true, + "dependencies": { + "@graphql-codegen/plugin-helpers": "^3.0.0", + "@graphql-codegen/visitor-plugin-common": "2.13.1", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.15", + "tslib": "~2.6.0" + }, + "engines": { + "node": ">= 16.0.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@ardatan/relay-compiler": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz", + "integrity": "sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q==", + "dev": true, + "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" + }, + "bin": { + "relay-compiler": "bin/relay-compiler" + }, + "peerDependencies": { + "graphql": "*" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/plugin-helpers": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-3.1.2.tgz", + "integrity": "sha512-emOQiHyIliVOIjKVKdsI5MXj312zmRDwmHpyUTZMjfpvxq/UVAHUJIVdVf+lnjjrI+LXBTgMlTWTgHQfmICxjg==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^9.0.0", + "change-case-all": "1.0.15", + "common-tags": "1.8.2", + "import-from": "4.0.0", + "lodash": "~4.17.0", + "tslib": "~2.4.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/plugin-helpers/node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/visitor-plugin-common": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-2.13.1.tgz", + "integrity": "sha512-mD9ufZhDGhyrSaWQGrU1Q1c5f01TeWtSWy/cDwXYjJcHIj1Y/DG2x0tOflEfCvh5WcnmHNIw4lzDsg1W7iFJEg==", + "dev": true, + "dependencies": { + "@graphql-codegen/plugin-helpers": "^2.7.2", + "@graphql-tools/optimize": "^1.3.0", + "@graphql-tools/relay-operation-optimizer": "^6.5.0", + "@graphql-tools/utils": "^8.8.0", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.14", + "dependency-graph": "^0.11.0", + "graphql-tag": "^2.11.0", + "parse-filepath": "^1.0.2", + "tslib": "~2.4.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/visitor-plugin-common/node_modules/@graphql-codegen/plugin-helpers": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-2.7.2.tgz", + "integrity": "sha512-kln2AZ12uii6U59OQXdjLk5nOlh1pHis1R98cDZGFnfaiAbX9V3fxcZ1MMJkB7qFUymTALzyjZoXXdyVmPMfRg==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^8.8.0", + "change-case-all": "1.0.14", + "common-tags": "1.8.2", + "import-from": "4.0.0", + "lodash": "~4.17.0", + "tslib": "~2.4.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/visitor-plugin-common/node_modules/@graphql-tools/utils": { + "version": "8.13.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.13.1.tgz", + "integrity": "sha512-qIh9yYpdUFmctVqovwMdheVNJqFh+DQNWIhX87FJStfXYnmweBUDATok9fWPleKeFwxnW8IapKmY8m8toJEkAw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/visitor-plugin-common/node_modules/change-case-all": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/change-case-all/-/change-case-all-1.0.14.tgz", + "integrity": "sha512-CWVm2uT7dmSHdO/z1CXT/n47mWonyypzBbuCy5tN7uMg22BsfkhwT6oHmFCAk+gL1LOOxhdbB9SZz3J1KTY3gA==", + "dev": true, + "dependencies": { + "change-case": "^4.1.2", + "is-lower-case": "^2.0.2", + "is-upper-case": "^2.0.2", + "lower-case": "^2.0.2", + "lower-case-first": "^2.0.2", + "sponge-case": "^1.0.1", + "swap-case": "^2.0.2", + "title-case": "^3.0.3", + "upper-case": "^2.0.2", + "upper-case-first": "^2.0.2" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-codegen/visitor-plugin-common/node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-tools/optimize": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/optimize/-/optimize-1.4.0.tgz", + "integrity": "sha512-dJs/2XvZp+wgHH8T5J2TqptT9/6uVzIYvA6uFACha+ufvdMBedkfR4b4GbT8jAKLRARiqRTxy3dctnwkTM2tdw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-tools/relay-operation-optimizer": { + "version": "6.5.18", + "resolved": "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.5.18.tgz", + "integrity": "sha512-mc5VPyTeV+LwiM+DNvoDQfPqwQYhPV/cl5jOBjTgSniyaq8/86aODfMkrE2OduhQ5E00hqrkuL2Fdrgk0w1QJg==", + "dev": true, + "dependencies": { + "@ardatan/relay-compiler": "12.0.0", + "@graphql-tools/utils": "^9.2.1", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/@graphql-tools/utils": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-9.2.1.tgz", + "integrity": "sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==", + "dev": true, + "dependencies": { + "@graphql-typed-document-node/core": "^3.1.1", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/immutable": { + "version": "3.7.6", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz", + "integrity": "sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@graphql-codegen/typescript-react-apollo/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@graphql-codegen/typescript/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-codegen/visitor-plugin-common": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-5.6.1.tgz", + "integrity": "sha512-q+DkGWWS7pvSc1c4Hw1xD0RI+EplTe2PCyTCT0WuaswnodBytteKTqFOVVGadISLX0xhO25aANTFB4+TLwTBSA==", + "dev": true, + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.1.0", + "@graphql-tools/optimize": "^2.0.0", + "@graphql-tools/relay-operation-optimizer": "^7.0.0", + "@graphql-tools/utils": "^10.0.0", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.15", + "dependency-graph": "^0.11.0", + "graphql-tag": "^2.11.0", + "parse-filepath": "^1.0.2", + "tslib": "~2.6.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/@graphql-codegen/visitor-plugin-common/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "dev": true + }, + "node_modules/@graphql-tools/apollo-engine-loader": { + "version": "8.0.15", + "resolved": "https://registry.npmjs.org/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-8.0.15.tgz", + "integrity": "sha512-4Y3gmTrC9nK8Zb19VSvPGecncUV7nFnRg9CpsdsSvjS2N98wmUhFwH9jCYQzLyDKgvlJV5PEHhAeVQPQgKGFeg==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "@whatwg-node/fetch": "^0.10.0", + "sync-fetch": "0.6.0-2", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/batch-execute": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-9.0.11.tgz", + "integrity": "sha512-v9b618cj3hIrRGTDrOotYzpK+ZigvNcKdXK3LNBM4g/uA7pND0d4GOnuOSBQGKKN6kT/1nsz4ZpUxCoUvWPbzg==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.7.0", + "dataloader": "^2.2.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/code-file-loader": { + "version": "8.1.15", + "resolved": "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-8.1.15.tgz", + "integrity": "sha512-XlrzWfuoBRfpx/5Uw8VBP5rmMJyQVv8HMd6k/7TxFT/cXU34rcQfmRk6f3J7gD5+3ueqgwPcmaIn3CRp+Z0r0w==", + "dev": true, + "dependencies": { + "@graphql-tools/graphql-tag-pluck": "8.3.14", + "@graphql-tools/utils": "^10.8.1", + "globby": "^11.0.3", + "tslib": "^2.4.0", + "unixify": "^1.0.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/delegate": { + "version": "10.2.11", + "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-10.2.11.tgz", + "integrity": "sha512-eLqczQkDlSHpz0foBWfjISSsHiedMOBz4spaa1ako1eM4bX9VxQa/HWQuMK8dmAf8By+F47OzvLUNa03Aq6vXw==", + "dev": true, + "dependencies": { + "@graphql-tools/batch-execute": "^9.0.11", + "@graphql-tools/executor": "^1.3.10", + "@graphql-tools/schema": "^10.0.11", + "@graphql-tools/utils": "^10.7.0", + "@repeaterjs/repeater": "^3.0.6", + "dataloader": "^2.2.3", + "dset": "^3.1.2", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/documents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/documents/-/documents-1.0.1.tgz", + "integrity": "sha512-aweoMH15wNJ8g7b2r4C4WRuJxZ0ca8HtNO54rkye/3duxTkW4fGBEutCx03jCIr5+a1l+4vFJNP859QnAVBVCA==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/executor": { + "version": "1.3.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor/-/executor-1.3.14.tgz", + "integrity": "sha512-tDk8bYIgbVmGNh7cYewi5/yNCq6UoVl9ugDU4rF//+E1R5TxkXNe9nu6AonE+j6XkA/z+FofVawOqCCiJhJ40g==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "@graphql-typed-document-node/core": "^3.2.0", + "@repeaterjs/repeater": "^3.0.4", + "@whatwg-node/disposablestack": "^0.0.5", + "tslib": "^2.4.0", + "value-or-promise": "^1.0.12" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/executor-common": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-common/-/executor-common-0.0.1.tgz", + "integrity": "sha512-Gan7uiQhKvAAl0UM20Oy/n5NGBBDNm+ASHvnYuD8mP+dAH0qY+2QMCHyi5py28WAlhAwr0+CAemEyzY/ZzOjdQ==", + "dev": true, + "dependencies": { + "@envelop/core": "^5.0.2", + "@graphql-tools/utils": "^10.7.0" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/executor-graphql-ws": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-graphql-ws/-/executor-graphql-ws-2.0.1.tgz", + "integrity": "sha512-TqdNLuDuLgaB8xOe+H4+3Sx9jyhRMpEwJTA+5MOvrMRPIPYW4P7w4KYouClS1zAmn4193pNRSt11lZptjIoLPw==", + "dev": true, + "dependencies": { + "@graphql-tools/executor-common": "^0.0.1", + "@graphql-tools/utils": "^10.7.0", + "@whatwg-node/disposablestack": "^0.0.5", + "graphql-ws": "^6.0.3", + "isomorphic-ws": "^5.0.0", + "tslib": "^2.8.1", + "ws": "^8.17.1" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/executor-http": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-http/-/executor-http-1.2.6.tgz", + "integrity": "sha512-D+gcyDlqKFiwVEubf9HxNijG7LAck0ApXypv/oBzBIOt7avy+PkNopcjSikxy0BvxkIfyjaAtnYlmgf4kC6Y8g==", + "dev": true, + "dependencies": { + "@graphql-tools/executor-common": "^0.0.1", + "@graphql-tools/utils": "^10.7.0", + "@repeaterjs/repeater": "^3.0.4", + "@whatwg-node/disposablestack": "^0.0.5", + "@whatwg-node/fetch": "^0.10.1", + "extract-files": "^11.0.0", + "meros": "^1.2.1", + "tslib": "^2.8.1", + "value-or-promise": "^1.0.12" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/executor-legacy-ws": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@graphql-tools/executor-legacy-ws/-/executor-legacy-ws-1.1.12.tgz", + "integrity": "sha512-thZTsx4rGbekMdJxpv0r4ettUsGRpkhSx1z86bn/WEAItn2GjPL/lR508OtP8o/BHFGrQOEIURhwtSpetdINGA==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "@types/ws": "^8.0.0", + "isomorphic-ws": "^5.0.0", + "tslib": "^2.4.0", + "ws": "^8.17.1" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/git-loader": { + "version": "8.0.19", + "resolved": "https://registry.npmjs.org/@graphql-tools/git-loader/-/git-loader-8.0.19.tgz", + "integrity": "sha512-jOJ4memazxOmPK+rebhQ99fShKibGr+WSkbsMdwWzU149fuQ7nSj4opNRkhYvDsB6ZYw3wriSlPzSlpaBTLMJQ==", + "dev": true, + "dependencies": { + "@graphql-tools/graphql-tag-pluck": "8.3.14", + "@graphql-tools/utils": "^10.8.1", + "is-glob": "4.0.3", + "micromatch": "^4.0.8", + "tslib": "^2.4.0", + "unixify": "^1.0.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/github-loader": { + "version": "8.0.15", + "resolved": "https://registry.npmjs.org/@graphql-tools/github-loader/-/github-loader-8.0.15.tgz", + "integrity": "sha512-XPrkc8YotQybbyJ6kiCNlpyCIFzsmmhwnSoqMaZrgL5RRsKbRD4CR8KTmfvMGzZmvt+u4n/te4x1QSZPLnvLqA==", + "dev": true, + "dependencies": { + "@graphql-tools/executor-http": "^1.1.9", + "@graphql-tools/graphql-tag-pluck": "^8.3.14", + "@graphql-tools/utils": "^10.8.1", + "@whatwg-node/fetch": "^0.10.0", + "sync-fetch": "0.6.0-2", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/graphql-file-loader": { + "version": "8.0.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-8.0.14.tgz", + "integrity": "sha512-Mlcd8u1u6WMRgvvERKfFRL0txTLKtmbmq0x8DzIZ7BACrYCv2rwtV79J51LbFUNBO6cMzu8rzoxTneqYm6dRNg==", + "dev": true, + "dependencies": { + "@graphql-tools/import": "7.0.13", + "@graphql-tools/utils": "^10.8.1", + "globby": "^11.0.3", + "tslib": "^2.4.0", + "unixify": "^1.0.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/graphql-tag-pluck": { + "version": "8.3.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-8.3.14.tgz", + "integrity": "sha512-dRo5f5/VwLI8bHRfgxl0q11fGFB/K+0/8Z8goPRQOT/Olik1RYnHVPhnK5BGSTLAMVpE3E7F+5jntkXLmuHuRA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.22.9", + "@babel/parser": "^7.16.8", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8", + "@graphql-tools/utils": "^10.8.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/import": { + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@graphql-tools/import/-/import-7.0.13.tgz", + "integrity": "sha512-END2Bg0bvLnXDHi8WUbD7xrnf8komlIkKMOzSexFLeGpEYPlMsBOM6m0RW31Zk8zdN01gLPAyyT4tQXSIzCGIw==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "resolve-from": "5.0.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/json-file-loader": { + "version": "8.0.13", + "resolved": "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-8.0.13.tgz", + "integrity": "sha512-T8s05fcWvwkB9iM77RQ8WBGylkzZQ+aFzYZabg51jXvusiXWLCN3BSKPsEvSPpb3Y7JJBAK4e+Hu7UmZxqolkA==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "globby": "^11.0.3", + "tslib": "^2.4.0", + "unixify": "^1.0.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/load": { + "version": "8.0.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/load/-/load-8.0.14.tgz", + "integrity": "sha512-ECdc/hoSs455B6ksO25mEK/FWDPQqWXQ5aMUgjqaApiPasipOfdsZEINHc8ikm/T+hF++/h6+9PDJNsIideWuQ==", + "dev": true, + "dependencies": { + "@graphql-tools/schema": "^10.0.18", + "@graphql-tools/utils": "^10.8.1", + "p-limit": "3.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/load/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@graphql-tools/load/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@graphql-tools/merge": { + "version": "9.0.19", + "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-9.0.19.tgz", + "integrity": "sha512-iJP3Xke+vgnST58A1Q/1+y3bzfbYalIMnegUNupYHNvHHSE0PXoq8YieqQF8JYzWVACMxiq/M4Y1vW75mS2UVg==", + "dev": true, + "dependencies": { + "@graphql-tools/utils": "^10.8.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/optimize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/optimize/-/optimize-2.0.0.tgz", + "integrity": "sha512-nhdT+CRGDZ+bk68ic+Jw1OZ99YCDIKYA5AlVAnBHJvMawSx9YQqQAIj4refNc1/LRieGiuWvhbG3jvPVYho0Dg==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/prisma-loader": { + "version": "8.0.17", + "resolved": "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-8.0.17.tgz", + "integrity": "sha512-fnuTLeQhqRbA156pAyzJYN0KxCjKYRU5bz1q/SKOwElSnAU4k7/G1kyVsWLh7fneY78LoMNH5n+KlFV8iQlnyg==", + "dev": true, + "dependencies": { + "@graphql-tools/url-loader": "^8.0.15", + "@graphql-tools/utils": "^10.5.6", + "@types/js-yaml": "^4.0.0", + "@whatwg-node/fetch": "^0.10.0", + "chalk": "^4.1.0", + "debug": "^4.3.1", + "dotenv": "^16.0.0", + "graphql-request": "^6.0.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "jose": "^5.0.0", + "js-yaml": "^4.0.0", + "lodash": "^4.17.20", + "scuid": "^1.1.0", + "tslib": "^2.4.0", + "yaml-ast-parser": "^0.0.43" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/prisma-loader/node_modules/graphql-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/graphql-request/-/graphql-request-6.1.0.tgz", + "integrity": "sha512-p+XPfS4q7aIpKVcgmnZKhMNqhltk20hfXtkaIkTfjjmiKMJ5xrt5c743cL03y/K7y1rg3WrIC49xGiEQ4mxdNw==", + "dev": true, + "dependencies": { + "@graphql-typed-document-node/core": "^3.2.0", + "cross-fetch": "^3.1.5" + }, + "peerDependencies": { + "graphql": "14 - 16" + } + }, + "node_modules/@graphql-tools/relay-operation-optimizer": { + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-7.0.14.tgz", + "integrity": "sha512-sHrWbqwXxiYq10stPuFEGjDTz/BQbf+ujfW3xcm5hpkSJp3LjwdFFmFaQU42w3xYWLszbp7lR29dYnhCWpegJA==", + "dev": true, + "dependencies": { + "@ardatan/relay-compiler": "^12.0.1", + "@graphql-tools/utils": "^10.8.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/schema": { + "version": "10.0.18", + "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-10.0.18.tgz", + "integrity": "sha512-6j2O/07v1zbGvASizMSO7YZdGt/9HfPDx8s9n75sD2xoGfeJ2aRSmI4LkyuvqOpi0ecaa9xErnMEEvUaKBqMbw==", + "dev": true, + "dependencies": { + "@graphql-tools/merge": "^9.0.19", + "@graphql-tools/utils": "^10.8.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/url-loader": { + "version": "8.0.26", + "resolved": "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-8.0.26.tgz", + "integrity": "sha512-oX8WWpiHHhLvxYUoo0QVN0Jjn2x2Tx9EvfccH+r7Mmgr4QpDU+t5Kpzr7qCRt9kO1SNW1ns1MeiXVWXPjoT6MQ==", + "dev": true, + "dependencies": { + "@graphql-tools/executor-graphql-ws": "^2.0.1", + "@graphql-tools/executor-http": "^1.1.9", + "@graphql-tools/executor-legacy-ws": "^1.1.12", + "@graphql-tools/utils": "^10.8.1", + "@graphql-tools/wrap": "^10.0.16", + "@types/ws": "^8.0.0", + "@whatwg-node/fetch": "^0.10.0", + "isomorphic-ws": "^5.0.0", + "sync-fetch": "0.6.0-2", + "tslib": "^2.4.0", + "ws": "^8.17.1" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/utils": { + "version": "10.8.1", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.8.1.tgz", + "integrity": "sha512-fI5NNuqeEAHyp7NuCDjvxWR5PTUXM4AqY9BoC59ZcX4nePAJje27ZsFHbAMS6EKDosY1K/D4ADxsO0P5+FH07A==", + "dev": true, + "dependencies": { + "@graphql-typed-document-node/core": "^3.1.1", + "cross-inspect": "1.0.1", + "dset": "^3.1.4", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-tools/wrap": { + "version": "10.0.29", + "resolved": "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-10.0.29.tgz", + "integrity": "sha512-kQdosPBo6EvFhQV5s0XpN6+N0YN+31mCZTV7uwZisaUwwroAT19ujs2Zxz8Zyw4H9XRCsueLT0wqmSupjIFibQ==", + "dev": true, + "dependencies": { + "@graphql-tools/delegate": "^10.2.11", + "@graphql-tools/schema": "^10.0.11", + "@graphql-tools/utils": "^10.7.0", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@graphql-typed-document-node/core": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@headlessui-float/react": { + "version": "0.15.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.5.3", + "@floating-ui/dom": "^1.5.4", + "@floating-ui/react": "^0.26.5" + }, + "peerDependencies": { + "@headlessui/react": "^1.0.0", + "react": "^18", + "react-dom": "^18" + } + }, + "node_modules/@headlessui/react": { + "version": "1.7.19", + "dev": true, + "license": "MIT", + "dependencies": { + "@tanstack/react-virtual": "^3.0.0-beta.60", + "client-only": "^0.0.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16 || ^17 || ^18", + "react-dom": "^16 || ^17 || ^18" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.5", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.0", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@inquirer/confirm": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.0.2.tgz", + "integrity": "sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==", + "license": "MIT", + "dependencies": { + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" + } + }, + "node_modules/@inquirer/core": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.0.tgz", + "integrity": "sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==", + "license": "MIT", + "dependencies": { + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", + "ansi-escapes": "^4.3.2", + "cli-width": "^4.1.0", + "mute-stream": "^2.0.0", + "signal-exit": "^4.1.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^6.2.0", "yoctocolors-cjs": "^2.1.2" }, @@ -6465,6 +7821,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@repeaterjs/repeater": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.6.tgz", + "integrity": "sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==", + "dev": true + }, "node_modules/@rollup/pluginutils": { "version": "5.1.3", "dev": true, @@ -9377,6 +10739,12 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/js-yaml": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", + "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.15", "dev": true, @@ -9512,6 +10880,15 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/ws": { + "version": "8.5.14", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.14.tgz", + "integrity": "sha512-bd/YFLW+URhBzMXurx7lWByOu+xzU9+kb3RboOteXYDfW+tr+JZa99OyNmPINEGB/ahzKrEuc8rcv4gnpJmxTw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/yargs": { "version": "17.0.33", "dev": true, @@ -10204,6 +11581,93 @@ "@xtuc/long": "4.2.2" } }, + "node_modules/@whatwg-node/disposablestack": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@whatwg-node/disposablestack/-/disposablestack-0.0.5.tgz", + "integrity": "sha512-9lXugdknoIequO4OYvIjhygvfSEgnO8oASLqLelnDhkRjgBZhc39shC3QSlZuyDO9bgYSIVa2cHAiN+St3ty4w==", + "dev": true, + "dependencies": { + "tslib": "^2.6.3" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@whatwg-node/fetch": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@whatwg-node/fetch/-/fetch-0.10.3.tgz", + "integrity": "sha512-jCTL/qYcIW2GihbBRHypQ/Us7saWMNZ5fsumsta+qPY0Pmi1ccba/KRQvgctmQsbP69FWemJSs8zVcFaNwdL0w==", + "dev": true, + "dependencies": { + "@whatwg-node/node-fetch": "^0.7.7", + "urlpattern-polyfill": "^10.0.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@whatwg-node/node-fetch": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.7.8.tgz", + "integrity": "sha512-Pbv72nbu3AgL9ZaAwdzYcqoMhYGhSBxo49CC+Nt+tlhdDuMZXcf3+41qGghsGJykkxhgfgFcPLwtt2HPEjk57w==", + "dev": true, + "dependencies": { + "@whatwg-node/disposablestack": "^0.0.5", + "busboy": "^1.6.0", + "tslib": "^2.6.3" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@wry/caches": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@wry/caches/-/caches-1.0.1.tgz", + "integrity": "sha512-bXuaUNLVVkD20wcGBWRyo7j9N3TxePEWFZj2Y+r9OoUzfqmavM84+mFykRicNsBqatba5JLay1t48wxaXaWnlA==", + "dev": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wry/context": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@wry/context/-/context-0.7.4.tgz", + "integrity": "sha512-jmT7Sb4ZQWI5iyu3lobQxICu2nC/vbUhP0vIdd6tHC9PTfenmRmuIFqktc6GH9cgi+ZHnsLWPvfSvc4DrYmKiQ==", + "dev": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wry/equality": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@wry/equality/-/equality-0.5.7.tgz", + "integrity": "sha512-BRFORjsTuQv5gxcXsuDXx6oGRhuVsEGwZy6LOzRRfgu+eSfxbhUQ9L9YtSEIuIjY/o7g3iWFjrc5eSY1GXP2Dw==", + "dev": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wry/trie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@wry/trie/-/trie-0.5.0.tgz", + "integrity": "sha512-FNoYzHawTMk/6KMQoEG5O4PuioX19UbwdQKF44yw0nLfOypfQdjtfZzo/UIJWAJ23sNIFbD1Ug9lbaDGMwbqQA==", + "dev": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "dev": true, @@ -10281,6 +11745,19 @@ "node": ">= 14" } }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ajv": { "version": "6.12.6", "dev": true, @@ -10611,6 +12088,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "dev": true + }, "node_modules/assertion-error": { "version": "2.0.1", "dev": true, @@ -10632,6 +12115,15 @@ "node": ">=4" } }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/async-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", @@ -10647,6 +12139,18 @@ "dev": true, "license": "MIT" }, + "node_modules/auto-bind": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/auto-bind/-/auto-bind-4.0.0.tgz", + "integrity": "sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/autoprefixer": { "version": "10.4.20", "dev": true, @@ -10796,6 +12300,12 @@ "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, + "node_modules/babel-plugin-syntax-trailing-function-commas": { + "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", + "integrity": "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==", + "dev": true + }, "node_modules/babel-preset-current-node-syntax": { "version": "1.1.0", "dev": true, @@ -10823,6 +12333,44 @@ "@babel/core": "^7.0.0" } }, + "node_modules/babel-preset-fbjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz", + "integrity": "sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow==", + "dev": true, + "dependencies": { + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-syntax-class-properties": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.0.0", + "@babel/plugin-syntax-jsx": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-block-scoped-functions": "^7.0.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.0.0", + "@babel/plugin-transform-flow-strip-types": "^7.0.0", + "@babel/plugin-transform-for-of": "^7.0.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-member-expression-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-object-super": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-property-literals": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-template-literals": "^7.0.0", + "babel-plugin-syntax-trailing-function-commas": "^7.0.0-beta.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/babel-preset-jest": { "version": "29.6.3", "dev": true, @@ -10854,6 +12402,26 @@ "dev": true, "license": "MIT" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/better-opn": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz", @@ -10898,6 +12466,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, "node_modules/bluebird": { "version": "3.7.2", "dev": true, @@ -10972,18 +12551,52 @@ "version": "2.1.1", "dev": true, "license": "Apache-2.0", - "optional": true, - "peer": true, "dependencies": { "node-int64": "^0.4.0" } }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "dev": true, "license": "MIT", "peer": true }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dev": true, + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, "node_modules/cac": { "version": "6.7.14", "dev": true, @@ -11050,6 +12663,16 @@ "node": ">=6" } }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, "node_modules/camelcase": { "version": "6.3.0", "dev": true, @@ -11088,6 +12711,17 @@ ], "license": "CC-BY-4.0" }, + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, "node_modules/catharsis": { "version": "0.9.0", "dev": true, @@ -11137,6 +12771,44 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/change-case-all": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/change-case-all/-/change-case-all-1.0.15.tgz", + "integrity": "sha512-3+GIFhk3sNuvFAJKU46o26OdzudQlPNBCu1ZQi3cMeMHhty1bhDxu2WrEilVNYaGvqUtR1VSigFcJOiS13dRhQ==", + "dev": true, + "dependencies": { + "change-case": "^4.1.2", + "is-lower-case": "^2.0.2", + "is-upper-case": "^2.0.2", + "lower-case": "^2.0.2", + "lower-case-first": "^2.0.2", + "sponge-case": "^1.0.1", + "swap-case": "^2.0.2", + "title-case": "^3.0.3", + "upper-case": "^2.0.2", + "upper-case-first": "^2.0.2" + } + }, "node_modules/char-regex": { "version": "1.0.2", "dev": true, @@ -11264,6 +12936,55 @@ "version": "2.5.1", "license": "MIT" }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cli-width": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", @@ -11290,6 +13011,15 @@ "node": ">=12" } }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, "node_modules/clsx": { "version": "1.2.1", "dev": true, @@ -11340,6 +13070,12 @@ "color-support": "bin.js" } }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, "node_modules/combined-stream": { "version": "1.0.8", "dev": true, @@ -11365,6 +13101,15 @@ "dev": true, "license": "ISC" }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/compare-func": { "version": "2.0.0", "dev": true, @@ -11399,7 +13144,18 @@ "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "dev": true, - "license": "ISC" + "license": "ISC" + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" + } }, "node_modules/conventional-changelog-angular": { "version": "7.0.0", @@ -11541,6 +13297,27 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/cross-fetch": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz", + "integrity": "sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==", + "dev": true, + "dependencies": { + "node-fetch": "^2.7.0" + } + }, + "node_modules/cross-inspect": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.1.tgz", + "integrity": "sha512-Pcw1JTvZLSJH83iiGWt6fRcT+BjZlCDRVwYLbUcHzv/CRpB7r0MlSrGbIyQvVSNyGnbt7G4AXuyCiDR3POvZ1A==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -11710,6 +13487,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, "node_modules/data-urls": { "version": "5.0.0", "dev": true, @@ -11776,11 +13562,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/dataloader": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-2.2.3.tgz", + "integrity": "sha512-y2krtASINtPFS1rSDjacrFgn1dcUuoREVabwlOGOe4SdxenREqwjwjElAdwvbGM7kgZz9a3KVicWR7vcz8rnzA==", + "dev": true + }, "node_modules/de-indent": { "version": "1.0.2", "dev": true, "license": "MIT" }, + "node_modules/debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, "node_modules/debug": { "version": "4.3.7", "dev": true, @@ -11797,6 +13595,15 @@ } } }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/decimal.js": { "version": "10.4.3", "dev": true, @@ -11875,6 +13682,18 @@ "node": ">=0.10.0" } }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "dev": true, @@ -11932,6 +13751,15 @@ "dev": true, "license": "MIT" }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/dequal": { "version": "2.0.3", "dev": true, @@ -12119,6 +13947,27 @@ "node": ">=8" } }, + "node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dset": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/dset/-/dset-3.1.4.tgz", + "integrity": "sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -13405,6 +15254,18 @@ "node": ">=4" } }, + "node_modules/extract-files": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/extract-files/-/extract-files-11.0.0.tgz", + "integrity": "sha512-FuoE1qtbJ4bBVvv94CC7s0oTnKUGvQs+Rjf1L2SJFfS+HTVVjhPFtehPdQ0JiGPqVNfSSZvL5yzHHQq2Z4WNhQ==", + "dev": true, + "engines": { + "node": "^12.20 || >= 14.13" + }, + "funding": { + "url": "https://github.com/sponsors/jaydenseric" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "dev": true, @@ -13468,17 +15329,83 @@ "version": "2.0.2", "dev": true, "license": "Apache-2.0", - "optional": true, - "peer": true, "dependencies": { "bser": "2.1.1" } }, + "node_modules/fbjs": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.5.tgz", + "integrity": "sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==", + "dev": true, + "dependencies": { + "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": "^1.0.35" + } + }, + "node_modules/fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==", + "dev": true + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/fflate": { "version": "0.8.2", "dev": true, "license": "MIT" }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", "dev": true, @@ -13620,6 +15547,18 @@ "node": ">= 6" } }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dev": true, + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, "node_modules/fraction.js": { "version": "4.3.7", "dev": true, @@ -14013,6 +15952,70 @@ "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" } }, + "node_modules/graphql-config": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/graphql-config/-/graphql-config-5.1.3.tgz", + "integrity": "sha512-RBhejsPjrNSuwtckRlilWzLVt2j8itl74W9Gke1KejDTz7oaA5kVd6wRn9zK9TS5mcmIYGxf7zN7a1ORMdxp1Q==", + "dev": true, + "dependencies": { + "@graphql-tools/graphql-file-loader": "^8.0.0", + "@graphql-tools/json-file-loader": "^8.0.0", + "@graphql-tools/load": "^8.0.0", + "@graphql-tools/merge": "^9.0.0", + "@graphql-tools/url-loader": "^8.0.0", + "@graphql-tools/utils": "^10.0.0", + "cosmiconfig": "^8.1.0", + "jiti": "^2.0.0", + "minimatch": "^9.0.5", + "string-env-interpolation": "^1.0.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">= 16.0.0" + }, + "peerDependencies": { + "cosmiconfig-toml-loader": "^1.0.0", + "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + }, + "peerDependenciesMeta": { + "cosmiconfig-toml-loader": { + "optional": true + } + } + }, + "node_modules/graphql-config/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/graphql-config/node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "dev": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/graphql-config/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/graphql-request": { "version": "7.1.0", "dev": true, @@ -14043,6 +16046,47 @@ } } }, + "node_modules/graphql-tag": { + "version": "2.12.6", + "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", + "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/graphql-ws": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-6.0.3.tgz", + "integrity": "sha512-mvLRHihMg0llF74vo16063HufZHMGaiMxAjzyj0ARYueIikGzj1khlbPNl7vUc2h9rxbq9pGpQYbqypgq1fAXA==", + "dev": true, + "engines": { + "node": ">=20" + }, + "peerDependencies": { + "@fastify/websocket": "^10 || ^11", + "graphql": "^15.10.1 || ^16", + "uWebSockets.js": "^20", + "ws": "^8" + }, + "peerDependenciesMeta": { + "@fastify/websocket": { + "optional": true + }, + "uWebSockets.js": { + "optional": true + }, + "ws": { + "optional": true + } + } + }, "node_modules/has-bigints": { "version": "1.0.2", "dev": true, @@ -14176,6 +16220,16 @@ "he": "bin/he" } }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "dev": true, + "dependencies": { + "capital-case": "^1.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/headers-polyfill": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-4.0.3.tgz", @@ -14334,6 +16388,26 @@ "postcss": "^8.1.0" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/ignore": { "version": "5.3.2", "dev": true, @@ -14379,6 +16453,18 @@ "node": ">=4" } }, + "node_modules/import-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-4.0.0.tgz", + "integrity": "sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==", + "dev": true, + "engines": { + "node": ">=12.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/import-lazy": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", @@ -14460,6 +16546,61 @@ "dev": true, "license": "MIT" }, + "node_modules/inquirer": { + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", + "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/inquirer/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/internal-slot": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", @@ -14480,14 +16621,36 @@ "dev": true, "license": "MIT", "dependencies": { - "escape-html": "^1.0.3" - }, - "funding": { - "type": "ko-fi", - "url": "https://ko-fi.com/milesjohnson" + "escape-html": "^1.0.3" + }, + "funding": { + "type": "ko-fi", + "url": "https://ko-fi.com/milesjohnson" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "dependencies": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "engines": { + "node": ">=0.10.0" } }, "node_modules/is-alphabetical": { @@ -14779,6 +16942,24 @@ "dev": true, "license": "MIT" }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-lower-case/-/is-lower-case-2.0.2.tgz", + "integrity": "sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/is-map": { "version": "2.0.3", "dev": true, @@ -14872,6 +17053,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "dependencies": { + "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-set": { "version": "2.0.3", "dev": true, @@ -14986,6 +17179,39 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "dependencies": { + "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-upper-case/-/is-upper-case-2.0.2.tgz", + "integrity": "sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/is-weakmap": { "version": "2.0.2", "dev": true, @@ -15060,6 +17286,15 @@ "dev": true, "license": "ISC" }, + "node_modules/isomorphic-ws": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz", + "integrity": "sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==", + "dev": true, + "peerDependencies": { + "ws": "*" + } + }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", "dev": true, @@ -16218,6 +18453,15 @@ "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", "dev": true }, + "node_modules/jose": { + "version": "5.9.6", + "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz", + "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/panva" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "license": "MIT" @@ -16379,6 +18623,19 @@ "dev": true, "license": "MIT" }, + "node_modules/json-to-pretty-yaml": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/json-to-pretty-yaml/-/json-to-pretty-yaml-1.2.2.tgz", + "integrity": "sha512-rvm6hunfCcqegwYaG5T4yKJWxc9FXFgBVrcTZ4XfSVRwa5HA/Xs+vB/Eo9treYYHCeNM0nrSUr82V/M31Urc7A==", + "dev": true, + "dependencies": { + "remedial": "^1.0.7", + "remove-trailing-spaces": "^1.0.6" + }, + "engines": { + "node": ">= 0.2.0" + } + }, "node_modules/json5": { "version": "2.2.3", "dev": true, @@ -16703,6 +18960,48 @@ "uc.micro": "^2.0.0" } }, + "node_modules/listr2": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/loader-runner": { "version": "4.3.0", "dev": true, @@ -16804,6 +19103,12 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, "node_modules/lodash.startcase": { "version": "4.4.0", "dev": true, @@ -16819,6 +19124,71 @@ "dev": true, "license": "MIT" }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/longest-streak": { "version": "3.1.0", "dev": true, @@ -16851,6 +19221,15 @@ "tslib": "^2.0.3" } }, + "node_modules/lower-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case-first/-/lower-case-first-2.0.2.tgz", + "integrity": "sha512-EVm/rR94FJTZi3zefZ82fLWab+GX14LJN4HrWBcuo6Evmsl9hEfnqxgcHCKb9q+mNf6EVdsjx/qucYFIIB84pg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/lru-cache": { "version": "5.1.1", "dev": true, @@ -16915,6 +19294,15 @@ "tmpl": "1.0.5" } }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/map-or-similar": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz", @@ -17286,6 +19674,23 @@ "node": ">= 8" } }, + "node_modules/meros": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/meros/-/meros-1.3.0.tgz", + "integrity": "sha512-2BNGOimxEz5hmjUG2FwoxCt5HN7BXdaWyFqEwxPTrJzVdABtrL4TiHTcsWSFAxPQ/tOnEaQEJh3qWq71QRMY+w==", + "dev": true, + "engines": { + "node": ">=13" + }, + "peerDependencies": { + "@types/node": ">=13" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, "node_modules/micromark": { "version": "4.0.0", "dev": true, @@ -17867,8 +20272,6 @@ "version": "2.1.0", "dev": true, "license": "MIT", - "optional": true, - "peer": true, "engines": { "node": ">=6" } @@ -18091,12 +20494,71 @@ "optional": true, "peer": true }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/node-int64": { "version": "0.4.0", "dev": true, - "license": "MIT", - "optional": true, - "peer": true + "license": "MIT" }, "node_modules/node-releases": { "version": "2.0.18", @@ -18221,6 +20683,12 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, + "node_modules/nullthrows": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", + "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", + "dev": true + }, "node_modules/nwsapi": { "version": "2.2.13", "dev": true, @@ -18363,8 +20831,6 @@ "version": "5.1.2", "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { "mimic-fn": "^2.1.0" }, @@ -18393,6 +20859,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/optimism": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/optimism/-/optimism-0.18.1.tgz", + "integrity": "sha512-mLXNwWPa9dgFyDqkNi54sjDyNJ9/fTI6WGBLgnXku1vdKY/jovHfZT5r+aiVeFFLOz+foPNOm5YJ4mqgld2GBQ==", + "dev": true, + "dependencies": { + "@wry/caches": "^1.0.0", + "@wry/context": "^0.7.0", + "@wry/trie": "^0.5.0", + "tslib": "^2.3.0" + } + }, "node_modules/optionator": { "version": "0.9.4", "dev": true, @@ -18409,6 +20887,29 @@ "node": ">= 0.8.0" } }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/os-tmpdir": { "version": "1.0.2", "dev": true, @@ -18539,6 +21040,16 @@ "dev": true, "license": "MIT" }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/parent-module": { "version": "1.0.1", "dev": true, @@ -18574,6 +21085,20 @@ "dev": true, "license": "MIT" }, + "node_modules/parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", + "dev": true, + "dependencies": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/parse-json": { "version": "5.2.0", "dev": true, @@ -18602,10 +21127,30 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, "node_modules/path-browserify": { "version": "1.0.1", "dev": true, - "license": "MIT" + "license": "MIT" + }, + "node_modules/path-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", + "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", + "dev": true, + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } }, "node_modules/path-exists": { "version": "4.0.0", @@ -18636,6 +21181,27 @@ "dev": true, "license": "MIT" }, + "node_modules/path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", + "dev": true, + "dependencies": { + "path-root-regex": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/path-scurry": { "version": "1.11.1", "dev": true, @@ -19115,6 +21681,15 @@ "node": ">= 0.6.0" } }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "dependencies": { + "asap": "~2.0.3" + } + }, "node_modules/prompts": { "version": "2.4.2", "dev": true, @@ -19725,6 +22300,35 @@ "regjsparser": "bin/parser" } }, + "node_modules/rehackt": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/rehackt/-/rehackt-0.1.0.tgz", + "integrity": "sha512-7kRDOuLHB87D/JESKxQoRwv4DzbIdwkAGQ7p6QKGdVlY1IZheUnVhlk/4UZlNUVxdAXpyxikE3URsG067ybVzw==", + "dev": true, + "peerDependencies": { + "@types/react": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + } + } + }, + "node_modules/relay-runtime": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/relay-runtime/-/relay-runtime-12.0.0.tgz", + "integrity": "sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.0.0", + "fbjs": "^3.0.0", + "invariant": "^2.2.4" + } + }, "node_modules/remark-gfm": { "version": "4.0.0", "dev": true, @@ -19792,6 +22396,27 @@ "dev": true, "license": "MIT" }, + "node_modules/remedial": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/remedial/-/remedial-1.0.8.tgz", + "integrity": "sha512-/62tYiOe6DzS5BqVsNpH/nkGlX45C/Sp6V+NtiN6JQNS1Viay7cWkazmRkrQrdFj2eshDe96SIQNIoMxqhzBOg==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", + "dev": true + }, + "node_modules/remove-trailing-spaces": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/remove-trailing-spaces/-/remove-trailing-spaces-1.0.8.tgz", + "integrity": "sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA==", + "dev": true + }, "node_modules/require-directory": { "version": "2.1.1", "license": "MIT", @@ -19807,6 +22432,12 @@ "node": ">=0.10.0" } }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, "node_modules/requires-port": { "version": "1.0.0", "license": "MIT" @@ -19866,6 +22497,19 @@ "node": ">=10" } }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/reusify": { "version": "1.0.4", "dev": true, @@ -19875,6 +22519,12 @@ "node": ">=0.10.0" } }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true + }, "node_modules/rimraf": { "version": "3.0.2", "dev": true, @@ -19930,6 +22580,15 @@ "dev": true, "license": "MIT" }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "dev": true, @@ -19952,6 +22611,15 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, "node_modules/safe-array-concat": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", @@ -20155,6 +22823,12 @@ "url": "https://opencollective.com/webpack" } }, + "node_modules/scuid": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/scuid/-/scuid-1.1.0.tgz", + "integrity": "sha512-MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg==", + "dev": true + }, "node_modules/semver": { "version": "7.6.3", "dev": true, @@ -20166,6 +22840,17 @@ "node": ">=10" } }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, "node_modules/serialize-javascript": { "version": "6.0.2", "dev": true, @@ -20227,6 +22912,12 @@ "node": ">= 0.4" } }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true + }, "node_modules/shadow-dom-testing-library": { "version": "1.11.3", "dev": true, @@ -20263,6 +22954,18 @@ "node": ">=8" } }, + "node_modules/shell-quote": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.2.tgz", + "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/side-channel": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", @@ -20349,6 +23052,12 @@ "dev": true, "license": "ISC" }, + "node_modules/signedsource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/signedsource/-/signedsource-1.0.0.tgz", + "integrity": "sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==", + "dev": true + }, "node_modules/sirv": { "version": "2.0.4", "dev": true, @@ -20377,6 +23086,20 @@ "node": ">=8" } }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/slide": { "version": "1.1.6", "dev": true, @@ -20530,6 +23253,15 @@ "node": ">= 10.x" } }, + "node_modules/sponge-case": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sponge-case/-/sponge-case-1.0.1.tgz", + "integrity": "sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "dev": true, @@ -20616,6 +23348,15 @@ } } }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/strict-event-emitter": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.5.1.tgz", @@ -20641,6 +23382,12 @@ "node": ">=0.6.19" } }, + "node_modules/string-env-interpolation": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string-env-interpolation/-/string-env-interpolation-1.0.1.tgz", + "integrity": "sha512-78lwMoCcn0nNu8LszbP1UA7g55OeE4v7rCeWnM5B453rnNr4aq+5it3FEYtZrSEiMvHZOZ9Jlqb0OD0M2VInqg==", + "dev": true + }, "node_modules/string-length": { "version": "6.0.0", "dev": true, @@ -21043,6 +23790,15 @@ "node": ">= 10" } }, + "node_modules/swap-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/swap-case/-/swap-case-2.0.2.tgz", + "integrity": "sha512-kc6S2YS/2yXbtkSMunBtKdah4VFETZ8Oh6ONSmSd9bRxhqTrtARUCBUiWXH3xVPpvR7tz2CSnkuXVE42EcGnMw==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/symbol-observable": { "version": "1.2.0", "dev": true, @@ -21056,6 +23812,38 @@ "dev": true, "license": "MIT" }, + "node_modules/sync-fetch": { + "version": "0.6.0-2", + "resolved": "https://registry.npmjs.org/sync-fetch/-/sync-fetch-0.6.0-2.tgz", + "integrity": "sha512-c7AfkZ9udatCuAy9RSfiGPpeOKKUAUK5e1cXadLOGUjasdxqYqAK0jTNkM/FSEyJ3a5Ra27j/tw/PS0qLmaF/A==", + "dev": true, + "dependencies": { + "node-fetch": "^3.3.2", + "timeout-signal": "^2.0.0", + "whatwg-mimetype": "^4.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/sync-fetch/node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "dev": true, + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, "node_modules/synckit": { "version": "0.9.2", "dev": true, @@ -21407,6 +24195,15 @@ "dev": true, "license": "MIT" }, + "node_modules/timeout-signal": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/timeout-signal/-/timeout-signal-2.0.0.tgz", + "integrity": "sha512-YBGpG4bWsHoPvofT6y/5iqulfXIiIErl5B0LdtHT1mGXDFTAhhRrbUpTvBgYbovr+3cKblya2WAOcpoy90XguA==", + "dev": true, + "engines": { + "node": ">=16" + } + }, "node_modules/tiny-invariant": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", @@ -21495,6 +24292,15 @@ "node": ">=14.0.0" } }, + "node_modules/title-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz", + "integrity": "sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/tldts": { "version": "6.1.51", "dev": true, @@ -21620,6 +24426,18 @@ "dev": true, "license": "Apache-2.0" }, + "node_modules/ts-invariant": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.10.3.tgz", + "integrity": "sha512-uivwYcQaxAucv1CzRp2n/QdYPo4ILf9VXgH19zEIjFx2EJufV16P0JtJVpYHy89DItG6Kwj2oIUjrcK5au+4tQ==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ts-loader": { "version": "9.5.1", "dev": true, @@ -21647,6 +24465,12 @@ "node": ">= 8" } }, + "node_modules/ts-log": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.7.tgz", + "integrity": "sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg==", + "dev": true + }, "node_modules/ts-luxon": { "version": "4.6.2", "dev": true, @@ -21701,9 +24525,10 @@ } }, "node_modules/tslib": { - "version": "2.7.0", - "dev": true, - "license": "0BSD" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true }, "node_modules/turbo": { "version": "2.1.3", @@ -22079,6 +24904,32 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/ua-parser-js": { + "version": "1.0.40", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.40.tgz", + "integrity": "sha512-z6PJ8Lml+v3ichVojCiB8toQJBuwR42ySM4ezjXIqXK3M0HczmKQ3LF4rhU55PfD99KEEXQG6yb7iOMyvYuHew==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "bin": { + "ua-parser-js": "script/cli.js" + }, + "engines": { + "node": "*" + } + }, "node_modules/uc.micro": { "version": "2.1.0", "dev": true, @@ -22108,6 +24959,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/underscore": { "version": "1.13.7", "dev": true, @@ -22258,6 +25118,30 @@ "node": ">= 4.0.0" } }, + "node_modules/unixify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unixify/-/unixify-1.0.0.tgz", + "integrity": "sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg==", + "dev": true, + "dependencies": { + "normalize-path": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unixify/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/unplugin": { "version": "1.16.0", "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.16.0.tgz", @@ -22314,6 +25198,24 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/upper-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", + "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, "node_modules/uri-js": { "version": "4.4.1", "dev": true, @@ -22330,6 +25232,12 @@ "requires-port": "^1.0.0" } }, + "node_modules/urlpattern-polyfill": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", + "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", + "dev": true + }, "node_modules/use-sync-external-store": { "version": "1.2.2", "license": "MIT", @@ -22392,6 +25300,15 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/value-or-promise": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz", + "integrity": "sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/vfile": { "version": "6.0.3", "dev": true, @@ -23382,6 +26299,24 @@ "node": ">=10.13.0" } }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, "node_modules/webidl-conversions": { "version": "7.0.0", "dev": true, @@ -23632,6 +26567,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "dev": true + }, "node_modules/which-typed-array": { "version": "1.1.18", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", @@ -23827,6 +26768,12 @@ "node": ">= 6" } }, + "node_modules/yaml-ast-parser": { + "version": "0.0.43", + "resolved": "https://registry.npmjs.org/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz", + "integrity": "sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==", + "dev": true + }, "node_modules/yargs": { "version": "17.7.2", "license": "MIT", @@ -23873,6 +26820,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/zen-observable": { + "version": "0.8.15", + "resolved": "https://registry.npmjs.org/zen-observable/-/zen-observable-0.8.15.tgz", + "integrity": "sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ==", + "dev": true + }, + "node_modules/zen-observable-ts": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/zen-observable-ts/-/zen-observable-ts-1.2.5.tgz", + "integrity": "sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg==", + "dev": true, + "dependencies": { + "zen-observable": "0.8.15" + } + }, "node_modules/zod": { "version": "3.23.8", "dev": true, @@ -24205,7 +27167,7 @@ }, "packages/oauth": { "name": "@cloudoperators/juno-oauth", - "version": "1.4.1", + "version": "1.4.2", "license": "Apache-2.0", "dependencies": { "oauth-pkce": "^0.0.6" @@ -24800,7 +27762,7 @@ }, "packages/ui-components": { "name": "@cloudoperators/juno-ui-components", - "version": "2.37.0", + "version": "2.38.0", "license": "Apache-2.0", "devDependencies": { "@cloudoperators/juno-config": "*",