From 3724071fcb6bdc64e0c28676eab61a46494968df Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:39:25 +0100 Subject: [PATCH 01/87] docs: update funding --- .github/FUNDING.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 043f0f9bc..2c9aab231 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,3 +1,3 @@ # These are supported funding model platforms -github: juliusmarminge +open_collective: homarr From f12192e6f260af14cc04971c9b097211e95c5966 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:50:08 +0100 Subject: [PATCH 02/87] config: add renovate CI --- .github/renovate.json | 3 ++- .github/workflows/renovate.yml | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/renovate.yml diff --git a/.github/renovate.json b/.github/renovate.json index 0942ac01d..5685739b9 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -1,5 +1,6 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "platform": "github", "extends": [ "config:base" ], @@ -13,5 +14,5 @@ ], "updateInternalDeps": true, "rangeStrategy": "bump", - "automerge": true + "automerge": false } \ No newline at end of file diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml new file mode 100644 index 000000000..7e32d6422 --- /dev/null +++ b/.github/workflows/renovate.yml @@ -0,0 +1,19 @@ +name: Renovate + +on: + schedule: + - cron: 0 0 * * * + workflow_dispatch: {} + +jobs: + renovate: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4.1.1 + - name: Self-hosted Renovate + uses: renovatebot/github-action@v40.0.2 + with: + docker-cmd-file: .github/renovate-entrypoint.sh + docker-user: root + token: ${{ secrets.RENOVATE_TOKEN }} \ No newline at end of file From b678401020acb0ae36a01a6d80f45da69a8e276b Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:50:55 +0100 Subject: [PATCH 03/87] config: add base branch to renovate --- .github/renovate.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json b/.github/renovate.json index 5685739b9..4b5e91ca5 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -14,5 +14,6 @@ ], "updateInternalDeps": true, "rangeStrategy": "bump", - "automerge": false + "automerge": false, + "baseBranches": ["dev"] } \ No newline at end of file From 89311c44a0c86d49297bfa7b19602d8ba1e80578 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:53:15 +0100 Subject: [PATCH 04/87] config: remove docker properties renovate --- .github/renovate.json | 3 ++- .github/workflows/renovate.yml | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index 4b5e91ca5..9e6357e15 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -15,5 +15,6 @@ "updateInternalDeps": true, "rangeStrategy": "bump", "automerge": false, - "baseBranches": ["dev"] + "baseBranches": ["dev"], + "branchPrefix": "renovate/" } \ No newline at end of file diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml index 7e32d6422..d9cd493b6 100644 --- a/.github/workflows/renovate.yml +++ b/.github/workflows/renovate.yml @@ -14,6 +14,5 @@ jobs: - name: Self-hosted Renovate uses: renovatebot/github-action@v40.0.2 with: - docker-cmd-file: .github/renovate-entrypoint.sh - docker-user: root - token: ${{ secrets.RENOVATE_TOKEN }} \ No newline at end of file + token: ${{ secrets.RENOVATE_TOKEN }} + configurationFile: '.github/renovate.json' \ No newline at end of file From 39b4e761de61ab1e2aa27b74734c71ed0052aaa8 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:56:58 +0100 Subject: [PATCH 05/87] config: migrate renovate config --- .github/renovate.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index 9e6357e15..ae105dcc0 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -2,7 +2,7 @@ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "platform": "github", "extends": [ - "config:base" + "config:recommended" ], "packageRules": [ { @@ -15,6 +15,9 @@ "updateInternalDeps": true, "rangeStrategy": "bump", "automerge": false, - "baseBranches": ["dev"], - "branchPrefix": "renovate/" + "baseBranches": [ + "dev" + ], + "branchPrefix": "renovate/", + "autodiscover": true } \ No newline at end of file From c736f17f14312ead3e06e7dc6d664c1f358741b8 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 21:59:49 +0100 Subject: [PATCH 06/87] config: disable auto discover --- .github/renovate.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json b/.github/renovate.json index ae105dcc0..1fcf4f5f6 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -19,5 +19,7 @@ "dev" ], "branchPrefix": "renovate/", - "autodiscover": true + "repositories": [ + "homarr-labs/homarr" + ] } \ No newline at end of file From 3e2bc9df0e96ae68c84df67be262d9da8c27e1ce Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:06:40 +0100 Subject: [PATCH 07/87] config: remove renovate workflow --- .github/renovate.json | 5 ----- .github/workflows/renovate.yml | 18 ------------------ 2 files changed, 23 deletions(-) delete mode 100644 .github/workflows/renovate.yml diff --git a/.github/renovate.json b/.github/renovate.json index 1fcf4f5f6..2b4c6ceae 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -1,6 +1,5 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "platform": "github", "extends": [ "config:recommended" ], @@ -17,9 +16,5 @@ "automerge": false, "baseBranches": [ "dev" - ], - "branchPrefix": "renovate/", - "repositories": [ - "homarr-labs/homarr" ] } \ No newline at end of file diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml deleted file mode 100644 index d9cd493b6..000000000 --- a/.github/workflows/renovate.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: Renovate - -on: - schedule: - - cron: 0 0 * * * - workflow_dispatch: {} - -jobs: - renovate: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4.1.1 - - name: Self-hosted Renovate - uses: renovatebot/github-action@v40.0.2 - with: - token: ${{ secrets.RENOVATE_TOKEN }} - configurationFile: '.github/renovate.json' \ No newline at end of file From e9c6583d2123637874a70bcfec96ea7be899ba6f Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:09:11 +0100 Subject: [PATCH 08/87] chore(deps): update dependency @types/react to ^18.2.52 (#18) Co-authored-by: Renovate Bot --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index d7f597354..c703a4458 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -53,7 +53,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "@types/node": "^18.18.13", - "@types/react": "^18.2.46", + "@types/react": "^18.2.52", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d07a7938c..2f170c5f5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -145,7 +145,7 @@ importers: specifier: ^18.18.13 version: 18.18.13 '@types/react': - specifier: ^18.2.46 + specifier: ^18.2.52 version: 18.2.52 '@types/react-dom': specifier: ^18.2.18 From f0fa0eb321a0a239e4bb74555004c8b8ee47f345 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:10:21 +0100 Subject: [PATCH 09/87] config: disable dependency dashboard --- .github/renovate.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json b/.github/renovate.json index 2b4c6ceae..65e1d848e 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -16,5 +16,6 @@ "automerge": false, "baseBranches": [ "dev" - ] + ], + "dependencyDashboard": false } \ No newline at end of file From 9d520874f4feb71587d365a82a75e2de93720b4e Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sat, 3 Feb 2024 22:26:12 +0100 Subject: [PATCH 10/87] feat: add board (#15) * wip: Add gridstack board * wip: Centralize board pages, Add board settings page * fix: remove cyclic dependency and rename widget-sort to kind * improve: Add header actions as parallel route * feat: add item select modal, add category edit modal, * feat: add edit item modal * feat: add remove item modal * wip: add category actions * feat: add saving of board, wip: add app widget * Merge branch 'main' into add-board * chore: update turbo dependencies * chore: update mantine dependencies * chore: fix typescript errors, lint and format * feat: add confirm modal to category removal, move items of removed category to above wrapper * feat: remove app widget to continue in another branch * feat: add loading spinner until board is initialized * fix: issue with cellheight of gridstack items * feat: add translations for board * fix: issue with translation for settings page * chore: address pull request feedback --- apps/nextjs/package.json | 10 +- .../integrations/_integration-buttons.tsx | 4 +- .../_integration-test-connection.tsx | 5 +- .../edit/[id]/_integration-edit-form.tsx | 4 +- .../new/_integration-new-form.tsx | 4 +- .../app/[locale]/_client-providers/trpc.tsx | 9 +- .../src/app/[locale]/auth/login/page.tsx | 4 +- .../boards/(default)/@headeractions/page.tsx | 3 + .../[locale]/boards/(default)/_definition.ts | 8 + .../app/[locale]/boards/(default)/layout.tsx | 5 + .../app/[locale]/boards/(default)/page.tsx | 7 + .../boards/[name]/@headeractions/page.tsx | 141 +++++++++ .../[name]/@headeractions/settings/page.tsx | 16 + .../[locale]/boards/[name]/_definition.tsx | 8 + .../src/app/[locale]/boards/[name]/layout.tsx | 5 + .../src/app/[locale]/boards/[name]/page.tsx | 7 + .../boards/[name]/settings/_general.tsx | 115 +++++++ .../[locale]/boards/[name]/settings/page.tsx | 133 ++++++++ .../src/app/[locale]/boards/_client.tsx | 79 +++++ .../src/app/[locale]/boards/_context.tsx | 80 +++++ .../src/app/[locale]/boards/_creator.tsx | 66 ++++ apps/nextjs/src/app/[locale]/boards/_types.ts | 15 + .../[locale]/init/user/_init-user-form.tsx | 6 +- .../src/app/[locale]/init/user/page.tsx | 4 +- apps/nextjs/src/app/[locale]/modals.tsx | 5 + .../widgets/{[sort] => [kind]}/_content.tsx | 21 +- .../widgets/{[sort] => [kind]}/layout.tsx | 2 +- .../widgets/{[sort] => [kind]}/page.tsx | 13 +- apps/nextjs/src/components/board/editMode.ts | 3 + .../components/board/items/item-actions.tsx | 201 ++++++++++++ .../board/items/item-select-modal.tsx | 84 +++++ .../board/sections/category-section.tsx | 58 ++++ .../sections/category/category-actions.ts | 284 +++++++++++++++++ .../sections/category/category-edit-modal.tsx | 56 ++++ .../category/category-menu-actions.tsx | 107 +++++++ .../board/sections/category/category-menu.tsx | 128 ++++++++ .../src/components/board/sections/content.tsx | 153 +++++++++ .../board/sections/empty-section.tsx | 35 +++ .../sections/gridstack/init-gridstack.ts | 61 ++++ .../board/sections/gridstack/use-gridstack.ts | 209 +++++++++++++ apps/nextjs/src/components/layout/header.tsx | 24 +- .../src/components/layout/header/button.tsx | 47 +++ .../src/components/layout/header/search.tsx | 12 +- apps/nextjs/src/components/layout/logo.tsx | 33 -- .../src/components/layout/logo/board-logo.tsx | 40 +++ .../components/layout/logo/homarr-logo.tsx | 29 ++ .../src/components/layout/logo/logo.tsx | 48 +++ apps/nextjs/src/styles/gridstack.scss | 124 ++++++++ apps/nextjs/src/trpc/react.ts | 7 - package.json | 5 +- packages/api/index.ts | 1 - packages/api/package.json | 4 + packages/api/src/client.ts | 5 + packages/api/src/root.ts | 2 + packages/api/src/router/board.ts | 290 ++++++++++++++++++ packages/db/client.ts | 1 + packages/db/index.ts | 3 + packages/db/package.json | 5 + packages/db/schema/sqlite.ts | 127 ++++++++ packages/definitions/src/board.ts | 13 + packages/definitions/src/index.ts | 3 + packages/definitions/src/section.ts | 2 + packages/definitions/src/widget.ts | 2 + packages/form/package.json | 2 +- packages/notifications/package.json | 2 +- packages/spotlight/package.json | 2 +- packages/translation/src/client.ts | 9 +- packages/translation/src/lang/en.ts | 148 ++++++++- packages/translation/src/server.ts | 9 +- packages/ui/package.json | 4 +- packages/validation/src/board.ts | 43 +++ packages/validation/src/enums.ts | 11 +- packages/validation/src/index.ts | 4 + packages/validation/src/shared.ts | 68 ++++ packages/widgets/package.json | 1 + packages/widgets/src/_inputs/common.tsx | 12 +- .../src/_inputs/widget-multiselect-input.tsx | 4 +- .../src/_inputs/widget-number-input.tsx | 4 +- .../src/_inputs/widget-select-input.tsx | 4 +- .../src/_inputs/widget-slider-input.tsx | 4 +- .../src/_inputs/widget-switch-input.tsx | 4 +- .../widgets/src/_inputs/widget-text-input.tsx | 4 +- packages/widgets/src/definition.ts | 28 +- packages/widgets/src/import.ts | 4 +- packages/widgets/src/index.tsx | 23 +- .../widgets/src/modals/widget-edit-modal.tsx | 38 +-- packages/widgets/src/options.ts | 12 +- pnpm-lock.yaml | 264 ++++++++++------ 88 files changed, 3431 insertions(+), 262 deletions(-) create mode 100644 apps/nextjs/src/app/[locale]/boards/(default)/@headeractions/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/(default)/_definition.ts create mode 100644 apps/nextjs/src/app/[locale]/boards/(default)/layout.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/(default)/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/settings/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/_definition.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/layout.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/[name]/settings/page.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/_client.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/_context.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/_creator.tsx create mode 100644 apps/nextjs/src/app/[locale]/boards/_types.ts rename apps/nextjs/src/app/[locale]/widgets/{[sort] => [kind]}/_content.tsx (81%) rename apps/nextjs/src/app/[locale]/widgets/{[sort] => [kind]}/layout.tsx (94%) rename apps/nextjs/src/app/[locale]/widgets/{[sort] => [kind]}/page.tsx (62%) create mode 100644 apps/nextjs/src/components/board/editMode.ts create mode 100644 apps/nextjs/src/components/board/items/item-actions.tsx create mode 100644 apps/nextjs/src/components/board/items/item-select-modal.tsx create mode 100644 apps/nextjs/src/components/board/sections/category-section.tsx create mode 100644 apps/nextjs/src/components/board/sections/category/category-actions.ts create mode 100644 apps/nextjs/src/components/board/sections/category/category-edit-modal.tsx create mode 100644 apps/nextjs/src/components/board/sections/category/category-menu-actions.tsx create mode 100644 apps/nextjs/src/components/board/sections/category/category-menu.tsx create mode 100644 apps/nextjs/src/components/board/sections/content.tsx create mode 100644 apps/nextjs/src/components/board/sections/empty-section.tsx create mode 100644 apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts create mode 100644 apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts create mode 100644 apps/nextjs/src/components/layout/header/button.tsx delete mode 100644 apps/nextjs/src/components/layout/logo.tsx create mode 100644 apps/nextjs/src/components/layout/logo/board-logo.tsx create mode 100644 apps/nextjs/src/components/layout/logo/homarr-logo.tsx create mode 100644 apps/nextjs/src/components/layout/logo/logo.tsx create mode 100644 apps/nextjs/src/styles/gridstack.scss delete mode 100644 apps/nextjs/src/trpc/react.ts create mode 100644 packages/api/src/client.ts create mode 100644 packages/api/src/router/board.ts create mode 100644 packages/db/client.ts create mode 100644 packages/definitions/src/board.ts create mode 100644 packages/definitions/src/section.ts create mode 100644 packages/definitions/src/widget.ts create mode 100644 packages/validation/src/board.ts create mode 100644 packages/validation/src/shared.ts diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index c703a4458..51ad71e40 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -25,9 +25,9 @@ "@homarr/ui": "workspace:^0.1.0", "@homarr/validation": "workspace:^0.1.0", "@homarr/widgets": "workspace:^0.1.0", - "@mantine/hooks": "^7.4.0", - "@mantine/modals": "^7.4.0", - "@mantine/tiptap": "^7.4.0", + "@mantine/hooks": "^7.5.1", + "@mantine/modals": "^7.5.1", + "@mantine/tiptap": "^7.5.1", "@t3-oss/env-nextjs": "^0.7.1", "@tanstack/react-query": "^5.17.1", "@tanstack/react-query-devtools": "^5.17.1", @@ -40,12 +40,14 @@ "@trpc/react-query": "next", "@trpc/server": "next", "dayjs": "^1.11.10", + "fily-publish-gridstack": "^0.0.13", "jotai": "^2.6.1", - "mantine-modal-manager": "^7.4.0", + "mantine-modal-manager": "^7.5.1", "next": "^14.0.4", "postcss-preset-mantine": "^1.12.3", "react": "18.2.0", "react-dom": "18.2.0", + "sass": "^1.70.0", "superjson": "2.2.1" }, "devDependencies": { diff --git a/apps/nextjs/src/app/[locale]/(main)/integrations/_integration-buttons.tsx b/apps/nextjs/src/app/[locale]/(main)/integrations/_integration-buttons.tsx index 1606cc891..a0e45642f 100644 --- a/apps/nextjs/src/app/[locale]/(main)/integrations/_integration-buttons.tsx +++ b/apps/nextjs/src/app/[locale]/(main)/integrations/_integration-buttons.tsx @@ -2,6 +2,7 @@ import { useRouter } from "next/navigation"; +import { clientApi } from "@homarr/api/client"; import { showErrorNotification, showSuccessNotification, @@ -9,7 +10,6 @@ import { import { useScopedI18n } from "@homarr/translation/client"; import { ActionIcon, IconTrash } from "@homarr/ui"; -import { api } from "~/trpc/react"; import { revalidatePathAction } from "../../../revalidatePathAction"; import { modalEvents } from "../../modals"; @@ -24,7 +24,7 @@ export const DeleteIntegrationActionButton = ({ }: DeleteIntegrationActionButtonProps) => { const t = useScopedI18n("integration.page.delete"); const router = useRouter(); - const { mutateAsync, isPending } = api.integration.delete.useMutation(); + const { mutateAsync, isPending } = clientApi.integration.delete.useMutation(); return ( { const t = useScopedI18n("integration.testConnection"); const { mutateAsync, ...mutation } = - api.integration.testConnection.useMutation(); + clientApi.integration.testConnection.useMutation(); return ( diff --git a/apps/nextjs/src/app/[locale]/(main)/integrations/edit/[id]/_integration-edit-form.tsx b/apps/nextjs/src/app/[locale]/(main)/integrations/edit/[id]/_integration-edit-form.tsx index 2de518af5..1f55d6635 100644 --- a/apps/nextjs/src/app/[locale]/(main)/integrations/edit/[id]/_integration-edit-form.tsx +++ b/apps/nextjs/src/app/[locale]/(main)/integrations/edit/[id]/_integration-edit-form.tsx @@ -4,6 +4,7 @@ import Link from "next/link"; import { useRouter } from "next/navigation"; import type { RouterOutputs } from "@homarr/api"; +import { clientApi } from "@homarr/api/client"; import { getSecretKinds } from "@homarr/definitions"; import { useForm, zodResolver } from "@homarr/form"; import { @@ -16,7 +17,6 @@ import type { z } from "@homarr/validation"; import { validation } from "@homarr/validation"; import { modalEvents } from "~/app/[locale]/modals"; -import { api } from "~/trpc/react"; import { SecretCard } from "../../_integration-secret-card"; import { IntegrationSecretInput } from "../../_integration-secret-inputs"; import { @@ -55,7 +55,7 @@ export const EditIntegrationForm = ({ integration }: EditIntegrationForm) => { ), onValuesChange, }); - const { mutateAsync, isPending } = api.integration.update.useMutation(); + const { mutateAsync, isPending } = clientApi.integration.update.useMutation(); const secretsMap = new Map( integration.secrets.map((secret) => [secret.kind, secret]), diff --git a/apps/nextjs/src/app/[locale]/(main)/integrations/new/_integration-new-form.tsx b/apps/nextjs/src/app/[locale]/(main)/integrations/new/_integration-new-form.tsx index 706cc3df1..c5fad467c 100644 --- a/apps/nextjs/src/app/[locale]/(main)/integrations/new/_integration-new-form.tsx +++ b/apps/nextjs/src/app/[locale]/(main)/integrations/new/_integration-new-form.tsx @@ -3,6 +3,7 @@ import Link from "next/link"; import { useRouter } from "next/navigation"; +import { clientApi } from "@homarr/api/client"; import type { IntegrationKind } from "@homarr/definitions"; import { getSecretKinds } from "@homarr/definitions"; import { useForm, zodResolver } from "@homarr/form"; @@ -15,7 +16,6 @@ import { Button, Fieldset, Group, Stack, TextInput } from "@homarr/ui"; import type { z } from "@homarr/validation"; import { validation } from "@homarr/validation"; -import { api } from "~/trpc/react"; import { IntegrationSecretInput } from "../_integration-secret-inputs"; import { TestConnection, @@ -53,7 +53,7 @@ export const NewIntegrationForm = ({ validate: zodResolver(validation.integration.create.omit({ kind: true })), onValuesChange, }); - const { mutateAsync, isPending } = api.integration.create.useMutation(); + const { mutateAsync, isPending } = clientApi.integration.create.useMutation(); const handleSubmit = async (values: FormType) => { if (isDirty) return; diff --git a/apps/nextjs/src/app/[locale]/_client-providers/trpc.tsx b/apps/nextjs/src/app/[locale]/_client-providers/trpc.tsx index 731c027ae..187c5c9f1 100644 --- a/apps/nextjs/src/app/[locale]/_client-providers/trpc.tsx +++ b/apps/nextjs/src/app/[locale]/_client-providers/trpc.tsx @@ -7,8 +7,9 @@ import { ReactQueryStreamedHydration } from "@tanstack/react-query-next-experime import { loggerLink, unstable_httpBatchStreamLink } from "@trpc/client"; import superjson from "superjson"; +import { clientApi } from "@homarr/api/client"; + import { env } from "~/env.mjs"; -import { api } from "~/trpc/react"; const getBaseUrl = () => { if (typeof window !== "undefined") return ""; // browser should use relative url @@ -33,7 +34,7 @@ export function TRPCReactProvider(props: { ); const [trpcClient] = useState(() => - api.createClient({ + clientApi.createClient({ transformer: superjson, links: [ loggerLink({ @@ -54,13 +55,13 @@ export function TRPCReactProvider(props: { ); return ( - + {props.children} - + ); } diff --git a/apps/nextjs/src/app/[locale]/auth/login/page.tsx b/apps/nextjs/src/app/[locale]/auth/login/page.tsx index e9d8ec451..4ad6bd3f8 100644 --- a/apps/nextjs/src/app/[locale]/auth/login/page.tsx +++ b/apps/nextjs/src/app/[locale]/auth/login/page.tsx @@ -1,7 +1,7 @@ import { getScopedI18n } from "@homarr/translation/server"; import { Card, Center, Stack, Text, Title } from "@homarr/ui"; -import { LogoWithTitle } from "~/components/layout/logo"; +import { HomarrLogoWithTitle } from "~/components/layout/logo/homarr-logo"; import { LoginForm } from "./_login-form"; export default async function Login() { @@ -10,7 +10,7 @@ export default async function Login() { return (
- + {t("title")} diff --git a/apps/nextjs/src/app/[locale]/boards/(default)/@headeractions/page.tsx b/apps/nextjs/src/app/[locale]/boards/(default)/@headeractions/page.tsx new file mode 100644 index 000000000..faec58434 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/(default)/@headeractions/page.tsx @@ -0,0 +1,3 @@ +import headerActions from "../../[name]/@headeractions/page"; + +export default headerActions; diff --git a/apps/nextjs/src/app/[locale]/boards/(default)/_definition.ts b/apps/nextjs/src/app/[locale]/boards/(default)/_definition.ts new file mode 100644 index 000000000..cf95e7c7c --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/(default)/_definition.ts @@ -0,0 +1,8 @@ +import { api } from "~/trpc/server"; +import { createBoardPage } from "../_creator"; + +export default createBoardPage<{ locale: string }>({ + async getInitialBoard() { + return await api.board.default.query(); + }, +}); diff --git a/apps/nextjs/src/app/[locale]/boards/(default)/layout.tsx b/apps/nextjs/src/app/[locale]/boards/(default)/layout.tsx new file mode 100644 index 000000000..7a2eb4b2c --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/(default)/layout.tsx @@ -0,0 +1,5 @@ +import definition from "./_definition"; + +const { layout } = definition; + +export default layout; diff --git a/apps/nextjs/src/app/[locale]/boards/(default)/page.tsx b/apps/nextjs/src/app/[locale]/boards/(default)/page.tsx new file mode 100644 index 000000000..1ff09b28b --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/(default)/page.tsx @@ -0,0 +1,7 @@ +import definition from "./_definition"; + +const { generateMetadata, page } = definition; + +export default page; + +export { generateMetadata }; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx new file mode 100644 index 000000000..4388f9c7a --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx @@ -0,0 +1,141 @@ +"use client"; + +import { useAtom, useAtomValue } from "jotai"; + +import { clientApi } from "@homarr/api/client"; +import { + showErrorNotification, + showSuccessNotification, +} from "@homarr/notifications"; +import { useI18n, useScopedI18n } from "@homarr/translation/client"; +import { + Group, + IconBox, + IconBoxAlignTop, + IconChevronDown, + IconPackageImport, + IconPencil, + IconPencilOff, + IconPlus, + IconSettings, + Menu, +} from "@homarr/ui"; + +import { modalEvents } from "~/app/[locale]/modals"; +import { editModeAtom } from "~/components/board/editMode"; +import { useCategoryActions } from "~/components/board/sections/category/category-actions"; +import { HeaderButton } from "~/components/layout/header/button"; +import { useRequiredBoard } from "../../_context"; + +export default function BoardViewHeaderActions() { + const isEditMode = useAtomValue(editModeAtom); + const board = useRequiredBoard(); + + return ( + <> + {isEditMode && <AddMenu />} + + <EditModeMenu /> + + <HeaderButton href={`/boards/${board.name}/settings`}> + <IconSettings stroke={1.5} /> + </HeaderButton> + </> + ); +} + +const AddMenu = () => { + const { addCategoryToEnd } = useCategoryActions(); + const t = useI18n(); + + return ( + <Menu position="bottom-end" withArrow> + <Menu.Target> + <HeaderButton w="auto" px={4}> + <Group gap={4} wrap="nowrap"> + <IconPlus stroke={1.5} /> + <IconChevronDown color="gray" size={16} /> + </Group> + </HeaderButton> + </Menu.Target> + <Menu.Dropdown style={{ transform: "translate(-3px, 0)" }}> + <Menu.Item + leftSection={<IconBox size={20} />} + onClick={() => + modalEvents.openManagedModal({ + title: t("item.create.title"), + size: "xl", + modal: "itemSelectModal", + innerProps: {}, + }) + } + > + {t("item.action.create")} + </Menu.Item> + <Menu.Item leftSection={<IconPackageImport size={20} />}> + {t("item.action.import")} + </Menu.Item> + + <Menu.Divider /> + + <Menu.Item + leftSection={<IconBoxAlignTop size={20} />} + onClick={() => + modalEvents.openManagedModal({ + title: t("section.category.create.title"), + modal: "categoryEditModal", + innerProps: { + submitLabel: t("section.category.create.submit"), + category: { + id: "new", + name: "", + }, + onSuccess({ name }) { + addCategoryToEnd({ name }); + }, + }, + }) + } + > + {t("section.category.action.create")} + </Menu.Item> + </Menu.Dropdown> + </Menu> + ); +}; + +const EditModeMenu = () => { + const [isEditMode, setEditMode] = useAtom(editModeAtom); + const board = useRequiredBoard(); + const t = useScopedI18n("board.action.edit"); + const { mutate, isPending } = clientApi.board.save.useMutation({ + onSuccess() { + showSuccessNotification({ + title: t("notification.success.title"), + message: t("notification.success.message"), + }); + setEditMode(false); + }, + onError() { + showErrorNotification({ + title: t("notification.error.title"), + message: t("notification.error.message"), + }); + }, + }); + + const toggle = () => { + if (isEditMode) return mutate(board); + setEditMode(true); + }; + + return ( + <HeaderButton onClick={toggle} loading={isPending}> + {isEditMode ? ( + <IconPencilOff stroke={1.5} /> + ) : ( + <IconPencil stroke={1.5} /> + )} + </HeaderButton> + ); +}; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/settings/page.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/settings/page.tsx new file mode 100644 index 000000000..8651981c7 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/settings/page.tsx @@ -0,0 +1,16 @@ +"use client"; + +import { IconLayoutBoard } from "@homarr/ui"; + +import { HeaderButton } from "~/components/layout/header/button"; +import { useRequiredBoard } from "../../../_context"; + +export default function BoardViewLayout() { + const board = useRequiredBoard(); + + return ( + <HeaderButton href={`/boards/${board.name}`}> + <IconLayoutBoard stroke={1.5} /> + </HeaderButton> + ); +} diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/_definition.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/_definition.tsx new file mode 100644 index 000000000..5436994e2 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/_definition.tsx @@ -0,0 +1,8 @@ +import { api } from "~/trpc/server"; +import { createBoardPage } from "../_creator"; + +export default createBoardPage<{ locale: string; name: string }>({ + async getInitialBoard({ name }) { + return await api.board.byName.query({ name }); + }, +}); diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/layout.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/layout.tsx new file mode 100644 index 000000000..7a2eb4b2c --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/layout.tsx @@ -0,0 +1,5 @@ +import definition from "./_definition"; + +const { layout } = definition; + +export default layout; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/page.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/page.tsx new file mode 100644 index 000000000..1ff09b28b --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/page.tsx @@ -0,0 +1,7 @@ +import definition from "./_definition"; + +const { generateMetadata, page } = definition; + +export default page; + +export { generateMetadata }; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx new file mode 100644 index 000000000..57c589dcd --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx @@ -0,0 +1,115 @@ +"use client"; + +import { useEffect } from "react"; +import { + useDebouncedValue, + useDocumentTitle, + useFavicon, +} from "@mantine/hooks"; + +import { clientApi } from "@homarr/api/client"; +import { useForm } from "@homarr/form"; +import { useI18n } from "@homarr/translation/client"; +import { Button, Grid, Group, Stack, TextInput } from "@homarr/ui"; + +import { useUpdateBoard } from "../../_client"; +import type { Board } from "../../_types"; + +interface Props { + board: Board; +} + +export const GeneralSettingsContent = ({ board }: Props) => { + const t = useI18n(); + const { updateBoard } = useUpdateBoard(); + const { mutate, isPending } = + clientApi.board.saveGeneralSettings.useMutation(); + const form = useForm({ + initialValues: { + pageTitle: board.pageTitle, + logoImageUrl: board.logoImageUrl, + metaTitle: board.metaTitle, + faviconImageUrl: board.faviconImageUrl, + }, + onValuesChange({ pageTitle }) { + updateBoard((previous) => ({ + ...previous, + pageTitle, + })); + }, + }); + + useMetaTitlePreview(form.values.metaTitle); + useFaviconPreview(form.values.faviconImageUrl); + useLogoPreview(form.values.logoImageUrl); + + return ( + <form + onSubmit={form.onSubmit((values) => { + mutate(values); + })} + > + <Stack> + <Grid> + <Grid.Col span={{ xs: 12, md: 6 }}> + <TextInput + label={t("board.field.pageTitle.label")} + {...form.getInputProps("pageTitle")} + /> + </Grid.Col> + <Grid.Col span={{ xs: 12, md: 6 }}> + <TextInput + label={t("board.field.metaTitle.label")} + {...form.getInputProps("metaTitle")} + /> + </Grid.Col> + <Grid.Col span={{ xs: 12, md: 6 }}> + <TextInput + label={t("board.field.logoImageUrl.label")} + {...form.getInputProps("logoImageUrl")} + /> + </Grid.Col> + <Grid.Col span={{ xs: 12, md: 6 }}> + <TextInput + label={t("board.field.faviconImageUrl.label")} + {...form.getInputProps("faviconImageUrl")} + /> + </Grid.Col> + </Grid> + <Group justify="end"> + <Button type="submit" loading={isPending}> + {t("common.action.saveChanges")} + </Button> + </Group> + </Stack> + </form> + ); +}; + +const useLogoPreview = (url: string | null) => { + const { updateBoard } = useUpdateBoard(); + const [logoDebounced] = useDebouncedValue(url ?? "", 500); + + useEffect(() => { + if (!logoDebounced.includes(".")) return; + updateBoard((previous) => ({ + ...previous, + logoImageUrl: logoDebounced, + })); + }, [logoDebounced, updateBoard]); +}; + +const useMetaTitlePreview = (title: string | null) => { + const [metaTitleDebounced] = useDebouncedValue(title ?? "", 200); + useDocumentTitle(metaTitleDebounced); +}; + +const validFaviconExtensions = ["ico", "png", "svg", "gif"]; +const isValidUrl = (url: string) => + url.includes("/") && + validFaviconExtensions.some((extension) => url.endsWith(`.${extension}`)); + +const useFaviconPreview = (url: string | null) => { + const [faviconDebounced] = useDebouncedValue(url ?? "", 500); + useFavicon(isValidUrl(faviconDebounced) ? faviconDebounced : ""); +}; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/settings/page.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/settings/page.tsx new file mode 100644 index 000000000..fcfe89938 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/[name]/settings/page.tsx @@ -0,0 +1,133 @@ +import { capitalize } from "@homarr/common"; +import { getScopedI18n } from "@homarr/translation/server"; +import { + Accordion, + AccordionControl, + AccordionItem, + AccordionPanel, + Button, + Container, + Divider, + Group, + IconAlertTriangle, + IconBrush, + IconLayout, + IconSettings, + Stack, + Text, + Title, +} from "@homarr/ui"; + +import { api } from "~/trpc/server"; +import { GeneralSettingsContent } from "./_general"; + +interface Props { + params: { + name: string; + }; +} + +export default async function BoardSettingsPage({ params }: Props) { + const board = await api.board.byName.query({ name: params.name }); + const t = await getScopedI18n("board.setting"); + + return ( + <Container> + <Stack> + <Title>{t("title", { boardName: capitalize(board.name) })} + + + }> + + {t("section.general.title")} + + + + + + + + }> + + {t("section.layout.title")} + + + + + + }> + + {t("section.appearance.title")} + + + + + + }> + + {t("section.dangerZone.title")} + + + + + + + + + {t("section.dangerZone.action.rename.label")} + + + {t("section.dangerZone.action.rename.description")} + + + + + + + + + {t("section.dangerZone.action.visibility.label")} + + + {t( + "section.dangerZone.action.visibility.description.private", + )} + + + + + + + + + {t("section.dangerZone.action.delete.label")} + + + {t("section.dangerZone.action.delete.description")} + + + + + + + + + + + ); +} diff --git a/apps/nextjs/src/app/[locale]/boards/_client.tsx b/apps/nextjs/src/app/[locale]/boards/_client.tsx new file mode 100644 index 000000000..e3b18be59 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/_client.tsx @@ -0,0 +1,79 @@ +"use client"; + +import { useCallback, useRef } from "react"; + +import type { RouterOutputs } from "@homarr/api"; +import { clientApi } from "@homarr/api/client"; +import { Box, LoadingOverlay, Stack } from "@homarr/ui"; + +import { BoardCategorySection } from "~/components/board/sections/category-section"; +import { BoardEmptySection } from "~/components/board/sections/empty-section"; +import { useIsBoardReady, useRequiredBoard } from "./_context"; +import type { CategorySection, EmptySection } from "./_types"; + +type UpdateCallback = ( + prev: RouterOutputs["board"]["default"], +) => RouterOutputs["board"]["default"]; + +export const useUpdateBoard = () => { + const utils = clientApi.useUtils(); + + const updateBoard = useCallback( + (updaterWithoutUndefined: UpdateCallback) => { + utils.board.default.setData(undefined, (previous) => + previous ? updaterWithoutUndefined(previous) : previous, + ); + }, + [utils], + ); + + return { + updateBoard, + }; +}; + +export const ClientBoard = () => { + const board = useRequiredBoard(); + const isReady = useIsBoardReady(); + + const sectionsWithoutSidebars = board.sections + .filter( + (section): section is CategorySection | EmptySection => + section.kind !== "sidebar", + ) + .sort((a, b) => a.position - b.position); + + const ref = useRef(null); + + return ( + + + + {sectionsWithoutSidebars.map((section) => + section.kind === "empty" ? ( + + ) : ( + + ), + )} + + + ); +}; diff --git a/apps/nextjs/src/app/[locale]/boards/_context.tsx b/apps/nextjs/src/app/[locale]/boards/_context.tsx new file mode 100644 index 000000000..e3b69f1cb --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/_context.tsx @@ -0,0 +1,80 @@ +"use client"; + +import type { PropsWithChildren } from "react"; +import { createContext, useCallback, useContext, useState } from "react"; + +import type { RouterOutputs } from "@homarr/api"; +import { clientApi } from "@homarr/api/client"; + +const BoardContext = createContext<{ + board: RouterOutputs["board"]["default"]; + isReady: boolean; + markAsReady: (id: string) => void; +} | null>(null); + +export const BoardProvider = ({ + children, + initialBoard, +}: PropsWithChildren<{ initialBoard: RouterOutputs["board"]["default"] }>) => { + const [readySections, setReadySections] = useState([]); + const { data } = clientApi.board.default.useQuery(undefined, { + initialData: initialBoard, + refetchOnMount: false, + refetchOnWindowFocus: false, + refetchOnReconnect: false, + }); + + const markAsReady = useCallback((id: string) => { + setReadySections((previous) => + previous.includes(id) ? previous : [...previous, id], + ); + }, []); + + return ( + + {children} + + ); +}; + +export const useMarkSectionAsReady = () => { + const context = useContext(BoardContext); + + if (!context) { + throw new Error("Board is required"); + } + + return context.markAsReady; +}; + +export const useIsBoardReady = () => { + const context = useContext(BoardContext); + + if (!context) { + throw new Error("Board is required"); + } + + return context.isReady; +}; + +export const useRequiredBoard = () => { + const optionalBoard = useOptionalBoard(); + + if (!optionalBoard) { + throw new Error("Board is required"); + } + + return optionalBoard; +}; + +export const useOptionalBoard = () => { + const context = useContext(BoardContext); + + return context?.board; +}; diff --git a/apps/nextjs/src/app/[locale]/boards/_creator.tsx b/apps/nextjs/src/app/[locale]/boards/_creator.tsx new file mode 100644 index 000000000..ffb9b61ff --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/_creator.tsx @@ -0,0 +1,66 @@ +import type { PropsWithChildren, ReactNode } from "react"; +import type { Metadata } from "next"; + +import { capitalize } from "@homarr/common"; +import { AppShellMain } from "@homarr/ui"; + +import { MainHeader } from "~/components/layout/header"; +import { BoardLogoWithTitle } from "~/components/layout/logo/board-logo"; +import { ClientShell } from "~/components/layout/shell"; +import { ClientBoard } from "./_client"; +import { BoardProvider } from "./_context"; +import type { Board } from "./_types"; +// This is placed here because it's used in the layout and the page and because it's here it's not needed to load it everywhere +import "../../../styles/gridstack.scss"; + +type Params = Record; + +interface Props { + getInitialBoard: (params: TParams) => Promise; +} + +export const createBoardPage = >({ + getInitialBoard, +}: Props) => { + return { + layout: async ({ + params, + children, + headeractions, + }: PropsWithChildren<{ params: TParams; headeractions: ReactNode }>) => { + const initialBoard = await getInitialBoard(params); + + return ( + + + } + actions={headeractions} + hasNavigation={false} + /> + {children} + + + ); + }, + page: () => { + // TODO: Add check if board is private and user is not logged in + + return ; + }, + generateMetadata: async ({ + params, + }: { + params: TParams; + }): Promise => { + const board = await getInitialBoard(params); + + return { + title: board.metaTitle ?? `${capitalize(board.name)} board | Homarr`, + icons: { + icon: board.faviconImageUrl ? board.faviconImageUrl : undefined, + }, + }; + }, + }; +}; diff --git a/apps/nextjs/src/app/[locale]/boards/_types.ts b/apps/nextjs/src/app/[locale]/boards/_types.ts new file mode 100644 index 000000000..0e9d0495c --- /dev/null +++ b/apps/nextjs/src/app/[locale]/boards/_types.ts @@ -0,0 +1,15 @@ +import type { RouterOutputs } from "@homarr/api"; +import type { WidgetKind } from "@homarr/definitions"; + +export type Board = RouterOutputs["board"]["default"]; +export type Section = Board["sections"][number]; +export type Item = Section["items"][number]; + +export type CategorySection = Extract; +export type EmptySection = Extract; +export type SidebarSection = Extract; + +export type ItemOfKind = Extract< + Item, + { kind: TKind } +>; diff --git a/apps/nextjs/src/app/[locale]/init/user/_init-user-form.tsx b/apps/nextjs/src/app/[locale]/init/user/_init-user-form.tsx index 913d6ee57..af52171e4 100644 --- a/apps/nextjs/src/app/[locale]/init/user/_init-user-form.tsx +++ b/apps/nextjs/src/app/[locale]/init/user/_init-user-form.tsx @@ -2,6 +2,7 @@ import { useRouter } from "next/navigation"; +import { clientApi } from "@homarr/api/client"; import { useForm, zodResolver } from "@homarr/form"; import { showErrorNotification, @@ -12,12 +13,11 @@ import { Button, PasswordInput, Stack, TextInput } from "@homarr/ui"; import type { z } from "@homarr/validation"; import { validation } from "@homarr/validation"; -import { api } from "~/trpc/react"; - export const InitUserForm = () => { const router = useRouter(); const t = useScopedI18n("user"); - const { mutateAsync, error, isPending } = api.user.initUser.useMutation(); + const { mutateAsync, error, isPending } = + clientApi.user.initUser.useMutation(); const form = useForm({ validate: zodResolver(validation.user.init), validateInputOnBlur: true, diff --git a/apps/nextjs/src/app/[locale]/init/user/page.tsx b/apps/nextjs/src/app/[locale]/init/user/page.tsx index 63e87e249..1537c2970 100644 --- a/apps/nextjs/src/app/[locale]/init/user/page.tsx +++ b/apps/nextjs/src/app/[locale]/init/user/page.tsx @@ -4,7 +4,7 @@ import { db } from "@homarr/db"; import { getScopedI18n } from "@homarr/translation/server"; import { Card, Center, Stack, Text, Title } from "@homarr/ui"; -import { LogoWithTitle } from "~/components/layout/logo"; +import { HomarrLogoWithTitle } from "~/components/layout/logo/homarr-logo"; import { InitUserForm } from "./_init-user-form"; export default async function InitUser() { @@ -23,7 +23,7 @@ export default async function InitUser() { return (
- + {t("title")} diff --git a/apps/nextjs/src/app/[locale]/modals.tsx b/apps/nextjs/src/app/[locale]/modals.tsx index 331305f27..7ac3e15a5 100644 --- a/apps/nextjs/src/app/[locale]/modals.tsx +++ b/apps/nextjs/src/app/[locale]/modals.tsx @@ -4,6 +4,11 @@ import { createModalManager } from "mantine-modal-manager"; import { WidgetEditModal } from "@homarr/widgets"; +import { ItemSelectModal } from "~/components/board/items/item-select-modal"; +import { CategoryEditModal } from "~/components/board/sections/category/category-edit-modal"; + export const [ModalsManager, modalEvents] = createModalManager({ + categoryEditModal: CategoryEditModal, widgetEditModal: WidgetEditModal, + itemSelectModal: ItemSelectModal, }); diff --git a/apps/nextjs/src/app/[locale]/widgets/[sort]/_content.tsx b/apps/nextjs/src/app/[locale]/widgets/[kind]/_content.tsx similarity index 81% rename from apps/nextjs/src/app/[locale]/widgets/[sort]/_content.tsx rename to apps/nextjs/src/app/[locale]/widgets/[kind]/_content.tsx index de3e36f13..f1a43a538 100644 --- a/apps/nextjs/src/app/[locale]/widgets/[sort]/_content.tsx +++ b/apps/nextjs/src/app/[locale]/widgets/[kind]/_content.tsx @@ -3,9 +3,8 @@ import { useState } from "react"; import type { WidgetOptionDefinition } from "node_modules/@homarr/widgets/src/options"; -import type { IntegrationKind } from "@homarr/definitions"; +import type { IntegrationKind, WidgetKind } from "@homarr/definitions"; import { ActionIcon, Affix, IconPencil } from "@homarr/ui"; -import type { WidgetSort } from "@homarr/widgets"; import { loadWidgetDynamic, reduceWidgetOptionsWithDefaultValues, @@ -15,7 +14,7 @@ import { import { modalEvents } from "../../modals"; interface WidgetPreviewPageContentProps { - sort: WidgetSort; + kind: WidgetKind; integrationData: { id: string; name: string; @@ -25,10 +24,10 @@ interface WidgetPreviewPageContentProps { } export const WidgetPreviewPageContent = ({ - sort, + kind, integrationData, }: WidgetPreviewPageContentProps) => { - const currentDefinition = widgetImports[sort].definition; + const currentDefinition = widgetImports[kind].definition; const options = currentDefinition.options as Record< string, WidgetOptionDefinition @@ -37,11 +36,11 @@ export const WidgetPreviewPageContent = ({ options: Record<string, unknown>; integrations: string[]; }>({ - options: reduceWidgetOptionsWithDefaultValues(options), + options: reduceWidgetOptionsWithDefaultValues(kind, options), integrations: [], }); - const Comp = loadWidgetDynamic(sort); + const Comp = loadWidgetDynamic(kind); return ( <> @@ -60,9 +59,11 @@ export const WidgetPreviewPageContent = ({ return modalEvents.openManagedModal({ modal: "widgetEditModal", innerProps: { - sort, - definition: currentDefinition.options, - state: [state, setState], + kind, + value: state, + onSuccessfulEdit: (value) => { + setState(value); + }, integrationData: integrationData.filter( (integration) => "supportedIntegrations" in currentDefinition && diff --git a/apps/nextjs/src/app/[locale]/widgets/[sort]/layout.tsx b/apps/nextjs/src/app/[locale]/widgets/[kind]/layout.tsx similarity index 94% rename from apps/nextjs/src/app/[locale]/widgets/[sort]/layout.tsx rename to apps/nextjs/src/app/[locale]/widgets/[kind]/layout.tsx index beae35636..cfd213f9d 100644 --- a/apps/nextjs/src/app/[locale]/widgets/[sort]/layout.tsx +++ b/apps/nextjs/src/app/[locale]/widgets/[kind]/layout.tsx @@ -10,7 +10,7 @@ const getLinks = () => { return { href: `/widgets/${key}`, icon: value.definition.icon, - label: value.definition.sort, + label: value.definition.kind, }; }); }; diff --git a/apps/nextjs/src/app/[locale]/widgets/[sort]/page.tsx b/apps/nextjs/src/app/[locale]/widgets/[kind]/page.tsx similarity index 62% rename from apps/nextjs/src/app/[locale]/widgets/[sort]/page.tsx rename to apps/nextjs/src/app/[locale]/widgets/[kind]/page.tsx index 75419e656..14ea3693a 100644 --- a/apps/nextjs/src/app/[locale]/widgets/[sort]/page.tsx +++ b/apps/nextjs/src/app/[locale]/widgets/[kind]/page.tsx @@ -1,17 +1,18 @@ -import type { PropsWithChildren } from "react"; import { notFound } from "next/navigation"; import { db } from "@homarr/db"; +import type { WidgetKind } from "@homarr/definitions"; import { Center } from "@homarr/ui"; -import type { WidgetSort } from "@homarr/widgets"; import { widgetImports } from "@homarr/widgets"; import { WidgetPreviewPageContent } from "./_content"; -type Props = PropsWithChildren<{ params: { sort: string } }>; +interface Props { + params: { kind: string }; +} export default async function WidgetPreview(props: Props) { - if (!(props.params.sort in widgetImports)) { + if (!(props.params.kind in widgetImports)) { notFound(); } @@ -24,11 +25,11 @@ export default async function WidgetPreview(props: Props) { }, }); - const sort = props.params.sort as WidgetSort; + const sort = props.params.kind as WidgetKind; return ( <Center h="100vh"> - <WidgetPreviewPageContent sort={sort} integrationData={integrationData} /> + <WidgetPreviewPageContent kind={sort} integrationData={integrationData} /> </Center> ); } diff --git a/apps/nextjs/src/components/board/editMode.ts b/apps/nextjs/src/components/board/editMode.ts new file mode 100644 index 000000000..186b60a0f --- /dev/null +++ b/apps/nextjs/src/components/board/editMode.ts @@ -0,0 +1,3 @@ +import { atom } from "jotai"; + +export const editModeAtom = atom(false); diff --git a/apps/nextjs/src/components/board/items/item-actions.tsx b/apps/nextjs/src/components/board/items/item-actions.tsx new file mode 100644 index 000000000..7ad175449 --- /dev/null +++ b/apps/nextjs/src/components/board/items/item-actions.tsx @@ -0,0 +1,201 @@ +import { useCallback } from "react"; + +import { createId } from "@homarr/db/client"; +import type { WidgetKind } from "@homarr/definitions"; + +import { useUpdateBoard } from "~/app/[locale]/boards/_client"; +import type { EmptySection, Item } from "~/app/[locale]/boards/_types"; + +interface MoveAndResizeItem { + itemId: string; + xOffset: number; + yOffset: number; + width: number; + height: number; +} +interface MoveItemToSection { + itemId: string; + sectionId: string; + xOffset: number; + yOffset: number; + width: number; + height: number; +} +interface RemoveItem { + itemId: string; +} + +interface UpdateItemOptions { + itemId: string; + newOptions: Record<string, unknown>; +} + +interface CreateItem { + kind: WidgetKind; +} + +export const useItemActions = () => { + const { updateBoard } = useUpdateBoard(); + + const createItem = useCallback( + ({ kind }: CreateItem) => { + updateBoard((previous) => { + const lastSection = previous.sections + .filter((s): s is EmptySection => s.kind === "empty") + .sort((a, b) => b.position - a.position)[0]; + + if (!lastSection) return previous; + + const widget = { + id: createId(), + kind, + options: {}, + width: 1, + height: 1, + integrations: [], + } satisfies Omit<Item, "kind" | "yOffset" | "xOffset"> & { + kind: WidgetKind; + }; + + return { + ...previous, + sections: previous.sections.map((section) => { + // Return same section if item is not in it + if (section.id !== lastSection.id) return section; + return { + ...section, + items: section.items.concat(widget as unknown as Item), + }; + }), + }; + }); + }, + [updateBoard], + ); + + const updateItemOptions = useCallback( + ({ itemId, newOptions }: UpdateItemOptions) => { + updateBoard((previous) => { + if (!previous) return previous; + return { + ...previous, + sections: previous.sections.map((section) => { + // Return same section if item is not in it + if (!section.items.some((item) => item.id === itemId)) + return section; + return { + ...section, + items: section.items.map((item) => { + // Return same item if item is not the one we're moving + if (item.id !== itemId) return item; + return { + ...item, + options: newOptions, + }; + }), + }; + }), + }; + }); + }, + [updateBoard], + ); + + const moveAndResizeItem = useCallback( + ({ itemId, ...positionProps }: MoveAndResizeItem) => { + updateBoard((previous) => ({ + ...previous, + sections: previous.sections.map((section) => { + // Return same section if item is not in it + if (!section.items.some((item) => item.id === itemId)) return section; + return { + ...section, + items: section.items.map((item) => { + // Return same item if item is not the one we're moving + if (item.id !== itemId) return item; + return { + ...item, + ...positionProps, + } satisfies Item; + }), + }; + }), + })); + }, + [updateBoard], + ); + + const moveItemToSection = useCallback( + ({ itemId, sectionId, ...positionProps }: MoveItemToSection) => { + updateBoard((previous) => { + const currentSection = previous.sections.find((section) => + section.items.some((item) => item.id === itemId), + ); + + // If item is in the same section (on initial loading) don't do anything + if (!currentSection) { + return previous; + } + + const currentItem = currentSection.items.find( + (item) => item.id === itemId, + ); + if (!currentItem) { + return previous; + } + + if (currentSection.id === sectionId && currentItem.xOffset) { + return previous; + } + + return { + ...previous, + sections: previous.sections.map((section) => { + // Return sections without item if not section where it is moved to + if (section.id !== sectionId) + return { + ...section, + items: section.items.filter((item) => item.id !== itemId), + }; + + // Return section and add item to it + return { + ...section, + items: section.items + .filter((item) => item.id !== itemId) + .concat({ + ...currentItem, + ...positionProps, + }), + }; + }), + }; + }); + }, + [updateBoard], + ); + + const removeItem = useCallback( + ({ itemId }: RemoveItem) => { + updateBoard((previous) => { + return { + ...previous, + // Filter removed item out of items array + sections: previous.sections.map((section) => ({ + ...section, + items: section.items.filter((item) => item.id !== itemId), + })), + }; + }); + }, + [updateBoard], + ); + + return { + moveAndResizeItem, + moveItemToSection, + removeItem, + updateItemOptions, + createItem, + }; +}; diff --git a/apps/nextjs/src/components/board/items/item-select-modal.tsx b/apps/nextjs/src/components/board/items/item-select-modal.tsx new file mode 100644 index 000000000..087c6bea8 --- /dev/null +++ b/apps/nextjs/src/components/board/items/item-select-modal.tsx @@ -0,0 +1,84 @@ +import type { ManagedModal } from "mantine-modal-manager"; + +import type { WidgetKind } from "@homarr/definitions"; +import { useI18n } from "@homarr/translation/client"; +import { Button, Card, Center, Grid, Stack, Text } from "@homarr/ui"; + +import { objectEntries } from "../../../../../../packages/common/src"; +import { widgetImports } from "../../../../../../packages/widgets/src"; +import type { WidgetDefinition } from "../../../../../../packages/widgets/src/definition"; +import { useItemActions } from "./item-actions"; + +export const ItemSelectModal: ManagedModal<Record<string, never>> = ({ + actions, +}) => { + return ( + <Grid> + {objectEntries(widgetImports).map(([key, value]) => { + return ( + <WidgetItem + key={key} + kind={key} + definition={value.definition} + closeModal={actions.closeModal} + /> + ); + })} + </Grid> + ); +}; + +const WidgetItem = ({ + kind, + definition, + closeModal, +}: { + kind: WidgetKind; + definition: WidgetDefinition; + closeModal: () => void; +}) => { + const t = useI18n(); + const { createItem } = useItemActions(); + const handleAdd = (kind: WidgetKind) => { + createItem({ kind }); + closeModal(); + }; + + return ( + <Grid.Col span={{ xs: 12, sm: 4, md: 3 }}> + <Card h="100%"> + <Stack justify="space-between" h="100%"> + <Stack gap="xs"> + <Center> + <definition.icon /> + </Center> + <Text lh={1.2} style={{ whiteSpace: "normal" }} ta="center"> + {t(`widget.${kind}.name`)} + </Text> + <Text + lh={1.2} + style={{ whiteSpace: "normal" }} + size="xs" + ta="center" + c="dimmed" + > + {t(`widget.${kind}.description`)} + </Text> + </Stack> + <Button + onClick={() => { + handleAdd(kind); + }} + variant="light" + size="xs" + mt="auto" + radius="md" + fullWidth + > + {t(`item.create.addToBoard`)} + </Button> + </Stack> + </Card> + </Grid.Col> + ); +}; diff --git a/apps/nextjs/src/components/board/sections/category-section.tsx b/apps/nextjs/src/components/board/sections/category-section.tsx new file mode 100644 index 000000000..3397b045d --- /dev/null +++ b/apps/nextjs/src/components/board/sections/category-section.tsx @@ -0,0 +1,58 @@ +import type { RefObject } from "react"; +import { useDisclosure } from "@mantine/hooks"; + +import { + Card, + Collapse, + Group, + IconChevronDown, + IconChevronUp, + Stack, + Title, + UnstyledButton, +} from "@homarr/ui"; + +import type { CategorySection } from "~/app/[locale]/boards/_types"; +import { CategoryMenu } from "./category/category-menu"; +import { SectionContent } from "./content"; +import { useGridstack } from "./gridstack/use-gridstack"; + +interface Props { + section: CategorySection; + mainRef: RefObject<HTMLDivElement>; +} + +export const BoardCategorySection = ({ section, mainRef }: Props) => { + const { refs } = useGridstack({ section, mainRef }); + const [opened, { toggle }] = useDisclosure(false); + + return ( + <Card withBorder p={0}> + <Stack> + <Group wrap="nowrap" gap="sm"> + <UnstyledButton w="100%" p="sm" onClick={toggle}> + <Group wrap="nowrap"> + {opened ? ( + <IconChevronUp size={20} /> + ) : ( + <IconChevronDown size={20} /> + )} + <Title order={3}>{section.name} + + + + + +
+ +
+
+
+ + ); +}; diff --git a/apps/nextjs/src/components/board/sections/category/category-actions.ts b/apps/nextjs/src/components/board/sections/category/category-actions.ts new file mode 100644 index 000000000..16c1b6714 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/category/category-actions.ts @@ -0,0 +1,284 @@ +import { useCallback } from "react"; + +import { createId } from "@homarr/db/client"; + +import { useUpdateBoard } from "~/app/[locale]/boards/_client"; +import type { + CategorySection, + EmptySection, + Section, +} from "~/app/[locale]/boards/_types"; + +interface AddCategory { + name: string; + position: number; +} + +interface RenameCategory { + id: string; + name: string; +} + +interface MoveCategory { + id: string; + direction: "up" | "down"; +} + +interface RemoveCategory { + id: string; +} + +export const useCategoryActions = () => { + const { updateBoard } = useUpdateBoard(); + + const addCategory = useCallback( + ({ name, position }: AddCategory) => { + if (position <= -1) { + return; + } + updateBoard((previous) => ({ + ...previous, + sections: [ + // Ignore sidebar sections + ...previous.sections.filter((section) => section.kind === "sidebar"), + // Place sections before the new category + ...previous.sections.filter( + (section) => + (section.kind === "category" || section.kind === "empty") && + section.position < position, + ), + { + id: createId(), + name, + kind: "category", + position, + items: [], + }, + { + id: createId(), + kind: "empty", + position: position + 1, + items: [], + }, + // Place sections after the new category + ...previous.sections + .filter( + (section): section is CategorySection | EmptySection => + (section.kind === "category" || section.kind === "empty") && + section.position >= position, + ) + .map((section) => ({ + ...section, + position: section.position + 2, + })), + ], + })); + }, + [updateBoard], + ); + + const addCategoryToEnd = useCallback( + ({ name }: { name: string }) => { + updateBoard((previous) => { + const lastSection = previous.sections + .filter( + (x): x is CategorySection | EmptySection => + x.kind === "empty" || x.kind === "category", + ) + .sort((a, b) => b.position - a.position) + .at(0); + + if (!lastSection) return previous; + const lastPosition = lastSection.position; + + return { + ...previous, + sections: [ + ...previous.sections, + { + id: createId(), + name, + kind: "category", + position: lastPosition + 1, + items: [], + }, + { + id: createId(), + kind: "empty", + position: lastPosition + 2, + items: [], + }, + ], + }; + }); + }, + [updateBoard], + ); + + const renameCategory = useCallback( + ({ id: categoryId, name }: RenameCategory) => { + updateBoard((previous) => ({ + ...previous, + sections: previous.sections.map((section) => { + if (section.kind !== "category") return section; + if (section.id !== categoryId) return section; + return { + ...section, + name, + }; + }), + })); + }, + [updateBoard], + ); + + const moveCategory = useCallback( + ({ id, direction }: MoveCategory) => { + updateBoard((previous) => { + const currentCategory = previous.sections.find( + (section): section is CategorySection => + section.kind === "category" && section.id === id, + ); + if (!currentCategory) return previous; + if (currentCategory?.position === 1 && direction === "up") + return previous; + if ( + currentCategory?.position === previous.sections.length - 2 && + direction === "down" + ) + return previous; + + return { + ...previous, + sections: previous.sections.map((section) => { + if (section.kind !== "category" && section.kind !== "empty") + return section; + const offset = direction === "up" ? -2 : 2; + // Move category and empty section + if ( + section.position === currentCategory.position || + section.position - 1 === currentCategory.position + ) { + return { + ...section, + position: section.position + offset, + }; + } + + if ( + direction === "up" && + (section.position === currentCategory.position - 2 || + section.position === currentCategory.position - 1) + ) { + return { + ...section, + position: section.position + 2, + }; + } + + if ( + direction === "down" && + (section.position === currentCategory.position + 2 || + section.position === currentCategory.position + 3) + ) { + return { + ...section, + position: section.position - 2, + }; + } + + return section; + }), + }; + }); + }, + [updateBoard], + ); + + const removeCategory = useCallback( + ({ id: categoryId }: RemoveCategory) => { + updateBoard((previous) => { + const currentCategory = previous.sections.find( + (section): section is CategorySection => + section.kind === "category" && section.id === categoryId, + ); + if (!currentCategory) return previous; + + const aboveWrapper = previous.sections.find( + (section): section is EmptySection => + section.kind === "empty" && + section.position === currentCategory.position - 1, + ); + + const removedWrapper = previous.sections.find( + (section): section is EmptySection => + section.kind === "empty" && + section.position === currentCategory.position + 1, + ); + + if (!aboveWrapper || !removedWrapper) return previous; + + // Calculate the yOffset for the items in the currentCategory and removedWrapper to add them with the same offset to the aboveWrapper + const aboveYOffset = calculateYHeightWithOffset(aboveWrapper); + const categoryYOffset = calculateYHeightWithOffset(currentCategory); + + const previousCategoryItems = currentCategory.items.map((item) => ({ + ...item, + yOffset: item.yOffset + aboveYOffset, + })); + const previousBelowWrapperItems = removedWrapper.items.map((item) => ({ + ...item, + yOffset: item.yOffset + aboveYOffset + categoryYOffset, + })); + + return { + ...previous, + sections: [ + ...previous.sections.filter( + (section) => section.kind === "sidebar", + ), + ...previous.sections.filter( + (section) => + (section.kind === "category" || section.kind === "empty") && + section.position < currentCategory.position - 1, + ), + { + ...aboveWrapper, + items: [ + ...aboveWrapper.items, + ...previousCategoryItems, + ...previousBelowWrapperItems, + ], + }, + ...previous.sections + .filter( + (section): section is CategorySection | EmptySection => + (section.kind === "category" || section.kind === "empty") && + section.position >= currentCategory.position + 2, + ) + .map((section) => ({ + ...section, + position: section.position - 2, + })), + ], + }; + }); + }, + [updateBoard], + ); + + return { + addCategory, + addCategoryToEnd, + renameCategory, + moveCategory, + removeCategory, + }; +}; + +const calculateYHeightWithOffset = (section: Section) => + section.items.reduce((acc, item) => { + const yHeightWithOffset = item.yOffset + item.height; + if (yHeightWithOffset > acc) return yHeightWithOffset; + return acc; + }, 0); diff --git a/apps/nextjs/src/components/board/sections/category/category-edit-modal.tsx b/apps/nextjs/src/components/board/sections/category/category-edit-modal.tsx new file mode 100644 index 000000000..35f975028 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/category/category-edit-modal.tsx @@ -0,0 +1,56 @@ +import type { ManagedModal } from "mantine-modal-manager"; + +import { useForm } from "@homarr/form"; +import { useI18n } from "@homarr/translation/client"; +import { Button, Group, Stack, TextInput } from "@homarr/ui"; + +interface Category { + id: string; + name: string; +} + +interface InnerProps { + submitLabel: string; + category: Category; + onSuccess: (category: Category) => void; +} + +export const CategoryEditModal: ManagedModal = ({ + actions, + innerProps, +}) => { + const t = useI18n(); + const form = useForm({ + initialValues: { + name: innerProps.category.name, + }, + }); + + return ( +
{ + void innerProps.onSuccess({ + ...innerProps.category, + name: v.name, + }); + actions.closeModal(); + })} + > + + + + + + + +
+ ); +}; diff --git a/apps/nextjs/src/components/board/sections/category/category-menu-actions.tsx b/apps/nextjs/src/components/board/sections/category/category-menu-actions.tsx new file mode 100644 index 000000000..697e99233 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/category/category-menu-actions.tsx @@ -0,0 +1,107 @@ +import { useCallback } from "react"; + +import { createId } from "@homarr/db/client"; +import { useI18n } from "@homarr/translation/client"; + +import type { CategorySection } from "~/app/[locale]/boards/_types"; +import { modalEvents } from "~/app/[locale]/modals"; +import { useCategoryActions } from "./category-actions"; + +export const useCategoryMenuActions = (category: CategorySection) => { + const { addCategory, moveCategory, removeCategory, renameCategory } = + useCategoryActions(); + const t = useI18n(); + + const createCategoryAtPosition = useCallback( + (position: number) => { + modalEvents.openManagedModal({ + title: t("section.category.create.title"), + modal: "categoryEditModal", + innerProps: { + category: { + id: createId(), + name: t("section.category.create.title"), + }, + onSuccess: (category) => { + addCategory({ + name: category.name, + position, + }); + }, + submitLabel: t("section.category.create.submit"), + }, + }); + }, + [addCategory, t], + ); + + // creates a new category above the current + const addCategoryAbove = useCallback(() => { + const abovePosition = category.position; + createCategoryAtPosition(abovePosition); + }, [category.position, createCategoryAtPosition]); + + // creates a new category below the current + const addCategoryBelow = useCallback(() => { + const belowPosition = category.position + 2; + createCategoryAtPosition(belowPosition); + }, [category.position, createCategoryAtPosition]); + + const moveCategoryUp = useCallback(() => { + moveCategory({ + id: category.id, + direction: "up", + }); + }, [category.id, moveCategory]); + + const moveCategoryDown = useCallback(() => { + moveCategory({ + id: category.id, + direction: "down", + }); + }, [category.id, moveCategory]); + + // Removes the current category + const remove = useCallback(() => { + modalEvents.openConfirmModal({ + title: t("section.category.remove.title"), + children: t("section.category.remove.message", { + name: category.name, + }), + onConfirm: () => { + removeCategory({ + id: category.id, + }); + }, + confirmProps: { + color: "red", + }, + }); + }, [category.id, category.name, removeCategory, t]); + + const edit = () => { + modalEvents.openManagedModal({ + modal: "categoryEditModal", + title: t("section.category.edit.title"), + innerProps: { + category, + submitLabel: t("section.category.edit.submit"), + onSuccess: (category) => { + renameCategory({ + id: category.id, + name: category.name, + }); + }, + }, + }); + }; + + return { + addCategoryAbove, + addCategoryBelow, + moveCategoryUp, + moveCategoryDown, + remove, + edit, + }; +}; diff --git a/apps/nextjs/src/components/board/sections/category/category-menu.tsx b/apps/nextjs/src/components/board/sections/category/category-menu.tsx new file mode 100644 index 000000000..182ecbce8 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/category/category-menu.tsx @@ -0,0 +1,128 @@ +"use client"; + +import React, { useMemo } from "react"; +import { useAtomValue } from "jotai"; + +import { useScopedI18n } from "@homarr/translation/client"; +import type { TablerIconsProps } from "@homarr/ui"; +import { + ActionIcon, + IconDotsVertical, + IconEdit, + IconRowInsertBottom, + IconRowInsertTop, + IconTransitionBottom, + IconTransitionTop, + IconTrash, + Menu, +} from "@homarr/ui"; + +import type { CategorySection } from "~/app/[locale]/boards/_types"; +import { editModeAtom } from "../../editMode"; +import { useCategoryMenuActions } from "./category-menu-actions"; + +interface Props { + category: CategorySection; +} + +export const CategoryMenu = ({ category }: Props) => { + const actions = useActions(category); + const t = useScopedI18n("section.category"); + + if (actions.length === 0) return null; + + return ( + + + + + + + + {actions.map((action) => ( + + {"group" in action && {t(action.group)}} + } + onClick={action.onClick} + color={"color" in action ? action.color : undefined} + > + {t(action.label)} + + + ))} + + + ); +}; + +const useActions = (category: CategorySection) => { + const isEditMode = useAtomValue(editModeAtom); + const editModeActions = useEditModeActions(category); + const nonEditModeActions = useNonEditModeActions(category); + + return useMemo( + () => (isEditMode ? editModeActions : nonEditModeActions), + [isEditMode, editModeActions, nonEditModeActions], + ); +}; + +const useEditModeActions = (category: CategorySection) => { + const { + addCategoryAbove, + addCategoryBelow, + moveCategoryUp, + moveCategoryDown, + edit, + remove, + } = useCategoryMenuActions(category); + + return [ + { + icon: IconEdit, + label: "action.edit", + onClick: edit, + }, + { + icon: IconTrash, + color: "red", + label: "action.remove", + onClick: remove, + }, + { + group: "menu.label.changePosition", + icon: IconTransitionTop, + label: "action.moveUp", + onClick: moveCategoryUp, + }, + { + icon: IconTransitionBottom, + label: "action.moveDown", + onClick: moveCategoryDown, + }, + { + group: "menu.label.create", + icon: IconRowInsertTop, + label: "action.createAbove", + onClick: addCategoryAbove, + }, + { + icon: IconRowInsertBottom, + label: "action.createBelow", + onClick: addCategoryBelow, + }, + ] as const satisfies ActionDefinition[]; +}; + +// TODO: once apps are added we can use this for the open many apps action +const useNonEditModeActions = (_category: CategorySection) => { + return [] as const satisfies ActionDefinition[]; +}; + +interface ActionDefinition { + icon: (props: TablerIconsProps) => JSX.Element; + label: string; + onClick: () => void; + color?: string; + group?: string; +} diff --git a/apps/nextjs/src/components/board/sections/content.tsx b/apps/nextjs/src/components/board/sections/content.tsx new file mode 100644 index 000000000..006c2c2fd --- /dev/null +++ b/apps/nextjs/src/components/board/sections/content.tsx @@ -0,0 +1,153 @@ +/* eslint-disable react/no-unknown-property */ +// Ignored because of gridstack attributes + +import type { RefObject } from "react"; +import { useAtomValue } from "jotai"; + +import { useScopedI18n } from "@homarr/translation/client"; +import { + ActionIcon, + Card, + IconDotsVertical, + IconLayoutKanban, + IconPencil, + IconTrash, + Menu, +} from "@homarr/ui"; +import { + loadWidgetDynamic, + reduceWidgetOptionsWithDefaultValues, +} from "@homarr/widgets"; + +import type { Item } from "~/app/[locale]/boards/_types"; +import { modalEvents } from "~/app/[locale]/modals"; +import { editModeAtom } from "../editMode"; +import { useItemActions } from "../items/item-actions"; +import type { UseGridstackRefs } from "./gridstack/use-gridstack"; + +interface Props { + items: Item[]; + refs: UseGridstackRefs; +} + +export const SectionContent = ({ items, refs }: Props) => { + return ( + <> + {items.map((item) => ( +
} + > + + + +
+ ))} + + ); +}; + +interface ItemProps { + item: Item; +} + +const BoardItem = ({ item }: ItemProps) => { + const Comp = loadWidgetDynamic(item.kind); + const options = reduceWidgetOptionsWithDefaultValues(item.kind, item.options); + const newItem = { ...item, options }; + return ( + <> + + + + ); +}; + +const ItemMenu = ({ offset, item }: { offset: number; item: Item }) => { + const t = useScopedI18n("item"); + const isEditMode = useAtomValue(editModeAtom); + const { updateItemOptions, removeItem } = useItemActions(); + + if (!isEditMode) return null; + + const openEditModal = () => { + modalEvents.openManagedModal({ + title: t("edit.title"), + modal: "widgetEditModal", + innerProps: { + kind: item.kind, + value: { + options: item.options, + integrations: item.integrations.map(({ id }) => id), + }, + onSuccessfulEdit: ({ options, integrations: _ }) => { + updateItemOptions({ + itemId: item.id, + newOptions: options, + }); + }, + integrationData: [], + integrationSupport: false, + }, + }); + }; + + const openRemoveModal = () => { + modalEvents.openConfirmModal({ + title: t("remove.title"), + children: t("remove.message"), + onConfirm: () => { + removeItem({ itemId: item.id }); + }, + confirmProps: { + color: "red", + }, + }); + }; + + return ( + + + + + + + + {t("menu.label.settings")} + } + onClick={openEditModal} + > + {t("action.edit")} + + }> + {t("action.move")} + + + {t("menu.label.dangerZone")} + } + onClick={openRemoveModal} + > + {t("action.remove")} + + + + ); +}; diff --git a/apps/nextjs/src/components/board/sections/empty-section.tsx b/apps/nextjs/src/components/board/sections/empty-section.tsx new file mode 100644 index 000000000..268a7ec88 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/empty-section.tsx @@ -0,0 +1,35 @@ +import type { RefObject } from "react"; +import { useAtomValue } from "jotai"; + +import type { EmptySection } from "~/app/[locale]/boards/_types"; +import { editModeAtom } from "../editMode"; +import { SectionContent } from "./content"; +import { useGridstack } from "./gridstack/use-gridstack"; + +interface Props { + section: EmptySection; + mainRef: RefObject; +} + +const defaultClasses = "grid-stack grid-stack-empty min-row"; + +export const BoardEmptySection = ({ section, mainRef }: Props) => { + const { refs } = useGridstack({ section, mainRef }); + const isEditMode = useAtomValue(editModeAtom); + + return ( +
0 || isEditMode + ? defaultClasses + : `${defaultClasses} gridstack-empty-wrapper` + } + style={{ transitionDuration: "0s" }} + data-empty + data-section-id={section.id} + ref={refs.wrapper} + > + +
+ ); +}; diff --git a/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts b/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts new file mode 100644 index 000000000..a8d154356 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts @@ -0,0 +1,61 @@ +import type { MutableRefObject, RefObject } from "react"; +import type { GridItemHTMLElement } from "fily-publish-gridstack"; +import { GridStack } from "fily-publish-gridstack"; + +import type { Section } from "~/app/[locale]/boards/_types"; + +interface InitializeGridstackProps { + section: Section; + refs: { + wrapper: RefObject; + items: MutableRefObject>>; + gridstack: MutableRefObject; + }; + sectionColumnCount: number; +} + +export const initializeGridstack = ({ + section, + refs, + sectionColumnCount, +}: InitializeGridstackProps) => { + if (!refs.wrapper.current) return false; + // calculates the currently available count of columns + const columnCount = section.kind === "sidebar" ? 2 : sectionColumnCount; + const minRow = + section.kind !== "sidebar" + ? 1 + : Math.floor(refs.wrapper.current.offsetHeight / 128); + // initialize gridstack + const newGrid = refs.gridstack; + newGrid.current = GridStack.init( + { + column: columnCount, + margin: section.kind === "sidebar" ? 5 : 10, + cellHeight: 128, + float: true, + alwaysShowResizeHandle: true, + acceptWidgets: true, + disableOneColumnMode: true, + staticGrid: true, + minRow, + animate: false, + styleInHead: true, + }, + // selector of the gridstack item (it's eather category or wrapper) + `.grid-stack-${section.kind}[data-section-id='${section.id}']`, + ); + const grid = newGrid.current; + if (!grid) return false; + // Must be used to update the column count after the initialization + grid.column(columnCount, "none"); + + grid.batchUpdate(); + grid.removeAll(false); + section.items.forEach(({ id }) => { + const ref = refs.items.current[id]?.current; + ref && grid.makeWidget(ref); + }); + grid.batchUpdate(false); + return true; +}; diff --git a/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts b/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts new file mode 100644 index 000000000..1227a9c94 --- /dev/null +++ b/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts @@ -0,0 +1,209 @@ +import type { MutableRefObject, RefObject } from "react"; +import { createRef, useCallback, useEffect, useMemo, useRef } from "react"; +import type { + GridItemHTMLElement, + GridStack, + GridStackNode, +} from "fily-publish-gridstack"; +import { useAtomValue } from "jotai"; + +import { + useMarkSectionAsReady, + useRequiredBoard, +} from "~/app/[locale]/boards/_context"; +import type { Section } from "~/app/[locale]/boards/_types"; +import { editModeAtom } from "../../editMode"; +import { useItemActions } from "../../items/item-actions"; +import { initializeGridstack } from "./init-gridstack"; + +export interface UseGridstackRefs { + wrapper: RefObject; + items: MutableRefObject>>; + gridstack: MutableRefObject; +} + +interface UseGristackReturnType { + refs: UseGridstackRefs; +} + +interface UseGridstackProps { + section: Section; + mainRef?: RefObject; +} + +export const useGridstack = ({ + section, + mainRef, +}: UseGridstackProps): UseGristackReturnType => { + const isEditMode = useAtomValue(editModeAtom); + const markAsReady = useMarkSectionAsReady(); + const { moveAndResizeItem, moveItemToSection } = useItemActions(); + // define reference for wrapper - is used to calculate the width of the wrapper + const wrapperRef = useRef(null); + // references to the diffrent items contained in the gridstack + const itemRefs = useRef>>({}); + // reference of the gridstack object for modifications after initialization + const gridRef = useRef(); + + useCssVariableConfiguration({ section, mainRef, gridRef }); + + const sectionColumnCount = useSectionColumnCount(section.kind); + + const items = useMemo(() => section.items, [section.items]); + + // define items in itemRefs for easy access and reference to items + if (Object.keys(itemRefs.current).length !== items.length) { + items.forEach(({ id }: { id: keyof typeof itemRefs.current }) => { + itemRefs.current[id] = itemRefs.current[id] ?? createRef(); + }); + } + + useEffect(() => { + gridRef.current?.setStatic(!isEditMode); + }, [isEditMode]); + + const onChange = useCallback( + (changedNode: GridStackNode) => { + const itemId = changedNode.el?.getAttribute("data-id"); + if (!itemId) return; + + // Updates the react-query state + moveAndResizeItem({ + itemId, + xOffset: changedNode.x!, + yOffset: changedNode.y!, + width: changedNode.w!, + height: changedNode.h!, + }); + }, + [moveAndResizeItem], + ); + const onAdd = useCallback( + (addedNode: GridStackNode) => { + const itemId = addedNode.el?.getAttribute("data-id"); + if (!itemId) return; + + // Updates the react-query state + moveItemToSection({ + itemId, + sectionId: section.id, + xOffset: addedNode.x!, + yOffset: addedNode.y!, + width: addedNode.w!, + height: addedNode.h!, + }); + }, + [moveItemToSection, section.id], + ); + + useEffect(() => { + if (!isEditMode) return; + const currentGrid = gridRef.current; + // Add listener for moving items around in a wrapper + currentGrid?.on("change", (_, nodes) => { + (nodes as GridStackNode[]).forEach(onChange); + }); + + // Add listener for moving items in config from one wrapper to another + currentGrid?.on("added", (_, el) => { + const nodes = el as GridStackNode[]; + nodes.forEach((node) => onAdd(node)); + }); + + return () => { + currentGrid?.off("change"); + currentGrid?.off("added"); + }; + }, [isEditMode, onAdd, onChange]); + + // initialize the gridstack + useEffect(() => { + const isReady = initializeGridstack({ + section, + refs: { + items: itemRefs, + wrapper: wrapperRef, + gridstack: gridRef, + }, + sectionColumnCount, + }); + + if (isReady) { + markAsReady(section.id); + } + + // Only run this effect when the section items change + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [items.length, section.items.length]); + + return { + refs: { + items: itemRefs, + wrapper: wrapperRef, + gridstack: gridRef, + }, + }; +}; + +/** + * Get the column count for the section + * For the sidebar it's always 2 otherwise it's the column count of the board + * @param sectionKind kind of the section + * @returns count of columns + */ +const useSectionColumnCount = (sectionKind: Section["kind"]) => { + const board = useRequiredBoard(); + if (sectionKind === "sidebar") return 2; + + return board.columnCount; +}; + +interface UseCssVariableConfiguration { + section: Section; + mainRef?: RefObject; + gridRef: UseGridstackRefs["gridstack"]; +} + +/** + * This hook is used to configure the css variables for the gridstack + * Those css variables are used to define the size of the gridstack items + * @see gridstack.scss + * @param section section of the board + * @param mainRef reference to the main div wrapping all sections + * @param gridRef reference to the gridstack object + */ +const useCssVariableConfiguration = ({ + section, + mainRef, + gridRef, +}: UseCssVariableConfiguration) => { + const sectionColumnCount = useSectionColumnCount(section.kind); + + // Get reference to the :root element + const typeofDocument = typeof document; + const root = useMemo(() => { + if (typeofDocument === "undefined") return; + return document.documentElement; + }, [typeofDocument]); + + // Define widget-width by calculating the width of one column with mainRef width and column count + useEffect(() => { + if (section.kind === "sidebar" || !mainRef?.current) return; + const widgetWidth = mainRef.current.clientWidth / sectionColumnCount; + // widget width is used to define sizes of gridstack items within global.scss + root?.style.setProperty("--gridstack-widget-width", widgetWidth.toString()); + console.log("widgetWidth", widgetWidth); + console.log(gridRef.current); + gridRef.current?.cellHeight(widgetWidth); + // gridRef.current is required otherwise the cellheight is run on production as undefined + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [sectionColumnCount, root, section.kind, mainRef, gridRef.current]); + + // Define column count by using the sectionColumnCount + useEffect(() => { + root?.style.setProperty( + "--gridstack-column-count", + sectionColumnCount.toString(), + ); + }, [sectionColumnCount, root]); +}; diff --git a/apps/nextjs/src/components/layout/header.tsx b/apps/nextjs/src/components/layout/header.tsx index 6a36bcd9f..c9c06744a 100644 --- a/apps/nextjs/src/components/layout/header.tsx +++ b/apps/nextjs/src/components/layout/header.tsx @@ -1,3 +1,4 @@ +import type { ReactNode } from "react"; import Link from "next/link"; import { AppShellHeader, Group, UnstyledButton } from "@homarr/ui"; @@ -6,20 +7,33 @@ import { ClientBurger } from "./header/burger"; import { DesktopSearchInput, MobileSearchButton } from "./header/search"; import { ClientSpotlight } from "./header/spotlight"; import { UserButton } from "./header/user"; -import { LogoWithTitle } from "./logo"; +import { HomarrLogoWithTitle } from "./logo/homarr-logo"; -export const MainHeader = () => { +interface Props { + logo?: ReactNode; + actions?: ReactNode; + hasNavigation?: boolean; +} + +export const MainHeader = ({ logo, actions, hasNavigation = true }: Props) => { return ( - + {hasNavigation && } - + {logo ?? } - + + {actions} diff --git a/apps/nextjs/src/components/layout/header/button.tsx b/apps/nextjs/src/components/layout/header/button.tsx new file mode 100644 index 000000000..967dd837a --- /dev/null +++ b/apps/nextjs/src/components/layout/header/button.tsx @@ -0,0 +1,47 @@ +import type { ForwardedRef, ReactNode } from "react"; +import { forwardRef } from "react"; +import Link from "next/link"; + +import type { ActionIconProps } from "@homarr/ui"; +import { ActionIcon } from "@homarr/ui"; + +type HeaderButtonProps = ( + | { + onClick?: () => void; + } + | { + href: string; + } +) & { + children: ReactNode; +} & Partial; + +const headerButtonActionIconProps: ActionIconProps = { + variant: "subtle", + style: { border: "none" }, + color: "gray", + size: "lg", +}; + +// eslint-disable-next-line react/display-name +export const HeaderButton = forwardRef( + (props, ref) => { + if ("href" in props) { + return ( + } + component={Link} + {...props} + {...headerButtonActionIconProps} + > + {props.children} + + ); + } + return ( + + {props.children} + + ); + }, +); diff --git a/apps/nextjs/src/components/layout/header/search.tsx b/apps/nextjs/src/components/layout/header/search.tsx index 1bb742640..dcccd3360 100644 --- a/apps/nextjs/src/components/layout/header/search.tsx +++ b/apps/nextjs/src/components/layout/header/search.tsx @@ -2,8 +2,9 @@ import { spotlight } from "@homarr/spotlight"; import { useScopedI18n } from "@homarr/translation/client"; -import { ActionIcon, IconSearch, TextInput, UnstyledButton } from "@homarr/ui"; +import { IconSearch, TextInput, UnstyledButton } from "@homarr/ui"; +import { HeaderButton } from "./button"; import classes from "./search.module.css"; export const DesktopSearchInput = () => { @@ -25,13 +26,8 @@ export const DesktopSearchInput = () => { export const MobileSearchButton = () => { return ( - + - + ); }; diff --git a/apps/nextjs/src/components/layout/logo.tsx b/apps/nextjs/src/components/layout/logo.tsx deleted file mode 100644 index 6a5fe592e..000000000 --- a/apps/nextjs/src/components/layout/logo.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import Image from "next/image"; - -import type { TitleOrder } from "@homarr/ui"; -import { Group, Title } from "@homarr/ui"; - -interface LogoProps { - size: number; -} - -export const Logo = ({ size = 60 }: LogoProps) => ( - Homarr logo -); - -const logoWithTitleSizes = { - lg: { logoSize: 48, titleOrder: 1 }, - md: { logoSize: 32, titleOrder: 2 }, - sm: { logoSize: 24, titleOrder: 3 }, -} satisfies Record; - -interface LogoWithTitleProps { - size: keyof typeof logoWithTitleSizes; -} - -export const LogoWithTitle = ({ size }: LogoWithTitleProps) => { - const { logoSize, titleOrder } = logoWithTitleSizes[size]; - - return ( - - - lparr - - ); -}; diff --git a/apps/nextjs/src/components/layout/logo/board-logo.tsx b/apps/nextjs/src/components/layout/logo/board-logo.tsx new file mode 100644 index 000000000..13379f2fa --- /dev/null +++ b/apps/nextjs/src/components/layout/logo/board-logo.tsx @@ -0,0 +1,40 @@ +"use client"; + +import { useRequiredBoard } from "~/app/[locale]/boards/_context"; +import { homarrLogoPath, homarrPageTitle } from "./homarr-logo"; +import type { LogoWithTitleProps } from "./logo"; +import { Logo, LogoWithTitle } from "./logo"; + +interface LogoProps { + size: number; +} + +const useImageOptions = () => { + const board = useRequiredBoard(); + return { + src: board.logoImageUrl ?? homarrLogoPath, + alt: "Board logo", + shouldUseNextImage: false, + }; +}; + +export const BoardLogo = ({ size }: LogoProps) => { + const imageOptions = useImageOptions(); + return ; +}; + +interface CommonLogoWithTitleProps { + size: LogoWithTitleProps["size"]; +} + +export const BoardLogoWithTitle = ({ size }: CommonLogoWithTitleProps) => { + const board = useRequiredBoard(); + const imageOptions = useImageOptions(); + return ( + + ); +}; diff --git a/apps/nextjs/src/components/layout/logo/homarr-logo.tsx b/apps/nextjs/src/components/layout/logo/homarr-logo.tsx new file mode 100644 index 000000000..fad2242f9 --- /dev/null +++ b/apps/nextjs/src/components/layout/logo/homarr-logo.tsx @@ -0,0 +1,29 @@ +import type { LogoWithTitleProps } from "./logo"; +import { Logo, LogoWithTitle } from "./logo"; + +interface LogoProps { + size: number; +} + +export const homarrLogoPath = "/logo/homarr.png"; +export const homarrPageTitle = "Homarr"; + +const imageOptions = { + src: homarrLogoPath, + alt: "Homarr logo", + shouldUseNextImage: true, +}; + +export const HomarrLogo = ({ size }: LogoProps) => ( + +); + +interface CommonLogoWithTitleProps { + size: LogoWithTitleProps["size"]; +} + +export const HomarrLogoWithTitle = ({ size }: CommonLogoWithTitleProps) => { + return ( + + ); +}; diff --git a/apps/nextjs/src/components/layout/logo/logo.tsx b/apps/nextjs/src/components/layout/logo/logo.tsx new file mode 100644 index 000000000..6332adb74 --- /dev/null +++ b/apps/nextjs/src/components/layout/logo/logo.tsx @@ -0,0 +1,48 @@ +import Image from "next/image"; + +import type { TitleOrder } from "@homarr/ui"; +import { Group, Title } from "@homarr/ui"; + +interface LogoProps { + size: number; + src: string; + alt: string; + shouldUseNextImage?: boolean; +} + +export const Logo = ({ + size = 60, + shouldUseNextImage = false, + src, + alt, +}: LogoProps) => + shouldUseNextImage ? ( + {alt} + ) : ( + // we only want to use next/image for logos that we are sure will be preloaded and are allowed + // eslint-disable-next-line @next/next/no-img-element + {alt} + ); + +const logoWithTitleSizes = { + lg: { logoSize: 48, titleOrder: 1 }, + md: { logoSize: 32, titleOrder: 2 }, + sm: { logoSize: 24, titleOrder: 3 }, +} satisfies Record; + +export interface LogoWithTitleProps { + size: keyof typeof logoWithTitleSizes; + title: string; + image: Omit; +} + +export const LogoWithTitle = ({ size, title, image }: LogoWithTitleProps) => { + const { logoSize, titleOrder } = logoWithTitleSizes[size]; + + return ( + + + {title} + + ); +}; diff --git a/apps/nextjs/src/styles/gridstack.scss b/apps/nextjs/src/styles/gridstack.scss new file mode 100644 index 000000000..4a6d18504 --- /dev/null +++ b/apps/nextjs/src/styles/gridstack.scss @@ -0,0 +1,124 @@ +@import "fily-publish-gridstack/dist/gridstack.min.css"; + +:root { + --gridstack-widget-width: 64; + --gridstack-column-count: 12; +} + +.grid-stack-placeholder > .placeholder-content { + background-color: rgb(248, 249, 250) !important; + border-radius: 12px; + border: 1px solid rgba(0, 0, 0, 0.05); +} + +@media (prefers-color-scheme: dark) { + .grid-stack-placeholder > .placeholder-content { + background-color: rgba(255, 255, 255, 0.05) !important; + } +} + +// Styling for grid-stack main area +@for $i from 1 to 96 { + .grid-stack > .grid-stack-item[gs-w="#{$i}"] { + width: calc(100% / #{var(--gridstack-column-count)} * #{$i}); + } + .grid-stack > .grid-stack-item[gs-min-w="#{$i}"] { + min-width: calc(100% / #{var(--gridstack-column-count)} * #{$i}); + } + .grid-stack > .grid-stack-item[gs-max-w="#{$i}"] { + max-width: calc(100% / #{var(--gridstack-column-count)} * #{$i}); + } +} + +@for $i from 1 to 96 { + .grid-stack > .grid-stack-item[gs-h="#{$i}"] { + height: calc(#{$i}px * #{var(--gridstack-widget-width)}); + } + .grid-stack > .grid-stack-item[gs-min-h="#{$i}"] { + min-height: calc(#{$i}px * #{var(--gridstack-widget-width)}); + } + .grid-stack > .grid-stack-item[gs-max-h="#{$i}"] { + max-height: calc(#{$i}px * #{var(--gridstack-widget-width)}); + } +} + +@for $i from 1 to 96 { + .grid-stack > .grid-stack-item[gs-x="#{$i}"] { + left: calc(100% / #{var(--gridstack-column-count)} * #{$i}); + } +} + +@for $i from 1 to 96 { + .grid-stack > .grid-stack-item[gs-y="#{$i}"] { + top: calc(#{$i}px * #{var(--gridstack-widget-width)}); + } +} + +.grid-stack > .grid-stack-item { + min-width: #{var(--gridstack-widget-width)}; +} + +// Styling for sidebar grid-stack elements +@for $i from 1 to 96 { + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-w="#{$i}"] { + width: 128px * $i; + } + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-min-w="#{$i}"] { + min-width: 128px * $i; + } + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-max-w="#{$i}"] { + max-width: 128px * $i; + } +} + +@for $i from 1 to 96 { + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-h="#{$i}"] { + height: 128px * $i; + } + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-min-h="#{$i}"] { + min-height: 128px * $i; + } + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-max-h="#{$i}"] { + max-height: 128px * $i; + } +} + +@for $i from 1 to 3 { + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-x="#{$i}"] { + left: 128px * $i; + } +} + +@for $i from 1 to 96 { + .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-y="#{$i}"] { + top: 128px * $i; + } +} + +.grid-stack.grid-stack-sidebar > .grid-stack-item { + min-width: 128px; +} + +// General gridstack styling +.grid-stack > .grid-stack-item > .grid-stack-item-content, +.grid-stack > .grid-stack-item > .placeholder-content { + inset: 10px; +} + +.grid-stack > .grid-stack-item > .ui-resizable-se { + bottom: 10px; + right: 10px; +} + +.grid-stack > .grid-stack-item > .grid-stack-item-content { + overflow-y: auto; +} + +.grid-stack.grid-stack-animate { + transition: none; +} + +.gridstack-empty-wrapper { + height: 0px; + min-height: 0px !important; +} diff --git a/apps/nextjs/src/trpc/react.ts b/apps/nextjs/src/trpc/react.ts deleted file mode 100644 index 43339ff3c..000000000 --- a/apps/nextjs/src/trpc/react.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { createTRPCReact } from "@trpc/react-query"; - -import type { AppRouter } from "@homarr/api"; - -export const api = createTRPCReact(); - -export { type RouterInputs, type RouterOutputs } from "@homarr/api"; diff --git a/package.json b/package.json index 418c398e4..90aa89988 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,6 @@ "build": "turbo build", "clean": "git clean -xdf node_modules", "clean:workspaces": "turbo clean", - "postinstall": "pnpm lint:ws", "db:push": "pnpm -F db push", "db:studio": "pnpm -F db studio", "dev": "turbo dev --parallel", @@ -22,9 +21,9 @@ }, "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", - "@turbo/gen": "^1.10.16", + "@turbo/gen": "^1.12.2", "prettier": "^3.1.0", - "turbo": "^1.10.16", + "turbo": "^1.12.2", "typescript": "^5.3.3" }, "pnpm": { diff --git a/packages/api/index.ts b/packages/api/index.ts index 639e50c04..1903f05e0 100644 --- a/packages/api/index.ts +++ b/packages/api/index.ts @@ -4,7 +4,6 @@ import type { AppRouter } from "./src/root"; export { appRouter, type AppRouter } from "./src/root"; export { createTRPCContext } from "./src/trpc"; - /** * Inference helpers for input types * @example type HelloInput = RouterInputs['example']['hello'] diff --git a/packages/api/package.json b/packages/api/package.json index e281c5ad1..d453aef5d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -1,6 +1,10 @@ { "name": "@homarr/api", "version": "0.1.0", + "exports": { + ".": "./index.ts", + "./client": "./src/client.ts" + }, "private": true, "main": "./index.ts", "types": "./index.ts", diff --git a/packages/api/src/client.ts b/packages/api/src/client.ts new file mode 100644 index 000000000..a8f1f59aa --- /dev/null +++ b/packages/api/src/client.ts @@ -0,0 +1,5 @@ +import { createTRPCReact } from "@trpc/react-query"; + +import type { AppRouter } from ".."; + +export const clientApi = createTRPCReact(); diff --git a/packages/api/src/root.ts b/packages/api/src/root.ts index f0b54cfc8..28afc6416 100644 --- a/packages/api/src/root.ts +++ b/packages/api/src/root.ts @@ -1,3 +1,4 @@ +import { boardRouter } from "./router/board"; import { integrationRouter } from "./router/integration"; import { userRouter } from "./router/user"; import { createTRPCRouter } from "./trpc"; @@ -5,6 +6,7 @@ import { createTRPCRouter } from "./trpc"; export const appRouter = createTRPCRouter({ user: userRouter, integration: integrationRouter, + board: boardRouter, }); // export type definition of API diff --git a/packages/api/src/router/board.ts b/packages/api/src/router/board.ts new file mode 100644 index 000000000..1560e4f0b --- /dev/null +++ b/packages/api/src/router/board.ts @@ -0,0 +1,290 @@ +import { TRPCError } from "@trpc/server"; +import superjson from "superjson"; + +import type { Database } from "@homarr/db"; +import { and, db, eq, inArray } from "@homarr/db"; +import { + boards, + integrationItems, + items, + sections, +} from "@homarr/db/schema/sqlite"; +import type { WidgetKind } from "@homarr/definitions"; +import { widgetKinds } from "@homarr/definitions"; +import { + createSectionSchema, + sharedItemSchema, + validation, + z, +} from "@homarr/validation"; + +import { zodUnionFromArray } from "../../../validation/src/enums"; +import type { WidgetComponentProps } from "../../../widgets/src/definition"; +import { createTRPCRouter, publicProcedure } from "../trpc"; + +const filterAddedItems = ( + inputArray: TInput[], + dbArray: TInput[], +) => + inputArray.filter( + (inputItem) => !dbArray.some((dbItem) => dbItem.id === inputItem.id), + ); + +const filterRemovedItems = ( + inputArray: TInput[], + dbArray: TInput[], +) => + dbArray.filter( + (dbItem) => !inputArray.some((inputItem) => dbItem.id === inputItem.id), + ); + +const filterUpdatedItems = ( + inputArray: TInput[], + dbArray: TInput[], +) => + inputArray.filter((inputItem) => + dbArray.some((dbItem) => dbItem.id === inputItem.id), + ); + +export const boardRouter = createTRPCRouter({ + default: publicProcedure.query(async ({ ctx }) => { + return await getFullBoardByName(ctx.db, "default"); + }), + byName: publicProcedure + .input(validation.board.byName) + .query(async ({ input, ctx }) => { + return await getFullBoardByName(ctx.db, input.name); + }), + saveGeneralSettings: publicProcedure + .input(validation.board.saveGeneralSettings) + .mutation(async ({ input }) => { + await db.update(boards).set(input).where(eq(boards.name, "default")); + }), + save: publicProcedure + .input(validation.board.save) + .mutation(async ({ input, ctx }) => { + await ctx.db.transaction(async (tx) => { + const dbBoard = await getFullBoardByName(tx, input.name); + + const addedSections = filterAddedItems( + input.sections, + dbBoard.sections, + ); + + if (addedSections.length > 0) { + await tx.insert(sections).values( + addedSections.map((section) => ({ + id: section.id, + kind: section.kind, + position: section.position, + name: "name" in section ? section.name : null, + boardId: dbBoard.id, + })), + ); + } + + const inputItems = input.sections.flatMap((section) => + section.items.map((item) => ({ ...item, sectionId: section.id })), + ); + const dbItems = dbBoard.sections.flatMap((section) => + section.items.map((item) => ({ ...item, sectionId: section.id })), + ); + + const addedItems = filterAddedItems(inputItems, dbItems); + + if (addedItems.length > 0) { + await tx.insert(items).values( + addedItems.map((item) => ({ + id: item.id, + kind: item.kind, + height: item.height, + width: item.width, + xOffset: item.xOffset, + yOffset: item.yOffset, + options: superjson.stringify(item.options), + sectionId: item.sectionId, + })), + ); + } + + const inputIntegrationRelations = inputItems.flatMap( + ({ integrations, id: itemId }) => + integrations.map((integration) => ({ + integrationId: integration.id, + itemId, + })), + ); + const dbIntegrationRelations = dbItems.flatMap( + ({ integrations, id: itemId }) => + integrations.map((integration) => ({ + integrationId: integration.id, + itemId, + })), + ); + const addedIntegrationRelations = inputIntegrationRelations.filter( + (inputRelation) => + !dbIntegrationRelations.some( + (dbRelation) => + dbRelation.itemId === inputRelation.itemId && + dbRelation.integrationId === inputRelation.integrationId, + ), + ); + + if (addedIntegrationRelations.length > 0) { + await tx.insert(integrationItems).values( + addedIntegrationRelations.map((relation) => ({ + itemId: relation.itemId, + integrationId: relation.integrationId, + })), + ); + } + + const updatedItems = filterUpdatedItems(inputItems, dbItems); + + for (const item of updatedItems) { + await tx + .update(items) + .set({ + kind: item.kind, + height: item.height, + width: item.width, + xOffset: item.xOffset, + yOffset: item.yOffset, + options: superjson.stringify(item.options), + sectionId: item.sectionId, + }) + .where(eq(items.id, item.id)); + } + + const updatedSections = filterUpdatedItems( + input.sections, + dbBoard.sections, + ); + + for (const section of updatedSections) { + await tx + .update(sections) + .set({ + kind: section.kind, + position: section.position, + name: "name" in section ? section.name : null, + }) + .where(eq(sections.id, section.id)); + } + + const removedIntegrationRelations = dbIntegrationRelations.filter( + (dbRelation) => + !inputIntegrationRelations.some( + (inputRelation) => + dbRelation.itemId === inputRelation.itemId && + dbRelation.integrationId === inputRelation.integrationId, + ), + ); + + for (const relation of removedIntegrationRelations) { + await tx + .delete(integrationItems) + .where( + and( + eq(integrationItems.itemId, relation.itemId), + eq(integrationItems.integrationId, relation.integrationId), + ), + ); + } + + const removedItems = filterRemovedItems(inputItems, dbItems); + + const itemIds = removedItems.map((item) => item.id); + if (itemIds.length > 0) { + await tx.delete(items).where(inArray(items.id, itemIds)); + } + + const removedSections = filterRemovedItems( + input.sections, + dbBoard.sections, + ); + const sectionIds = removedSections.map((section) => section.id); + + if (sectionIds.length > 0) { + await tx.delete(sections).where(inArray(sections.id, sectionIds)); + } + }); + }), +}); + +const getFullBoardByName = async (db: Database, name: string) => { + const board = await db.query.boards.findFirst({ + where: eq(boards.name, name), + with: { + sections: { + with: { + items: { + with: { + integrations: { + with: { + integration: true, + }, + }, + }, + }, + }, + }, + }, + }); + + if (!board) { + throw new TRPCError({ + code: "NOT_FOUND", + message: "Board not found", + }); + } + + const { sections, ...otherBoardProperties } = board; + + return { + ...otherBoardProperties, + sections: sections.map((section) => + parseSection({ + ...section, + items: section.items.map((item) => ({ + ...item, + integrations: item.integrations.map((item) => item.integration), + options: superjson.parse>(item.options), + })), + }), + ), + }; +}; + +// The following is a bit of a mess, it's providing us typesafe options matching the widget kind. +// But I might be able to do this in a better way in the future. +const forKind = (kind: T) => + z.object({ + kind: z.literal(kind), + options: z.custom["options"]>>(), + }) as UnionizeSpecificItemSchemaForWidgetKind; + +type SpecificItemSchemaForWidgetKind = z.ZodObject<{ + kind: z.ZodLiteral; + options: z.ZodType< + Partial["options"]>, + z.ZodTypeDef, + Partial["options"]> + >; +}>; + +type UnionizeSpecificItemSchemaForWidgetKind = T extends WidgetKind + ? SpecificItemSchemaForWidgetKind + : never; + +const outputItemSchema = zodUnionFromArray( + widgetKinds.map((kind) => forKind(kind)), +).and(sharedItemSchema); + +const parseSection = (section: unknown) => { + const result = createSectionSchema(outputItemSchema).safeParse(section); + if (!result.success) { + throw new Error(result.error.message); + } + return result.data; +}; diff --git a/packages/db/client.ts b/packages/db/client.ts new file mode 100644 index 000000000..72b8e27b0 --- /dev/null +++ b/packages/db/client.ts @@ -0,0 +1 @@ +export { createId } from "@paralleldrive/cuid2"; diff --git a/packages/db/index.ts b/packages/db/index.ts index 161b0a537..221c764cb 100644 --- a/packages/db/index.ts +++ b/packages/db/index.ts @@ -1,4 +1,5 @@ import Database from "better-sqlite3"; +import type { BetterSQLite3Database } from "drizzle-orm/better-sqlite3"; import { drizzle } from "drizzle-orm/better-sqlite3"; import * as sqliteSchema from "./schema/sqlite"; @@ -11,4 +12,6 @@ const sqlite = new Database(process.env.DB_URL!); export const db = drizzle(sqlite, { schema }); +export type Database = BetterSQLite3Database; + export { createId } from "@paralleldrive/cuid2"; diff --git a/packages/db/package.json b/packages/db/package.json index 0b520e625..b3a71a100 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -1,6 +1,11 @@ { "name": "@homarr/db", "version": "0.1.0", + "exports": { + ".": "./index.ts", + "./client": "./client.ts", + "./schema/sqlite": "./schema/sqlite.ts" + }, "private": true, "main": "./index.ts", "types": "./index.ts", diff --git a/packages/db/schema/sqlite.ts b/packages/db/schema/sqlite.ts index b25b99dce..f9fd3da8e 100644 --- a/packages/db/schema/sqlite.ts +++ b/packages/db/schema/sqlite.ts @@ -1,8 +1,10 @@ import type { AdapterAccount } from "@auth/core/adapters"; +import type { MantineColor } from "@mantine/core"; import type { InferSelectModel } from "drizzle-orm"; import { relations } from "drizzle-orm"; import { index, + int, integer, primaryKey, sqliteTable, @@ -10,8 +12,13 @@ import { } from "drizzle-orm/sqlite-core"; import type { + BackgroundImageAttachment, + BackgroundImageRepeat, + BackgroundImageSize, IntegrationKind, IntegrationSecretKind, + SectionKind, + WidgetKind, } from "@homarr/definitions"; export const users = sqliteTable("user", { @@ -107,6 +114,91 @@ export const integrationSecrets = sqliteTable( }), ); +export const boards = sqliteTable("board", { + id: text("id").notNull().primaryKey(), + name: text("name").notNull(), + isPublic: int("is_public", { mode: "boolean" }).default(false).notNull(), + pageTitle: text("page_title"), + metaTitle: text("meta_title"), + logoImageUrl: text("logo_image_url"), + faviconImageUrl: text("favicon_image_url"), + backgroundImageUrl: text("background_image_url"), + backgroundImageAttachment: text("background_image_attachment") + .$type() + .default("fixed") + .notNull(), + backgroundImageRepeat: text("background_image_repeat") + .$type() + .default("no-repeat") + .notNull(), + backgroundImageSize: text("background_image_size") + .$type() + .default("cover") + .notNull(), + primaryColor: text("primary_color") + .$type() + .default("red") + .notNull(), + secondaryColor: text("secondary_color") + .$type() + .default("orange") + .notNull(), + primaryShade: int("primary_shade").default(6).notNull(), + appOpacity: int("app_opacity").default(100).notNull(), + customCss: text("custom_css"), + showRightSidebar: int("show_right_sidebar", { + mode: "boolean", + }) + .default(false) + .notNull(), + showLeftSidebar: int("show_left_sidebar", { + mode: "boolean", + }) + .default(false) + .notNull(), + columnCount: int("column_count").default(10).notNull(), +}); + +export const sections = sqliteTable("section", { + id: text("id").notNull().primaryKey(), + boardId: text("board_id") + .notNull() + .references(() => boards.id, { onDelete: "cascade" }), + kind: text("kind").$type().notNull(), + position: int("position").notNull(), + name: text("name"), +}); + +export const items = sqliteTable("item", { + id: text("id").notNull().primaryKey(), + sectionId: text("section_id") + .notNull() + .references(() => sections.id, { onDelete: "cascade" }), + kind: text("kind").$type().notNull(), + xOffset: int("x_offset").notNull(), + yOffset: int("y_offset").notNull(), + width: int("width").notNull(), + height: int("height").notNull(), + options: text("options").default('{"json": {}}').notNull(), // empty superjson object +}); + +export const integrationItems = sqliteTable( + "integration_item", + { + itemId: text("item_id") + .notNull() + .references(() => items.id, { onDelete: "cascade" }), + integrationId: text("integration_id") + .notNull() + .references(() => integrations.id, { onDelete: "cascade" }), + }, + (table) => ({ + compoundKey: primaryKey({ + columns: [table.itemId, table.integrationId], + }), + }), +); + export const accountRelations = relations(accounts, ({ one }) => ({ user: one(users, { fields: [accounts.userId], @@ -120,6 +212,7 @@ export const userRelations = relations(users, ({ many }) => ({ export const integrationRelations = relations(integrations, ({ many }) => ({ secrets: many(integrationSecrets), + items: many(integrationItems), })); export const integrationSecretRelations = relations( @@ -132,6 +225,40 @@ export const integrationSecretRelations = relations( }), ); +export const boardRelations = relations(boards, ({ many }) => ({ + sections: many(sections), +})); + +export const sectionRelations = relations(sections, ({ many, one }) => ({ + items: many(items), + board: one(boards, { + fields: [sections.boardId], + references: [boards.id], + }), +})); + +export const itemRelations = relations(items, ({ one, many }) => ({ + section: one(sections, { + fields: [items.sectionId], + references: [sections.id], + }), + integrations: many(integrationItems), +})); + +export const integrationItemRelations = relations( + integrationItems, + ({ one }) => ({ + integration: one(integrations, { + fields: [integrationItems.integrationId], + references: [integrations.id], + }), + item: one(items, { + fields: [integrationItems.itemId], + references: [items.id], + }), + }), +); + export type User = InferSelectModel; export type Account = InferSelectModel; export type Session = InferSelectModel; diff --git a/packages/definitions/src/board.ts b/packages/definitions/src/board.ts new file mode 100644 index 000000000..e66e6ba7e --- /dev/null +++ b/packages/definitions/src/board.ts @@ -0,0 +1,13 @@ +export const backgroundImageAttachments = ["fixed", "scroll"] as const; +export const backgroundImageRepeats = [ + "repeat", + "repeat-x", + "repeat-y", + "no-repeat", +] as const; +export const backgroundImageSizes = ["cover", "contain"] as const; + +export type BackgroundImageAttachment = + (typeof backgroundImageAttachments)[number]; +export type BackgroundImageRepeat = (typeof backgroundImageRepeats)[number]; +export type BackgroundImageSize = (typeof backgroundImageSizes)[number]; diff --git a/packages/definitions/src/index.ts b/packages/definitions/src/index.ts index 852c5e31b..d305465db 100644 --- a/packages/definitions/src/index.ts +++ b/packages/definitions/src/index.ts @@ -1 +1,4 @@ +export * from "./board"; export * from "./integration"; +export * from "./section"; +export * from "./widget"; diff --git a/packages/definitions/src/section.ts b/packages/definitions/src/section.ts new file mode 100644 index 000000000..0276fe021 --- /dev/null +++ b/packages/definitions/src/section.ts @@ -0,0 +1,2 @@ +export const sectionKinds = ["category", "empty", "sidebar"] as const; +export type SectionKind = (typeof sectionKinds)[number]; diff --git a/packages/definitions/src/widget.ts b/packages/definitions/src/widget.ts new file mode 100644 index 000000000..59d842383 --- /dev/null +++ b/packages/definitions/src/widget.ts @@ -0,0 +1,2 @@ +export const widgetKinds = ["clock", "weather"] as const; +export type WidgetKind = (typeof widgetKinds)[number]; diff --git a/packages/form/package.json b/packages/form/package.json index fb15caa5e..f58d82317 100644 --- a/packages/form/package.json +++ b/packages/form/package.json @@ -33,6 +33,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/form": "^7.4.0" + "@mantine/form": "^7.5.1" } } diff --git a/packages/notifications/package.json b/packages/notifications/package.json index 60a01af91..a22de4fdd 100644 --- a/packages/notifications/package.json +++ b/packages/notifications/package.json @@ -28,7 +28,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "@mantine/notifications": "^7.4.0", + "@mantine/notifications": "^7.5.1", "@homarr/ui": "workspace:^0.1.0" }, "eslintConfig": { diff --git a/packages/spotlight/package.json b/packages/spotlight/package.json index bf8a3d887..fcfc16cc5 100644 --- a/packages/spotlight/package.json +++ b/packages/spotlight/package.json @@ -34,6 +34,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/spotlight": "^7.4.0" + "@mantine/spotlight": "^7.5.1" } } diff --git a/packages/translation/src/client.ts b/packages/translation/src/client.ts index 23c427063..9f3ec201c 100644 --- a/packages/translation/src/client.ts +++ b/packages/translation/src/client.ts @@ -3,6 +3,11 @@ import { createI18nClient } from "next-international/client"; import { languageMapping } from "./lang"; +import en from "./lang/en"; -export const { useI18n, useScopedI18n, I18nProviderClient } = - createI18nClient(languageMapping()); +export const { useI18n, useScopedI18n, I18nProviderClient } = createI18nClient( + languageMapping(), + { + fallbackLocale: en, + }, +); diff --git a/packages/translation/src/lang/en.ts b/packages/translation/src/lang/en.ts index e45f17469..71cb4c950 100644 --- a/packages/translation/src/lang/en.ts +++ b/packages/translation/src/lang/en.ts @@ -144,6 +144,7 @@ export default { create: "Create", edit: "Edit", save: "Save", + saveChanges: "Save changes", cancel: "Cancel", confirm: "Confirm", }, @@ -156,13 +157,77 @@ export default { }, noResults: "No results found", }, - widget: { - editModal: { - integrations: { - label: "Integrations", + section: { + category: { + field: { + name: { + label: "Name", + }, + }, + action: { + create: "New category", + edit: "Rename category", + remove: "Remove category", + moveUp: "Move up", + moveDown: "Move down", + createAbove: "New category above", + createBelow: "New category below", + }, + create: { + title: "New category", + submit: "Add category", + }, + remove: { + title: "Remove category", + message: "Are you sure you want to remove the category {name}?", + }, + edit: { + title: "Rename category", + submit: "Rename category", + }, + menu: { + label: { + create: "New category", + changePosition: "Change position", + }, }, }, + }, + item: { + action: { + create: "New item", + import: "Import item", + edit: "Edit item", + move: "Move item", + remove: "Remove item", + }, + menu: { + label: { + settings: "Settings", + dangerZone: "Danger Zone", + }, + }, + create: { + title: "Choose item to add", + addToBoard: "Add to board", + }, + edit: { + title: "Edit item", + field: { + integrations: { + label: "Integrations", + }, + }, + }, + remove: { + title: "Remove item", + message: "Are you sure you want to remove this item?", + }, + }, + widget: { clock: { + name: "Date and time", + description: "Displays the current date and time.", option: { is24HourFormat: { label: "24-hour format", @@ -177,6 +242,9 @@ export default { }, }, weather: { + name: "Weather", + description: + "Displays the current weather information of a set location.", option: { location: { label: "Location", @@ -187,6 +255,78 @@ export default { }, }, }, + board: { + action: { + edit: { + notification: { + success: { + title: "Changes applied successfully", + message: "The board was successfully saved", + }, + error: { + title: "Unable to apply changes", + message: "The board could not be saved", + }, + }, + }, + }, + field: { + pageTitle: { + label: "Page title", + }, + metaTitle: { + label: "Meta title", + }, + logoImageUrl: { + label: "Logo image URL", + }, + faviconImageUrl: { + label: "Favicon image URL", + }, + }, + setting: { + title: "Settings for {boardName} board", + section: { + general: { + title: "General", + }, + layout: { + title: "Layout", + }, + appearance: { + title: "Appearance", + }, + dangerZone: { + title: "Danger Zone", + action: { + rename: { + label: "Rename board", + description: + "Changing the name will break any links to this board.", + button: "Change name", + }, + visibility: { + label: "Change board visibility", + description: { + public: "This board is currently public.", + private: "This board is currently private.", + }, + button: { + public: "Make private", + private: "Make public", + }, + }, + delete: { + label: "Delete this board", + description: + "Once you delete a board, there is no going back. Please be certain.", + button: "Delete this board", + }, + }, + }, + }, + }, + }, management: { metaTitle: "Management", title: { diff --git a/packages/translation/src/server.ts b/packages/translation/src/server.ts index c77b66f26..79aa5815a 100644 --- a/packages/translation/src/server.ts +++ b/packages/translation/src/server.ts @@ -1,6 +1,11 @@ import { createI18nServer } from "next-international/server"; import { languageMapping } from "./lang"; +import en from "./lang/en"; -export const { getI18n, getScopedI18n, getStaticParams } = - createI18nServer(languageMapping()); +export const { getI18n, getScopedI18n, getStaticParams } = createI18nServer( + languageMapping(), + { + fallbackLocale: en, + }, +); diff --git a/packages/ui/package.json b/packages/ui/package.json index 66148e2e5..a1f835cb7 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -35,8 +35,8 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/core": "^7.4.0", - "@mantine/dates": "^7.4.0", + "@mantine/core": "^7.5.1", + "@mantine/dates": "^7.5.1", "@tabler/icons-react": "^2.42.0" } } diff --git a/packages/validation/src/board.ts b/packages/validation/src/board.ts new file mode 100644 index 000000000..dc2a93989 --- /dev/null +++ b/packages/validation/src/board.ts @@ -0,0 +1,43 @@ +import { z } from "zod"; + +import { commonItemSchema, createSectionSchema } from "./shared"; + +const boardNameSchema = z + .string() + .min(1) + .max(255) + .regex(/^[A-Za-z0-9-\\._]+$/); + +const byNameSchema = z.object({ + name: boardNameSchema, +}); + +const saveGeneralSettingsSchema = z.object({ + pageTitle: z + .string() + .nullable() + .transform((value) => (value?.trim().length === 0 ? null : value)), + metaTitle: z + .string() + .nullable() + .transform((value) => (value?.trim().length === 0 ? null : value)), + logoImageUrl: z + .string() + .nullable() + .transform((value) => (value?.trim().length === 0 ? null : value)), + faviconImageUrl: z + .string() + .nullable() + .transform((value) => (value?.trim().length === 0 ? null : value)), +}); + +const saveSchema = z.object({ + name: boardNameSchema, + sections: z.array(createSectionSchema(commonItemSchema)), +}); + +export const boardSchemas = { + byName: byNameSchema, + saveGeneralSettings: saveGeneralSettingsSchema, + save: saveSchema, +}; diff --git a/packages/validation/src/enums.ts b/packages/validation/src/enums.ts index a59c32796..d9644a776 100644 --- a/packages/validation/src/enums.ts +++ b/packages/validation/src/enums.ts @@ -1,4 +1,11 @@ import { z } from "zod"; -export const zodEnumFromArray = (arr: T[]) => - z.enum([arr[0]!, ...arr.slice(1)]); +type CouldBeReadonlyArray = T[] | readonly T[]; + +export const zodEnumFromArray = ( + array: CouldBeReadonlyArray, +) => z.enum([array[0]!, ...array.slice(1)]); + +export const zodUnionFromArray = ( + array: CouldBeReadonlyArray, +) => z.union([array[0]!, array[1]!, ...array.slice(2)]); diff --git a/packages/validation/src/index.ts b/packages/validation/src/index.ts index 7c2ed8269..91716e812 100644 --- a/packages/validation/src/index.ts +++ b/packages/validation/src/index.ts @@ -1,7 +1,11 @@ +import { boardSchemas } from "./board"; import { integrationSchemas } from "./integration"; import { userSchemas } from "./user"; export const validation = { user: userSchemas, integration: integrationSchemas, + board: boardSchemas, }; + +export { createSectionSchema, sharedItemSchema } from "./shared"; diff --git a/packages/validation/src/shared.ts b/packages/validation/src/shared.ts new file mode 100644 index 000000000..662ae55f4 --- /dev/null +++ b/packages/validation/src/shared.ts @@ -0,0 +1,68 @@ +import { z } from "zod"; + +import { integrationKinds, widgetKinds } from "@homarr/definitions"; + +import { zodEnumFromArray } from "./enums"; + +export const integrationSchema = z.object({ + id: z.string(), + kind: zodEnumFromArray(integrationKinds), + name: z.string(), + url: z.string(), +}); + +export const sharedItemSchema = z.object({ + id: z.string(), + xOffset: z.number(), + yOffset: z.number(), + height: z.number(), + width: z.number(), + integrations: z.array(integrationSchema), +}); + +export const commonItemSchema = z + .object({ + kind: zodEnumFromArray(widgetKinds), + options: z.record(z.unknown()), + }) + .and(sharedItemSchema); + +const createCategorySchema = ( + itemSchema: TItemSchema, +) => + z.object({ + id: z.string(), + name: z.string(), + kind: z.literal("category"), + position: z.number(), + items: z.array(itemSchema), + }); + +const createEmptySchema = ( + itemSchema: TItemSchema, +) => + z.object({ + id: z.string(), + kind: z.literal("empty"), + position: z.number(), + items: z.array(itemSchema), + }); + +const createSidebarSchema = ( + itemSchema: TItemSchema, +) => + z.object({ + id: z.string(), + kind: z.literal("sidebar"), + position: z.union([z.literal(0), z.literal(1)]), + items: z.array(itemSchema), + }); + +export const createSectionSchema = ( + itemSchema: TItemSchema, +) => + z.union([ + createCategorySchema(itemSchema), + createEmptySchema(itemSchema), + createSidebarSchema(itemSchema), + ]); diff --git a/packages/widgets/package.json b/packages/widgets/package.json index faca5b476..e8281f4af 100644 --- a/packages/widgets/package.json +++ b/packages/widgets/package.json @@ -36,6 +36,7 @@ "@homarr/common": "workspace:^0.1.0", "@homarr/definitions": "workspace:^0.1.0", "@homarr/form": "workspace:^0.1.0", + "@homarr/api": "workspace:^0.1.0", "@homarr/notifications": "workspace:^0.1.0", "@homarr/translation": "workspace:^0.1.0", "@homarr/ui": "workspace:^0.1.0", diff --git a/packages/widgets/src/_inputs/common.tsx b/packages/widgets/src/_inputs/common.tsx index 5027e13d4..486c4b650 100644 --- a/packages/widgets/src/_inputs/common.tsx +++ b/packages/widgets/src/_inputs/common.tsx @@ -1,10 +1,10 @@ +import type { WidgetKind } from "@homarr/definitions"; import { useScopedI18n } from "@homarr/translation/client"; -import type { WidgetSort } from ".."; import type { WidgetOptionOfType, WidgetOptionType } from "../options"; export interface CommonWidgetInputProps { - sort: WidgetSort; + kind: WidgetKind; property: string; options: Omit, "defaultValue" | "type">; } @@ -15,8 +15,8 @@ type UseWidgetInputTranslationReturnType = ( /** * Short description why as and unknown convertions are used below: - * Typescript was not smart enought to work with the generic of the WidgetSort to only allow properties that are relying within that specified sort. - * This does not mean, that the function useWidgetInputTranslation can be called with invalid arguments without type errors and rather means that the above widget..option. string + * Typescript was not smart enought to work with the generic of the WidgetKind to only allow properties that are relying within that specified kind. + * This does not mean, that the function useWidgetInputTranslation can be called with invalid arguments without type errors and rather means that the above widget..option. string * is not recognized as valid argument for the scoped i18n hook. Because the typesafety should remain outside the usage of those methods I (Meierschlumpf) decided to provide this fully typesafe useWidgetInputTranslation method. * * Some notes about it: @@ -24,10 +24,10 @@ type UseWidgetInputTranslationReturnType = ( * is defined for the option. The method does sadly not reconize issues with those definitions. So it does not yell at you when you somewhere show the label without having it defined in the translations. */ export const useWidgetInputTranslation = ( - sort: WidgetSort, + kind: WidgetKind, property: string, ): UseWidgetInputTranslationReturnType => { return useScopedI18n( - `widget.${sort}.option.${property}` as never, // Because the type is complex and not recognized by typescript, we need to cast it to never to make it work. + `widget.${kind}.option.${property}` as never, // Because the type is complex and not recognized by typescript, we need to cast it to never to make it work. ) as unknown as UseWidgetInputTranslationReturnType; }; diff --git a/packages/widgets/src/_inputs/widget-multiselect-input.tsx b/packages/widgets/src/_inputs/widget-multiselect-input.tsx index 9d276da3a..759a326af 100644 --- a/packages/widgets/src/_inputs/widget-multiselect-input.tsx +++ b/packages/widgets/src/_inputs/widget-multiselect-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetMultiSelectInput = ({ property, - sort, + kind, options, }: CommonWidgetInputProps<"multiSelect">) => { - const t = useWidgetInputTranslation(sort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/_inputs/widget-number-input.tsx b/packages/widgets/src/_inputs/widget-number-input.tsx index 58e7dafae..eed76f112 100644 --- a/packages/widgets/src/_inputs/widget-number-input.tsx +++ b/packages/widgets/src/_inputs/widget-number-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetNumberInput = ({ property, - sort, + kind, options, }: CommonWidgetInputProps<"number">) => { - const t = useWidgetInputTranslation(sort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/_inputs/widget-select-input.tsx b/packages/widgets/src/_inputs/widget-select-input.tsx index 85e34c558..ad36118b1 100644 --- a/packages/widgets/src/_inputs/widget-select-input.tsx +++ b/packages/widgets/src/_inputs/widget-select-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetSelectInput = ({ property, - sort, + kind, options, }: CommonWidgetInputProps<"select">) => { - const t = useWidgetInputTranslation(sort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/_inputs/widget-slider-input.tsx b/packages/widgets/src/_inputs/widget-slider-input.tsx index 31ef00fab..76c725e80 100644 --- a/packages/widgets/src/_inputs/widget-slider-input.tsx +++ b/packages/widgets/src/_inputs/widget-slider-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetSliderInput = ({ property, - sort, + kind, options, }: CommonWidgetInputProps<"slider">) => { - const t = useWidgetInputTranslation(sort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/_inputs/widget-switch-input.tsx b/packages/widgets/src/_inputs/widget-switch-input.tsx index d09906f9e..7d18fab4a 100644 --- a/packages/widgets/src/_inputs/widget-switch-input.tsx +++ b/packages/widgets/src/_inputs/widget-switch-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetSwitchInput = ({ property, - sort, + kind, options, }: CommonWidgetInputProps<"switch">) => { - const t = useWidgetInputTranslation(sort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/_inputs/widget-text-input.tsx b/packages/widgets/src/_inputs/widget-text-input.tsx index af27560b1..1d251c872 100644 --- a/packages/widgets/src/_inputs/widget-text-input.tsx +++ b/packages/widgets/src/_inputs/widget-text-input.tsx @@ -8,10 +8,10 @@ import { useFormContext } from "./form"; export const WidgetTextInput = ({ property, - sort: widgetSort, + kind, options, }: CommonWidgetInputProps<"text">) => { - const t = useWidgetInputTranslation(widgetSort, property); + const t = useWidgetInputTranslation(kind, property); const form = useFormContext(); return ( diff --git a/packages/widgets/src/definition.ts b/packages/widgets/src/definition.ts index 25b9303db..b7e5811e8 100644 --- a/packages/widgets/src/definition.ts +++ b/packages/widgets/src/definition.ts @@ -1,9 +1,9 @@ import type { LoaderComponent } from "next/dynamic"; -import type { IntegrationKind } from "@homarr/definitions"; +import type { IntegrationKind, WidgetKind } from "@homarr/definitions"; import type { TablerIconsProps } from "@homarr/ui"; -import type { WidgetImports, WidgetSort } from "."; +import type { WidgetImports } from "."; import type { inferOptionsFromDefinition, WidgetOptionsRecord, @@ -11,37 +11,37 @@ import type { import type { IntegrationSelectOption } from "./widget-integration-select"; export const createWidgetDefinition = < - TSort extends WidgetSort, - TDefinition extends Definition, + TKind extends WidgetKind, + TDefinition extends WidgetDefinition, >( - sort: TSort, + kind: TKind, definition: TDefinition, ) => ({ withDynamicImport: ( - componentLoader: () => LoaderComponent>, + componentLoader: () => LoaderComponent>, ) => ({ definition: { - sort, + kind, ...definition, }, componentLoader, }), }); -interface Definition { +export interface WidgetDefinition { icon: (props: TablerIconsProps) => JSX.Element; supportedIntegrations?: IntegrationKind[]; options: WidgetOptionsRecord; } -export interface WidgetComponentProps { - options: inferOptionsFromDefinition>; +export interface WidgetComponentProps { + options: inferOptionsFromDefinition>; integrations: inferIntegrationsFromDefinition< - WidgetImports[TSort]["definition"] + WidgetImports[TKind]["definition"] >; } -type inferIntegrationsFromDefinition = +type inferIntegrationsFromDefinition = TDefinition extends { supportedIntegrations: infer TSupportedIntegrations; } // check if definition has supportedIntegrations @@ -57,5 +57,5 @@ interface IntegrationSelectOptionFor { kind: TIntegration[number]; } -export type WidgetOptionsRecordOf = - WidgetImports[TSort]["definition"]["options"]; +export type WidgetOptionsRecordOf = + WidgetImports[TKind]["definition"]["options"]; diff --git a/packages/widgets/src/import.ts b/packages/widgets/src/import.ts index 4805784d3..2868bb32e 100644 --- a/packages/widgets/src/import.ts +++ b/packages/widgets/src/import.ts @@ -1,5 +1,5 @@ -import type { WidgetSort } from "."; +import type { WidgetKind } from "@homarr/definitions"; export type WidgetImportRecord = { - [K in WidgetSort]: unknown; + [K in WidgetKind]: unknown; }; diff --git a/packages/widgets/src/index.tsx b/packages/widgets/src/index.tsx index 5c9f64038..e72dcc2aa 100644 --- a/packages/widgets/src/index.tsx +++ b/packages/widgets/src/index.tsx @@ -1,6 +1,8 @@ +import type { ComponentType } from "react"; import dynamic from "next/dynamic"; import type { Loader } from "next/dynamic"; +import type { WidgetKind } from "@homarr/definitions"; import { Loader as UiLoader } from "@homarr/ui"; import * as clock from "./clock"; @@ -12,21 +14,30 @@ export { reduceWidgetOptionsWithDefaultValues } from "./options"; export { WidgetEditModal } from "./modals/widget-edit-modal"; -export const widgetSorts = ["clock", "weather"] as const; - export const widgetImports = { clock, weather, } satisfies WidgetImportRecord; -export type WidgetSort = (typeof widgetSorts)[number]; export type WidgetImports = typeof widgetImports; export type WidgetImportKey = keyof WidgetImports; -export const loadWidgetDynamic = (sort: TSort) => - dynamic>( - widgetImports[sort].componentLoader as Loader>, +const loadedComponents = new Map< + WidgetKind, + ComponentType> +>(); + +export const loadWidgetDynamic = (kind: TKind) => { + const existingComponent = loadedComponents.get(kind); + if (existingComponent) return existingComponent; + + const newlyLoadedComponent = dynamic>( + widgetImports[kind].componentLoader as Loader>, { loading: () => , }, ); + + loadedComponents.set(kind, newlyLoadedComponent as never); + return newlyLoadedComponent; +}; diff --git a/packages/widgets/src/modals/widget-edit-modal.tsx b/packages/widgets/src/modals/widget-edit-modal.tsx index 09355eb29..4e0459716 100644 --- a/packages/widgets/src/modals/widget-edit-modal.tsx +++ b/packages/widgets/src/modals/widget-edit-modal.tsx @@ -1,46 +1,46 @@ "use client"; -import type { Dispatch, SetStateAction } from "react"; import type { ManagedModal } from "mantine-modal-manager"; -import { useScopedI18n } from "@homarr/translation/client"; +import type { WidgetKind } from "@homarr/definitions"; +import { useI18n } from "@homarr/translation/client"; import { Button, Group, Stack } from "@homarr/ui"; -import type { WidgetSort } from ".."; +import { widgetImports } from ".."; import { getInputForType } from "../_inputs"; import { FormProvider, useForm } from "../_inputs/form"; -import type { WidgetOptionsRecordOf } from "../definition"; import type { WidgetOptionDefinition } from "../options"; -import { WidgetIntegrationSelect } from "../widget-integration-select"; import type { IntegrationSelectOption } from "../widget-integration-select"; +import { WidgetIntegrationSelect } from "../widget-integration-select"; export interface WidgetEditModalState { options: Record; integrations: string[]; } -interface ModalProps { - sort: TSort; - state: [WidgetEditModalState, Dispatch>]; - definition: WidgetOptionsRecordOf; +interface ModalProps { + kind: TSort; + value: WidgetEditModalState; + onSuccessfulEdit: (value: WidgetEditModalState) => void; integrationData: IntegrationSelectOption[]; integrationSupport: boolean; } -export const WidgetEditModal: ManagedModal> = ({ +export const WidgetEditModal: ManagedModal> = ({ actions, innerProps, }) => { - const t = useScopedI18n("widget.editModal"); - const [value, setValue] = innerProps.state; + const t = useI18n(); const form = useForm({ - initialValues: value, + initialValues: innerProps.value, }); + const { definition } = widgetImports[innerProps.kind]; + return (
{ - setValue(v); + innerProps.onSuccessfulEdit(v); actions.closeModal(); })} > @@ -48,12 +48,12 @@ export const WidgetEditModal: ManagedModal> = ({ {innerProps.integrationSupport && ( )} - {Object.entries(innerProps.definition).map( + {Object.entries(definition.options).map( ([key, value]: [string, WidgetOptionDefinition]) => { const Input = getInputForType(value.type); @@ -64,7 +64,7 @@ export const WidgetEditModal: ManagedModal> = ({ return ( @@ -73,10 +73,10 @@ export const WidgetEditModal: ManagedModal> = ({ )} diff --git a/packages/widgets/src/options.ts b/packages/widgets/src/options.ts index ec46bc2c6..94ab03db2 100644 --- a/packages/widgets/src/options.ts +++ b/packages/widgets/src/options.ts @@ -1,6 +1,9 @@ import { objectEntries } from "@homarr/common"; +import type { WidgetKind } from "@homarr/definitions"; import type { z } from "@homarr/validation"; +import { widgetImports } from "."; + interface CommonInput { defaultValue?: TType; withDescription?: boolean; @@ -143,13 +146,16 @@ export const opt = { }; export const reduceWidgetOptionsWithDefaultValues = ( - optionsDefinition: Record, + kind: WidgetKind, currentValue: Record = {}, -) => - objectEntries(optionsDefinition).reduce( +) => { + const definition = widgetImports[kind].definition; + const options = definition.options as Record; + return objectEntries(options).reduce( (prev, [key, value]) => ({ ...prev, [key]: currentValue[key] ?? value.defaultValue, }), {} as Record, ); +}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2f170c5f5..6041807d2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,14 +15,14 @@ importers: specifier: workspace:^0.1.0 version: link:tooling/prettier '@turbo/gen': - specifier: ^1.10.16 - version: 1.10.16(@types/node@18.18.13)(typescript@5.3.3) + specifier: ^1.12.2 + version: 1.12.2(@types/node@18.18.13)(typescript@5.3.3) prettier: specifier: ^3.1.0 version: 3.1.0 turbo: - specifier: ^1.10.16 - version: 1.10.16 + specifier: ^1.12.2 + version: 1.12.2 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -66,26 +66,26 @@ importers: specifier: workspace:^0.1.0 version: link:../../packages/widgets '@mantine/hooks': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(react@18.2.0) '@mantine/modals': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) '@mantine/tiptap': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.1.13)(@tiptap/react@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': specifier: ^0.7.1 version: 0.7.1(typescript@5.3.3)(zod@3.22.4) '@tanstack/react-query': specifier: ^5.17.1 - version: 5.18.1(react@18.2.0) + version: 5.17.19(react@18.2.0) '@tanstack/react-query-devtools': specifier: ^5.17.1 - version: 5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0) + version: 5.17.21(@tanstack/react-query@5.17.19)(react@18.2.0) '@tanstack/react-query-next-experimental': specifier: 5.17.1 - version: 5.17.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) + version: 5.17.1(@tanstack/react-query@5.17.19)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.1.13 version: 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) @@ -100,34 +100,40 @@ importers: version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/next': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) '@trpc/react-query': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 dayjs: specifier: ^1.11.10 version: 1.11.10 + fily-publish-gridstack: + specifier: ^0.0.13 + version: 0.0.13 jotai: specifier: ^2.6.1 - version: 2.6.4(@types/react@18.2.52)(react@18.2.0) + version: 2.6.2(@types/react@18.2.52)(react@18.2.0) mantine-modal-manager: - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) next: specifier: ^14.0.4 - version: 14.1.0(react-dom@18.2.0)(react@18.2.0) + version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) postcss-preset-mantine: specifier: ^1.12.3 - version: 1.13.0(postcss@8.4.31) + version: 1.12.3(postcss@8.4.31) react: specifier: 18.2.0 version: 18.2.0 react-dom: specifier: 18.2.0 version: 18.2.0(react@18.2.0) + sass: + specifier: ^1.70.0 + version: 1.70.0 superjson: specifier: 2.2.1 version: 2.2.1 @@ -213,7 +219,7 @@ importers: version: 0.18.0 '@auth/drizzle-adapter': specifier: ^0.3.12 - version: 0.3.17 + version: 0.3.16 '@homarr/db': specifier: workspace:^0.1.0 version: link:../db @@ -228,7 +234,7 @@ importers: version: 0.9.1 next: specifier: ^14.0.4 - version: 14.1.0(react-dom@18.2.0)(react@18.2.0) + version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: specifier: 5.0.0-beta.5 version: 5.0.0-beta.5(next@14.1.0)(react@18.2.0) @@ -320,7 +326,7 @@ importers: version: 7.3.0 drizzle-kit: specifier: ^0.20.9 - version: 0.20.14 + version: 0.20.13 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -356,7 +362,7 @@ importers: packages/form: dependencies: '@mantine/form': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(react@18.2.0) devDependencies: '@homarr/eslint-config': @@ -381,7 +387,7 @@ importers: specifier: workspace:^0.1.0 version: link:../ui '@mantine/notifications': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: '@homarr/eslint-config': @@ -403,7 +409,7 @@ importers: packages/spotlight: dependencies: '@mantine/spotlight': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: '@homarr/eslint-config': @@ -447,10 +453,10 @@ importers: packages/ui: dependencies: '@mantine/core': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': - specifier: ^7.4.0 + specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) '@tabler/icons-react': specifier: ^2.42.0 @@ -502,6 +508,9 @@ importers: packages/widgets: dependencies: + '@homarr/api': + specifier: workspace:^0.1.0 + version: link:../api '@homarr/common': specifier: workspace:^0.1.0 version: link:../common @@ -638,8 +647,8 @@ packages: preact-render-to-string: 5.2.3(preact@10.11.3) dev: false - /@auth/drizzle-adapter@0.3.17: - resolution: {integrity: sha512-pyHwshtINeJfUGdA6e+2lIzklfTZB2V60iLPbGXbcMMiECmsKXeEPS+xlwtJryY2ckwOoxG9a781cVX371QxUg==} + /@auth/drizzle-adapter@0.3.16: + resolution: {integrity: sha512-08uS3j6Omzhshgtn8bjKxZlVOrO2Y3eXdTCYDFdhVAG7KpnotRYFhjrXqVlb9kjaNIxavnyad37+DtpIoOYqmg==} dependencies: '@auth/core': 0.18.0 transitivePeerDependencies: @@ -1771,43 +1780,43 @@ packages: resolution: {integrity: sha512-ynV4iaC1c1mUhuAr9HRaoq8KrWYmZ0bJEpOh7qTBE+OfdDsdvQUe+0S7FW+DHkJ4RuxQMdO8djrZK7HrUw9YMA==} dev: false - /@tanstack/query-core@5.18.1: - resolution: {integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==} + /@tanstack/query-core@5.17.19: + resolution: {integrity: sha512-Lzw8FUtnLCc9Jwz0sw9xOjZB+/mCCmJev38v2wHMUl/ioXNIhnNWeMxu0NKUjIhAd62IRB3eAtvxAGDJ55UkyA==} dev: false - /@tanstack/query-devtools@5.18.1: - resolution: {integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==} + /@tanstack/query-devtools@5.17.21: + resolution: {integrity: sha512-WWfcnNjTEqcuAS5GyKkVGkseuES6yd197MJWGImBu+MoCjWPqxSXKCCfm+utSXJauJUGm7xoMmhqCphiQdjf8w==} dev: false - /@tanstack/react-query-devtools@5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0): - resolution: {integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==} + /@tanstack/react-query-devtools@5.17.21(@tanstack/react-query@5.17.19)(react@18.2.0): + resolution: {integrity: sha512-Ri1AuWpN67eyPdMTlPxx1TMGNUaxTHrGv0ll0S20ZObz/Xms5wfANV3c6OX0HZTY0igudP1k5jpRLXNkd249mg==} peerDependencies: - '@tanstack/react-query': ^5.18.1 + '@tanstack/react-query': ^5.17.19 react: ^18.0.0 dependencies: - '@tanstack/query-devtools': 5.18.1 - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/query-devtools': 5.17.21 + '@tanstack/react-query': 5.17.19(react@18.2.0) react: 18.2.0 dev: false - /@tanstack/react-query-next-experimental@5.17.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0): + /@tanstack/react-query-next-experimental@5.17.1(@tanstack/react-query@5.17.19)(next@14.1.0)(react@18.2.0): resolution: {integrity: sha512-2KtiweIo/hUU3vGNMdroiqEUSGCQ4l/85mRn6ymWef3BJZCZosIL/hz8x7r2+ujeY9ir+1HYcSmD01onrfijsg==} peerDependencies: '@tanstack/react-query': ^5.17.1 next: ^13 || ^14 react: ^18.0.0 dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) - next: 14.1.0(react-dom@18.2.0)(react@18.2.0) + '@tanstack/react-query': 5.17.19(react@18.2.0) + next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false - /@tanstack/react-query@5.18.1(react@18.2.0): - resolution: {integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==} + /@tanstack/react-query@5.17.19(react@18.2.0): + resolution: {integrity: sha512-qaQENB6/03Gj3dFZGvdmUoqeUGlGm7P1p0RmaR04Bf1Ib1T9lLGimcC9T3oCFbrx0b2ZF21ngjFZNjj9uPJMcg==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.18.1 + '@tanstack/query-core': 5.17.19 react: 18.2.0 dev: false @@ -2083,7 +2092,7 @@ packages: '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false - /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): + /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2094,17 +2103,17 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.17.19(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 - next: 14.1.0(react-dom@18.2.0)(react@18.2.0) + next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-ssr-prepass: 1.5.0(react@18.2.0) dev: false - /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): + /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2113,7 +2122,7 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.17.19(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 @@ -2140,10 +2149,11 @@ packages: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.10.16(@types/node@18.18.13)(typescript@5.3.3): - resolution: {integrity: sha512-PzyluADjVuy5OcIi+/aRcD70OElQpRVRDdfZ9fH8G5Fv75lQcNrjd1bBGKmhjSw+g+eTEkXMGnY7s6gsCYjYTQ==} + /@turbo/gen@1.12.2(@types/node@18.18.13)(typescript@5.3.3): + resolution: {integrity: sha512-XmdaB4J3JvDs6/L+JkCHTf/s74+O4xKZC0HDQxvV+cyicvYocPcR5NTOuH5gdG81roR9tVQWhkAza2hgGOlSyw==} + hasBin: true dependencies: - '@turbo/workspaces': 1.10.16 + '@turbo/workspaces': 1.12.2 chalk: 2.4.2 commander: 10.0.1 fs-extra: 10.1.0 @@ -2162,13 +2172,14 @@ packages: - typescript dev: true - /@turbo/workspaces@1.10.16: - resolution: {integrity: sha512-WKpMyWC4fKCji9DFSaL6uUnTakOmL769LfiNOGk2v5jONMKpjvOB1o1nXkWNbU/PTPqxwV4Cf5qzNSWIgnanYg==} + /@turbo/workspaces@1.12.2: + resolution: {integrity: sha512-B1WybqMR2/7jq9j3EqSuWiYHK/9ZUQPZjy7DIt8PGc+AdrP1nVYW2vOpApKO9j/dLvycDGAmn5LtL5vcSrMlfg==} + hasBin: true dependencies: chalk: 2.4.2 commander: 10.0.1 execa: 5.1.1 - fast-glob: 3.3.1 + fast-glob: 3.3.2 fs-extra: 10.1.0 gradient-string: 2.0.2 inquirer: 8.2.6 @@ -2570,6 +2581,14 @@ packages: dependencies: color-convert: 2.0.1 + /anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + dev: false + /aproba@2.0.0: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} dev: false @@ -2762,6 +2781,11 @@ packages: prebuild-install: 7.1.1 dev: false + /binary-extensions@2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + dev: false + /bindings@1.5.0: resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} dependencies: @@ -2858,8 +2882,8 @@ packages: resolution: {integrity: sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==} dev: false - /caniuse-lite@1.0.30001583: - resolution: {integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==} + /caniuse-lite@1.0.30001579: + resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} dev: false /case-anything@2.1.13: @@ -2922,6 +2946,21 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true + /chokidar@3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.3 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + dev: false + /chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} dev: false @@ -3293,8 +3332,8 @@ packages: wordwrap: 1.0.0 dev: true - /drizzle-kit@0.20.14: - resolution: {integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==} + /drizzle-kit@0.20.13: + resolution: {integrity: sha512-j9oZSQXNWG+KBJm0Sg3S/zJpncHGKnpqNfFuM4NUxUMGTcihDHhP9SW6Jncqwb5vsP1Xm0a8JLm3PZUIspC/oA==} hasBin: true dependencies: '@drizzle-team/studio': 0.0.39 @@ -3645,6 +3684,7 @@ packages: /escodegen@2.1.0: resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} engines: {node: '>=6.0'} + hasBin: true dependencies: esprima: 4.0.1 estraverse: 5.3.0 @@ -3881,6 +3921,7 @@ packages: /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} + hasBin: true dev: true /esquery@1.5.0: @@ -3957,6 +3998,7 @@ packages: glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 + dev: false /fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} @@ -3967,7 +4009,6 @@ packages: glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 - dev: false /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -4003,6 +4044,10 @@ packages: dependencies: to-regex-range: 5.0.1 + /fily-publish-gridstack@0.0.13: + resolution: {integrity: sha512-evN26y9qwzZcz63PJNCe1zqtf5yLG8UI/2FIBXrW1tcKCyyNIyC8+xkH0QoRalSpJETgAiqdBHgi3asVTU3umQ==} + dev: false + /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -4058,6 +4103,14 @@ packages: /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: false + optional: true + /function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -4213,7 +4266,7 @@ packages: '@types/glob': 7.2.0 array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.1 + fast-glob: 3.3.2 glob: 7.2.3 ignore: 5.2.4 merge2: 1.4.1 @@ -4255,6 +4308,7 @@ packages: /handlebars@4.7.8: resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} engines: {node: '>=0.4.7'} + hasBin: true dependencies: minimist: 1.2.8 neo-async: 2.6.2 @@ -4383,6 +4437,10 @@ packages: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} + /immutable@4.3.4: + resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} + dev: false + /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -4499,6 +4557,13 @@ packages: has-bigints: 1.0.2 dev: false + /is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + dependencies: + binary-extensions: 2.2.0 + dev: false + /is-boolean-object@1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} @@ -4736,8 +4801,8 @@ packages: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false - /jotai@2.6.4(@types/react@18.2.52)(react@18.2.0): - resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} + /jotai@2.6.2(@types/react@18.2.52)(react@18.2.0): + resolution: {integrity: sha512-kl4KguU1Fr+tFiLi3A3h9qPEzhvLTTDA10DO3QZAz6k7BEaQJ+qvSBwolzonnfNI4QzEovyQfUqVgnRxfnnQVQ==} engines: {node: '>=12.20.0'} peerDependencies: '@types/react': '>=17.0.0' @@ -4758,7 +4823,6 @@ packages: /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true dependencies: argparse: 2.0.1 @@ -5072,6 +5136,7 @@ packages: /mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true dependencies: minimist: 1.2.8 dev: true @@ -5125,7 +5190,7 @@ packages: optional: true dependencies: '@auth/core': 0.18.0 - next: 14.1.0(react-dom@18.2.0)(react@18.2.0) + next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false @@ -5141,7 +5206,7 @@ packages: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} dev: true - /next@14.1.0(react-dom@18.2.0)(react@18.2.0): + /next@14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0): resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} engines: {node: '>=18.17.0'} hasBin: true @@ -5159,11 +5224,12 @@ packages: '@next/env': 14.1.0 '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001583 + caniuse-lite: 1.0.30001579 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) + sass: 1.70.0 styled-jsx: 5.1.1(react@18.2.0) optionalDependencies: '@next/swc-darwin-arm64': 14.1.0 @@ -5237,6 +5303,11 @@ packages: abbrev: 1.1.1 dev: false + /normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + dev: false + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -5555,8 +5626,8 @@ packages: postcss-selector-parser: 6.0.13 dev: false - /postcss-preset-mantine@1.13.0(postcss@8.4.31): - resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} + /postcss-preset-mantine@1.12.3(postcss@8.4.31): + resolution: {integrity: sha512-cCwowf20mIyRXnV1cSVoMGfhYgy8ZqFJWsEJthdMZ3n7LijjucE9l/HO47gv5gAtr9nY1MkaEkpWS7ulhSTbSg==} peerDependencies: postcss: '>=8.0.0' dependencies: @@ -5956,6 +6027,13 @@ packages: string_decoder: 1.3.0 util-deprecate: 1.0.2 + /readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + dependencies: + picomatch: 2.3.1 + dev: false + /reflect.getprototypeof@1.0.3: resolution: {integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==} engines: {node: '>= 0.4'} @@ -6108,6 +6186,16 @@ packages: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true + /sass@1.70.0: + resolution: {integrity: sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==} + engines: {node: '>=14.0.0'} + hasBin: true + dependencies: + chokidar: 3.5.3 + immutable: 4.3.4 + source-map-js: 1.0.2 + dev: false + /scheduler@0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: @@ -6539,63 +6627,64 @@ packages: safe-buffer: 5.2.1 dev: false - /turbo-darwin-64@1.10.16: - resolution: {integrity: sha512-+Jk91FNcp9e9NCLYlvDDlp2HwEDp14F9N42IoW3dmHI5ZkGSXzalbhVcrx3DOox3QfiNUHxzWg4d7CnVNCuuMg==} + /turbo-darwin-64@1.12.2: + resolution: {integrity: sha512-Aq/ePQ5KNx6XGwlZWTVTqpQYfysm1vkwkI6kAYgrX5DjMWn+tUXrSgNx4YNte0F+V4DQ7PtuWX+jRG0h0ZNg0A==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-darwin-arm64@1.10.16: - resolution: {integrity: sha512-jqGpFZipIivkRp/i+jnL8npX0VssE6IAVNKtu573LXtssZdV/S+fRGYA16tI46xJGxSAivrZ/IcgZrV6Jk80bw==} + /turbo-darwin-arm64@1.12.2: + resolution: {integrity: sha512-wTr+dqkwJo/eXE+4SPTSeNBKyyfQJhI6I9sKVlCSBmtaNEqoGNgdVzgMUdqrg9AIFzLIiKO+zhfskNaSWpVFow==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-linux-64@1.10.16: - resolution: {integrity: sha512-PpqEZHwLoizQ6sTUvmImcRmACyRk9EWLXGlqceogPZsJ1jTRK3sfcF9fC2W56zkSIzuLEP07k5kl+ZxJd8JMcg==} + /turbo-linux-64@1.12.2: + resolution: {integrity: sha512-BggBKrLojGarDaa2zBo+kUR3fmjpd6bLA8Unm3Aa2oJw0UvEi3Brd+w9lNsPZHXXQYBUzNUY2gCdxf3RteWb0g==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-linux-arm64@1.10.16: - resolution: {integrity: sha512-TMjFYz8to1QE0fKVXCIvG/4giyfnmqcQIwjdNfJvKjBxn22PpbjeuFuQ5kNXshUTRaTJihFbuuCcb5OYFNx4uw==} + /turbo-linux-arm64@1.12.2: + resolution: {integrity: sha512-v/apSRvVuwYjq1D9MJFsHv2EpGd1S4VoSdZvVfW6FaM06L8CFZa92urNR1svdGYN28YVKwK9Ikc9qudC6t/d5A==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-windows-64@1.10.16: - resolution: {integrity: sha512-+jsf68krs0N66FfC4/zZvioUap/Tq3sPFumnMV+EBo8jFdqs4yehd6+MxIwYTjSQLIcpH8KoNMB0gQYhJRLZzw==} + /turbo-windows-64@1.12.2: + resolution: {integrity: sha512-3uDdwXcRGkgopYFdPDpxQiuQjfQ12Fxq0fhj+iGymav0eWA4W4wzYwSdlUp6rT22qOBIzaEsrIspRwx1DsMkNg==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /turbo-windows-arm64@1.10.16: - resolution: {integrity: sha512-sKm3hcMM1bl0B3PLG4ifidicOGfoJmOEacM5JtgBkYM48ncMHjkHfFY7HrJHZHUnXM4l05RQTpLFoOl/uIo2HQ==} + /turbo-windows-arm64@1.12.2: + resolution: {integrity: sha512-zNIHnwtQfJSjFi7movwhPQh2rfrcKZ7Xv609EN1yX0gEp9GxooCUi2yNnBQ8wTqFjioA2M5hZtGJQ0RrKaEm/Q==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /turbo@1.10.16: - resolution: {integrity: sha512-2CEaK4FIuSZiP83iFa9GqMTQhroW2QryckVqUydmg4tx78baftTOS0O+oDAhvo9r9Nit4xUEtC1RAHoqs6ZEtg==} + /turbo@1.12.2: + resolution: {integrity: sha512-BcoQjBZ+LJCMdjzWhzQflOinUjek28rWXj07aaaAQ8T3Ehs0JFSjIsXOm4qIbo52G4xk3gFVcUtJhh/QRADl7g==} + hasBin: true optionalDependencies: - turbo-darwin-64: 1.10.16 - turbo-darwin-arm64: 1.10.16 - turbo-linux-64: 1.10.16 - turbo-linux-arm64: 1.10.16 - turbo-windows-64: 1.10.16 - turbo-windows-arm64: 1.10.16 + turbo-darwin-64: 1.12.2 + turbo-darwin-arm64: 1.12.2 + turbo-linux-64: 1.12.2 + turbo-linux-arm64: 1.12.2 + turbo-windows-64: 1.12.2 + turbo-windows-arm64: 1.12.2 dev: true /type-check@0.4.0: @@ -6680,6 +6769,7 @@ packages: /uglify-js@3.17.4: resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} engines: {node: '>=0.8.0'} + hasBin: true requiresBuild: true dev: true optional: true From 154fc050cd7b8f1d9094a49e93f26810217c13aa Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:35:30 +0100 Subject: [PATCH 11/87] config: add docker image workflow --- .../workflows/{ci.yml => code-quality.yml} | 2 +- .github/workflows/docker-image.yml | 29 +++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) rename .github/workflows/{ci.yml => code-quality.yml} (97%) create mode 100644 .github/workflows/docker-image.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/code-quality.yml similarity index 97% rename from .github/workflows/ci.yml rename to .github/workflows/code-quality.yml index cdd48bb9c..0c427653f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/code-quality.yml @@ -1,4 +1,4 @@ -name: CI +name: Code quality analysis on: pull_request: diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 000000000..62f4d7916 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,29 @@ +name: Docker image + +on: + push: + branches: + - main + workflow_dispatch: {} + +permissions: + contents: write + +jobs: + deploy: + name: Deploy docker image + runs-on: ubuntu-latest + steps: + - name: Discord notification + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} + uses: Ilshidur/action-discord@master + with: + args: 'Deployment of an image has been triggered' + - uses: actions/checkout@v4 + - name: Bump version and push tag + uses: anothrNick/github-tag-action@1.64.0 # Don't use @master or @v1 unless you're happy to test the latest version + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + WITH_V: false + DRY_RUN: true \ No newline at end of file From ea7cb27cfac6feb2ae07ee92a5b8426192adf43a Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:46:21 +0100 Subject: [PATCH 12/87] config: add pnpm to deployment workflow --- .github/workflows/docker-image.yml | 39 +++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 62f4d7916..2b79d6124 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -1,18 +1,26 @@ name: Docker image on: - push: + pull_request: + types: + - closed branches: - main workflow_dispatch: {} permissions: contents: write + packages: write + +concurrency: production jobs: deploy: name: Deploy docker image runs-on: ubuntu-latest + strategy: + matrix: + node-version: [20] steps: - name: Discord notification env: @@ -21,9 +29,34 @@ jobs: with: args: 'Deployment of an image has been triggered' - uses: actions/checkout@v4 + - uses: pnpm/action-setup@v2 + with: + version: 8 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + cache: 'pnpm' + - name: Install dependencies + run: pnpm install + - name: Build artifacts + run: pnpm build + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 - name: Bump version and push tag - uses: anothrNick/github-tag-action@1.64.0 # Don't use @master or @v1 unless you're happy to test the latest version + id: githubTagAction + uses: anothrNick/github-tag-action@1.64.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} WITH_V: false - DRY_RUN: true \ No newline at end of file + DRY_RUN: true + - name: Docker meta + id: meta + uses: docker/metadata-action@v4 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + type=raw,value=latest + type=raw,value=${{ steps.githubTagAction.outputs.new_tag }} \ No newline at end of file From a3156bcb18b5cb611c1b2c760738f44fb3e0fcbb Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:50:01 +0100 Subject: [PATCH 13/87] config: disable turborepo telemetry --- .github/workflows/docker-image.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 2b79d6124..8f1e8204a 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -12,6 +12,9 @@ permissions: contents: write packages: write +env: + TURBO_TELEMETRY_DISABLED: 1 + concurrency: production jobs: From 74e1ad2f00a65fc9078c2ced37adaa70fd103162 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:57:49 +0100 Subject: [PATCH 14/87] config: push webhook on image build --- .github/workflows/docker-image.yml | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 8f1e8204a..424e7be9d 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -55,6 +55,12 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} WITH_V: false DRY_RUN: true + - name: Discord notification + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} + uses: Ilshidur/action-discord@master + with: + args: 'Image has been tagged as ${{ steps.githubTagAction.outputs.new_tag }}' - name: Docker meta id: meta uses: docker/metadata-action@v4 @@ -62,4 +68,22 @@ jobs: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | type=raw,value=latest - type=raw,value=${{ steps.githubTagAction.outputs.new_tag }} \ No newline at end of file + type=raw,value=${{ steps.githubTagAction.outputs.new_tag }} + - name: Build and push + id: buildPushAction + uses: docker/build-push-action@v4 + with: + platforms: linux/amd64,linux/arm64,linux/riscv64,linux/arm/v7,linux/arm/v6 + context: . + push: false + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + cache-from: type=gha + cache-to: type=gha,mode=max + network: host + - name: Discord notification + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} + uses: Ilshidur/action-discord@master + with: + args: 'Image built with ID ${{ steps.buildPushAction.outputs.imageid }}' From d3c11f49dc2e67be8c7ad14a92fad01569b60eac Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:59:15 +0100 Subject: [PATCH 15/87] chore(deps): update dependency @types/better-sqlite3 to v7.6.9 (#17) * chore(deps): update dependency @types/better-sqlite3 to v7.6.9 * fix: lint issue --------- Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- packages/db/index.ts | 2 +- packages/db/package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/db/index.ts b/packages/db/index.ts index 221c764cb..7f1a29baf 100644 --- a/packages/db/index.ts +++ b/packages/db/index.ts @@ -8,7 +8,7 @@ export const schema = sqliteSchema; export * from "drizzle-orm"; -const sqlite = new Database(process.env.DB_URL!); +const sqlite = new Database(process.env.DB_URL); export const db = drizzle(sqlite, { schema }); diff --git a/packages/db/package.json b/packages/db/package.json index b3a71a100..12ac6ab4f 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -29,7 +29,7 @@ "@homarr/eslint-config": "workspace:^0.2.0", "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", - "@types/better-sqlite3": "7.6.8", + "@types/better-sqlite3": "7.6.9", "dotenv-cli": "^7.3.0", "drizzle-kit": "^0.20.9", "eslint": "^8.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6041807d2..1879178c5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -307,7 +307,7 @@ importers: version: 9.2.2 drizzle-orm: specifier: ^0.29.3 - version: 0.29.3(@types/better-sqlite3@7.6.8)(better-sqlite3@9.2.2) + version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.2.2) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -319,8 +319,8 @@ importers: specifier: workspace:^0.1.0 version: link:../../tooling/typescript '@types/better-sqlite3': - specifier: 7.6.8 - version: 7.6.8 + specifier: 7.6.9 + version: 7.6.9 dotenv-cli: specifier: ^7.3.0 version: 7.3.0 @@ -2196,8 +2196,8 @@ packages: '@types/node': 18.18.13 dev: true - /@types/better-sqlite3@7.6.8: - resolution: {integrity: sha512-ASndM4rdGrzk7iXXqyNC4fbwt4UEjpK0i3j4q4FyeQrLAthfB6s7EF135ZJE0qQxtKIMFwmyT6x0switET7uIw==} + /@types/better-sqlite3@7.6.9: + resolution: {integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==} dependencies: '@types/node': 18.18.13 @@ -3354,7 +3354,7 @@ packages: - supports-color dev: true - /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.8)(better-sqlite3@9.2.2): + /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.2.2): resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' @@ -3425,7 +3425,7 @@ packages: sqlite3: optional: true dependencies: - '@types/better-sqlite3': 7.6.8 + '@types/better-sqlite3': 7.6.9 better-sqlite3: 9.2.2 dev: false From 2943819f74941790125d505a3509b107eaf9e5a9 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sat, 3 Feb 2024 22:59:34 +0100 Subject: [PATCH 16/87] chore: update gridstack to homarr/gridstack package (#20) * chore: migrate gridstack to homarr gridstack * fix: formatting issue --- apps/nextjs/package.json | 2 +- .../board/sections/gridstack/init-gridstack.ts | 7 ++++--- .../board/sections/gridstack/use-gridstack.ts | 10 +++++----- apps/nextjs/src/styles/gridstack.scss | 2 +- pnpm-lock.yaml | 14 +++++++------- 5 files changed, 18 insertions(+), 17 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 51ad71e40..60fb969f7 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -40,7 +40,7 @@ "@trpc/react-query": "next", "@trpc/server": "next", "dayjs": "^1.11.10", - "fily-publish-gridstack": "^0.0.13", + "@homarr/gridstack": "^1.0.0", "jotai": "^2.6.1", "mantine-modal-manager": "^7.5.1", "next": "^14.0.4", diff --git a/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts b/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts index a8d154356..78cc0deb5 100644 --- a/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts +++ b/apps/nextjs/src/components/board/sections/gridstack/init-gridstack.ts @@ -1,6 +1,7 @@ import type { MutableRefObject, RefObject } from "react"; -import type { GridItemHTMLElement } from "fily-publish-gridstack"; -import { GridStack } from "fily-publish-gridstack"; + +import type { GridItemHTMLElement } from "@homarr/gridstack"; +import { GridStack } from "@homarr/gridstack"; import type { Section } from "~/app/[locale]/boards/_types"; @@ -36,11 +37,11 @@ export const initializeGridstack = ({ float: true, alwaysShowResizeHandle: true, acceptWidgets: true, - disableOneColumnMode: true, staticGrid: true, minRow, animate: false, styleInHead: true, + disableRemoveNodeOnDrop: true, }, // selector of the gridstack item (it's eather category or wrapper) `.grid-stack-${section.kind}[data-section-id='${section.id}']`, diff --git a/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts b/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts index 1227a9c94..6dcad138d 100644 --- a/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts +++ b/apps/nextjs/src/components/board/sections/gridstack/use-gridstack.ts @@ -1,11 +1,12 @@ import type { MutableRefObject, RefObject } from "react"; import { createRef, useCallback, useEffect, useMemo, useRef } from "react"; +import { useAtomValue } from "jotai"; + import type { GridItemHTMLElement, GridStack, GridStackNode, -} from "fily-publish-gridstack"; -import { useAtomValue } from "jotai"; +} from "@homarr/gridstack"; import { useMarkSectionAsReady, @@ -101,12 +102,11 @@ export const useGridstack = ({ const currentGrid = gridRef.current; // Add listener for moving items around in a wrapper currentGrid?.on("change", (_, nodes) => { - (nodes as GridStackNode[]).forEach(onChange); + nodes.forEach(onChange); }); // Add listener for moving items in config from one wrapper to another - currentGrid?.on("added", (_, el) => { - const nodes = el as GridStackNode[]; + currentGrid?.on("added", (_, nodes) => { nodes.forEach((node) => onAdd(node)); }); diff --git a/apps/nextjs/src/styles/gridstack.scss b/apps/nextjs/src/styles/gridstack.scss index 4a6d18504..ae572061a 100644 --- a/apps/nextjs/src/styles/gridstack.scss +++ b/apps/nextjs/src/styles/gridstack.scss @@ -1,4 +1,4 @@ -@import "fily-publish-gridstack/dist/gridstack.min.css"; +@import "@homarr/gridstack/dist/gridstack.min.css"; :root { --gridstack-widget-width: 64; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1879178c5..f3bb6bf46 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -47,6 +47,9 @@ importers: '@homarr/form': specifier: workspace:^0.1.0 version: link:../../packages/form + '@homarr/gridstack': + specifier: ^1.0.0 + version: 1.0.0 '@homarr/notifications': specifier: workspace:^0.1.0 version: link:../../packages/notifications @@ -110,9 +113,6 @@ importers: dayjs: specifier: ^1.11.10 version: 1.11.10 - fily-publish-gridstack: - specifier: ^0.0.13 - version: 0.0.13 jotai: specifier: ^2.6.1 version: 2.6.2(@types/react@18.2.52)(react@18.2.0) @@ -1357,6 +1357,10 @@ packages: resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} dev: false + /@homarr/gridstack@1.0.0: + resolution: {integrity: sha512-KM9024BipLD9BmtM6jHI8OKLZ1Iy4vZdTfU53ww4qEda/330XQYhIC2SBcQgkNnDB2MTkn/laNSO5gTy+lJg9Q==} + dev: false + /@humanwhocodes/config-array@0.11.13: resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} engines: {node: '>=10.10.0'} @@ -4044,10 +4048,6 @@ packages: dependencies: to-regex-range: 5.0.1 - /fily-publish-gridstack@0.0.13: - resolution: {integrity: sha512-evN26y9qwzZcz63PJNCe1zqtf5yLG8UI/2FIBXrW1tcKCyyNIyC8+xkH0QoRalSpJETgAiqdBHgi3asVTU3umQ==} - dev: false - /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} From e6a5c83d9c209e092979a3900175eb8d5e1f0333 Mon Sep 17 00:00:00 2001 From: "deepsource-io[bot]" <42547082+deepsource-io[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:01:50 +0000 Subject: [PATCH 17/87] ci: add .deepsource.toml --- .deepsource.toml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .deepsource.toml diff --git a/.deepsource.toml b/.deepsource.toml new file mode 100644 index 000000000..2dddb56d5 --- /dev/null +++ b/.deepsource.toml @@ -0,0 +1,8 @@ +version = 1 + +[[analyzers]] +name = "javascript" + + [analyzers.meta] + plugins = ["react"] + environment = ["nodejs"] \ No newline at end of file From 2e555fbb350b2562ffa8cc0373c9641e9d78ef56 Mon Sep 17 00:00:00 2001 From: "deepsource-io[bot]" <42547082+deepsource-io[bot]@users.noreply.github.com> Date: Sat, 3 Feb 2024 22:06:11 +0000 Subject: [PATCH 18/87] ci: update .deepsource.toml --- .deepsource.toml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.deepsource.toml b/.deepsource.toml index 2dddb56d5..edc4a8907 100644 --- a/.deepsource.toml +++ b/.deepsource.toml @@ -5,4 +5,7 @@ name = "javascript" [analyzers.meta] plugins = ["react"] - environment = ["nodejs"] \ No newline at end of file + environment = ["nodejs"] + +[[transformers]] +name = "prettier" \ No newline at end of file From 8a9656a01e69baf704555e16b47ae57457e54b82 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 23:13:43 +0100 Subject: [PATCH 19/87] chore(deps): update dependency drizzle-kit to ^0.20.14 (#22) Co-authored-by: Renovate Bot --- packages/db/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/db/package.json b/packages/db/package.json index 12ac6ab4f..3548f657e 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -31,7 +31,7 @@ "@homarr/tsconfig": "workspace:^0.1.0", "@types/better-sqlite3": "7.6.9", "dotenv-cli": "^7.3.0", - "drizzle-kit": "^0.20.9", + "drizzle-kit": "^0.20.14", "eslint": "^8.56.0", "prettier": "^3.1.0", "typescript": "^5.3.3" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f3bb6bf46..8617748b3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -325,8 +325,8 @@ importers: specifier: ^7.3.0 version: 7.3.0 drizzle-kit: - specifier: ^0.20.9 - version: 0.20.13 + specifier: ^0.20.14 + version: 0.20.14 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -3336,8 +3336,8 @@ packages: wordwrap: 1.0.0 dev: true - /drizzle-kit@0.20.13: - resolution: {integrity: sha512-j9oZSQXNWG+KBJm0Sg3S/zJpncHGKnpqNfFuM4NUxUMGTcihDHhP9SW6Jncqwb5vsP1Xm0a8JLm3PZUIspC/oA==} + /drizzle-kit@0.20.14: + resolution: {integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==} hasBin: true dependencies: '@drizzle-team/studio': 0.0.39 From f3bb990c4dcd40f367cf59a120cf8f6fd2658309 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 3 Feb 2024 23:13:50 +0100 Subject: [PATCH 20/87] fix(deps): update dependency eslint-plugin-import to ^2.29.1 (#23) Co-authored-by: Renovate Bot --- pnpm-lock.yaml | 47 +++++++++++++++++-------------------- tooling/eslint/package.json | 2 +- 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8617748b3..99df82d28 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -567,8 +567,8 @@ importers: specifier: ^1.10.16 version: 1.10.16(eslint@8.56.0) eslint-plugin-import: - specifier: ^2.29.0 - version: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.56.0) + specifier: ^2.29.1 + version: 2.29.1(@typescript-eslint/parser@6.10.0)(eslint@8.56.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 version: 6.8.0(eslint@8.56.0) @@ -2648,7 +2648,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 get-intrinsic: 1.2.1 is-string: 1.0.7 @@ -2663,7 +2663,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 es-shim-unscopables: 1.0.0 get-intrinsic: 1.2.1 @@ -2674,7 +2674,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 es-shim-unscopables: 1.0.0 dev: false @@ -2694,7 +2694,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 es-shim-unscopables: 1.0.0 dev: false @@ -3754,8 +3754,8 @@ packages: - supports-color dev: false - /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.56.0): - resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==} + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.10.0)(eslint@8.56.0): + resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -3782,7 +3782,7 @@ packages: object.groupby: 1.0.1 object.values: 1.1.7 semver: 6.3.1 - tsconfig-paths: 3.14.2 + tsconfig-paths: 3.15.0 transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -4369,13 +4369,13 @@ packages: engines: {node: '>= 0.4.0'} dependencies: function-bind: 1.1.2 + dev: false /hasown@2.0.0: resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 - dev: false /header-case@1.0.1: resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==} @@ -4577,16 +4577,10 @@ packages: engines: {node: '>= 0.4'} dev: false - /is-core-module@2.13.0: - resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} - dependencies: - has: 1.0.3 - /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: hasown: 2.0.0 - dev: false /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} @@ -4780,7 +4774,7 @@ packages: /iterator.prototype@1.1.0: resolution: {integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==} dependencies: - define-properties: 1.2.0 + define-properties: 1.2.1 get-intrinsic: 1.2.1 has-symbols: 1.0.3 has-tostringtag: 1.0.0 @@ -4848,6 +4842,7 @@ packages: /json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true dependencies: minimist: 1.2.8 dev: false @@ -5347,7 +5342,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 dev: false @@ -5384,7 +5379,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 dev: false @@ -5392,7 +5387,7 @@ packages: resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 get-intrinsic: 1.2.1 dev: false @@ -5432,7 +5427,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 dev: false @@ -6039,7 +6034,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 get-intrinsic: 1.2.1 globalthis: 1.0.3 @@ -6094,8 +6089,9 @@ packages: /resolve@1.22.4: resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} + hasBin: true dependencies: - is-core-module: 2.13.0 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -6204,6 +6200,7 @@ packages: /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true dev: false /semver@7.5.4: @@ -6600,8 +6597,8 @@ packages: yn: 3.1.1 dev: true - /tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} + /tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: '@types/json5': 0.0.29 json5: 1.0.2 diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index 558b3a62e..bc67bceba 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -20,7 +20,7 @@ "@typescript-eslint/parser": "^6.10.0", "eslint-config-prettier": "^9.1.0", "eslint-config-turbo": "^1.10.16", - "eslint-plugin-import": "^2.29.0", + "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0" From 8a4fc849a2bb02639162de68a4ca276b9073a6b6 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:27:51 +0100 Subject: [PATCH 21/87] chore(deps): update dependency node to v18.19.0 (#27) Co-authored-by: Renovate Bot --- .nvmrc | 2 +- apps/nextjs/package.json | 2 +- package.json | 2 +- pnpm-lock.yaml | 38 +++++++++++++++++++------------------- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.nvmrc b/.nvmrc index 87ec8842b..a9d087399 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18.18.2 +18.19.0 diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 60fb969f7..de1978e27 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -54,7 +54,7 @@ "@homarr/eslint-config": "workspace:^0.2.0", "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", - "@types/node": "^18.18.13", + "@types/node": "^18.19.14", "@types/react": "^18.2.52", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", diff --git a/package.json b/package.json index 90aa89988..4579d4b20 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "homarr", "private": true, "engines": { - "node": ">=18.18.2" + "node": ">=18.19.0" }, "packageManager": "pnpm@8.11.0", "scripts": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 99df82d28..021901298 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: version: link:tooling/prettier '@turbo/gen': specifier: ^1.12.2 - version: 1.12.2(@types/node@18.18.13)(typescript@5.3.3) + version: 1.12.2(@types/node@18.19.14)(typescript@5.3.3) prettier: specifier: ^3.1.0 version: 3.1.0 @@ -148,8 +148,8 @@ importers: specifier: workspace:^0.1.0 version: link:../../tooling/typescript '@types/node': - specifier: ^18.18.13 - version: 18.18.13 + specifier: ^18.19.14 + version: 18.19.14 '@types/react': specifier: ^18.2.52 version: 18.2.52 @@ -2153,7 +2153,7 @@ packages: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.12.2(@types/node@18.18.13)(typescript@5.3.3): + /@turbo/gen@1.12.2(@types/node@18.19.14)(typescript@5.3.3): resolution: {integrity: sha512-XmdaB4J3JvDs6/L+JkCHTf/s74+O4xKZC0HDQxvV+cyicvYocPcR5NTOuH5gdG81roR9tVQWhkAza2hgGOlSyw==} hasBin: true dependencies: @@ -2165,7 +2165,7 @@ packages: minimatch: 9.0.3 node-plop: 0.26.3 proxy-agent: 6.3.0 - ts-node: 10.9.1(@types/node@18.18.13)(typescript@5.3.3) + ts-node: 10.9.1(@types/node@18.19.14)(typescript@5.3.3) update-check: 1.5.4 validate-npm-package-name: 5.0.0 transitivePeerDependencies: @@ -2197,25 +2197,25 @@ packages: /@types/bcrypt@5.0.2: resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} dependencies: - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/better-sqlite3@7.6.9: resolution: {integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==} dependencies: - '@types/node': 18.18.13 + '@types/node': 18.19.14 /@types/body-parser@1.19.5: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/cookies@0.7.10: @@ -2224,7 +2224,7 @@ packages: '@types/connect': 3.4.38 '@types/express': 4.17.21 '@types/keygrip': 1.0.6 - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/css-modules@1.0.5: @@ -2245,7 +2245,7 @@ packages: /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 18.18.13 + '@types/node': 18.19.14 '@types/qs': 6.9.10 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -2264,7 +2264,7 @@ packages: resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/http-errors@2.0.4: @@ -2301,8 +2301,8 @@ packages: resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} dev: true - /@types/node@18.18.13: - resolution: {integrity: sha512-vXYZGRrSCreZmq1rEjMRLXJhiy8MrIeVasx+PCVlP414N7CJLHnMf+juVvjdprHyH+XRy3zKZLHeNueOpJCn0g==} + /@types/node@18.19.14: + resolution: {integrity: sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg==} dependencies: undici-types: 5.26.5 @@ -2349,7 +2349,7 @@ packages: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/serve-static@1.15.5: @@ -2357,7 +2357,7 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/throttle-debounce@2.1.0: @@ -2367,7 +2367,7 @@ packages: /@types/through@0.0.30: resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} dependencies: - '@types/node': 18.18.13 + '@types/node': 18.19.14 dev: true /@types/tinycolor2@1.4.3: @@ -6566,7 +6566,7 @@ packages: typescript: 5.3.3 dev: false - /ts-node@10.9.1(@types/node@18.18.13)(typescript@5.3.3): + /ts-node@10.9.1(@types/node@18.19.14)(typescript@5.3.3): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -6585,7 +6585,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.18.13 + '@types/node': 18.19.14 acorn: 8.10.0 acorn-walk: 8.2.0 arg: 4.1.0 From 7da312134cc11366f00f4c877c8b4859cde417bf Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:28:05 +0100 Subject: [PATCH 22/87] chore(deps): update dependency @types/eslint to ^8.56.2 (#26) Co-authored-by: Renovate Bot --- pnpm-lock.yaml | 8 ++++---- tooling/eslint/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 021901298..91a683a95 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -586,8 +586,8 @@ importers: specifier: workspace:^0.1.0 version: link:../typescript '@types/eslint': - specifier: ^8.44.7 - version: 8.44.7 + specifier: ^8.56.2 + version: 8.56.2 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -2231,8 +2231,8 @@ packages: resolution: {integrity: sha512-oeKafs/df9lwOvtfiXVliZsocFVOexK9PZtLQWuPeuVCFR7jwiqlg60lu80JTe5NFNtH3tnV6Fs/ySR8BUPHAw==} dev: true - /@types/eslint@8.44.7: - resolution: {integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==} + /@types/eslint@8.56.2: + resolution: {integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==} dependencies: '@types/estree': 1.0.1 '@types/json-schema': 7.0.12 diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index bc67bceba..9491b358e 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -26,7 +26,7 @@ "eslint-plugin-react-hooks": "^4.6.0" }, "devDependencies": { - "@types/eslint": "^8.44.7", + "@types/eslint": "^8.56.2", "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "eslint": "^8.56.0", From b3e2032b5434909d217dfdb7d63323fb9b6de757 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:28:18 +0100 Subject: [PATCH 23/87] chore(deps): update dependency @types/cookies to v0.9.0 (#25) Co-authored-by: Renovate Bot --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 8325ce8d8..d685600ec 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -29,7 +29,7 @@ "@homarr/tsconfig": "workspace:^0.1.0", "@homarr/validation": "workspace:^0.1.0", "@types/bcrypt": "5.0.2", - "@types/cookies": "0.7.10", + "@types/cookies": "0.9.0", "eslint": "^8.56.0", "prettier": "^3.1.0", "typescript": "^5.3.3" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 91a683a95..2006cd6e1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -261,8 +261,8 @@ importers: specifier: 5.0.2 version: 5.0.2 '@types/cookies': - specifier: 0.7.10 - version: 0.7.10 + specifier: 0.9.0 + version: 0.9.0 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -2218,8 +2218,8 @@ packages: '@types/node': 18.19.14 dev: true - /@types/cookies@0.7.10: - resolution: {integrity: sha512-hmUCjAk2fwZVPPkkPBcI7jGLIR5mg4OVoNMBwU6aVsMm/iNPY7z9/R+x2fSwLt/ZXoGua6C5Zy2k5xOo9jUyhQ==} + /@types/cookies@0.9.0: + resolution: {integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==} dependencies: '@types/connect': 3.4.38 '@types/express': 4.17.21 From a7d5c36aa798ea9cf03579b752fa3640fb4f79cf Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:29:21 +0100 Subject: [PATCH 24/87] fix(deps): update dependency jotai to ^2.6.4 (#24) Co-authored-by: Renovate Bot --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index de1978e27..5304d035b 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -41,7 +41,7 @@ "@trpc/server": "next", "dayjs": "^1.11.10", "@homarr/gridstack": "^1.0.0", - "jotai": "^2.6.1", + "jotai": "^2.6.4", "mantine-modal-manager": "^7.5.1", "next": "^14.0.4", "postcss-preset-mantine": "^1.12.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2006cd6e1..e8fa03acf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -114,8 +114,8 @@ importers: specifier: ^1.11.10 version: 1.11.10 jotai: - specifier: ^2.6.1 - version: 2.6.2(@types/react@18.2.52)(react@18.2.0) + specifier: ^2.6.4 + version: 2.6.4(@types/react@18.2.52)(react@18.2.0) mantine-modal-manager: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) @@ -4795,8 +4795,8 @@ packages: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false - /jotai@2.6.2(@types/react@18.2.52)(react@18.2.0): - resolution: {integrity: sha512-kl4KguU1Fr+tFiLi3A3h9qPEzhvLTTDA10DO3QZAz6k7BEaQJ+qvSBwolzonnfNI4QzEovyQfUqVgnRxfnnQVQ==} + /jotai@2.6.4(@types/react@18.2.52)(react@18.2.0): + resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} engines: {node: '>=12.20.0'} peerDependencies: '@types/react': '>=17.0.0' From d9d169c0ce0220b440affcbb3cd607c8295f6aca Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:29:40 +0100 Subject: [PATCH 25/87] chore(deps): update pnpm to v8.15.1 (#28) Co-authored-by: Renovate Bot --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4579d4b20..5bcd4f175 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "engines": { "node": ">=18.19.0" }, - "packageManager": "pnpm@8.11.0", + "packageManager": "pnpm@8.15.1", "scripts": { "build": "turbo build", "clean": "git clean -xdf node_modules", From 8bcbc45943358d580712e0990ba2bb3c2c62d057 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:31:02 +0100 Subject: [PATCH 26/87] fix(deps): update dependency @auth/core to ^0.25.0 (#29) Co-authored-by: Renovate Bot --- packages/auth/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index d685600ec..81ad859f1 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@homarr/db": "workspace:^0.1.0", - "@auth/core": "^0.19.0", + "@auth/core": "^0.25.0", "@auth/drizzle-adapter": "^0.3.12", "@t3-oss/env-nextjs": "^0.7.1", "bcrypt": "^5.1.1", From 191d773aaf55209d67be841e4f24f24e6439ca85 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:41:56 +0100 Subject: [PATCH 27/87] fix(deps): update dependency @auth/drizzle-adapter to ^0.5.0 (#30) * fix(deps): update dependency @auth/drizzle-adapter to ^0.5.0 * fix: remove duplication of auth dependencies * fix: formatting issue --------- Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 81ad859f1..9c2919b96 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -14,7 +14,7 @@ "dependencies": { "@homarr/db": "workspace:^0.1.0", "@auth/core": "^0.25.0", - "@auth/drizzle-adapter": "^0.3.12", + "@auth/drizzle-adapter": "^0.5.0", "@t3-oss/env-nextjs": "^0.7.1", "bcrypt": "^5.1.1", "cookies": "^0.9.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e8fa03acf..f80f334e5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -218,8 +218,8 @@ importers: specifier: 0.18.0 version: 0.18.0 '@auth/drizzle-adapter': - specifier: ^0.3.12 - version: 0.3.16 + specifier: ^0.5.0 + version: 0.5.0 '@homarr/db': specifier: workspace:^0.1.0 version: link:../db @@ -647,8 +647,8 @@ packages: preact-render-to-string: 5.2.3(preact@10.11.3) dev: false - /@auth/drizzle-adapter@0.3.16: - resolution: {integrity: sha512-08uS3j6Omzhshgtn8bjKxZlVOrO2Y3eXdTCYDFdhVAG7KpnotRYFhjrXqVlb9kjaNIxavnyad37+DtpIoOYqmg==} + /@auth/drizzle-adapter@0.5.0: + resolution: {integrity: sha512-C02D7FGF7nI0snUjuKSLwMiinf5GX/maYFI79oaNWRx94ZzwtIWafnRi6Dr4ZV5rtk9fXvzDHw84+ZdwTjJE8w==} dependencies: '@auth/core': 0.18.0 transitivePeerDependencies: From f8a3aae1163d1b5d645e7e9fe0228846a856d4e6 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:46:06 +0100 Subject: [PATCH 28/87] fix(deps): update dependency @t3-oss/env-nextjs to ^0.8.0 (#31) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 2 +- packages/auth/package.json | 2 +- pnpm-lock.yaml | 22 +++++++++++----------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 5304d035b..86a32c482 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -28,7 +28,7 @@ "@mantine/hooks": "^7.5.1", "@mantine/modals": "^7.5.1", "@mantine/tiptap": "^7.5.1", - "@t3-oss/env-nextjs": "^0.7.1", + "@t3-oss/env-nextjs": "^0.8.0", "@tanstack/react-query": "^5.17.1", "@tanstack/react-query-devtools": "^5.17.1", "@tanstack/react-query-next-experimental": "5.17.1", diff --git a/packages/auth/package.json b/packages/auth/package.json index 9c2919b96..971ec9b0a 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -15,7 +15,7 @@ "@homarr/db": "workspace:^0.1.0", "@auth/core": "^0.25.0", "@auth/drizzle-adapter": "^0.5.0", - "@t3-oss/env-nextjs": "^0.7.1", + "@t3-oss/env-nextjs": "^0.8.0", "bcrypt": "^5.1.1", "cookies": "^0.9.1", "next": "^14.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f80f334e5..f095fdfb0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -78,8 +78,8 @@ importers: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.1.13)(@tiptap/react@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': - specifier: ^0.7.1 - version: 0.7.1(typescript@5.3.3)(zod@3.22.4) + specifier: ^0.8.0 + version: 0.8.0(typescript@5.3.3)(zod@3.22.4) '@tanstack/react-query': specifier: ^5.17.1 version: 5.17.19(react@18.2.0) @@ -224,8 +224,8 @@ importers: specifier: workspace:^0.1.0 version: link:../db '@t3-oss/env-nextjs': - specifier: ^0.7.1 - version: 0.7.1(typescript@5.3.3)(zod@3.22.4) + specifier: ^0.8.0 + version: 0.8.0(typescript@5.3.3)(zod@3.22.4) bcrypt: specifier: ^5.1.1 version: 5.1.1 @@ -1743,10 +1743,10 @@ packages: tslib: 2.5.0 dev: false - /@t3-oss/env-core@0.7.1(typescript@5.3.3)(zod@3.22.4): - resolution: {integrity: sha512-3+SQt39OlmSaRLqYVFv8uRm1BpFepM5TIiMytRqO9cjH+wB77o6BIJdeyM5h5U4qLBMEzOJWCY4MBaU/rLwbYw==} + /@t3-oss/env-core@0.8.0(typescript@5.3.3)(zod@3.22.4): + resolution: {integrity: sha512-Tc1pg0KH/tJeI0Z1s/Isp1VsGDj1N03ZAYFV8GjWgMxytF/ve0Dv+opjmTapHICRv8qiB1Y/fsTjkWNMpKPRCQ==} peerDependencies: - typescript: '>=4.7.2' + typescript: '>=5.0.0' zod: ^3.0.0 peerDependenciesMeta: typescript: @@ -1756,16 +1756,16 @@ packages: zod: 3.22.4 dev: false - /@t3-oss/env-nextjs@0.7.1(typescript@5.3.3)(zod@3.22.4): - resolution: {integrity: sha512-tQDbNLGCOvKGi+JoGuJ/CJInJI7/kLWJqtgGppAKS7ZFLdVOqZYR/uRjxlXOWPnxmUKF8VswOAsq7fXUpNZDhA==} + /@t3-oss/env-nextjs@0.8.0(typescript@5.3.3)(zod@3.22.4): + resolution: {integrity: sha512-bJyoE8of4QmqZN7a49iLJAbUq4graScb9ezXzvnuIVr9JP43C093vmy55hT1uZL533CwiPz8zo1INwyAS6qnHw==} peerDependencies: - typescript: '>=4.7.2' + typescript: '>=5.0.0' zod: ^3.0.0 peerDependenciesMeta: typescript: optional: true dependencies: - '@t3-oss/env-core': 0.7.1(typescript@5.3.3)(zod@3.22.4) + '@t3-oss/env-core': 0.8.0(typescript@5.3.3)(zod@3.22.4) typescript: 5.3.3 zod: 3.22.4 dev: false From 6a892e02c8aadcbfb192a65b56543ee27a3dc966 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:46:26 +0100 Subject: [PATCH 29/87] fix(deps): update dependency @tabler/icons-react to ^2.47.0 (#32) Co-authored-by: Renovate Bot --- packages/ui/package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/ui/package.json b/packages/ui/package.json index a1f835cb7..d24d9cd9c 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -37,6 +37,6 @@ "dependencies": { "@mantine/core": "^7.5.1", "@mantine/dates": "^7.5.1", - "@tabler/icons-react": "^2.42.0" + "@tabler/icons-react": "^2.47.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f095fdfb0..dd173a970 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -459,8 +459,8 @@ importers: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) '@tabler/icons-react': - specifier: ^2.42.0 - version: 2.42.0(react@18.2.0) + specifier: ^2.47.0 + version: 2.47.0(react@18.2.0) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -1770,18 +1770,18 @@ packages: zod: 3.22.4 dev: false - /@tabler/icons-react@2.42.0(react@18.2.0): - resolution: {integrity: sha512-2APr++u24P2mx9vJymJQJORRpu2Qej0rPrtAvgXu8YomHjLXVP+O1VtToSGyoSPH1ysA569XbxrwzOau9Ne12A==} + /@tabler/icons-react@2.47.0(react@18.2.0): + resolution: {integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==} peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 dependencies: - '@tabler/icons': 2.42.0 + '@tabler/icons': 2.47.0 prop-types: 15.8.1 react: 18.2.0 dev: false - /@tabler/icons@2.42.0: - resolution: {integrity: sha512-ynV4iaC1c1mUhuAr9HRaoq8KrWYmZ0bJEpOh7qTBE+OfdDsdvQUe+0S7FW+DHkJ4RuxQMdO8djrZK7HrUw9YMA==} + /@tabler/icons@2.47.0: + resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} dev: false /@tanstack/query-core@5.17.19: From 00db9018339ae31f07edcd89a023f569aec0dbe5 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:46:39 +0100 Subject: [PATCH 30/87] fix(deps): update dependency better-sqlite3 to ^9.4.0 (#33) Co-authored-by: Renovate Bot --- packages/db/package.json | 2 +- pnpm-lock.yaml | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/db/package.json b/packages/db/package.json index 3548f657e..d2b1f95c7 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -22,7 +22,7 @@ "@homarr/common": "workspace:^0.1.0", "@homarr/definitions": "workspace:^0.1.0", "@paralleldrive/cuid2": "^2.2.2", - "better-sqlite3": "^9.2.2", + "better-sqlite3": "^9.4.0", "drizzle-orm": "^0.29.3" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dd173a970..0185ee756 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -303,11 +303,11 @@ importers: specifier: ^2.2.2 version: 2.2.2 better-sqlite3: - specifier: ^9.2.2 - version: 9.2.2 + specifier: ^9.4.0 + version: 9.4.0 drizzle-orm: specifier: ^0.29.3 - version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.2.2) + version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -2777,8 +2777,8 @@ packages: - supports-color dev: false - /better-sqlite3@9.2.2: - resolution: {integrity: sha512-qwjWB46il0lsDkeB4rSRI96HyDQr8sxeu1MkBVLMrwusq1KRu4Bpt1TMI+8zIJkDUtZ3umjAkaEjIlokZKWCQw==} + /better-sqlite3@9.4.0: + resolution: {integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==} requiresBuild: true dependencies: bindings: 1.5.0 @@ -3358,7 +3358,7 @@ packages: - supports-color dev: true - /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.2.2): + /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0): resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' @@ -3430,7 +3430,7 @@ packages: optional: true dependencies: '@types/better-sqlite3': 7.6.9 - better-sqlite3: 9.2.2 + better-sqlite3: 9.4.0 dev: false /electron-to-chromium@1.4.559: @@ -5888,6 +5888,7 @@ packages: /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true dependencies: deep-extend: 0.6.0 ini: 1.3.8 From 837e3900fa905e3d96d1b7693a889eb99ac71c1f Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:47:20 +0100 Subject: [PATCH 31/87] fix(deps): update dependency eslint-config-turbo to ^1.12.2 (#34) Co-authored-by: Renovate Bot --- pnpm-lock.yaml | 14 +++++++------- tooling/eslint/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0185ee756..7be6fba69 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -564,8 +564,8 @@ importers: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) eslint-config-turbo: - specifier: ^1.10.16 - version: 1.10.16(eslint@8.56.0) + specifier: ^1.12.2 + version: 1.12.2(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 version: 2.29.1(@typescript-eslint/parser@6.10.0)(eslint@8.56.0) @@ -3706,13 +3706,13 @@ packages: eslint: 8.56.0 dev: false - /eslint-config-turbo@1.10.16(eslint@8.56.0): - resolution: {integrity: sha512-O3NQI72bQHV7FvSC6lWj66EGx8drJJjuT1kuInn6nbMLOHdMBhSUX/8uhTAlHRQdlxZk2j9HtgFCIzSc93w42g==} + /eslint-config-turbo@1.12.2(eslint@8.56.0): + resolution: {integrity: sha512-JHTGtDQuISBEWIorHenu5AeX1nv16NiDgDVRi1i0VyeYw0SiVh+lSQbv4BawXSnG1nOFpjbopAQdZvdB3PwXbQ==} peerDependencies: eslint: '>6.6.0' dependencies: eslint: 8.56.0 - eslint-plugin-turbo: 1.10.16(eslint@8.56.0) + eslint-plugin-turbo: 1.12.2(eslint@8.56.0) dev: false /eslint-import-resolver-node@0.3.9: @@ -3848,8 +3848,8 @@ packages: string.prototype.matchall: 4.0.8 dev: false - /eslint-plugin-turbo@1.10.16(eslint@8.56.0): - resolution: {integrity: sha512-ZjrR88MTN64PNGufSEcM0tf+V1xFYVbeiMeuIqr0aiABGomxFLo4DBkQ7WI4WzkZtWQSIA2sP+yxqSboEfL9MQ==} + /eslint-plugin-turbo@1.12.2(eslint@8.56.0): + resolution: {integrity: sha512-/l0aGvZRzK1LMRTibRd6ZbEEuD5TtGotDTkZpxSIWA1FI764pWVvQduQMKBaRuz7aTuAo0WxatD8v1scK+qRWw==} peerDependencies: eslint: '>6.6.0' dependencies: diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index 9491b358e..e99f664b6 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -19,7 +19,7 @@ "@typescript-eslint/eslint-plugin": "^6.10.0", "@typescript-eslint/parser": "^6.10.0", "eslint-config-prettier": "^9.1.0", - "eslint-config-turbo": "^1.10.16", + "eslint-config-turbo": "^1.12.2", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.2", From b8fe04144fea31a934a59094c52d7c6fc4cfffbb Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:53:16 +0100 Subject: [PATCH 32/87] fix(deps): update dependency next-international to ^1.2.3 (#35) Co-authored-by: Renovate Bot --- packages/translation/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/translation/package.json b/packages/translation/package.json index b0c453234..814c4d65f 100644 --- a/packages/translation/package.json +++ b/packages/translation/package.json @@ -36,6 +36,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "next-international": "^1.1.4" + "next-international": "^1.2.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7be6fba69..5999d4142 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -431,8 +431,8 @@ importers: packages/translation: dependencies: next-international: - specifier: ^1.1.4 - version: 1.1.4 + specifier: ^1.2.3 + version: 1.2.3 devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -5189,8 +5189,8 @@ packages: react: 18.2.0 dev: false - /next-international@1.1.4: - resolution: {integrity: sha512-peIJXXEC5lM7zZONCgN1uUxCkIHpSW1pZuHoRTp9ND14K7CDdHajDMz9RTxVCmQUGWXSaqruM6XVAuq4d+Gpxg==} + /next-international@1.2.3: + resolution: {integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==} dependencies: client-only: 0.0.1 international-types: 0.8.1 From d73e7a3c3fc278e30f723a5d2b4bdedf667cc5ce Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 08:53:33 +0100 Subject: [PATCH 33/87] fix(deps): update dependency postcss-preset-mantine to ^1.13.0 (#36) Co-authored-by: Renovate Bot --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 21 +++++---------------- 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 86a32c482..007afab13 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -44,7 +44,7 @@ "jotai": "^2.6.4", "mantine-modal-manager": "^7.5.1", "next": "^14.0.4", - "postcss-preset-mantine": "^1.12.3", + "postcss-preset-mantine": "^1.13.0", "react": "18.2.0", "react-dom": "18.2.0", "sass": "^1.70.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5999d4142..f42f6da6e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -123,8 +123,8 @@ importers: specifier: ^14.0.4 version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) postcss-preset-mantine: - specifier: ^1.12.3 - version: 1.12.3(postcss@8.4.31) + specifier: ^1.13.0 + version: 1.13.0(postcss@8.4.31) react: specifier: 18.2.0 version: 18.2.0 @@ -3993,17 +3993,6 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - /fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - dev: false - /fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -4279,7 +4268,7 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.1 + fast-glob: 3.3.2 ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 @@ -5621,8 +5610,8 @@ packages: postcss-selector-parser: 6.0.13 dev: false - /postcss-preset-mantine@1.12.3(postcss@8.4.31): - resolution: {integrity: sha512-cCwowf20mIyRXnV1cSVoMGfhYgy8ZqFJWsEJthdMZ3n7LijjucE9l/HO47gv5gAtr9nY1MkaEkpWS7ulhSTbSg==} + /postcss-preset-mantine@1.13.0(postcss@8.4.31): + resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} peerDependencies: postcss: '>=8.0.0' dependencies: From 9aaec5495dfacbbf2a313d142e23394bf8c78d43 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:03:22 +0100 Subject: [PATCH 34/87] fix(deps): update dependency prettier to ^3.2.4 (#37) * fix(deps): update dependency prettier to ^3.2.4 * fix: formatting issues --------- Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 2 +- apps/nextjs/tsconfig.json | 10 ++++---- package.json | 2 +- packages/api/package.json | 2 +- packages/api/tsconfig.json | 4 ++-- packages/auth/package.json | 2 +- packages/auth/tsconfig.json | 4 ++-- packages/common/tsconfig.json | 4 ++-- packages/db/package.json | 2 +- packages/db/tsconfig.json | 4 ++-- packages/definitions/tsconfig.json | 4 ++-- packages/form/tsconfig.json | 4 ++-- packages/notifications/tsconfig.json | 4 ++-- packages/spotlight/tsconfig.json | 4 ++-- packages/translation/tsconfig.json | 4 ++-- packages/ui/tsconfig.json | 4 ++-- packages/validation/tsconfig.json | 4 ++-- packages/widgets/tsconfig.json | 4 ++-- pnpm-lock.yaml | 35 ++++++++++++++-------------- tooling/eslint/tsconfig.json | 4 ++-- tooling/prettier/package.json | 2 +- tooling/prettier/tsconfig.json | 4 ++-- 22 files changed, 57 insertions(+), 56 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 007afab13..e8e3b1404 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -59,7 +59,7 @@ "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/apps/nextjs/tsconfig.json b/apps/nextjs/tsconfig.json index f95b3ebf2..6174641a4 100644 --- a/apps/nextjs/tsconfig.json +++ b/apps/nextjs/tsconfig.json @@ -3,15 +3,15 @@ "compilerOptions": { "baseUrl": ".", "paths": { - "~/*": ["./src/*"] + "~/*": ["./src/*"], }, "plugins": [ { - "name": "next" - } + "name": "next", + }, ], - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": [".", ".next/types/**/*.ts"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/package.json b/package.json index 5bcd4f175..466da1c7a 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", "@turbo/gen": "^1.12.2", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "turbo": "^1.12.2", "typescript": "^5.3.3" }, diff --git a/packages/api/package.json b/packages/api/package.json index d453aef5d..c6d1da30b 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "eslint": "^8.56.0", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/api/tsconfig.json b/packages/api/tsconfig.json index 35b272c7e..ae1fa0e17 100644 --- a/packages/api/tsconfig.json +++ b/packages/api/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/auth/package.json b/packages/auth/package.json index 971ec9b0a..2ec9715bd 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -31,7 +31,7 @@ "@types/bcrypt": "5.0.2", "@types/cookies": "0.9.0", "eslint": "^8.56.0", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/auth/tsconfig.json b/packages/auth/tsconfig.json index 35b272c7e..ae1fa0e17 100644 --- a/packages/auth/tsconfig.json +++ b/packages/auth/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/common/tsconfig.json b/packages/common/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/common/tsconfig.json +++ b/packages/common/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/db/package.json b/packages/db/package.json index d2b1f95c7..8f3565ff4 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -33,7 +33,7 @@ "dotenv-cli": "^7.3.0", "drizzle-kit": "^0.20.14", "eslint": "^8.56.0", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/db/tsconfig.json b/packages/db/tsconfig.json index 35b272c7e..ae1fa0e17 100644 --- a/packages/db/tsconfig.json +++ b/packages/db/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/definitions/tsconfig.json b/packages/definitions/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/definitions/tsconfig.json +++ b/packages/definitions/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/form/tsconfig.json b/packages/form/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/form/tsconfig.json +++ b/packages/form/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/notifications/tsconfig.json b/packages/notifications/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/notifications/tsconfig.json +++ b/packages/notifications/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/spotlight/tsconfig.json b/packages/spotlight/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/spotlight/tsconfig.json +++ b/packages/spotlight/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/translation/tsconfig.json b/packages/translation/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/translation/tsconfig.json +++ b/packages/translation/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/validation/tsconfig.json b/packages/validation/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/validation/tsconfig.json +++ b/packages/validation/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/packages/widgets/tsconfig.json b/packages/widgets/tsconfig.json index cbe8483d9..1ba296b3b 100644 --- a/packages/widgets/tsconfig.json +++ b/packages/widgets/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["*.ts", "src"], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f42f6da6e..d88e85a29 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -18,8 +18,8 @@ importers: specifier: ^1.12.2 version: 1.12.2(@types/node@18.19.14)(typescript@5.3.3) prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 turbo: specifier: ^1.12.2 version: 1.12.2 @@ -163,8 +163,8 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -206,8 +206,8 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -267,8 +267,8 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -331,8 +331,8 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -601,10 +601,10 @@ importers: dependencies: '@ianvs/prettier-plugin-sort-imports': specifier: ^4.1.1 - version: 4.1.1(prettier@3.1.0) + version: 4.1.1(prettier@3.2.4) prettier: - specifier: ^3.1.0 - version: 3.1.0 + specifier: ^3.2.4 + version: 3.2.4 devDependencies: '@homarr/tsconfig': specifier: workspace:^0.1.0 @@ -1378,7 +1378,7 @@ packages: /@humanwhocodes/object-schema@2.0.1: resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} - /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.1.0): + /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.2.4): resolution: {integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==} peerDependencies: '@vue/compiler-sfc': '>=3.0.0' @@ -1392,7 +1392,7 @@ packages: '@babel/parser': 7.23.0 '@babel/traverse': 7.23.2 '@babel/types': 7.23.0 - prettier: 3.1.0 + prettier: 3.2.4 semver: 7.5.4 transitivePeerDependencies: - supports-color @@ -5682,9 +5682,10 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - /prettier@3.1.0: - resolution: {integrity: sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==} + /prettier@3.2.4: + resolution: {integrity: sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==} engines: {node: '>=14'} + hasBin: true /pretty-format@3.8.0: resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} diff --git a/tooling/eslint/tsconfig.json b/tooling/eslint/tsconfig.json index 35b272c7e..ae1fa0e17 100644 --- a/tooling/eslint/tsconfig.json +++ b/tooling/eslint/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } diff --git a/tooling/prettier/package.json b/tooling/prettier/package.json index 219c882f0..bfbd33447 100644 --- a/tooling/prettier/package.json +++ b/tooling/prettier/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@ianvs/prettier-plugin-sort-imports": "^4.1.1", - "prettier": "^3.1.0" + "prettier": "^3.2.4" }, "devDependencies": { "@homarr/tsconfig": "workspace:^0.1.0", diff --git a/tooling/prettier/tsconfig.json b/tooling/prettier/tsconfig.json index 35b272c7e..ae1fa0e17 100644 --- a/tooling/prettier/tsconfig.json +++ b/tooling/prettier/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules"], } From ab7c884fbf34faf9f3d525958eab58f6c92ca33d Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:05:27 +0100 Subject: [PATCH 35/87] chore(deps): update peter-evans/create-pull-request action to v6 (#49) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/automatic-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/automatic-release.yml b/.github/workflows/automatic-release.yml index 8489bfce4..ca5cac543 100644 --- a/.github/workflows/automatic-release.yml +++ b/.github/workflows/automatic-release.yml @@ -19,7 +19,7 @@ jobs: with: args: 'Preparing the automatic release...' - uses: actions/checkout@v4 - - uses: peter-evans/create-pull-request@v5 + - uses: peter-evans/create-pull-request@v6 id: create-pull-request with: base: main From dadfc0c5d73395d2c49afbc7c67d0755e102b719 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:05:59 +0100 Subject: [PATCH 36/87] fix(deps): update nextjs monorepo to ^14.1.0 (#38) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 2 +- packages/auth/package.json | 2 +- pnpm-lock.yaml | 141 ++++++++++++++++++++++++++++++------ tooling/eslint/package.json | 2 +- 4 files changed, 122 insertions(+), 25 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index e8e3b1404..26f67733d 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -43,7 +43,7 @@ "@homarr/gridstack": "^1.0.0", "jotai": "^2.6.4", "mantine-modal-manager": "^7.5.1", - "next": "^14.0.4", + "next": "^14.1.0", "postcss-preset-mantine": "^1.13.0", "react": "18.2.0", "react-dom": "18.2.0", diff --git a/packages/auth/package.json b/packages/auth/package.json index 2ec9715bd..366ba0b30 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -18,7 +18,7 @@ "@t3-oss/env-nextjs": "^0.8.0", "bcrypt": "^5.1.1", "cookies": "^0.9.1", - "next": "^14.0.4", + "next": "^14.1.0", "next-auth": "5.0.0-beta.5", "react": "18.2.0", "react-dom": "18.2.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d88e85a29..8cce50bea 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -120,7 +120,7 @@ importers: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) next: - specifier: ^14.0.4 + specifier: ^14.1.0 version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) postcss-preset-mantine: specifier: ^1.13.0 @@ -233,7 +233,7 @@ importers: specifier: ^0.9.1 version: 0.9.1 next: - specifier: ^14.0.4 + specifier: ^14.1.0 version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: specifier: 5.0.0-beta.5 @@ -552,8 +552,8 @@ importers: tooling/eslint: dependencies: '@next/eslint-plugin-next': - specifier: ^14.0.3 - version: 14.0.3 + specifier: ^14.1.0 + version: 14.1.0 '@typescript-eslint/eslint-plugin': specifier: ^6.10.0 version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.56.0)(typescript@5.3.3) @@ -1398,6 +1398,18 @@ packages: - supports-color dev: false + /@isaacs/cliui@8.0.2: + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 + dev: false + /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} @@ -1585,10 +1597,10 @@ packages: resolution: {integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==} dev: false - /@next/eslint-plugin-next@14.0.3: - resolution: {integrity: sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==} + /@next/eslint-plugin-next@14.1.0: + resolution: {integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==} dependencies: - glob: 7.1.7 + glob: 10.3.10 dev: false /@next/swc-darwin-arm64@14.1.0: @@ -1705,6 +1717,13 @@ packages: '@noble/hashes': 1.3.2 dev: false + /@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + requiresBuild: true + dev: false + optional: true + /@popperjs/core@2.11.8: resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} dev: false @@ -2573,6 +2592,11 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + /ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + dev: false + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -2585,6 +2609,11 @@ packages: dependencies: color-convert: 2.0.1 + /ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + dev: false + /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -2813,7 +2842,6 @@ packages: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 - dev: true /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} @@ -2825,7 +2853,7 @@ packages: resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} dependencies: - caniuse-lite: 1.0.30001551 + caniuse-lite: 1.0.30001579 electron-to-chromium: 1.4.559 node-releases: 2.0.13 update-browserslist-db: 1.0.13(browserslist@4.22.1) @@ -2882,10 +2910,6 @@ packages: engines: {node: '>=14.16'} dev: true - /caniuse-lite@1.0.30001551: - resolution: {integrity: sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==} - dev: false - /caniuse-lite@1.0.30001579: resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} dev: false @@ -3433,6 +3457,10 @@ packages: better-sqlite3: 9.4.0 dev: false + /eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: false + /electron-to-chromium@1.4.559: resolution: {integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==} dev: false @@ -4060,6 +4088,14 @@ packages: is-callable: 1.2.7 dev: false + /foreground-child@3.1.1: + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.1.0 + dev: false + /fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} dev: false @@ -4198,15 +4234,16 @@ packages: dependencies: is-glob: 4.0.3 - /glob@7.1.7: - resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + /glob@10.3.10: + resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 + foreground-child: 3.1.1 + jackspeak: 2.3.6 + minimatch: 9.0.3 + minipass: 5.0.0 + path-scurry: 1.10.1 dev: false /glob@7.2.3: @@ -4780,6 +4817,15 @@ packages: set-function-name: 2.0.1 dev: false + /jackspeak@2.3.6: + resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} + engines: {node: '>=14'} + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + dev: false + /jose@4.14.4: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false @@ -4965,6 +5011,11 @@ packages: resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} dev: true + /lru-cache@10.2.0: + resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} + engines: {node: 14 || >=16.14} + dev: false + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -5089,7 +5140,6 @@ packages: engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 - dev: true /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -5565,6 +5615,14 @@ packages: /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + /path-scurry@1.10.1: + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + lru-cache: 10.2.0 + minipass: 5.0.0 + dev: false + /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -6245,6 +6303,11 @@ packages: /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + dev: false + /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} dev: false @@ -6325,6 +6388,15 @@ packages: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + dev: false + /string.prototype.matchall@4.0.8: resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} dependencies: @@ -6374,6 +6446,13 @@ packages: dependencies: ansi-regex: 5.0.1 + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + dependencies: + ansi-regex: 6.0.1 + dev: false + /strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -6991,6 +7070,24 @@ packages: strip-ansi: 6.0.1 dev: true + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: false + + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + dev: false + /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index e99f664b6..f7654cb4d 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -15,7 +15,7 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@next/eslint-plugin-next": "^14.0.3", + "@next/eslint-plugin-next": "^14.1.0", "@typescript-eslint/eslint-plugin": "^6.10.0", "@typescript-eslint/parser": "^6.10.0", "eslint-config-prettier": "^9.1.0", From 33c918603cad46f20bb2c75e372be62b12240276 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:07:27 +0100 Subject: [PATCH 37/87] chore(deps): update docker/setup-qemu-action action to v3 (#48) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 424e7be9d..9f73696de 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -45,7 +45,7 @@ jobs: - name: Build artifacts run: pnpm build - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Bump version and push tag From 717e9194500ad875e2c57bc088a3fa7ec08faf68 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:08:36 +0100 Subject: [PATCH 38/87] fix(deps): update tanstack-query monorepo to ^5.18.1 (#39) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 6 ++--- pnpm-lock.yaml | 58 ++++++++++++++++++++-------------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 26f67733d..1d5989ee1 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -29,9 +29,9 @@ "@mantine/modals": "^7.5.1", "@mantine/tiptap": "^7.5.1", "@t3-oss/env-nextjs": "^0.8.0", - "@tanstack/react-query": "^5.17.1", - "@tanstack/react-query-devtools": "^5.17.1", - "@tanstack/react-query-next-experimental": "5.17.1", + "@tanstack/react-query": "^5.18.1", + "@tanstack/react-query-devtools": "^5.18.1", + "@tanstack/react-query-next-experimental": "5.18.1", "@tiptap/extension-link": "^2.1.13", "@tiptap/react": "^2.1.13", "@tiptap/starter-kit": "^2.1.13", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8cce50bea..47dd194a6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -81,14 +81,14 @@ importers: specifier: ^0.8.0 version: 0.8.0(typescript@5.3.3)(zod@3.22.4) '@tanstack/react-query': - specifier: ^5.17.1 - version: 5.17.19(react@18.2.0) + specifier: ^5.18.1 + version: 5.18.1(react@18.2.0) '@tanstack/react-query-devtools': - specifier: ^5.17.1 - version: 5.17.21(@tanstack/react-query@5.17.19)(react@18.2.0) + specifier: ^5.18.1 + version: 5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0) '@tanstack/react-query-next-experimental': - specifier: 5.17.1 - version: 5.17.1(@tanstack/react-query@5.17.19)(next@14.1.0)(react@18.2.0) + specifier: 5.18.1 + version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.1.13 version: 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) @@ -103,10 +103,10 @@ importers: version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/next': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) '@trpc/react-query': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 @@ -1803,43 +1803,43 @@ packages: resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} dev: false - /@tanstack/query-core@5.17.19: - resolution: {integrity: sha512-Lzw8FUtnLCc9Jwz0sw9xOjZB+/mCCmJev38v2wHMUl/ioXNIhnNWeMxu0NKUjIhAd62IRB3eAtvxAGDJ55UkyA==} + /@tanstack/query-core@5.18.1: + resolution: {integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==} dev: false - /@tanstack/query-devtools@5.17.21: - resolution: {integrity: sha512-WWfcnNjTEqcuAS5GyKkVGkseuES6yd197MJWGImBu+MoCjWPqxSXKCCfm+utSXJauJUGm7xoMmhqCphiQdjf8w==} + /@tanstack/query-devtools@5.18.1: + resolution: {integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==} dev: false - /@tanstack/react-query-devtools@5.17.21(@tanstack/react-query@5.17.19)(react@18.2.0): - resolution: {integrity: sha512-Ri1AuWpN67eyPdMTlPxx1TMGNUaxTHrGv0ll0S20ZObz/Xms5wfANV3c6OX0HZTY0igudP1k5jpRLXNkd249mg==} + /@tanstack/react-query-devtools@5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0): + resolution: {integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==} peerDependencies: - '@tanstack/react-query': ^5.17.19 + '@tanstack/react-query': ^5.18.1 react: ^18.0.0 dependencies: - '@tanstack/query-devtools': 5.17.21 - '@tanstack/react-query': 5.17.19(react@18.2.0) + '@tanstack/query-devtools': 5.18.1 + '@tanstack/react-query': 5.18.1(react@18.2.0) react: 18.2.0 dev: false - /@tanstack/react-query-next-experimental@5.17.1(@tanstack/react-query@5.17.19)(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-2KtiweIo/hUU3vGNMdroiqEUSGCQ4l/85mRn6ymWef3BJZCZosIL/hz8x7r2+ujeY9ir+1HYcSmD01onrfijsg==} + /@tanstack/react-query-next-experimental@5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==} peerDependencies: - '@tanstack/react-query': ^5.17.1 + '@tanstack/react-query': ^5.18.1 next: ^13 || ^14 react: ^18.0.0 dependencies: - '@tanstack/react-query': 5.17.19(react@18.2.0) + '@tanstack/react-query': 5.18.1(react@18.2.0) next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false - /@tanstack/react-query@5.17.19(react@18.2.0): - resolution: {integrity: sha512-qaQENB6/03Gj3dFZGvdmUoqeUGlGm7P1p0RmaR04Bf1Ib1T9lLGimcC9T3oCFbrx0b2ZF21ngjFZNjj9uPJMcg==} + /@tanstack/react-query@5.18.1(react@18.2.0): + resolution: {integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.17.19 + '@tanstack/query-core': 5.18.1 react: 18.2.0 dev: false @@ -2115,7 +2115,7 @@ packages: '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false - /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): + /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2126,9 +2126,9 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.17.19(react@18.2.0) + '@tanstack/react-query': 5.18.1(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 @@ -2136,7 +2136,7 @@ packages: react-ssr-prepass: 1.5.0(react@18.2.0) dev: false - /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.17.19)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): + /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2145,7 +2145,7 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.17.19(react@18.2.0) + '@tanstack/react-query': 5.18.1(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 From 58803bcecee4b76853e8dcc0930e18ece486f200 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:11:28 +0100 Subject: [PATCH 39/87] chore(deps): update docker/setup-buildx-action action to v3 (#47) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 9f73696de..89c693509 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -47,7 +47,7 @@ jobs: - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Bump version and push tag id: githubTagAction uses: anothrNick/github-tag-action@1.64.0 From 1e01312fcd5e7e267db330dfdb72a8d8b83fadfd Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:12:40 +0100 Subject: [PATCH 40/87] fix(deps): update tiptap monorepo to ^2.2.1 (#40) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 6 +- pnpm-lock.yaml | 198 ++++++++++++++++++++------------------- 2 files changed, 106 insertions(+), 98 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 1d5989ee1..72985768f 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -32,9 +32,9 @@ "@tanstack/react-query": "^5.18.1", "@tanstack/react-query-devtools": "^5.18.1", "@tanstack/react-query-next-experimental": "5.18.1", - "@tiptap/extension-link": "^2.1.13", - "@tiptap/react": "^2.1.13", - "@tiptap/starter-kit": "^2.1.13", + "@tiptap/extension-link": "^2.2.1", + "@tiptap/react": "^2.2.1", + "@tiptap/starter-kit": "^2.2.1", "@trpc/client": "next", "@trpc/next": "next", "@trpc/react-query": "next", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 47dd194a6..206839d29 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -76,7 +76,7 @@ importers: version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) '@mantine/tiptap': specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.1.13)(@tiptap/react@2.1.13)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.1)(@tiptap/react@2.2.1)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': specifier: ^0.8.0 version: 0.8.0(typescript@5.3.3)(zod@3.22.4) @@ -90,14 +90,14 @@ importers: specifier: 5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': - specifier: ^2.1.13 - version: 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + specifier: ^2.2.1 + version: 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) '@tiptap/react': - specifier: ^2.1.13 - version: 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + specifier: ^2.2.1 + version: 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@tiptap/starter-kit': - specifier: ^2.1.13 - version: 2.1.13(@tiptap/pm@2.1.13) + specifier: ^2.2.1 + version: 2.2.1(@tiptap/pm@2.1.13) '@trpc/client': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) @@ -1557,7 +1557,7 @@ packages: react: 18.2.0 dev: false - /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.1.13)(@tiptap/react@2.1.13)(react-dom@18.2.0)(react@18.2.0): + /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.1)(@tiptap/react@2.2.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==} peerDependencies: '@mantine/core': 7.5.1 @@ -1569,8 +1569,8 @@ packages: dependencies: '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/react': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + '@tiptap/extension-link': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + '@tiptap/react': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -1851,24 +1851,32 @@ packages: '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-blockquote@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-oe6wSQACmODugoP9XH3Ouffjy4BsOBWfTC+dETHNCG6ZED6ShHN3CB9Vr7EwwRgmm2WLaKAjMO1sVumwH+Z1rg==} + /@tiptap/core@2.2.1(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-9G6N2d5q4M5i/elK61qu28uO5MBDKEbStQnHuVKNe+LVNpb6xZal1AcIilmq1FVeuCUh3kYl3cFH3nBQOXtZUw==} + peerDependencies: + '@tiptap/pm': ^2.0.0 + dependencies: + '@tiptap/pm': 2.1.13 + dev: false + + /@tiptap/extension-blockquote@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-KfL7c28ueH8yKTkZiO9LlErAVjZyi5j+Kw42pu06aOrXWNH6TW8CSufR6UB2XZcFX6Sixi2qYpwxs1YNnItmcg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bold@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-6cHsQTh/rUiG4jkbJer3vk7g60I5tBwEBSGpdxmEHh83RsvevD8+n92PjA24hYYte5RNlATB011E1wu8PVhSvw==} + /@tiptap/extension-bold@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-MSFbbrUG0hErM9sUmJenGPRBjQV/HfcLf7kqpxduPoxA4r2XOsbUKGSbPEQ3vU3vMi9Obkknt0JLnS5WofIIGw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bubble-menu@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-Hm7e1GX3AI6lfaUmr6WqsS9MMyXIzCkhh+VQi6K8jj4Q4s8kY4KPoAyD/c3v9pZ/dieUtm2TfqrOCkbHzsJQBg==} + /@tiptap/extension-bubble-menu@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-FQO1CDS777E34T8jwnYDBz3VmGyVzv3Olj0o01c3fHR7OSnA7urAxx+z9Z4CWqUJhRMV9td0v0wiZjQ4q1DdYw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -1878,52 +1886,52 @@ packages: tippy.js: 6.3.7 dev: false - /@tiptap/extension-bullet-list@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-NkWlQ5bLPUlcROj6G/d4oqAxMf3j3wfndGOPp0z8OoXJtVbVoXl/aMSlLbVgE6n8r6CS8MYxKhXNxrb7Ll2foA==} + /@tiptap/extension-bullet-list@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-MvMQRykJUdIocLNmilHO8smbttWwuXUGlnlW+DpIAK7DNih3aHjdFlRbixPqVQLicFMiI5+ixw+EM1ZQr0S59A==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-code-block@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-E3tweNExPOV+t1ODKX0MDVsS0aeHGWc1ECt+uyp6XwzsN0bdF2A5+pttQqM7sTcMnQkVACGFbn9wDeLRRcfyQg==} + /@tiptap/extension-code-block@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-8Urq8OvdBXDs8cX7Tgw71uyHQknqOeEgU0w4PvhFlOnDKUyehiUGys86k/NUJwP2P9O+YGToM3sVJF0ONdlNGQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-code@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-f5fLYlSgliVVa44vd7lQGvo49+peC+Z2H0Fn84TKNCH7tkNZzouoJsHYn0/enLaQ9Sq+24YPfqulfiwlxyiT8w==} + /@tiptap/extension-code@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-nRYeiw9MtV6x3klcQd2X3fJ7r8J1Zy+KHTvfJFYsK8SacSVl+tYi8/FsjbmzGmnO3NYUlDzdyPq/woT+cKk20Q==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-document@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-wLwiTWsVmZTGIE5duTcHRmW4ulVxNW4nmgfpk95+mPn1iKyNGtrVhGWleLhBlTj+DWXDtcfNWZgqZkZNzhkqYQ==} + /@tiptap/extension-document@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-Pb0jSY6wYSKd8fgDotKiQN3mc4dKLWVq0IzYOpBGTLn+37WmyPzWCnA1vWjp81u2XRXvr3gFQBEa+zYXonG//w==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-dropcursor@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-NAyJi4BJxH7vl/2LNS1X0ndwFKjEtX+cRgshXCnMyh7qNpIRW6Plczapc/W1OiMncOEhZJfpZfkRSfwG01FWFg==} + /@tiptap/extension-dropcursor@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-Y9MmqRv0MMzhy8efVvHV1zAwr4oEiodggYOLC8Vav0IubWXqd8mVDCdz3DjEqGOdeR9Qy/zt4ohQlbkRno9twA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-floating-menu@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-9Oz7pk1Nts2+EyY+rYfnREGbLzQ5UFazAvRhF6zAJdvyuDmAYm0Jp6s0GoTrpV0/dJEISoFaNpPdMJOb9EBNRw==} + /@tiptap/extension-floating-menu@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-2lQaEIUbexw8yCGDLxNqhCwpZMoclnDtAdObDKCgufLcA+tVSdVirfcx7HJZ4kmRXmUhdG3uvawQVchZJ7FGiw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -1933,62 +1941,62 @@ packages: tippy.js: 6.3.7 dev: false - /@tiptap/extension-gapcursor@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-Cl5apsoTcyPPCgE3ThufxQxZ1wyqqh+9uxUN9VF9AbeTkid6oPZvKXwaILf6AFnkSy+SuKrb9kZD2iaezxpzXw==} + /@tiptap/extension-gapcursor@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-/OCQDwa1/LwFVEFWCkU4dnUt4pGt1IJKOEzT2JETrRQB4VzP1flIpwPAy5tJ3i2abkCZtnEGOJ5ZsXC01LgOxg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-hard-break@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-TGkMzMQayuKg+vN4du0x1ahEItBLcCT1jdWeRsjdM8gHfzbPLdo4PQhVsvm1I0xaZmbJZelhnVsUwRZcIu1WNA==} + /@tiptap/extension-hard-break@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-wKRujmJlaBOv+PEnaUL2C9fEjiq1YDsm/SbHzAPYn/+8CRHOLrcJpUAq9rUo7u6+bEBD2PxbN1pPNrfS3QtPLw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-heading@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-PEmc19QLmlVUTiHWoF0hpgNTNPNU0nlaFmMKskzO+cx5Df4xvHmv/UqoIwp7/UFbPMkfVJT1ozQU7oD1IWn9Hg==} + /@tiptap/extension-heading@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-BI14qTOWTcabvobSo8QBAXQqmz4vQ9HjInK9btKEAJ027BHFk08n6YoovQDcTH5Z2nvwPN4N3RW0JupmgwflAQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-history@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-1ouitThGTBUObqw250aDwGLMNESBH5PRXIGybsCFO1bktdmWtEw7m72WY41EuX2BH8iKJpcYPerl3HfY1vmCNw==} + /@tiptap/extension-history@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-MZyIKWgNLzsEysyzWwsUE705+x4GRuLluS5cWGzZ/CKjSEUO152DVlM50MPpKqH+o1SW3cR7RUvDPJlpM7Lymw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-horizontal-rule@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-7OgjgNqZXvBejgULNdMSma2M1nzv4bbZG+FT5XMFZmEOxR9IB1x/RzChjPdeicff2ZK2sfhMBc4Y9femF5XkUg==} + /@tiptap/extension-horizontal-rule@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-M6mi6CPMeO/1i/0qqEIVbObB3VDT6HhO4cxvjiaWxRXsU+79kdvx33Mk6GHKuXZizAYN1qxeM7byAtFiRu/aIw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-italic@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-HyDJfuDn5hzwGKZiANcvgz6wcum6bEgb4wmJnfej8XanTMJatNVv63TVxCJ10dSc9KGpPVcIkg6W8/joNXIEbw==} + /@tiptap/extension-italic@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-x3cWWgup7SZIq8ugfJ8IFpvOROwU0KuAZFJlSk9eL9Qszff2ZG8kPUuQ8HklSdmoafSluv0mUhDSFTc52E/Yzg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-link@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-wuGMf3zRtMHhMrKm9l6Tft5M2N21Z0UP1dZ5t1IlOAvOeYV2QZ5UynwFryxGKLO0NslCBLF/4b/HAdNXbfXWUA==} + /@tiptap/extension-link@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-3oh+tRFGtj3Scv3i6FBJOakX650NBI+cmemJxggaiH8PPw3+q+eZneqDQHqINcgel5/HQXFdXWSpfYsZi7EDoQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -1998,44 +2006,44 @@ packages: linkifyjs: 4.1.3 dev: false - /@tiptap/extension-list-item@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-6e8iiCWXOiJTl1XOwVW2tc0YG18h70HUtEHFCx2m5HspOGFKsFEaSS3qYxOheM9HxlmQeDt8mTtqftRjEFRxPQ==} + /@tiptap/extension-list-item@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-6seOMXbji+ptW9OiOig8BVBxnGZhHgWEU6tmsMxsf61dt8b1CElf04oTbvn1hzkCjQQXJbsztU87Q7FLTfLE0w==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-ordered-list@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-UO4ZAL5Vrr1WwER5VjgmeNIWHpqy9cnIRo1En07gZ0OWTjs1eITPcu+4TCn1ZG6DhoFvAQzE5DTxxdhIotg+qw==} + /@tiptap/extension-ordered-list@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-6OcdBALgYnj/TKSV+ouT202U1ydJGenGL9ofhpdogC1scE0oMaR25f1T9k7RMUGAv+7FNIcVZp2+bf1SLCTX1A==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-paragraph@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-cEoZBJrsQn69FPpUMePXG/ltGXtqKISgypj70PEHXt5meKDjpmMVSY4/8cXvFYEYsI9GvIwyAK0OrfAHiSoROA==} + /@tiptap/extension-paragraph@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-SaSnWml4DTzG9kTEq/diL6XQGSgNaZJPOIGTPL2/1idHrx4/JrZ87VIbChJwVqbDuAvAxbidAqxKJuYObSzhhg==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-strike@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-VN6zlaCNCbyJUCDyBFxavw19XmQ4LkCh8n20M8huNqW77lDGXA2A7UcWLHaNBpqAijBRu9mWI8l4Bftyf2fcAw==} + /@tiptap/extension-strike@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-4XntI9CLteDeu1ZBWqTygiuut2mJbS5E6SxDD0LZ6EtXM1LdTkh5xhDdviErsqlAe1PUtrFcGUAfdyMOdp26uQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-text@2.1.13(@tiptap/core@2.1.13): - resolution: {integrity: sha512-zzsTTvu5U67a8WjImi6DrmpX2Q/onLSaj+LRWPh36A1Pz2WaxW5asZgaS+xWCnR+UrozlCALWa01r7uv69jq0w==} + /@tiptap/extension-text@2.2.1(@tiptap/core@2.2.1): + resolution: {integrity: sha512-1zjPuGyhLIODsYpCYeRSUgzfzdzk5uSo8PsV/WaF75ouilJYE3QvMQegivkuNmPBLz0nukPkOcXfQUI/D8wNOA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false /@tiptap/pm@2.1.13: @@ -2061,8 +2069,8 @@ packages: prosemirror-view: 1.32.6 dev: false - /@tiptap/react@2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Dq3f8EtJnpImP3iDtJo+7bulnN9SJZRZcVVzxHXccLcC2MxtmDdlPGZjP+wxO800nd8toSIOd5734fPNf/YcfA==} + /@tiptap/react@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-bKrW38l1mezJDAjQzDTOAXu0RFjNkGl7QR0n0tYjLsOinlUjNIKFAmOe9+Qy/bxvfsQWlPDOSSGjRYafe5zvVA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -2070,35 +2078,35 @@ packages: react-dom: ^17.0.0 || ^18.0.0 dependencies: '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) - '@tiptap/extension-bubble-menu': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-floating-menu': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + '@tiptap/extension-bubble-menu': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + '@tiptap/extension-floating-menu': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@tiptap/starter-kit@2.1.13(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-ph/mUR/OwPtPkZ5rNHINxubpABn8fHnvJSdhXFrY/q6SKoaO11NZXgegRaiG4aL7O6Sz4LsZVw6Sm0Ae+GJmrg==} + /@tiptap/starter-kit@2.2.1(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-x6Xm5KnecorskpCSdDxaPDU2kSB4cWCy/DCEANbOrVyj1ukg8mEnVPkW6/v4LzqJHZb0Ah9rKVOQw9oOeoFb9A==} dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) - '@tiptap/extension-blockquote': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-bold': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-bullet-list': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-code': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-code-block': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-document': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-dropcursor': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-gapcursor': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-hard-break': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-heading': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-history': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-horizontal-rule': 2.1.13(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-italic': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-list-item': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-ordered-list': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-paragraph': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-strike': 2.1.13(@tiptap/core@2.1.13) - '@tiptap/extension-text': 2.1.13(@tiptap/core@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/extension-blockquote': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-bold': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-bullet-list': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-code': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-code-block': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-document': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-dropcursor': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-gapcursor': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-hard-break': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-heading': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-history': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-horizontal-rule': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-italic': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-list-item': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-ordered-list': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-paragraph': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-strike': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/extension-text': 2.2.1(@tiptap/core@2.2.1) transitivePeerDependencies: - '@tiptap/pm' dev: false From a1e15c65d290137e6c37c2e1288910209bd0c2bd Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:14:04 +0100 Subject: [PATCH 41/87] chore(deps): update docker/metadata-action action to v5 (#46) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 89c693509..cf11918dd 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -63,7 +63,7 @@ jobs: args: 'Image has been tagged as ${{ steps.githubTagAction.outputs.new_tag }}' - name: Docker meta id: meta - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | From 2b5ebda727fee1fb4d60eedd197aa4f7e103deae Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:14:57 +0100 Subject: [PATCH 42/87] chore(deps): update docker/build-push-action action to v5 (#45) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index cf11918dd..6352b0898 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -71,7 +71,7 @@ jobs: type=raw,value=${{ steps.githubTagAction.outputs.new_tag }} - name: Build and push id: buildPushAction - uses: docker/build-push-action@v4 + uses: docker/build-push-action@v5 with: platforms: linux/amd64,linux/arm64,linux/riscv64,linux/arm/v7,linux/arm/v6 context: . From 59f024184b5f847d90247cd237975bc3d3e206a5 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:15:51 +0100 Subject: [PATCH 43/87] chore(deps): update actions/setup-node action to v4 (#44) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 6352b0898..b93959a68 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -36,7 +36,7 @@ jobs: with: version: 8 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: 'pnpm' From 4815230f8b0d3f9b88e72bbb4fb5f4e87daf81c1 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:15:59 +0100 Subject: [PATCH 44/87] fix(deps): update typescript-eslint monorepo to ^6.20.0 (#41) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- pnpm-lock.yaml | 91 +++++++++++++++++++------------------ tooling/eslint/package.json | 4 +- 2 files changed, 48 insertions(+), 47 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 206839d29..8dd914e0b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -555,11 +555,11 @@ importers: specifier: ^14.1.0 version: 14.1.0 '@typescript-eslint/eslint-plugin': - specifier: ^6.10.0 - version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.20.0 + version: 6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: ^6.10.0 - version: 6.10.0(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.20.0 + version: 6.20.0(eslint@8.56.0)(typescript@5.3.3) eslint-config-prettier: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) @@ -568,7 +568,7 @@ importers: version: 1.12.2(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.10.0)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@6.20.0)(eslint@8.56.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 version: 6.8.0(eslint@8.56.0) @@ -2401,8 +2401,8 @@ packages: resolution: {integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==} dev: true - /@typescript-eslint/eslint-plugin@6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg==} + /@typescript-eslint/eslint-plugin@6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -2413,11 +2413,11 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 6.10.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/type-utils': 6.10.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.10.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.20.0 + '@typescript-eslint/type-utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.20.0 debug: 4.3.4 eslint: 8.56.0 graphemer: 1.4.0 @@ -2430,8 +2430,8 @@ packages: - supports-color dev: false - /@typescript-eslint/parser@6.10.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog==} + /@typescript-eslint/parser@6.20.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2440,10 +2440,10 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/scope-manager': 6.20.0 + '@typescript-eslint/types': 6.20.0 + '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.20.0 debug: 4.3.4 eslint: 8.56.0 typescript: 5.3.3 @@ -2451,16 +2451,16 @@ packages: - supports-color dev: false - /@typescript-eslint/scope-manager@6.10.0: - resolution: {integrity: sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg==} + /@typescript-eslint/scope-manager@6.20.0: + resolution: {integrity: sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/types': 6.20.0 + '@typescript-eslint/visitor-keys': 6.20.0 dev: false - /@typescript-eslint/type-utils@6.10.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg==} + /@typescript-eslint/type-utils@6.20.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2469,8 +2469,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.3.3) - '@typescript-eslint/utils': 6.10.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) + '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 eslint: 8.56.0 ts-api-utils: 1.0.1(typescript@5.3.3) @@ -2479,13 +2479,13 @@ packages: - supports-color dev: false - /@typescript-eslint/types@6.10.0: - resolution: {integrity: sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg==} + /@typescript-eslint/types@6.20.0: + resolution: {integrity: sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==} engines: {node: ^16.0.0 || >=18.0.0} dev: false - /@typescript-eslint/typescript-estree@6.10.0(typescript@5.3.3): - resolution: {integrity: sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg==} + /@typescript-eslint/typescript-estree@6.20.0(typescript@5.3.3): + resolution: {integrity: sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -2493,11 +2493,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/visitor-keys': 6.10.0 + '@typescript-eslint/types': 6.20.0 + '@typescript-eslint/visitor-keys': 6.20.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 + minimatch: 9.0.3 semver: 7.5.4 ts-api-utils: 1.0.1(typescript@5.3.3) typescript: 5.3.3 @@ -2505,8 +2506,8 @@ packages: - supports-color dev: false - /@typescript-eslint/utils@6.10.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg==} + /@typescript-eslint/utils@6.20.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2514,9 +2515,9 @@ packages: '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/types': 6.10.0 - '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.20.0 + '@typescript-eslint/types': 6.20.0 + '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -2524,11 +2525,11 @@ packages: - typescript dev: false - /@typescript-eslint/visitor-keys@6.10.0: - resolution: {integrity: sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg==} + /@typescript-eslint/visitor-keys@6.20.0: + resolution: {integrity: sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/types': 6.20.0 eslint-visitor-keys: 3.4.3 dev: false @@ -3761,7 +3762,7 @@ packages: - supports-color dev: false - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.20.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -3782,7 +3783,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -3790,7 +3791,7 @@ packages: - supports-color dev: false - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.10.0)(eslint@8.56.0): + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.20.0)(eslint@8.56.0): resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: @@ -3800,7 +3801,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -3809,7 +3810,7 @@ packages: doctrine: 2.1.0 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.20.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) hasown: 2.0.0 is-core-module: 2.13.1 is-glob: 4.0.3 diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index f7654cb4d..0799d5f53 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -16,8 +16,8 @@ }, "dependencies": { "@next/eslint-plugin-next": "^14.1.0", - "@typescript-eslint/eslint-plugin": "^6.10.0", - "@typescript-eslint/parser": "^6.10.0", + "@typescript-eslint/eslint-plugin": "^6.20.0", + "@typescript-eslint/parser": "^6.20.0", "eslint-config-prettier": "^9.1.0", "eslint-config-turbo": "^1.12.2", "eslint-plugin-import": "^2.29.1", From 7cd56217eb212113dd18d89b34c7e385d4a7d728 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:21:05 +0100 Subject: [PATCH 45/87] chore(deps): update anothrnick/github-tag-action action to v1.67.0 (#43) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- .github/workflows/docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index b93959a68..e8f22eb01 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -50,7 +50,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Bump version and push tag id: githubTagAction - uses: anothrNick/github-tag-action@1.64.0 + uses: anothrNick/github-tag-action@1.67.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} WITH_V: false From ca04bf692d68fed7cb509a19b13ce4c99bb8d188 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 09:21:53 +0100 Subject: [PATCH 46/87] chore(deps): update dependency node to v20 (#42) Co-authored-by: Renovate Bot Co-authored-by: Meier Lukas --- .nvmrc | 2 +- apps/nextjs/package.json | 2 +- package.json | 2 +- pnpm-lock.yaml | 38 +++++++++++++++++++------------------- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.nvmrc b/.nvmrc index a9d087399..8b0beab16 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18.19.0 +20.11.0 diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 72985768f..d194b899e 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -54,7 +54,7 @@ "@homarr/eslint-config": "workspace:^0.2.0", "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", - "@types/node": "^18.19.14", + "@types/node": "^20.11.16", "@types/react": "^18.2.52", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", diff --git a/package.json b/package.json index 466da1c7a..d03122ddb 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "homarr", "private": true, "engines": { - "node": ">=18.19.0" + "node": ">=20.11.0" }, "packageManager": "pnpm@8.15.1", "scripts": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8dd914e0b..a62858503 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: version: link:tooling/prettier '@turbo/gen': specifier: ^1.12.2 - version: 1.12.2(@types/node@18.19.14)(typescript@5.3.3) + version: 1.12.2(@types/node@20.11.16)(typescript@5.3.3) prettier: specifier: ^3.2.4 version: 3.2.4 @@ -148,8 +148,8 @@ importers: specifier: workspace:^0.1.0 version: link:../../tooling/typescript '@types/node': - specifier: ^18.19.14 - version: 18.19.14 + specifier: ^20.11.16 + version: 20.11.16 '@types/react': specifier: ^18.2.52 version: 18.2.52 @@ -2180,7 +2180,7 @@ packages: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.12.2(@types/node@18.19.14)(typescript@5.3.3): + /@turbo/gen@1.12.2(@types/node@20.11.16)(typescript@5.3.3): resolution: {integrity: sha512-XmdaB4J3JvDs6/L+JkCHTf/s74+O4xKZC0HDQxvV+cyicvYocPcR5NTOuH5gdG81roR9tVQWhkAza2hgGOlSyw==} hasBin: true dependencies: @@ -2192,7 +2192,7 @@ packages: minimatch: 9.0.3 node-plop: 0.26.3 proxy-agent: 6.3.0 - ts-node: 10.9.1(@types/node@18.19.14)(typescript@5.3.3) + ts-node: 10.9.1(@types/node@20.11.16)(typescript@5.3.3) update-check: 1.5.4 validate-npm-package-name: 5.0.0 transitivePeerDependencies: @@ -2224,25 +2224,25 @@ packages: /@types/bcrypt@5.0.2: resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} dependencies: - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/better-sqlite3@7.6.9: resolution: {integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==} dependencies: - '@types/node': 18.19.14 + '@types/node': 20.11.16 /@types/body-parser@1.19.5: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/cookies@0.9.0: @@ -2251,7 +2251,7 @@ packages: '@types/connect': 3.4.38 '@types/express': 4.17.21 '@types/keygrip': 1.0.6 - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/css-modules@1.0.5: @@ -2272,7 +2272,7 @@ packages: /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 18.19.14 + '@types/node': 20.11.16 '@types/qs': 6.9.10 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -2291,7 +2291,7 @@ packages: resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/http-errors@2.0.4: @@ -2328,8 +2328,8 @@ packages: resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} dev: true - /@types/node@18.19.14: - resolution: {integrity: sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg==} + /@types/node@20.11.16: + resolution: {integrity: sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==} dependencies: undici-types: 5.26.5 @@ -2376,7 +2376,7 @@ packages: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/serve-static@1.15.5: @@ -2384,7 +2384,7 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/throttle-debounce@2.1.0: @@ -2394,7 +2394,7 @@ packages: /@types/through@0.0.30: resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} dependencies: - '@types/node': 18.19.14 + '@types/node': 20.11.16 dev: true /@types/tinycolor2@1.4.3: @@ -6645,7 +6645,7 @@ packages: typescript: 5.3.3 dev: false - /ts-node@10.9.1(@types/node@18.19.14)(typescript@5.3.3): + /ts-node@10.9.1(@types/node@20.11.16)(typescript@5.3.3): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -6664,7 +6664,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.14 + '@types/node': 20.11.16 acorn: 8.10.0 acorn-walk: 8.2.0 arg: 4.1.0 From ae12f0c9df615d3f994f1fede058f867c5084394 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sun, 4 Feb 2024 09:47:23 +0100 Subject: [PATCH 47/87] test: add vitest for unit tests (#50) * feat: add vitest for unit tests * chore: address pull request feedback * test: add unit test code quality workflow --- .github/workflows/code-quality.yml | 11 + package.json | 11 +- packages/common/src/test/object.spec.ts | 10 + packages/common/src/test/string.spec.ts | 19 + pnpm-lock.yaml | 1132 +++++++++++++++++++++-- vitest.config.ts | 23 + 6 files changed, 1119 insertions(+), 87 deletions(-) create mode 100644 packages/common/src/test/object.spec.ts create mode 100644 packages/common/src/test/string.spec.ts create mode 100644 vitest.config.ts diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index 0c427653f..44846a959 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -55,3 +55,14 @@ jobs: - name: Typecheck run: turbo typecheck + + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Setup + uses: ./tooling/github/setup + + - name: Test + run: pnpm test diff --git a/package.json b/package.json index d03122ddb..f9583e6a7 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,7 @@ "engines": { "node": ">=20.11.0" }, + "type": "module", "packageManager": "pnpm@8.15.1", "scripts": { "build": "turbo build", @@ -17,14 +18,22 @@ "lint": "turbo lint --continue -- --cache --cache-location node_modules/.cache/.eslintcache", "lint:fix": "turbo lint --continue -- --fix --cache --cache-location node_modules/.cache/.eslintcache", "lint:ws": "pnpm dlx sherif@latest", + "test": "cross-env NODE_ENV=development vitest run --coverage.enabled", + "test:ui": "cross-env NODE_ENV=development vitest --ui --coverage.enabled", "typecheck": "turbo typecheck" }, "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", "@turbo/gen": "^1.12.2", + "@vitejs/plugin-react": "^4.2.1", + "@vitest/coverage-v8": "^1.2.2", + "@vitest/ui": "^1.2.2", + "cross-env": "^7.0.3", "prettier": "^3.2.4", "turbo": "^1.12.2", - "typescript": "^5.3.3" + "typescript": "^5.3.3", + "vite-tsconfig-paths": "^4.3.1", + "vitest": "^1.2.2" }, "pnpm": { "overrides": { diff --git a/packages/common/src/test/object.spec.ts b/packages/common/src/test/object.spec.ts new file mode 100644 index 000000000..00cdfc02c --- /dev/null +++ b/packages/common/src/test/object.spec.ts @@ -0,0 +1,10 @@ +import { describe, expect, it } from "vitest"; + +import { objectKeys } from "../object"; + +describe("objectKeys should return all keys of an object", () => { + it("should return all keys of an object", () => { + const obj = { a: 1, b: 2, c: 3 }; + expect(objectKeys(obj)).toEqual(["a", "b", "c"]); + }); +}); diff --git a/packages/common/src/test/string.spec.ts b/packages/common/src/test/string.spec.ts new file mode 100644 index 000000000..df8b4461a --- /dev/null +++ b/packages/common/src/test/string.spec.ts @@ -0,0 +1,19 @@ +import { describe, expect, it } from "vitest"; + +import { capitalize } from "../string"; + +const capitalizeTestCases = [ + ["hello", "Hello"], + ["World", "World"], + ["123", "123"], + ["a", "A"], + ["two words", "Two words"], +] as const; + +describe("capitalize should capitalize the first letter of a string", () => { + capitalizeTestCases.forEach(([input, expected]) => { + it(`should capitalize ${input} to ${expected}`, () => { + expect(capitalize(input)).toEqual(expected); + }); + }); +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a62858503..2b950b932 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,6 +17,18 @@ importers: '@turbo/gen': specifier: ^1.12.2 version: 1.12.2(@types/node@20.11.16)(typescript@5.3.3) + '@vitejs/plugin-react': + specifier: ^4.2.1 + version: 4.2.1(vite@5.0.12) + '@vitest/coverage-v8': + specifier: ^1.2.2 + version: 1.2.2(vitest@1.2.2) + '@vitest/ui': + specifier: ^1.2.2 + version: 1.2.2(vitest@1.2.2) + cross-env: + specifier: ^7.0.3 + version: 7.0.3 prettier: specifier: ^3.2.4 version: 3.2.4 @@ -26,6 +38,12 @@ importers: typescript: specifier: ^5.3.3 version: 5.3.3 + vite-tsconfig-paths: + specifier: ^4.3.1 + version: 4.3.1(typescript@5.3.3)(vite@5.0.12) + vitest: + specifier: ^1.2.2 + version: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) apps/nextjs: dependencies: @@ -91,10 +109,10 @@ importers: version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.2.1 - version: 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + version: 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/react': specifier: ^2.2.1 - version: 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + version: 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@tiptap/starter-kit': specifier: ^2.2.1 version: 2.2.1(@tiptap/pm@2.1.13) @@ -121,10 +139,10 @@ importers: version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) next: specifier: ^14.1.0 - version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) + version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) postcss-preset-mantine: specifier: ^1.13.0 - version: 1.13.0(postcss@8.4.31) + version: 1.13.0(postcss@8.4.33) react: specifier: 18.2.0 version: 18.2.0 @@ -234,7 +252,7 @@ importers: version: 0.9.1 next: specifier: ^14.1.0 - version: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) + version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: specifier: 5.0.0-beta.5 version: 5.0.0-beta.5(next@14.1.0)(react@18.2.0) @@ -629,7 +647,6 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - dev: false /@auth/core@0.18.0: resolution: {integrity: sha512-Xb41H3FIv4PlTZmwoFvntaNlVTwIqFxIg7i0/ieHOOxf/7H8EJpGTWoNrqKhwMyZEPU6fHp+VcUiqdX3vFrWSg==} @@ -661,13 +678,23 @@ packages: dependencies: '@babel/highlight': 7.22.13 chalk: 2.4.2 - dev: false + + /@babel/code-frame@7.23.5: + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.23.4 + chalk: 2.4.2 /@babel/compat-data@7.23.2: resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} engines: {node: '>=6.9.0'} dev: false + /@babel/compat-data@7.23.5: + resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} + engines: {node: '>=6.9.0'} + /@babel/core@7.23.2: resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} engines: {node: '>=6.9.0'} @@ -691,6 +718,28 @@ packages: - supports-color dev: false + /@babel/core@7.23.9: + resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==} + engines: {node: '>=6.9.0'} + dependencies: + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/helpers': 7.23.9 + '@babel/parser': 7.23.9 + '@babel/template': 7.23.9 + '@babel/traverse': 7.23.9 + '@babel/types': 7.23.9 + convert-source-map: 2.0.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + /@babel/generator@7.23.0: resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} engines: {node: '>=6.9.0'} @@ -701,6 +750,15 @@ packages: jsesc: 2.5.2 dev: false + /@babel/generator@7.23.6: + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.23.9 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 + jsesc: 2.5.2 + /@babel/helper-compilation-targets@7.22.15: resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} engines: {node: '>=6.9.0'} @@ -712,10 +770,19 @@ packages: semver: 6.3.1 dev: false + /@babel/helper-compilation-targets@7.23.6: + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/helper-validator-option': 7.23.5 + browserslist: 4.22.3 + lru-cache: 5.1.1 + semver: 6.3.1 + /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-function-name@7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} @@ -723,21 +790,18 @@ packages: dependencies: '@babel/template': 7.22.15 '@babel/types': 7.23.0 - dev: false /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: false /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: false /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} @@ -753,35 +817,57 @@ packages: '@babel/helper-validator-identifier': 7.22.20 dev: false + /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9): + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.23.9 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 + + /@babel/helper-plugin-utils@7.22.5: + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-simple-access@7.22.5: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: false /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: false /@babel/helper-string-parser@7.22.5: resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} - dev: false + + /@babel/helper-string-parser@7.23.4: + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + engines: {node: '>=6.9.0'} /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-validator-option@7.22.15: resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} engines: {node: '>=6.9.0'} dev: false + /@babel/helper-validator-option@7.23.5: + resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} + engines: {node: '>=6.9.0'} + /@babel/helpers@7.23.2: resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} engines: {node: '>=6.9.0'} @@ -793,6 +879,16 @@ packages: - supports-color dev: false + /@babel/helpers@7.23.9: + resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.23.9 + '@babel/traverse': 7.23.9 + '@babel/types': 7.23.9 + transitivePeerDependencies: + - supports-color + /@babel/highlight@7.22.13: resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==} engines: {node: '>=6.9.0'} @@ -800,14 +896,47 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: false + + /@babel/highlight@7.23.4: + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.22.20 + chalk: 2.4.2 + js-tokens: 4.0.0 /@babel/parser@7.23.0: resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} engines: {node: '>=6.0.0'} dependencies: '@babel/types': 7.23.0 - dev: false + + /@babel/parser@7.23.9: + resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.23.9 + + /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.9): + resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.23.9 + '@babel/helper-plugin-utils': 7.22.5 + dev: true + + /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.9): + resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.23.9 + '@babel/helper-plugin-utils': 7.22.5 + dev: true /@babel/runtime-corejs3@7.22.10: resolution: {integrity: sha512-IcixfV2Jl3UrqZX4c81+7lVg5++2ufYJyAFW3Aux/ZTvY6LVYYhJ9rMgnbX0zGVq6eqfVpnoatTjZdVki/GmWA==} @@ -831,7 +960,14 @@ packages: '@babel/code-frame': 7.22.13 '@babel/parser': 7.23.0 '@babel/types': 7.23.0 - dev: false + + /@babel/template@7.23.9: + resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 /@babel/traverse@7.23.2: resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} @@ -851,6 +987,23 @@ packages: - supports-color dev: false + /@babel/traverse@7.23.9: + resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + /@babel/types@7.23.0: resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} engines: {node: '>=6.9.0'} @@ -858,7 +1011,18 @@ packages: '@babel/helper-string-parser': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 - dev: false + + /@babel/types@7.23.9: + resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.23.4 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: 2.0.0 + + /@bcoe/v8-coverage@0.2.3: + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + dev: true /@cspotcode/source-map-support@0.8.1: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} @@ -1410,6 +1574,18 @@ packages: wrap-ansi-cjs: /wrap-ansi@7.0.0 dev: false + /@istanbuljs/schema@0.1.3: + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + dev: true + + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.27.8 + dev: true + /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} @@ -1417,7 +1593,6 @@ packages: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.18 - dev: false /@jridgewell/resolve-uri@3.1.0: resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} @@ -1426,11 +1601,9 @@ packages: /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} - dev: false /@jridgewell/sourcemap-codec@1.4.14: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - dev: false /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} @@ -1440,7 +1613,6 @@ packages: dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 - dev: false /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -1569,8 +1741,8 @@ packages: dependencies: '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/react': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + '@tiptap/extension-link': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/react': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -1724,6 +1896,10 @@ packages: dev: false optional: true + /@polka/url@1.0.0-next.24: + resolution: {integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==} + dev: true + /@popperjs/core@2.11.8: resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} dev: false @@ -1756,6 +1932,114 @@ packages: type-fest: 2.19.0 dev: false + /@rollup/rollup-android-arm-eabi@4.9.6: + resolution: {integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm64@4.9.6: + resolution: {integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-arm64@4.9.6: + resolution: {integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-x64@4.9.6: + resolution: {integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-gnueabihf@4.9.6: + resolution: {integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-gnu@4.9.6: + resolution: {integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.9.6: + resolution: {integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.9.6: + resolution: {integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.9.6: + resolution: {integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-musl@4.9.6: + resolution: {integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-arm64-msvc@4.9.6: + resolution: {integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-ia32-msvc@4.9.6: + resolution: {integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-x64-msvc@4.9.6: + resolution: {integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + dev: true + /@swc/helpers@0.5.2: resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} dependencies: @@ -1830,7 +2114,7 @@ packages: react: ^18.0.0 dependencies: '@tanstack/react-query': 5.18.1(react@18.2.0) - next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) + next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false @@ -1843,14 +2127,6 @@ packages: react: 18.2.0 dev: false - /@tiptap/core@2.1.13(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-cMC8bgTN63dj1Mv82iDeeLl6sa9kY0Pug8LSalxVEptRmyFVsVxGgu2/6Y3T+9aCYScxfS06EkA8SdzFMAwYTQ==} - peerDependencies: - '@tiptap/pm': ^2.0.0 - dependencies: - '@tiptap/pm': 2.1.13 - dev: false - /@tiptap/core@2.2.1(@tiptap/pm@2.1.13): resolution: {integrity: sha512-9G6N2d5q4M5i/elK61qu28uO5MBDKEbStQnHuVKNe+LVNpb6xZal1AcIilmq1FVeuCUh3kYl3cFH3nBQOXtZUw==} peerDependencies: @@ -1875,13 +2151,13 @@ packages: '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bubble-menu@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + /@tiptap/extension-bubble-menu@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-FQO1CDS777E34T8jwnYDBz3VmGyVzv3Olj0o01c3fHR7OSnA7urAxx+z9Z4CWqUJhRMV9td0v0wiZjQ4q1DdYw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 tippy.js: 6.3.7 dev: false @@ -1930,13 +2206,13 @@ packages: '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-floating-menu@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + /@tiptap/extension-floating-menu@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-2lQaEIUbexw8yCGDLxNqhCwpZMoclnDtAdObDKCgufLcA+tVSdVirfcx7HJZ4kmRXmUhdG3uvawQVchZJ7FGiw==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 tippy.js: 6.3.7 dev: false @@ -1995,13 +2271,13 @@ packages: '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-link@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13): + /@tiptap/extension-link@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-3oh+tRFGtj3Scv3i6FBJOakX650NBI+cmemJxggaiH8PPw3+q+eZneqDQHqINcgel5/HQXFdXWSpfYsZi7EDoQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 linkifyjs: 4.1.3 dev: false @@ -2069,7 +2345,7 @@ packages: prosemirror-view: 1.32.6 dev: false - /@tiptap/react@2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): + /@tiptap/react@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-bKrW38l1mezJDAjQzDTOAXu0RFjNkGl7QR0n0tYjLsOinlUjNIKFAmOe9+Qy/bxvfsQWlPDOSSGjRYafe5zvVA==} peerDependencies: '@tiptap/core': ^2.0.0 @@ -2077,9 +2353,9 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@tiptap/core': 2.1.13(@tiptap/pm@2.1.13) - '@tiptap/extension-bubble-menu': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) - '@tiptap/extension-floating-menu': 2.2.1(@tiptap/core@2.1.13)(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/extension-bubble-menu': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-floating-menu': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -2138,7 +2414,7 @@ packages: '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 - next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) + next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-ssr-prepass: 1.5.0(react@18.2.0) @@ -2221,6 +2497,35 @@ packages: update-check: 1.5.4 dev: true + /@types/babel__core@7.20.5: + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + dependencies: + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.5 + dev: true + + /@types/babel__generator@7.6.8: + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + dependencies: + '@babel/types': 7.23.9 + dev: true + + /@types/babel__template@7.4.4: + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + dependencies: + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 + dev: true + + /@types/babel__traverse@7.20.5: + resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} + dependencies: + '@babel/types': 7.23.9 + dev: true + /@types/bcrypt@5.0.2: resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} dependencies: @@ -2269,6 +2574,10 @@ packages: resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} dev: true + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true + /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: @@ -2305,6 +2614,10 @@ packages: rxjs: 6.6.7 dev: true + /@types/istanbul-lib-coverage@2.0.6: + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + dev: true + /@types/json-schema@7.0.12: resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} @@ -2536,6 +2849,99 @@ packages: /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + /@vitejs/plugin-react@4.2.1(vite@5.0.12): + resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 + dependencies: + '@babel/core': 7.23.9 + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.9) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.9) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.0 + vite: 5.0.12(@types/node@20.11.16) + transitivePeerDependencies: + - supports-color + dev: true + + /@vitest/coverage-v8@1.2.2(vitest@1.2.2): + resolution: {integrity: sha512-IHyKnDz18SFclIEEAHb9Y4Uxx0sPKC2VO1kdDCs1BF6Ip4S8rQprs971zIsooLUn7Afs71GRxWMWpkCGZpRMhw==} + peerDependencies: + vitest: ^1.0.0 + dependencies: + '@ampproject/remapping': 2.2.1 + '@bcoe/v8-coverage': 0.2.3 + debug: 4.3.4 + istanbul-lib-coverage: 3.2.2 + istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 4.0.1 + istanbul-reports: 3.1.6 + magic-string: 0.30.6 + magicast: 0.3.3 + picocolors: 1.0.0 + std-env: 3.7.0 + test-exclude: 6.0.0 + v8-to-istanbul: 9.2.0 + vitest: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) + transitivePeerDependencies: + - supports-color + dev: true + + /@vitest/expect@1.2.2: + resolution: {integrity: sha512-3jpcdPAD7LwHUUiT2pZTj2U82I2Tcgg2oVPvKxhn6mDI2On6tfvPQTjAI4628GUGDZrCm4Zna9iQHm5cEexOAg==} + dependencies: + '@vitest/spy': 1.2.2 + '@vitest/utils': 1.2.2 + chai: 4.4.1 + dev: true + + /@vitest/runner@1.2.2: + resolution: {integrity: sha512-JctG7QZ4LSDXr5CsUweFgcpEvrcxOV1Gft7uHrvkQ+fsAVylmWQvnaAr/HDp3LAH1fztGMQZugIheTWjaGzYIg==} + dependencies: + '@vitest/utils': 1.2.2 + p-limit: 5.0.0 + pathe: 1.1.2 + dev: true + + /@vitest/snapshot@1.2.2: + resolution: {integrity: sha512-SmGY4saEw1+bwE1th6S/cZmPxz/Q4JWsl7LvbQIky2tKE35US4gd0Mjzqfr84/4OD0tikGWaWdMja/nWL5NIPA==} + dependencies: + magic-string: 0.30.6 + pathe: 1.1.2 + pretty-format: 29.7.0 + dev: true + + /@vitest/spy@1.2.2: + resolution: {integrity: sha512-k9Gcahssw8d7X3pSLq3e3XEu/0L78mUkCjivUqCQeXJm9clfXR/Td8+AP+VC1O6fKPIDLcHDTAmBOINVuv6+7g==} + dependencies: + tinyspy: 2.2.0 + dev: true + + /@vitest/ui@1.2.2(vitest@1.2.2): + resolution: {integrity: sha512-CG+5fa8lyoBr+9i+UZGS31Qw81v33QlD10uecHxN2CLJVN+jLnqx4pGzGvFFeJ7jSnUCT0AlbmVWY6fU6NJZmw==} + peerDependencies: + vitest: ^1.0.0 + dependencies: + '@vitest/utils': 1.2.2 + fast-glob: 3.3.2 + fflate: 0.8.1 + flatted: 3.2.9 + pathe: 1.1.2 + picocolors: 1.0.0 + sirv: 2.0.4 + vitest: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) + dev: true + + /@vitest/utils@1.2.2: + resolution: {integrity: sha512-WKITBHLsBHlpjnDQahr+XK6RE7MiAsgrIkr0pGhQ9ygoxBfUeG0lUG5iLlzqjmKSlBv3+j5EGsriBzh+C3Tq9g==} + dependencies: + diff-sequences: 29.6.3 + estree-walker: 3.0.3 + loupe: 2.3.7 + pretty-format: 29.7.0 + dev: true + /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: false @@ -2552,10 +2958,21 @@ packages: engines: {node: '>=0.4.0'} dev: true + /acorn-walk@8.3.2: + resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} + engines: {node: '>=0.4.0'} + dev: true + /acorn@8.10.0: resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} + /acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true + /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -2618,6 +3035,11 @@ packages: dependencies: color-convert: 2.0.1 + /ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + dev: true + /ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} @@ -2759,6 +3181,10 @@ packages: is-shared-array-buffer: 1.0.2 dev: false + /assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + dev: true + /ast-types-flow@0.0.8: resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} dev: false @@ -2868,6 +3294,16 @@ packages: update-browserslist-db: 1.0.13(browserslist@4.22.1) dev: false + /browserslist@4.22.3: + resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001583 + electron-to-chromium: 1.4.656 + node-releases: 2.0.14 + update-browserslist-db: 1.0.13(browserslist@4.22.3) + /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true @@ -2891,6 +3327,11 @@ packages: streamsearch: 1.1.0 dev: false + /cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + dev: true + /call-bind@1.0.2: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: @@ -2923,11 +3364,27 @@ packages: resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} dev: false + /caniuse-lite@1.0.30001583: + resolution: {integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==} + /case-anything@2.1.13: resolution: {integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==} engines: {node: '>=12.13'} dev: false + /chai@4.4.1: + resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} + engines: {node: '>=4'} + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.3 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.0.8 + dev: true + /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -2983,6 +3440,12 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true + /check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + dependencies: + get-func-name: 2.0.2 + dev: true + /chokidar@3.5.3: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} @@ -3101,7 +3564,6 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: false /cookie@0.5.0: resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} @@ -3135,6 +3597,14 @@ packages: resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} dev: false + /cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + dependencies: + cross-spawn: 7.0.3 + dev: true + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -3205,6 +3675,13 @@ packages: mimic-response: 3.1.0 dev: false + /deep-eql@4.1.3: + resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} + engines: {node: '>=6'} + dependencies: + type-detect: 4.0.8 + dev: true + /deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} @@ -3295,6 +3772,11 @@ packages: resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} dev: false + /diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + /diff@4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} @@ -3474,6 +3956,9 @@ packages: resolution: {integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==} dev: false + /electron-to-chromium@1.4.656: + resolution: {integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==} + /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -3712,7 +4197,6 @@ packages: /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - dev: false /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} @@ -3981,6 +4465,12 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + dependencies: + '@types/estree': 1.0.1 + dev: true + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -4007,6 +4497,21 @@ packages: strip-final-newline: 2.0.0 dev: true + /execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + dependencies: + cross-spawn: 7.0.3 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.2.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + dev: true + /expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} @@ -4051,6 +4556,10 @@ packages: dependencies: reusify: 1.0.4 + /fflate@0.8.1: + resolution: {integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==} + dev: true + /figures@3.2.0: resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} engines: {node: '>=8'} @@ -4091,6 +4600,10 @@ packages: /flatted@3.2.7: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + /flatted@3.2.9: + resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} + dev: true + /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: @@ -4142,7 +4655,6 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true - dev: false optional: true /function-bind@1.1.2: @@ -4180,7 +4692,10 @@ packages: /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} - dev: false + + /get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + dev: true /get-intrinsic@1.2.1: resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} @@ -4201,6 +4716,11 @@ packages: engines: {node: '>=10'} dev: true + /get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + dev: true + /get-symbol-description@1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} @@ -4279,7 +4799,6 @@ packages: /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - dev: false /globals@13.20.0: resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} @@ -4320,6 +4839,10 @@ packages: slash: 3.0.0 dev: false + /globrex@0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + dev: true + /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: @@ -4423,6 +4946,10 @@ packages: resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} dev: true + /html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + dev: true + /http-proxy-agent@7.0.0: resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} engines: {node: '>= 14'} @@ -4458,6 +4985,11 @@ packages: engines: {node: '>=10.17.0'} dev: true + /human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + dev: true + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} @@ -4732,6 +5264,11 @@ packages: engines: {node: '>=8'} dev: true + /is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -4806,6 +5343,39 @@ packages: engines: {node: '>=0.10.0'} dev: false + /istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + dev: true + + /istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} + dependencies: + istanbul-lib-coverage: 3.2.2 + make-dir: 4.0.0 + supports-color: 7.2.0 + dev: true + + /istanbul-lib-source-maps@4.0.1: + resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} + engines: {node: '>=10'} + dependencies: + debug: 4.3.4 + istanbul-lib-coverage: 3.2.2 + source-map: 0.6.1 + transitivePeerDependencies: + - supports-color + dev: true + + /istanbul-reports@3.1.6: + resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} + engines: {node: '>=8'} + dependencies: + html-escaper: 2.0.2 + istanbul-lib-report: 3.0.1 + dev: true + /iterator.prototype@1.1.0: resolution: {integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==} dependencies: @@ -4857,7 +5427,6 @@ packages: /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: false /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} @@ -4867,7 +5436,6 @@ packages: /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} - dev: false /json-diff@0.9.0: resolution: {integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==} @@ -4894,7 +5462,10 @@ packages: /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} - dev: false + + /jsonc-parser@3.2.1: + resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} + dev: true /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} @@ -4968,6 +5539,14 @@ packages: resolution: {integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==} dev: false + /local-pkg@0.5.0: + resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + engines: {node: '>=14'} + dependencies: + mlly: 1.5.0 + pkg-types: 1.0.3 + dev: true + /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -5010,6 +5589,12 @@ packages: js-tokens: 4.0.0 dev: false + /loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + dependencies: + get-func-name: 2.0.2 + dev: true + /lower-case-first@1.0.2: resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} dependencies: @@ -5029,7 +5614,6 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 - dev: false /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -5048,6 +5632,21 @@ packages: es5-ext: 0.10.62 dev: true + /magic-string@0.30.6: + resolution: {integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + + /magicast@0.3.3: + resolution: {integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==} + dependencies: + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 + source-map-js: 1.0.2 + dev: true + /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -5055,6 +5654,13 @@ packages: semver: 6.3.1 dev: false + /make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} + dependencies: + semver: 7.5.4 + dev: true + /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} @@ -5120,6 +5726,11 @@ packages: engines: {node: '>=6'} dev: true + /mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + dev: true + /mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -5189,6 +5800,20 @@ packages: engines: {node: '>=10'} dev: false + /mlly@1.5.0: + resolution: {integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==} + dependencies: + acorn: 8.11.3 + pathe: 1.1.2 + pkg-types: 1.0.3 + ufo: 1.3.2 + dev: true + + /mrmime@2.0.0: + resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} + engines: {node: '>=10'} + dev: true + /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} @@ -5200,11 +5825,10 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true - /nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - dev: false /napi-build-utils@1.0.2: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} @@ -5233,7 +5857,7 @@ packages: optional: true dependencies: '@auth/core': 0.18.0 - next: 14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) + next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false @@ -5249,7 +5873,7 @@ packages: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} dev: true - /next@14.1.0(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0): + /next@14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0): resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} engines: {node: '>=18.17.0'} hasBin: true @@ -5267,13 +5891,13 @@ packages: '@next/env': 14.1.0 '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001579 + caniuse-lite: 1.0.30001583 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) sass: 1.70.0 - styled-jsx: 5.1.1(react@18.2.0) + styled-jsx: 5.1.1(@babel/core@7.23.9)(react@18.2.0) optionalDependencies: '@next/swc-darwin-arm64': 14.1.0 '@next/swc-darwin-x64': 14.1.0 @@ -5339,6 +5963,9 @@ packages: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} dev: false + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + /nopt@5.0.0: resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} engines: {node: '>=6'} @@ -5358,6 +5985,13 @@ packages: path-key: 3.1.1 dev: true + /npm-run-path@5.2.0: + resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: 4.0.0 + dev: true + /npmlog@5.0.1: resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} dependencies: @@ -5491,6 +6125,13 @@ packages: mimic-fn: 2.1.0 dev: true + /onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + dependencies: + mimic-fn: 4.0.0 + dev: true + /optionator@0.9.3: resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} @@ -5546,6 +6187,13 @@ packages: dependencies: yocto-queue: 0.1.0 + /p-limit@5.0.0: + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} + dependencies: + yocto-queue: 1.0.0 + dev: true + /p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -5621,6 +6269,11 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + /path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: true + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -5636,55 +6289,70 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + /pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + dev: true + + /pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + dev: true + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: false /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} - /postcss-js@4.0.1(postcss@8.4.31): + /pkg-types@1.0.3: + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + dependencies: + jsonc-parser: 3.2.1 + mlly: 1.5.0 + pathe: 1.1.2 + dev: true + + /postcss-js@4.0.1(postcss@8.4.33): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.31 + postcss: 8.4.33 dev: false - /postcss-mixins@9.0.4(postcss@8.4.31): + /postcss-mixins@9.0.4(postcss@8.4.33): resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.14 dependencies: fast-glob: 3.3.2 - postcss: 8.4.31 - postcss-js: 4.0.1(postcss@8.4.31) - postcss-simple-vars: 7.0.1(postcss@8.4.31) - sugarss: 4.0.1(postcss@8.4.31) + postcss: 8.4.33 + postcss-js: 4.0.1(postcss@8.4.33) + postcss-simple-vars: 7.0.1(postcss@8.4.33) + sugarss: 4.0.1(postcss@8.4.33) dev: false - /postcss-nested@6.0.1(postcss@8.4.31): + /postcss-nested@6.0.1(postcss@8.4.33): resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.31 + postcss: 8.4.33 postcss-selector-parser: 6.0.13 dev: false - /postcss-preset-mantine@1.13.0(postcss@8.4.31): + /postcss-preset-mantine@1.13.0(postcss@8.4.33): resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} peerDependencies: postcss: '>=8.0.0' dependencies: - postcss: 8.4.31 - postcss-mixins: 9.0.4(postcss@8.4.31) - postcss-nested: 6.0.1(postcss@8.4.31) + postcss: 8.4.33 + postcss-mixins: 9.0.4(postcss@8.4.33) + postcss-nested: 6.0.1(postcss@8.4.33) dev: false /postcss-selector-parser@6.0.13: @@ -5695,24 +6363,32 @@ packages: util-deprecate: 1.0.2 dev: false - /postcss-simple-vars@7.0.1(postcss@8.4.31): + /postcss-simple-vars@7.0.1(postcss@8.4.33): resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.1 dependencies: - postcss: 8.4.31 + postcss: 8.4.33 dev: false /postcss@8.4.31: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.6 + nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 dev: false + /postcss@8.4.33: + resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.0.2 + /preact-render-to-string@5.2.3(preact@10.11.3): resolution: {integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==} peerDependencies: @@ -5754,6 +6430,15 @@ packages: engines: {node: '>=14'} hasBin: true + /pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.2.0 + dev: true + /pretty-format@3.8.0: resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} dev: false @@ -5966,6 +6651,10 @@ packages: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} dev: false + /react-is@18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + dev: true + /react-number-format@5.3.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==} peerDependencies: @@ -5977,6 +6666,11 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false + /react-refresh@0.14.0: + resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} + engines: {node: '>=0.10.0'} + dev: true + /react-remove-scroll-bar@2.3.4(@types/react@18.2.52)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} @@ -6178,6 +6872,29 @@ packages: dependencies: glob: 7.2.3 + /rollup@4.9.6: + resolution: {integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.9.6 + '@rollup/rollup-android-arm64': 4.9.6 + '@rollup/rollup-darwin-arm64': 4.9.6 + '@rollup/rollup-darwin-x64': 4.9.6 + '@rollup/rollup-linux-arm-gnueabihf': 4.9.6 + '@rollup/rollup-linux-arm64-gnu': 4.9.6 + '@rollup/rollup-linux-arm64-musl': 4.9.6 + '@rollup/rollup-linux-riscv64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-musl': 4.9.6 + '@rollup/rollup-win32-arm64-msvc': 4.9.6 + '@rollup/rollup-win32-ia32-msvc': 4.9.6 + '@rollup/rollup-win32-x64-msvc': 4.9.6 + fsevents: 2.3.3 + dev: true + /rope-sequence@1.3.4: resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} dev: false @@ -6259,7 +6976,6 @@ packages: /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - dev: false /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} @@ -6309,13 +7025,16 @@ packages: object-inspect: 1.12.3 dev: false + /siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + dev: true + /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} /signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - dev: false /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} @@ -6329,6 +7048,15 @@ packages: simple-concat: 1.0.1 dev: false + /sirv@2.0.4: + resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} + engines: {node: '>= 10'} + dependencies: + '@polka/url': 1.0.0-next.24 + mrmime: 2.0.0 + totalist: 3.0.1 + dev: true + /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: true @@ -6370,7 +7098,6 @@ packages: /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} - dev: false /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} @@ -6384,6 +7111,14 @@ packages: engines: {node: '>=0.10.0'} dev: true + /stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + dev: true + + /std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + dev: true + /streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} @@ -6472,6 +7207,11 @@ packages: engines: {node: '>=6'} dev: true + /strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: true + /strip-json-comments@2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} @@ -6480,7 +7220,13 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - /styled-jsx@5.1.1(react@18.2.0): + /strip-literal@1.3.0: + resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} + dependencies: + acorn: 8.10.0 + dev: true + + /styled-jsx@5.1.1(@babel/core@7.23.9)(react@18.2.0): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} peerDependencies: @@ -6493,17 +7239,18 @@ packages: babel-plugin-macros: optional: true dependencies: + '@babel/core': 7.23.9 client-only: 0.0.1 react: 18.2.0 dev: false - /sugarss@4.0.1(postcss@8.4.31): + /sugarss@4.0.1(postcss@8.4.33): resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.3.3 dependencies: - postcss: 8.4.31 + postcss: 8.4.33 dev: false /superjson@2.2.1: @@ -6571,6 +7318,15 @@ packages: yallist: 4.0.0 dev: false + /test-exclude@6.0.0: + resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} + engines: {node: '>=8'} + dependencies: + '@istanbuljs/schema': 0.1.3 + glob: 7.2.3 + minimatch: 3.1.2 + dev: true + /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -6590,6 +7346,10 @@ packages: next-tick: 1.1.0 dev: true + /tinybench@2.6.0: + resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} + dev: true + /tinycolor2@1.6.0: resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} dev: true @@ -6601,6 +7361,16 @@ packages: tinycolor2: 1.6.0 dev: true + /tinypool@0.8.2: + resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==} + engines: {node: '>=14.0.0'} + dev: true + + /tinyspy@2.2.0: + resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} + engines: {node: '>=14.0.0'} + dev: true + /tippy.js@6.3.7: resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} dependencies: @@ -6624,7 +7394,6 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: false /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -6632,6 +7401,11 @@ packages: dependencies: is-number: 7.0.0 + /totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + dev: true + /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false @@ -6676,6 +7450,19 @@ packages: yn: 3.1.1 dev: true + /tsconfck@3.0.1(typescript@5.3.3): + resolution: {integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==} + engines: {node: ^18 || >=20} + hasBin: true + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + dependencies: + typescript: 5.3.3 + dev: true + /tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: @@ -6769,6 +7556,11 @@ packages: dependencies: prelude-ls: 1.2.1 + /type-detect@4.0.8: + resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} + engines: {node: '>=4'} + dev: true + /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} @@ -6842,6 +7634,10 @@ packages: resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} dev: false + /ufo@1.3.2: + resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} + dev: true + /uglify-js@3.17.4: resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} engines: {node: '>=0.8.0'} @@ -6883,6 +7679,16 @@ packages: picocolors: 1.0.0 dev: false + /update-browserslist-db@1.0.13(browserslist@4.22.3): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.22.3 + escalade: 3.1.1 + picocolors: 1.0.0 + /update-check@1.5.4: resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} dependencies: @@ -6978,6 +7784,15 @@ packages: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} dev: true + /v8-to-istanbul@9.2.0: + resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} + engines: {node: '>=10.12.0'} + dependencies: + '@jridgewell/trace-mapping': 0.3.18 + '@types/istanbul-lib-coverage': 2.0.6 + convert-source-map: 2.0.0 + dev: true + /validate-npm-package-name@5.0.0: resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -6985,6 +7800,138 @@ packages: builtins: 5.0.1 dev: true + /vite-node@1.2.2(@types/node@20.11.16): + resolution: {integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + dependencies: + cac: 6.7.14 + debug: 4.3.4 + pathe: 1.1.2 + picocolors: 1.0.0 + vite: 5.0.12(@types/node@20.11.16) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + + /vite-tsconfig-paths@4.3.1(typescript@5.3.3)(vite@5.0.12): + resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==} + peerDependencies: + vite: '*' + peerDependenciesMeta: + vite: + optional: true + dependencies: + debug: 4.3.4 + globrex: 0.1.2 + tsconfck: 3.0.1(typescript@5.3.3) + vite: 5.0.12(@types/node@20.11.16) + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /vite@5.0.12(@types/node@20.11.16): + resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 20.11.16 + esbuild: 0.19.8 + postcss: 8.4.33 + rollup: 4.9.6 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /vitest@1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2): + resolution: {integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': ^1.0.0 + '@vitest/ui': ^1.0.0 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + dependencies: + '@types/node': 20.11.16 + '@vitest/expect': 1.2.2 + '@vitest/runner': 1.2.2 + '@vitest/snapshot': 1.2.2 + '@vitest/spy': 1.2.2 + '@vitest/ui': 1.2.2(vitest@1.2.2) + '@vitest/utils': 1.2.2 + acorn-walk: 8.3.2 + cac: 6.7.14 + chai: 4.4.1 + debug: 4.3.4 + execa: 8.0.1 + local-pkg: 0.5.0 + magic-string: 0.30.6 + pathe: 1.1.2 + picocolors: 1.0.0 + std-env: 3.7.0 + strip-literal: 1.3.0 + tinybench: 2.6.0 + tinypool: 0.8.2 + vite: 5.0.12(@types/node@20.11.16) + vite-node: 1.2.2(@types/node@20.11.16) + why-is-node-running: 2.2.2 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true + /w3c-keyname@2.2.8: resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} dev: false @@ -7060,6 +8007,15 @@ packages: dependencies: isexe: 2.0.0 + /why-is-node-running@2.2.2: + resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} + engines: {node: '>=8'} + hasBin: true + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + dev: true + /wide-align@1.1.5: resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} dependencies: @@ -7102,7 +8058,6 @@ packages: /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: false /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} @@ -7116,5 +8071,10 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + /yocto-queue@1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: true + /zod@3.22.4: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} diff --git a/vitest.config.ts b/vitest.config.ts new file mode 100644 index 000000000..11cbd664b --- /dev/null +++ b/vitest.config.ts @@ -0,0 +1,23 @@ +import react from "@vitejs/plugin-react"; +import tsconfigPaths from "vite-tsconfig-paths"; +import { configDefaults, defineConfig } from "vitest/config"; + +export default defineConfig({ + plugins: [react(), tsconfigPaths()], + test: { + include: ["**/*.spec.ts"], + poolOptions: { + threads: { + singleThread: false, + }, + }, + coverage: { + provider: "v8", + reporter: ["html", "json-summary", "json"], + all: true, + exclude: ["apps/nextjs/.next/"], + }, + + exclude: [...configDefaults.exclude, "apps/nextjs/.next"], + }, +}); From c89d13557d7a7cf5554795babc6ce1b6d92a62cd Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sun, 4 Feb 2024 11:26:05 +0100 Subject: [PATCH 48/87] config: add telemetry opt out to env --- .env.example | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.env.example b/.env.example index e27b97f5f..e6c6a4819 100644 --- a/.env.example +++ b/.env.example @@ -13,3 +13,5 @@ AUTH_URL='http://localhost:3000' # You can generate the secret via 'openssl rand -base64 32' on Unix # @see https://next-auth.js.org/configuration/options#secret AUTH_SECRET='supersecret' + +TURBO_TELEMETRY_DISABLED=1 \ No newline at end of file From 19588d77c839ac3058cfc5e6d8c51dd911ad0813 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Mon, 5 Feb 2024 07:12:16 +0100 Subject: [PATCH 49/87] chore(deps): update dependency @types/react to ^18.2.53 (#57) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 80 ++++++++++++++++++++-------------------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index d194b899e..0bb1f85b3 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -55,7 +55,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "@types/node": "^20.11.16", - "@types/react": "^18.2.52", + "@types/react": "^18.2.53", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2b950b932..e9104ed4c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -133,7 +133,7 @@ importers: version: 1.11.10 jotai: specifier: ^2.6.4 - version: 2.6.4(@types/react@18.2.52)(react@18.2.0) + version: 2.6.4(@types/react@18.2.53)(react@18.2.0) mantine-modal-manager: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) @@ -169,8 +169,8 @@ importers: specifier: ^20.11.16 version: 20.11.16 '@types/react': - specifier: ^18.2.52 - version: 18.2.52 + specifier: ^18.2.53 + version: 18.2.53 '@types/react-dom': specifier: ^18.2.18 version: 18.2.18 @@ -472,7 +472,7 @@ importers: dependencies: '@mantine/core': specifier: ^7.5.1 - version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) @@ -1621,7 +1621,7 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0): + /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} peerDependencies: '@mantine/hooks': 7.5.1 @@ -1634,8 +1634,8 @@ packages: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-number-format: 5.3.1(react-dom@18.2.0)(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.52)(react@18.2.0) - react-textarea-autosize: 8.5.3(@types/react@18.2.52)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.53)(react@18.2.0) + react-textarea-autosize: 8.5.3(@types/react@18.2.53)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - '@types/react' @@ -1650,7 +1650,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 @@ -1684,7 +1684,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1698,7 +1698,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1714,7 +1714,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1739,7 +1739,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@tiptap/extension-link': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/react': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) @@ -2668,11 +2668,11 @@ packages: /@types/react-dom@18.2.18: resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==} dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 dev: true - /@types/react@18.2.52: - resolution: {integrity: sha512-E/YjWh3tH+qsLKaUzgpZb5AY0ChVa+ZJzF7ogehVILrFpdQk6nC/WXOv0bfFEABbXbgNxLBGU7IIZByPKb6eBw==} + /@types/react@18.2.53: + resolution: {integrity: sha512-52IHsMDT8qATp9B9zoOyobW8W3/0QhaJQTw1HwRj0UY2yBpCAQ7+S/CqHYQ8niAm3p4ji+rWUQ9UCib0GxQ60w==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.3 @@ -5409,7 +5409,7 @@ packages: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false - /jotai@2.6.4(@types/react@18.2.52)(react@18.2.0): + /jotai@2.6.4(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} engines: {node: '>=12.20.0'} peerDependencies: @@ -5421,7 +5421,7 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 dev: false @@ -5672,7 +5672,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -6671,7 +6671,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar@2.3.4(@types/react@18.2.52)(react@18.2.0): + /react-remove-scroll-bar@2.3.4(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -6681,13 +6681,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.52)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.53)(react@18.2.0) tslib: 2.5.0 dev: false - /react-remove-scroll@2.5.7(@types/react@18.2.52)(react@18.2.0): + /react-remove-scroll@2.5.7(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -6697,13 +6697,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.52)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.52)(react@18.2.0) + react-remove-scroll-bar: 2.3.4(@types/react@18.2.53)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.53)(react@18.2.0) tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.52)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.52)(react@18.2.0) + use-callback-ref: 1.3.0(@types/react@18.2.53)(react@18.2.0) + use-sidecar: 1.1.2(@types/react@18.2.53)(react@18.2.0) dev: false /react-ssr-prepass@1.5.0(react@18.2.0): @@ -6714,7 +6714,7 @@ packages: react: 18.2.0 dev: false - /react-style-singleton@2.2.1(@types/react@18.2.52)(react@18.2.0): + /react-style-singleton@2.2.1(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -6724,14 +6724,14 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.5.0 dev: false - /react-textarea-autosize@8.5.3(@types/react@18.2.52)(react@18.2.0): + /react-textarea-autosize@8.5.3(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: @@ -6740,7 +6740,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.52)(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.53)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -7711,7 +7711,7 @@ packages: dependencies: punycode: 2.3.0 - /use-callback-ref@1.3.0(@types/react@18.2.52)(react@18.2.0): + /use-callback-ref@1.3.0(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -7721,7 +7721,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 tslib: 2.5.0 dev: false @@ -7734,7 +7734,7 @@ packages: react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.52)(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -7743,11 +7743,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.52)(react@18.2.0): + /use-latest@1.2.1(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -7756,12 +7756,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.52)(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.53)(react@18.2.0) dev: false - /use-sidecar@1.1.2(@types/react@18.2.52)(react@18.2.0): + /use-sidecar@1.1.2(@types/react@18.2.53)(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -7771,7 +7771,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.52 + '@types/react': 18.2.53 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 From 5d3ca5b190746c29a67aaddf97cf0e8f6e23f1ac Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Mon, 5 Feb 2024 20:32:16 +0100 Subject: [PATCH 50/87] chore(deps): update dependency @types/react to ^18.2.54 (#59) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 80 ++++++++++++++++++++-------------------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 0bb1f85b3..7e8063d16 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -55,7 +55,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "@types/node": "^20.11.16", - "@types/react": "^18.2.53", + "@types/react": "^18.2.54", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e9104ed4c..6171390f5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -133,7 +133,7 @@ importers: version: 1.11.10 jotai: specifier: ^2.6.4 - version: 2.6.4(@types/react@18.2.53)(react@18.2.0) + version: 2.6.4(@types/react@18.2.54)(react@18.2.0) mantine-modal-manager: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) @@ -169,8 +169,8 @@ importers: specifier: ^20.11.16 version: 20.11.16 '@types/react': - specifier: ^18.2.53 - version: 18.2.53 + specifier: ^18.2.54 + version: 18.2.54 '@types/react-dom': specifier: ^18.2.18 version: 18.2.18 @@ -472,7 +472,7 @@ importers: dependencies: '@mantine/core': specifier: ^7.5.1 - version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) @@ -1621,7 +1621,7 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0): + /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} peerDependencies: '@mantine/hooks': 7.5.1 @@ -1634,8 +1634,8 @@ packages: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-number-format: 5.3.1(react-dom@18.2.0)(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.53)(react@18.2.0) - react-textarea-autosize: 8.5.3(@types/react@18.2.53)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.54)(react@18.2.0) + react-textarea-autosize: 8.5.3(@types/react@18.2.54)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - '@types/react' @@ -1650,7 +1650,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 @@ -1684,7 +1684,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1698,7 +1698,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1714,7 +1714,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1739,7 +1739,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@tiptap/extension-link': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/react': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) @@ -2668,11 +2668,11 @@ packages: /@types/react-dom@18.2.18: resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==} dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 dev: true - /@types/react@18.2.53: - resolution: {integrity: sha512-52IHsMDT8qATp9B9zoOyobW8W3/0QhaJQTw1HwRj0UY2yBpCAQ7+S/CqHYQ8niAm3p4ji+rWUQ9UCib0GxQ60w==} + /@types/react@18.2.54: + resolution: {integrity: sha512-039k+vrVJymDoe2y+HLk3O3oI3sa+C8KNjuDKofqrIJK26ramnqLNj9VJTaxAzFGMvpW/79HrrAJapHzpQ9fGQ==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.3 @@ -5409,7 +5409,7 @@ packages: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false - /jotai@2.6.4(@types/react@18.2.53)(react@18.2.0): + /jotai@2.6.4(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} engines: {node: '>=12.20.0'} peerDependencies: @@ -5421,7 +5421,7 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 dev: false @@ -5672,7 +5672,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.53)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -6671,7 +6671,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar@2.3.4(@types/react@18.2.53)(react@18.2.0): + /react-remove-scroll-bar@2.3.4(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -6681,13 +6681,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.53)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.54)(react@18.2.0) tslib: 2.5.0 dev: false - /react-remove-scroll@2.5.7(@types/react@18.2.53)(react@18.2.0): + /react-remove-scroll@2.5.7(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -6697,13 +6697,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.53)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.53)(react@18.2.0) + react-remove-scroll-bar: 2.3.4(@types/react@18.2.54)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.54)(react@18.2.0) tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.53)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.53)(react@18.2.0) + use-callback-ref: 1.3.0(@types/react@18.2.54)(react@18.2.0) + use-sidecar: 1.1.2(@types/react@18.2.54)(react@18.2.0) dev: false /react-ssr-prepass@1.5.0(react@18.2.0): @@ -6714,7 +6714,7 @@ packages: react: 18.2.0 dev: false - /react-style-singleton@2.2.1(@types/react@18.2.53)(react@18.2.0): + /react-style-singleton@2.2.1(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -6724,14 +6724,14 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.5.0 dev: false - /react-textarea-autosize@8.5.3(@types/react@18.2.53)(react@18.2.0): + /react-textarea-autosize@8.5.3(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: @@ -6740,7 +6740,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.53)(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.54)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -7711,7 +7711,7 @@ packages: dependencies: punycode: 2.3.0 - /use-callback-ref@1.3.0(@types/react@18.2.53)(react@18.2.0): + /use-callback-ref@1.3.0(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -7721,7 +7721,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 tslib: 2.5.0 dev: false @@ -7734,7 +7734,7 @@ packages: react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.53)(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -7743,11 +7743,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.53)(react@18.2.0): + /use-latest@1.2.1(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -7756,12 +7756,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.53)(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.54)(react@18.2.0) dev: false - /use-sidecar@1.1.2(@types/react@18.2.53)(react@18.2.0): + /use-sidecar@1.1.2(@types/react@18.2.54)(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -7771,7 +7771,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.53 + '@types/react': 18.2.54 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 From e683d61568b61268dd04c50a31b18028b63a0a1b Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Mon, 5 Feb 2024 20:32:29 +0100 Subject: [PATCH 51/87] fix(deps): update typescript-eslint monorepo to ^6.21.0 (#58) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 90 ++++++++++++++++++------------------- tooling/eslint/package.json | 4 +- 2 files changed, 47 insertions(+), 47 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6171390f5..67215751d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -573,11 +573,11 @@ importers: specifier: ^14.1.0 version: 14.1.0 '@typescript-eslint/eslint-plugin': - specifier: ^6.20.0 - version: 6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.21.0 + version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: ^6.20.0 - version: 6.20.0(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.21.0 + version: 6.21.0(eslint@8.56.0)(typescript@5.3.3) eslint-config-prettier: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) @@ -586,7 +586,7 @@ importers: version: 1.12.2(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.20.0)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 version: 6.8.0(eslint@8.56.0) @@ -2714,8 +2714,8 @@ packages: resolution: {integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==} dev: true - /@typescript-eslint/eslint-plugin@6.20.0(@typescript-eslint/parser@6.20.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-fTwGQUnjhoYHeSF6m5pWNkzmDDdsKELYrOBxhjMrofPqCkoC2k3B2wvGHFxa1CTIqkEn88nlW1HVMztjo2K8Hg==} + /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -2726,11 +2726,11 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 6.20.0 - '@typescript-eslint/type-utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.20.0 + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 eslint: 8.56.0 graphemer: 1.4.0 @@ -2743,8 +2743,8 @@ packages: - supports-color dev: false - /@typescript-eslint/parser@6.20.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==} + /@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2753,10 +2753,10 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.20.0 - '@typescript-eslint/types': 6.20.0 - '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.20.0 + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 eslint: 8.56.0 typescript: 5.3.3 @@ -2764,16 +2764,16 @@ packages: - supports-color dev: false - /@typescript-eslint/scope-manager@6.20.0: - resolution: {integrity: sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==} + /@typescript-eslint/scope-manager@6.21.0: + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.20.0 - '@typescript-eslint/visitor-keys': 6.20.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 dev: false - /@typescript-eslint/type-utils@6.20.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-qnSobiJQb1F5JjN0YDRPHruQTrX7ICsmltXhkV536mp4idGAYrIyr47zF/JmkJtEcAVnIz4gUYJ7gOZa6SmN4g==} + /@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2782,8 +2782,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) - '@typescript-eslint/utils': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 eslint: 8.56.0 ts-api-utils: 1.0.1(typescript@5.3.3) @@ -2792,13 +2792,13 @@ packages: - supports-color dev: false - /@typescript-eslint/types@6.20.0: - resolution: {integrity: sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==} + /@typescript-eslint/types@6.21.0: + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} engines: {node: ^16.0.0 || >=18.0.0} dev: false - /@typescript-eslint/typescript-estree@6.20.0(typescript@5.3.3): - resolution: {integrity: sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==} + /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3): + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -2806,8 +2806,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.20.0 - '@typescript-eslint/visitor-keys': 6.20.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2819,8 +2819,8 @@ packages: - supports-color dev: false - /@typescript-eslint/utils@6.20.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-/EKuw+kRu2vAqCoDwDCBtDRU6CTKbUmwwI7SH7AashZ+W+7o8eiyy6V2cdOqN49KsTcASWsC5QeghYuRDTyOOg==} + /@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2828,9 +2828,9 @@ packages: '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.20.0 - '@typescript-eslint/types': 6.20.0 - '@typescript-eslint/typescript-estree': 6.20.0(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -2838,11 +2838,11 @@ packages: - typescript dev: false - /@typescript-eslint/visitor-keys@6.20.0: - resolution: {integrity: sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==} + /@typescript-eslint/visitor-keys@6.21.0: + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.20.0 + '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 dev: false @@ -4246,7 +4246,7 @@ packages: - supports-color dev: false - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.20.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -4267,7 +4267,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -4275,7 +4275,7 @@ packages: - supports-color dev: false - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.20.0)(eslint@8.56.0): + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0): resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: @@ -4285,7 +4285,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.20.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -4294,7 +4294,7 @@ packages: doctrine: 2.1.0 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.20.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) hasown: 2.0.0 is-core-module: 2.13.1 is-glob: 4.0.3 diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index 0799d5f53..800fceee6 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -16,8 +16,8 @@ }, "dependencies": { "@next/eslint-plugin-next": "^14.1.0", - "@typescript-eslint/eslint-plugin": "^6.20.0", - "@typescript-eslint/parser": "^6.20.0", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.21.0", "eslint-config-prettier": "^9.1.0", "eslint-config-turbo": "^1.12.2", "eslint-plugin-import": "^2.29.1", From ddc6f1fa16c071cbc36c725b7c423e9f41c44b5f Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 21:51:51 +0100 Subject: [PATCH 52/87] chore(deps): update dependency @types/react to ^18.2.55 (#61) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 80 ++++++++++++++++++++-------------------- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 7e8063d16..6fdd0ad67 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -55,7 +55,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "@types/node": "^20.11.16", - "@types/react": "^18.2.54", + "@types/react": "^18.2.55", "@types/react-dom": "^18.2.18", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 67215751d..82c305815 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -133,7 +133,7 @@ importers: version: 1.11.10 jotai: specifier: ^2.6.4 - version: 2.6.4(@types/react@18.2.54)(react@18.2.0) + version: 2.6.4(@types/react@18.2.55)(react@18.2.0) mantine-modal-manager: specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) @@ -169,8 +169,8 @@ importers: specifier: ^20.11.16 version: 20.11.16 '@types/react': - specifier: ^18.2.54 - version: 18.2.54 + specifier: ^18.2.55 + version: 18.2.55 '@types/react-dom': specifier: ^18.2.18 version: 18.2.18 @@ -472,7 +472,7 @@ importers: dependencies: '@mantine/core': specifier: ^7.5.1 - version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) @@ -1621,7 +1621,7 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0): + /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} peerDependencies: '@mantine/hooks': 7.5.1 @@ -1634,8 +1634,8 @@ packages: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-number-format: 5.3.1(react-dom@18.2.0)(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.54)(react@18.2.0) - react-textarea-autosize: 8.5.3(@types/react@18.2.54)(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.55)(react@18.2.0) + react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - '@types/react' @@ -1650,7 +1650,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 @@ -1684,7 +1684,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1698,7 +1698,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1714,7 +1714,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 @@ -1739,7 +1739,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) '@tiptap/extension-link': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/react': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) @@ -2668,11 +2668,11 @@ packages: /@types/react-dom@18.2.18: resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==} dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 dev: true - /@types/react@18.2.54: - resolution: {integrity: sha512-039k+vrVJymDoe2y+HLk3O3oI3sa+C8KNjuDKofqrIJK26ramnqLNj9VJTaxAzFGMvpW/79HrrAJapHzpQ9fGQ==} + /@types/react@18.2.55: + resolution: {integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.3 @@ -5409,7 +5409,7 @@ packages: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: false - /jotai@2.6.4(@types/react@18.2.54)(react@18.2.0): + /jotai@2.6.4(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} engines: {node: '>=12.20.0'} peerDependencies: @@ -5421,7 +5421,7 @@ packages: react: optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 dev: false @@ -5672,7 +5672,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.54)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -6671,7 +6671,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar@2.3.4(@types/react@18.2.54)(react@18.2.0): + /react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -6681,13 +6681,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.54)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 dev: false - /react-remove-scroll@2.5.7(@types/react@18.2.54)(react@18.2.0): + /react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -6697,13 +6697,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.54)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.54)(react@18.2.0) + react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.54)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.54)(react@18.2.0) + use-callback-ref: 1.3.0(@types/react@18.2.55)(react@18.2.0) + use-sidecar: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false /react-ssr-prepass@1.5.0(react@18.2.0): @@ -6714,7 +6714,7 @@ packages: react: 18.2.0 dev: false - /react-style-singleton@2.2.1(@types/react@18.2.54)(react@18.2.0): + /react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -6724,14 +6724,14 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.5.0 dev: false - /react-textarea-autosize@8.5.3(@types/react@18.2.54)(react@18.2.0): + /react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: @@ -6740,7 +6740,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.54)(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -7711,7 +7711,7 @@ packages: dependencies: punycode: 2.3.0 - /use-callback-ref@1.3.0(@types/react@18.2.54)(react@18.2.0): + /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -7721,7 +7721,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 tslib: 2.5.0 dev: false @@ -7734,7 +7734,7 @@ packages: react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.54)(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -7743,11 +7743,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.54)(react@18.2.0): + /use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -7756,12 +7756,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.54)(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false - /use-sidecar@1.1.2(@types/react@18.2.54)(react@18.2.0): + /use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -7771,7 +7771,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.54 + '@types/react': 18.2.55 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 From 544a6d992691c6ba398b236fdd4f59111fa64e5a Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 21:52:11 +0100 Subject: [PATCH 53/87] fix(deps): update dependency next-auth to v5.0.0-beta.8 (#60) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 366ba0b30..7bd8e5c32 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -19,7 +19,7 @@ "bcrypt": "^5.1.1", "cookies": "^0.9.1", "next": "^14.1.0", - "next-auth": "5.0.0-beta.5", + "next-auth": "5.0.0-beta.8", "react": "18.2.0", "react-dom": "18.2.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 82c305815..9c4a8a9ec 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -254,8 +254,8 @@ importers: specifier: ^14.1.0 version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: - specifier: 5.0.0-beta.5 - version: 5.0.0-beta.5(next@14.1.0)(react@18.2.0) + specifier: 5.0.0-beta.8 + version: 5.0.0-beta.8(next@14.1.0)(react@18.2.0) react: specifier: 18.2.0 version: 18.2.0 @@ -5846,13 +5846,19 @@ packages: engines: {node: '>= 0.4.0'} dev: true - /next-auth@5.0.0-beta.5(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-tEYIPhm/i0byW4xf9Ldlsnh7ckBQfNvMjOA3B3eXQX9taAQWb8earravSn1fjk4fKfKvaOApFJkks0VeI7Vy/A==} + /next-auth@5.0.0-beta.8(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-KRO3VBngzuxnfHhacXvp4lKa9afoE73D3Q4EiMSuQIKrg2KVFfB/uTRVro4Pjnhr/TzLqYZoaiJBfGpyhgby2Q==} peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.1 next: ^14 nodemailer: ^6.6.5 react: ^18.2.0 peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true nodemailer: optional: true dependencies: From 8994ac2501cc20c789d801f45a28bff2eb9cd253 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 20:44:59 +0100 Subject: [PATCH 54/87] chore(deps): update dependency @types/react-dom to ^18.2.19 (#64) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 6fdd0ad67..8f62a58ab 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -56,7 +56,7 @@ "@homarr/tsconfig": "workspace:^0.1.0", "@types/node": "^20.11.16", "@types/react": "^18.2.55", - "@types/react-dom": "^18.2.18", + "@types/react-dom": "^18.2.19", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", "prettier": "^3.2.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9c4a8a9ec..5759169e6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -172,8 +172,8 @@ importers: specifier: ^18.2.55 version: 18.2.55 '@types/react-dom': - specifier: ^18.2.18 - version: 18.2.18 + specifier: ^18.2.19 + version: 18.2.19 dotenv-cli: specifier: ^7.3.0 version: 7.3.0 @@ -2665,8 +2665,8 @@ packages: resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} dev: true - /@types/react-dom@18.2.18: - resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==} + /@types/react-dom@18.2.19: + resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} dependencies: '@types/react': 18.2.55 dev: true From 593bc9ca1c05bfd69b35d6bb2b7c34d3dabe7303 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 20:45:09 +0100 Subject: [PATCH 55/87] fix(deps): update tiptap monorepo to ^2.2.2 (#63) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 6 +- pnpm-lock.yaml | 198 ++++++++++++++++++++------------------- 2 files changed, 106 insertions(+), 98 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 8f62a58ab..123638728 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -32,9 +32,9 @@ "@tanstack/react-query": "^5.18.1", "@tanstack/react-query-devtools": "^5.18.1", "@tanstack/react-query-next-experimental": "5.18.1", - "@tiptap/extension-link": "^2.2.1", - "@tiptap/react": "^2.2.1", - "@tiptap/starter-kit": "^2.2.1", + "@tiptap/extension-link": "^2.2.2", + "@tiptap/react": "^2.2.2", + "@tiptap/starter-kit": "^2.2.2", "@trpc/client": "next", "@trpc/next": "next", "@trpc/react-query": "next", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5759169e6..ebb998917 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -94,7 +94,7 @@ importers: version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) '@mantine/tiptap': specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.1)(@tiptap/react@2.2.1)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': specifier: ^0.8.0 version: 0.8.0(typescript@5.3.3)(zod@3.22.4) @@ -108,14 +108,14 @@ importers: specifier: 5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': - specifier: ^2.2.1 - version: 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + specifier: ^2.2.2 + version: 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/react': - specifier: ^2.2.1 - version: 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + specifier: ^2.2.2 + version: 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@tiptap/starter-kit': - specifier: ^2.2.1 - version: 2.2.1(@tiptap/pm@2.1.13) + specifier: ^2.2.2 + version: 2.2.2(@tiptap/pm@2.1.13) '@trpc/client': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) @@ -1729,7 +1729,7 @@ packages: react: 18.2.0 dev: false - /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.1)(@tiptap/react@2.2.1)(react-dom@18.2.0)(react@18.2.0): + /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==} peerDependencies: '@mantine/core': 7.5.1 @@ -1741,8 +1741,8 @@ packages: dependencies: '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/react': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/react': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -2135,24 +2135,32 @@ packages: '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-blockquote@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-KfL7c28ueH8yKTkZiO9LlErAVjZyi5j+Kw42pu06aOrXWNH6TW8CSufR6UB2XZcFX6Sixi2qYpwxs1YNnItmcg==} + /@tiptap/core@2.2.2(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} + peerDependencies: + '@tiptap/pm': ^2.0.0 + dependencies: + '@tiptap/pm': 2.1.13 + dev: false + + /@tiptap/extension-blockquote@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bold@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-MSFbbrUG0hErM9sUmJenGPRBjQV/HfcLf7kqpxduPoxA4r2XOsbUKGSbPEQ3vU3vMi9Obkknt0JLnS5WofIIGw==} + /@tiptap/extension-bold@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bubble-menu@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-FQO1CDS777E34T8jwnYDBz3VmGyVzv3Olj0o01c3fHR7OSnA7urAxx+z9Z4CWqUJhRMV9td0v0wiZjQ4q1DdYw==} + /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -2162,52 +2170,52 @@ packages: tippy.js: 6.3.7 dev: false - /@tiptap/extension-bullet-list@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-MvMQRykJUdIocLNmilHO8smbttWwuXUGlnlW+DpIAK7DNih3aHjdFlRbixPqVQLicFMiI5+ixw+EM1ZQr0S59A==} + /@tiptap/extension-bullet-list@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-code-block@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-8Urq8OvdBXDs8cX7Tgw71uyHQknqOeEgU0w4PvhFlOnDKUyehiUGys86k/NUJwP2P9O+YGToM3sVJF0ONdlNGQ==} + /@tiptap/extension-code-block@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-code@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-nRYeiw9MtV6x3klcQd2X3fJ7r8J1Zy+KHTvfJFYsK8SacSVl+tYi8/FsjbmzGmnO3NYUlDzdyPq/woT+cKk20Q==} + /@tiptap/extension-code@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-CHMHK76fGFrY3TpsyNmPB393VvRgjnvLVOfc0Qx4KKEkntDQ1v2jg90XupLf0+H0aq0KQBHlSooW0Bh+7SxbmQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-document@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-Pb0jSY6wYSKd8fgDotKiQN3mc4dKLWVq0IzYOpBGTLn+37WmyPzWCnA1vWjp81u2XRXvr3gFQBEa+zYXonG//w==} + /@tiptap/extension-document@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-dropcursor@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-Y9MmqRv0MMzhy8efVvHV1zAwr4oEiodggYOLC8Vav0IubWXqd8mVDCdz3DjEqGOdeR9Qy/zt4ohQlbkRno9twA==} + /@tiptap/extension-dropcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-floating-menu@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-2lQaEIUbexw8yCGDLxNqhCwpZMoclnDtAdObDKCgufLcA+tVSdVirfcx7HJZ4kmRXmUhdG3uvawQVchZJ7FGiw==} + /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -2217,62 +2225,62 @@ packages: tippy.js: 6.3.7 dev: false - /@tiptap/extension-gapcursor@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-/OCQDwa1/LwFVEFWCkU4dnUt4pGt1IJKOEzT2JETrRQB4VzP1flIpwPAy5tJ3i2abkCZtnEGOJ5ZsXC01LgOxg==} + /@tiptap/extension-gapcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-hard-break@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-wKRujmJlaBOv+PEnaUL2C9fEjiq1YDsm/SbHzAPYn/+8CRHOLrcJpUAq9rUo7u6+bEBD2PxbN1pPNrfS3QtPLw==} + /@tiptap/extension-hard-break@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-heading@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-BI14qTOWTcabvobSo8QBAXQqmz4vQ9HjInK9btKEAJ027BHFk08n6YoovQDcTH5Z2nvwPN4N3RW0JupmgwflAQ==} + /@tiptap/extension-heading@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-history@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-MZyIKWgNLzsEysyzWwsUE705+x4GRuLluS5cWGzZ/CKjSEUO152DVlM50MPpKqH+o1SW3cR7RUvDPJlpM7Lymw==} + /@tiptap/extension-history@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-horizontal-rule@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-M6mi6CPMeO/1i/0qqEIVbObB3VDT6HhO4cxvjiaWxRXsU+79kdvx33Mk6GHKuXZizAYN1qxeM7byAtFiRu/aIw==} + /@tiptap/extension-horizontal-rule@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-italic@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-x3cWWgup7SZIq8ugfJ8IFpvOROwU0KuAZFJlSk9eL9Qszff2ZG8kPUuQ8HklSdmoafSluv0mUhDSFTc52E/Yzg==} + /@tiptap/extension-italic@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-link@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-3oh+tRFGtj3Scv3i6FBJOakX650NBI+cmemJxggaiH8PPw3+q+eZneqDQHqINcgel5/HQXFdXWSpfYsZi7EDoQ==} + /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -2282,44 +2290,44 @@ packages: linkifyjs: 4.1.3 dev: false - /@tiptap/extension-list-item@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-6seOMXbji+ptW9OiOig8BVBxnGZhHgWEU6tmsMxsf61dt8b1CElf04oTbvn1hzkCjQQXJbsztU87Q7FLTfLE0w==} + /@tiptap/extension-list-item@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-ordered-list@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-6OcdBALgYnj/TKSV+ouT202U1ydJGenGL9ofhpdogC1scE0oMaR25f1T9k7RMUGAv+7FNIcVZp2+bf1SLCTX1A==} + /@tiptap/extension-ordered-list@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-paragraph@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-SaSnWml4DTzG9kTEq/diL6XQGSgNaZJPOIGTPL2/1idHrx4/JrZ87VIbChJwVqbDuAvAxbidAqxKJuYObSzhhg==} + /@tiptap/extension-paragraph@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-strike@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-4XntI9CLteDeu1ZBWqTygiuut2mJbS5E6SxDD0LZ6EtXM1LdTkh5xhDdviErsqlAe1PUtrFcGUAfdyMOdp26uQ==} + /@tiptap/extension-strike@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-text@2.2.1(@tiptap/core@2.2.1): - resolution: {integrity: sha512-1zjPuGyhLIODsYpCYeRSUgzfzdzk5uSo8PsV/WaF75ouilJYE3QvMQegivkuNmPBLz0nukPkOcXfQUI/D8wNOA==} + /@tiptap/extension-text@2.2.2(@tiptap/core@2.2.2): + resolution: {integrity: sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==} peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false /@tiptap/pm@2.1.13: @@ -2345,8 +2353,8 @@ packages: prosemirror-view: 1.32.6 dev: false - /@tiptap/react@2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-bKrW38l1mezJDAjQzDTOAXu0RFjNkGl7QR0n0tYjLsOinlUjNIKFAmOe9+Qy/bxvfsQWlPDOSSGjRYafe5zvVA==} + /@tiptap/react@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 @@ -2354,35 +2362,35 @@ packages: react-dom: ^17.0.0 || ^18.0.0 dependencies: '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) - '@tiptap/extension-bubble-menu': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-floating-menu': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@tiptap/starter-kit@2.2.1(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-x6Xm5KnecorskpCSdDxaPDU2kSB4cWCy/DCEANbOrVyj1ukg8mEnVPkW6/v4LzqJHZb0Ah9rKVOQw9oOeoFb9A==} + /@tiptap/starter-kit@2.2.2(@tiptap/pm@2.1.13): + resolution: {integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==} dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) - '@tiptap/extension-blockquote': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-bold': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-bullet-list': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-code': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-code-block': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-document': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-dropcursor': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-gapcursor': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-hard-break': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-heading': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-history': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-horizontal-rule': 2.2.1(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-italic': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-list-item': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-ordered-list': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-paragraph': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-strike': 2.2.1(@tiptap/core@2.2.1) - '@tiptap/extension-text': 2.2.1(@tiptap/core@2.2.1) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/extension-blockquote': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-bold': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-bullet-list': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-code': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-code-block': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-document': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-dropcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-gapcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-hard-break': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-heading': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-history': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-horizontal-rule': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-italic': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-list-item': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-ordered-list': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-paragraph': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-strike': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-text': 2.2.2(@tiptap/core@2.2.2) transitivePeerDependencies: - '@tiptap/pm' dev: false From 941307b954b1c08bd29dcd0110ce9fad5c808f48 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 20:45:17 +0100 Subject: [PATCH 56/87] chore(deps): update turbo monorepo to ^1.12.3 (#62) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- package.json | 4 +- pnpm-lock.yaml | 84 ++++++++++++++++++------------------- tooling/eslint/package.json | 2 +- 3 files changed, 43 insertions(+), 47 deletions(-) diff --git a/package.json b/package.json index f9583e6a7..3a68babb8 100644 --- a/package.json +++ b/package.json @@ -24,13 +24,13 @@ }, "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", - "@turbo/gen": "^1.12.2", + "@turbo/gen": "^1.12.3", "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^1.2.2", "@vitest/ui": "^1.2.2", "cross-env": "^7.0.3", "prettier": "^3.2.4", - "turbo": "^1.12.2", + "turbo": "^1.12.3", "typescript": "^5.3.3", "vite-tsconfig-paths": "^4.3.1", "vitest": "^1.2.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ebb998917..dffccaea2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,8 +15,8 @@ importers: specifier: workspace:^0.1.0 version: link:tooling/prettier '@turbo/gen': - specifier: ^1.12.2 - version: 1.12.2(@types/node@20.11.16)(typescript@5.3.3) + specifier: ^1.12.3 + version: 1.12.3(@types/node@20.11.16)(typescript@5.3.3) '@vitejs/plugin-react': specifier: ^4.2.1 version: 4.2.1(vite@5.0.12) @@ -33,8 +33,8 @@ importers: specifier: ^3.2.4 version: 3.2.4 turbo: - specifier: ^1.12.2 - version: 1.12.2 + specifier: ^1.12.3 + version: 1.12.3 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -582,8 +582,8 @@ importers: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) eslint-config-turbo: - specifier: ^1.12.2 - version: 1.12.2(eslint@8.56.0) + specifier: ^1.12.3 + version: 1.12.3(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0) @@ -2464,11 +2464,11 @@ packages: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.12.2(@types/node@20.11.16)(typescript@5.3.3): - resolution: {integrity: sha512-XmdaB4J3JvDs6/L+JkCHTf/s74+O4xKZC0HDQxvV+cyicvYocPcR5NTOuH5gdG81roR9tVQWhkAza2hgGOlSyw==} + /@turbo/gen@1.12.3(@types/node@20.11.16)(typescript@5.3.3): + resolution: {integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==} hasBin: true dependencies: - '@turbo/workspaces': 1.12.2 + '@turbo/workspaces': 1.12.3 chalk: 2.4.2 commander: 10.0.1 fs-extra: 10.1.0 @@ -2487,8 +2487,8 @@ packages: - typescript dev: true - /@turbo/workspaces@1.12.2: - resolution: {integrity: sha512-B1WybqMR2/7jq9j3EqSuWiYHK/9ZUQPZjy7DIt8PGc+AdrP1nVYW2vOpApKO9j/dLvycDGAmn5LtL5vcSrMlfg==} + /@turbo/workspaces@1.12.3: + resolution: {integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==} hasBin: true dependencies: chalk: 2.4.2 @@ -2961,11 +2961,6 @@ packages: dependencies: acorn: 8.10.0 - /acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} - engines: {node: '>=0.4.0'} - dev: true - /acorn-walk@8.3.2: resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} engines: {node: '>=0.4.0'} @@ -4235,13 +4230,13 @@ packages: eslint: 8.56.0 dev: false - /eslint-config-turbo@1.12.2(eslint@8.56.0): - resolution: {integrity: sha512-JHTGtDQuISBEWIorHenu5AeX1nv16NiDgDVRi1i0VyeYw0SiVh+lSQbv4BawXSnG1nOFpjbopAQdZvdB3PwXbQ==} + /eslint-config-turbo@1.12.3(eslint@8.56.0): + resolution: {integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==} peerDependencies: eslint: '>6.6.0' dependencies: eslint: 8.56.0 - eslint-plugin-turbo: 1.12.2(eslint@8.56.0) + eslint-plugin-turbo: 1.12.3(eslint@8.56.0) dev: false /eslint-import-resolver-node@0.3.9: @@ -4377,8 +4372,8 @@ packages: string.prototype.matchall: 4.0.8 dev: false - /eslint-plugin-turbo@1.12.2(eslint@8.56.0): - resolution: {integrity: sha512-/l0aGvZRzK1LMRTibRd6ZbEEuD5TtGotDTkZpxSIWA1FI764pWVvQduQMKBaRuz7aTuAo0WxatD8v1scK+qRWw==} + /eslint-plugin-turbo@1.12.3(eslint@8.56.0): + resolution: {integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==} peerDependencies: eslint: '>6.6.0' dependencies: @@ -5806,6 +5801,7 @@ packages: /mkdirp@1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} engines: {node: '>=10'} + hasBin: true dev: false /mlly@1.5.0: @@ -7237,7 +7233,7 @@ packages: /strip-literal@1.3.0: resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} dependencies: - acorn: 8.10.0 + acorn: 8.11.3 dev: true /styled-jsx@5.1.1(@babel/core@7.23.9)(react@18.2.0): @@ -7453,8 +7449,8 @@ packages: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 '@types/node': 20.11.16 - acorn: 8.10.0 - acorn-walk: 8.2.0 + acorn: 8.11.3 + acorn-walk: 8.3.2 arg: 4.1.0 create-require: 1.1.1 diff: 4.0.2 @@ -7504,64 +7500,64 @@ packages: safe-buffer: 5.2.1 dev: false - /turbo-darwin-64@1.12.2: - resolution: {integrity: sha512-Aq/ePQ5KNx6XGwlZWTVTqpQYfysm1vkwkI6kAYgrX5DjMWn+tUXrSgNx4YNte0F+V4DQ7PtuWX+jRG0h0ZNg0A==} + /turbo-darwin-64@1.12.3: + resolution: {integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-darwin-arm64@1.12.2: - resolution: {integrity: sha512-wTr+dqkwJo/eXE+4SPTSeNBKyyfQJhI6I9sKVlCSBmtaNEqoGNgdVzgMUdqrg9AIFzLIiKO+zhfskNaSWpVFow==} + /turbo-darwin-arm64@1.12.3: + resolution: {integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-linux-64@1.12.2: - resolution: {integrity: sha512-BggBKrLojGarDaa2zBo+kUR3fmjpd6bLA8Unm3Aa2oJw0UvEi3Brd+w9lNsPZHXXQYBUzNUY2gCdxf3RteWb0g==} + /turbo-linux-64@1.12.3: + resolution: {integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-linux-arm64@1.12.2: - resolution: {integrity: sha512-v/apSRvVuwYjq1D9MJFsHv2EpGd1S4VoSdZvVfW6FaM06L8CFZa92urNR1svdGYN28YVKwK9Ikc9qudC6t/d5A==} + /turbo-linux-arm64@1.12.3: + resolution: {integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-windows-64@1.12.2: - resolution: {integrity: sha512-3uDdwXcRGkgopYFdPDpxQiuQjfQ12Fxq0fhj+iGymav0eWA4W4wzYwSdlUp6rT22qOBIzaEsrIspRwx1DsMkNg==} + /turbo-windows-64@1.12.3: + resolution: {integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /turbo-windows-arm64@1.12.2: - resolution: {integrity: sha512-zNIHnwtQfJSjFi7movwhPQh2rfrcKZ7Xv609EN1yX0gEp9GxooCUi2yNnBQ8wTqFjioA2M5hZtGJQ0RrKaEm/Q==} + /turbo-windows-arm64@1.12.3: + resolution: {integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /turbo@1.12.2: - resolution: {integrity: sha512-BcoQjBZ+LJCMdjzWhzQflOinUjek28rWXj07aaaAQ8T3Ehs0JFSjIsXOm4qIbo52G4xk3gFVcUtJhh/QRADl7g==} + /turbo@1.12.3: + resolution: {integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==} hasBin: true optionalDependencies: - turbo-darwin-64: 1.12.2 - turbo-darwin-arm64: 1.12.2 - turbo-linux-64: 1.12.2 - turbo-linux-arm64: 1.12.2 - turbo-windows-64: 1.12.2 - turbo-windows-arm64: 1.12.2 + turbo-darwin-64: 1.12.3 + turbo-darwin-arm64: 1.12.3 + turbo-linux-64: 1.12.3 + turbo-linux-arm64: 1.12.3 + turbo-windows-64: 1.12.3 + turbo-windows-arm64: 1.12.3 dev: true /type-check@0.4.0: diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index 800fceee6..bac91c340 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -19,7 +19,7 @@ "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", "eslint-config-prettier": "^9.1.0", - "eslint-config-turbo": "^1.12.2", + "eslint-config-turbo": "^1.12.3", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.2", From 5cbd02b142da68f067ef9831c6b47f117fbdc8e4 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 20:45:29 +0100 Subject: [PATCH 57/87] fix(deps): update dependency @auth/core to ^0.26.3 (#54) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/auth/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 7bd8e5c32..5262d2d7a 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@homarr/db": "workspace:^0.1.0", - "@auth/core": "^0.25.0", + "@auth/core": "^0.26.3", "@auth/drizzle-adapter": "^0.5.0", "@t3-oss/env-nextjs": "^0.8.0", "bcrypt": "^5.1.1", From 6797cca25945da5944966622c0cba5a9e0a263fa Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 20:54:51 +0100 Subject: [PATCH 58/87] fix(deps): update dependency @auth/drizzle-adapter to ^0.6.3 (#52) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 44 ++++++++++++++++---------------------- 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 5262d2d7a..122f585be 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -14,7 +14,7 @@ "dependencies": { "@homarr/db": "workspace:^0.1.0", "@auth/core": "^0.26.3", - "@auth/drizzle-adapter": "^0.5.0", + "@auth/drizzle-adapter": "^0.6.3", "@t3-oss/env-nextjs": "^0.8.0", "bcrypt": "^5.1.1", "cookies": "^0.9.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dffccaea2..e5283a413 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -109,10 +109,10 @@ importers: version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.2.2 - version: 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) '@tiptap/react': specifier: ^2.2.2 - version: 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) '@tiptap/starter-kit': specifier: ^2.2.2 version: 2.2.2(@tiptap/pm@2.1.13) @@ -236,8 +236,8 @@ importers: specifier: 0.18.0 version: 0.18.0 '@auth/drizzle-adapter': - specifier: ^0.5.0 - version: 0.5.0 + specifier: ^0.6.3 + version: 0.6.3 '@homarr/db': specifier: workspace:^0.1.0 version: link:../db @@ -664,8 +664,8 @@ packages: preact-render-to-string: 5.2.3(preact@10.11.3) dev: false - /@auth/drizzle-adapter@0.5.0: - resolution: {integrity: sha512-C02D7FGF7nI0snUjuKSLwMiinf5GX/maYFI79oaNWRx94ZzwtIWafnRi6Dr4ZV5rtk9fXvzDHw84+ZdwTjJE8w==} + /@auth/drizzle-adapter@0.6.3: + resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} dependencies: '@auth/core': 0.18.0 transitivePeerDependencies: @@ -1741,8 +1741,8 @@ packages: dependencies: '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/react': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -2127,14 +2127,6 @@ packages: react: 18.2.0 dev: false - /@tiptap/core@2.2.1(@tiptap/pm@2.1.13): - resolution: {integrity: sha512-9G6N2d5q4M5i/elK61qu28uO5MBDKEbStQnHuVKNe+LVNpb6xZal1AcIilmq1FVeuCUh3kYl3cFH3nBQOXtZUw==} - peerDependencies: - '@tiptap/pm': ^2.0.0 - dependencies: - '@tiptap/pm': 2.1.13 - dev: false - /@tiptap/core@2.2.2(@tiptap/pm@2.1.13): resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} peerDependencies: @@ -2159,13 +2151,13 @@ packages: '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 tippy.js: 6.3.7 dev: false @@ -2214,13 +2206,13 @@ packages: '@tiptap/pm': 2.1.13 dev: false - /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 tippy.js: 6.3.7 dev: false @@ -2279,13 +2271,13 @@ packages: '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) dev: false - /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13): + /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): resolution: {integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 linkifyjs: 4.1.3 dev: false @@ -2353,7 +2345,7 @@ packages: prosemirror-view: 1.32.6 dev: false - /@tiptap/react@2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): + /@tiptap/react@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==} peerDependencies: '@tiptap/core': ^2.0.0 @@ -2361,9 +2353,9 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@tiptap/core': 2.2.1(@tiptap/pm@2.1.13) - '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) - '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.1)(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) '@tiptap/pm': 2.1.13 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) From 91812531b47a664c81852a03525dce4fe9a146a3 Mon Sep 17 00:00:00 2001 From: "deepsource-autofix[bot]" <62050782+deepsource-autofix[bot]@users.noreply.github.com> Date: Wed, 7 Feb 2024 21:02:22 +0100 Subject: [PATCH 59/87] refactor: remove `true` from boolean attribute (#66) When using a boolean attribute in JSX, you can set the attribute value to true or omit the value. This helps to keep consistency in code. Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com> --- apps/nextjs/src/app/[locale]/manage/layout.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/nextjs/src/app/[locale]/manage/layout.tsx b/apps/nextjs/src/app/[locale]/manage/layout.tsx index fdf281713..b7193249c 100644 --- a/apps/nextjs/src/app/[locale]/manage/layout.tsx +++ b/apps/nextjs/src/app/[locale]/manage/layout.tsx @@ -101,7 +101,7 @@ export default async function ManageLayout({ children }: PropsWithChildren) { ]; return ( - + {children} From 55ec60041ac5fd38861220f42e6b6daba1fb3eb3 Mon Sep 17 00:00:00 2001 From: Tagaishi Date: Wed, 7 Feb 2024 21:24:50 +0100 Subject: [PATCH 60/87] fix: Remove version override (#67) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🐛 remove version override * fix: configuration userid error --- package.json | 5 - packages/auth/configuration.ts | 2 +- pnpm-lock.yaml | 329 +++++++++++++++++++-------------- 3 files changed, 190 insertions(+), 146 deletions(-) diff --git a/package.json b/package.json index 3a68babb8..62fe2760b 100644 --- a/package.json +++ b/package.json @@ -35,10 +35,5 @@ "vite-tsconfig-paths": "^4.3.1", "vitest": "^1.2.2" }, - "pnpm": { - "overrides": { - "@auth/core": "0.18.0" - } - }, "prettier": "@homarr/prettier-config" } \ No newline at end of file diff --git a/packages/auth/configuration.ts b/packages/auth/configuration.ts index 047f11491..f1810df44 100644 --- a/packages/auth/configuration.ts +++ b/packages/auth/configuration.ts @@ -40,7 +40,7 @@ export const createConfiguration = (isCredentialsRequest: boolean) => await adapter.createSession({ sessionToken: sessionToken, - userId: user.id, + userId: user.id!, expires: sessionExpiry, }); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e5283a413..065eb4d4c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,9 +4,6 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -overrides: - '@auth/core': 0.18.0 - importers: .: @@ -109,13 +106,13 @@ importers: version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.2.2 - version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/react': specifier: ^2.2.2 - version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) '@tiptap/starter-kit': specifier: ^2.2.2 - version: 2.2.2(@tiptap/pm@2.1.13) + version: 2.2.2(@tiptap/pm@2.2.2) '@trpc/client': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) @@ -142,7 +139,7 @@ importers: version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) postcss-preset-mantine: specifier: ^1.13.0 - version: 1.13.0(postcss@8.4.33) + version: 1.13.0(postcss@8.4.35) react: specifier: 18.2.0 version: 18.2.0 @@ -233,8 +230,8 @@ importers: packages/auth: dependencies: '@auth/core': - specifier: 0.18.0 - version: 0.18.0 + specifier: ^0.26.3 + version: 0.26.3 '@auth/drizzle-adapter': specifier: ^0.6.3 version: 0.6.3 @@ -648,18 +645,48 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - /@auth/core@0.18.0: - resolution: {integrity: sha512-Xb41H3FIv4PlTZmwoFvntaNlVTwIqFxIg7i0/ieHOOxf/7H8EJpGTWoNrqKhwMyZEPU6fHp+VcUiqdX3vFrWSg==} + /@auth/core@0.26.2: + resolution: {integrity: sha512-BK+NaUDLcX8AMW/O32wxzk+SE9lr/xvjO4PsTgla9ToHHanoPMl+6pYu2/WoNKnZomdHBWOl/00LFfajuulIVA==} peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.1 nodemailer: ^6.8.0 peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true nodemailer: optional: true dependencies: '@panva/hkdf': 1.1.1 - cookie: 0.5.0 - jose: 4.14.4 - oauth4webapi: 2.3.0 + '@types/cookie': 0.6.0 + cookie: 0.6.0 + jose: 5.2.1 + oauth4webapi: 2.10.3 + preact: 10.11.3 + preact-render-to-string: 5.2.3(preact@10.11.3) + dev: false + + /@auth/core@0.26.3: + resolution: {integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==} + peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.1 + nodemailer: ^6.8.0 + peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true + nodemailer: + optional: true + dependencies: + '@panva/hkdf': 1.1.1 + '@types/cookie': 0.6.0 + cookie: 0.6.0 + jose: 5.2.1 + oauth4webapi: 2.10.3 preact: 10.11.3 preact-render-to-string: 5.2.3(preact@10.11.3) dev: false @@ -667,8 +694,10 @@ packages: /@auth/drizzle-adapter@0.6.3: resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} dependencies: - '@auth/core': 0.18.0 + '@auth/core': 0.26.3 transitivePeerDependencies: + - '@simplewebauthn/browser' + - '@simplewebauthn/server' - nodemailer dev: false @@ -1741,8 +1770,8 @@ packages: dependencies: '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) - '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0) + '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -2127,12 +2156,12 @@ packages: react: 18.2.0 dev: false - /@tiptap/core@2.2.2(@tiptap/pm@2.1.13): + /@tiptap/core@2.2.2(@tiptap/pm@2.2.2): resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} peerDependencies: '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/pm': 2.1.13 + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-blockquote@2.2.2(@tiptap/core@2.2.2): @@ -2140,7 +2169,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-bold@2.2.2(@tiptap/core@2.2.2): @@ -2148,17 +2177,17 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 tippy.js: 6.3.7 dev: false @@ -2167,17 +2196,17 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/extension-code-block@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-code-block@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-code@2.2.2(@tiptap/core@2.2.2): @@ -2185,7 +2214,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-document@2.2.2(@tiptap/core@2.2.2): @@ -2193,38 +2222,38 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/extension-dropcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-dropcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false - /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 tippy.js: 6.3.7 dev: false - /@tiptap/extension-gapcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-gapcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-hard-break@2.2.2(@tiptap/core@2.2.2): @@ -2232,7 +2261,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-heading@2.2.2(@tiptap/core@2.2.2): @@ -2240,27 +2269,27 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/extension-history@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-history@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false - /@tiptap/extension-horizontal-rule@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-horizontal-rule@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-italic@2.2.2(@tiptap/core@2.2.2): @@ -2268,17 +2297,17 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13): + /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): resolution: {integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==} peerDependencies: '@tiptap/core': ^2.0.0 '@tiptap/pm': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 linkifyjs: 4.1.3 dev: false @@ -2287,7 +2316,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-ordered-list@2.2.2(@tiptap/core@2.2.2): @@ -2295,7 +2324,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-paragraph@2.2.2(@tiptap/core@2.2.2): @@ -2303,7 +2332,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-strike@2.2.2(@tiptap/core@2.2.2): @@ -2311,7 +2340,7 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-text@2.2.2(@tiptap/core@2.2.2): @@ -2319,11 +2348,11 @@ packages: peerDependencies: '@tiptap/core': ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false - /@tiptap/pm@2.1.13: - resolution: {integrity: sha512-zNbA7muWsHuVg12GrTgN/j119rLePPq5M8dZgkKxUwdw8VmU3eUyBp1SihPEXJ2U0MGdZhNhFX7Y74g11u66sg==} + /@tiptap/pm@2.2.2: + resolution: {integrity: sha512-TcUxqevVcqLYOcbAGlmvZfOB5LL5zZmb6jxSHyevl41SRpGZLe9Jt0e1v98jS0o9GMS7nvcTK/scYQu9e0HqTA==} dependencies: prosemirror-changeset: 2.2.1 prosemirror-collab: 1.3.1 @@ -2331,21 +2360,21 @@ packages: prosemirror-dropcursor: 1.8.1 prosemirror-gapcursor: 1.3.2 prosemirror-history: 1.3.2 - prosemirror-inputrules: 1.3.0 + prosemirror-inputrules: 1.4.0 prosemirror-keymap: 1.2.2 - prosemirror-markdown: 1.11.2 + prosemirror-markdown: 1.12.0 prosemirror-menu: 1.2.4 - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-schema-basic: 1.2.2 prosemirror-schema-list: 1.3.0 prosemirror-state: 1.4.3 prosemirror-tables: 1.3.5 - prosemirror-trailing-node: 2.0.7(prosemirror-model@1.19.3)(prosemirror-state@1.4.3)(prosemirror-view@1.32.6) + prosemirror-trailing-node: 2.0.7(prosemirror-model@1.19.4)(prosemirror-state@1.4.3)(prosemirror-view@1.32.7) prosemirror-transform: 1.8.0 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false - /@tiptap/react@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13)(react-dom@18.2.0)(react@18.2.0): + /@tiptap/react@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==} peerDependencies: '@tiptap/core': ^2.0.0 @@ -2353,30 +2382,30 @@ packages: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) - '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) - '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) - '@tiptap/pm': 2.1.13 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@tiptap/starter-kit@2.2.2(@tiptap/pm@2.1.13): + /@tiptap/starter-kit@2.2.2(@tiptap/pm@2.2.2): resolution: {integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==} dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.1.13) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) '@tiptap/extension-blockquote': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-bold': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-bullet-list': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-code': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-code-block': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-code-block': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/extension-document': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-dropcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) - '@tiptap/extension-gapcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-dropcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-gapcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/extension-hard-break': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-heading': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-history': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) - '@tiptap/extension-horizontal-rule': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.1.13) + '@tiptap/extension-history': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-horizontal-rule': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/extension-italic': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-list-item': 2.2.2(@tiptap/core@2.2.2) '@tiptap/extension-ordered-list': 2.2.2(@tiptap/core@2.2.2) @@ -2550,6 +2579,10 @@ packages: '@types/node': 20.11.16 dev: true + /@types/cookie@0.6.0: + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} + dev: false + /@types/cookies@0.9.0: resolution: {integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==} dependencies: @@ -3560,8 +3593,8 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - /cookie@0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} + /cookie@0.6.0: + resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} engines: {node: '>= 0.6'} dev: false @@ -3967,8 +4000,8 @@ packages: once: 1.4.0 dev: false - /entities@3.0.1: - resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} + /entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} dev: false @@ -5400,8 +5433,8 @@ packages: '@pkgjs/parseargs': 0.11.0 dev: false - /jose@4.14.4: - resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} + /jose@5.2.1: + resolution: {integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==} dev: false /jotai@2.6.4(@types/react@18.2.55)(react@18.2.0): @@ -5524,10 +5557,10 @@ packages: prelude-ls: 1.2.1 type-check: 0.4.0 - /linkify-it@4.0.1: - resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==} + /linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} dependencies: - uc.micro: 1.0.6 + uc.micro: 2.0.0 dev: false /linkifyjs@4.1.3: @@ -5673,19 +5706,20 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /markdown-it@13.0.2: - resolution: {integrity: sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==} + /markdown-it@14.0.0: + resolution: {integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==} hasBin: true dependencies: argparse: 2.0.1 - entities: 3.0.1 - linkify-it: 4.0.1 - mdurl: 1.0.1 - uc.micro: 1.0.6 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.0.0 dev: false - /mdurl@1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} + /mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} dev: false /memoizee@0.4.15: @@ -5858,7 +5892,7 @@ packages: nodemailer: optional: true dependencies: - '@auth/core': 0.18.0 + '@auth/core': 0.26.2 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false @@ -6003,8 +6037,8 @@ packages: set-blocking: 2.0.0 dev: false - /oauth4webapi@2.3.0: - resolution: {integrity: sha512-JGkb5doGrwzVDuHwgrR4nHJayzN4h59VCed6EW8Tql6iHDfZIabCJvg6wtbn5q6pyB2hZruI3b77Nudvq7NmvA==} + /oauth4webapi@2.10.3: + resolution: {integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==} dev: false /object-assign@4.1.1: @@ -6314,47 +6348,47 @@ packages: pathe: 1.1.2 dev: true - /postcss-js@4.0.1(postcss@8.4.33): + /postcss-js@4.0.1(postcss@8.4.35): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.33 + postcss: 8.4.35 dev: false - /postcss-mixins@9.0.4(postcss@8.4.33): + /postcss-mixins@9.0.4(postcss@8.4.35): resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.14 dependencies: fast-glob: 3.3.2 - postcss: 8.4.33 - postcss-js: 4.0.1(postcss@8.4.33) - postcss-simple-vars: 7.0.1(postcss@8.4.33) - sugarss: 4.0.1(postcss@8.4.33) + postcss: 8.4.35 + postcss-js: 4.0.1(postcss@8.4.35) + postcss-simple-vars: 7.0.1(postcss@8.4.35) + sugarss: 4.0.1(postcss@8.4.35) dev: false - /postcss-nested@6.0.1(postcss@8.4.33): + /postcss-nested@6.0.1(postcss@8.4.35): resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.33 + postcss: 8.4.35 postcss-selector-parser: 6.0.13 dev: false - /postcss-preset-mantine@1.13.0(postcss@8.4.33): + /postcss-preset-mantine@1.13.0(postcss@8.4.35): resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} peerDependencies: postcss: '>=8.0.0' dependencies: - postcss: 8.4.33 - postcss-mixins: 9.0.4(postcss@8.4.33) - postcss-nested: 6.0.1(postcss@8.4.33) + postcss: 8.4.35 + postcss-mixins: 9.0.4(postcss@8.4.35) + postcss-nested: 6.0.1(postcss@8.4.35) dev: false /postcss-selector-parser@6.0.13: @@ -6365,13 +6399,13 @@ packages: util-deprecate: 1.0.2 dev: false - /postcss-simple-vars@7.0.1(postcss@8.4.33): + /postcss-simple-vars@7.0.1(postcss@8.4.35): resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.1 dependencies: - postcss: 8.4.33 + postcss: 8.4.35 dev: false /postcss@8.4.31: @@ -6390,6 +6424,16 @@ packages: nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 + dev: true + + /postcss@8.4.35: + resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: false /preact-render-to-string@5.2.3(preact@10.11.3): resolution: {integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==} @@ -6468,7 +6512,7 @@ packages: /prosemirror-commands@1.5.2: resolution: {integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 dev: false @@ -6478,16 +6522,16 @@ packages: dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false /prosemirror-gapcursor@1.3.2: resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} dependencies: prosemirror-keymap: 1.2.2 - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false /prosemirror-history@1.3.2: @@ -6495,12 +6539,12 @@ packages: dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 rope-sequence: 1.3.4 dev: false - /prosemirror-inputrules@1.3.0: - resolution: {integrity: sha512-z1GRP2vhh5CihYMQYsJSa1cOwXb3SYxALXOIfAkX8nZserARtl9LiL+CEl+T+OFIsXc3mJIHKhbsmRzC0HDAXA==} + /prosemirror-inputrules@1.4.0: + resolution: {integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==} dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 @@ -6513,11 +6557,11 @@ packages: w3c-keyname: 2.2.8 dev: false - /prosemirror-markdown@1.11.2: - resolution: {integrity: sha512-Eu5g4WPiCdqDTGhdSsG9N6ZjACQRYrsAkrF9KYfdMaCmjIApH75aVncsWYOJvEk2i1B3i8jZppv3J/tnuHGiUQ==} + /prosemirror-markdown@1.12.0: + resolution: {integrity: sha512-6F5HS8Z0HDYiS2VQDZzfZP6A0s/I0gbkJy8NCzzDMtcsz3qrfqyroMMeoSjAmOhDITyon11NbXSzztfKi+frSQ==} dependencies: - markdown-it: 13.0.2 - prosemirror-model: 1.19.3 + markdown-it: 14.0.0 + prosemirror-model: 1.19.4 dev: false /prosemirror-menu@1.2.4: @@ -6529,8 +6573,8 @@ packages: prosemirror-state: 1.4.3 dev: false - /prosemirror-model@1.19.3: - resolution: {integrity: sha512-tgSnwN7BS7/UM0sSARcW+IQryx2vODKX4MI7xpqY2X+iaepJdKBPc7I4aACIsDV/LTaTjt12Z56MhDr9LsyuZQ==} + /prosemirror-model@1.19.4: + resolution: {integrity: sha512-RPmVXxUfOhyFdayHawjuZCxiROsm9L4FCUA6pWI+l7n2yCBsWy9VpdE1hpDHUS8Vad661YLY9AzqfjLhAKQ4iQ==} dependencies: orderedmap: 2.1.1 dev: false @@ -6538,13 +6582,13 @@ packages: /prosemirror-schema-basic@1.2.2: resolution: {integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 dev: false /prosemirror-schema-list@1.3.0: resolution: {integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 dev: false @@ -6552,22 +6596,22 @@ packages: /prosemirror-state@1.4.3: resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-transform: 1.8.0 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false /prosemirror-tables@1.3.5: resolution: {integrity: sha512-JSZ2cCNlApu/ObAhdPyotrjBe2cimniniTpz60YXzbL0kZ+47nEYk2LWbfKU2lKpBkUNquta2PjteoNi4YCluQ==} dependencies: prosemirror-keymap: 1.2.2 - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false - /prosemirror-trailing-node@2.0.7(prosemirror-model@1.19.3)(prosemirror-state@1.4.3)(prosemirror-view@1.32.6): + /prosemirror-trailing-node@2.0.7(prosemirror-model@1.19.4)(prosemirror-state@1.4.3)(prosemirror-view@1.32.7): resolution: {integrity: sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==} peerDependencies: prosemirror-model: ^1.19.0 @@ -6577,21 +6621,21 @@ packages: '@remirror/core-constants': 2.0.2 '@remirror/core-helpers': 3.0.0 escape-string-regexp: 4.0.0 - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 - prosemirror-view: 1.32.6 + prosemirror-view: 1.32.7 dev: false /prosemirror-transform@1.8.0: resolution: {integrity: sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 dev: false - /prosemirror-view@1.32.6: - resolution: {integrity: sha512-26r5LvyDlPgUNVf7ZdNdGrMJnylwjJtUJTfDuYOANIVx9lqWD1WCBlGg283weYQGKUC64DXR25LeAmliB9CrFQ==} + /prosemirror-view@1.32.7: + resolution: {integrity: sha512-pvxiOoD4shW41X5bYDjRQk3DSG4fMqxh36yPMt7VYgU3dWRmqFzWJM/R6zeo1KtC8nyk717ZbQND3CC9VNeptw==} dependencies: - prosemirror-model: 1.19.3 + prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 dev: false @@ -6623,6 +6667,11 @@ packages: once: 1.4.0 dev: false + /punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + dev: false + /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} @@ -7246,13 +7295,13 @@ packages: react: 18.2.0 dev: false - /sugarss@4.0.1(postcss@8.4.33): + /sugarss@4.0.1(postcss@8.4.35): resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.3.3 dependencies: - postcss: 8.4.33 + postcss: 8.4.35 dev: false /superjson@2.2.1: @@ -7632,8 +7681,8 @@ packages: resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} engines: {node: '>=14.17'} - /uc.micro@1.0.6: - resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} + /uc.micro@2.0.0: + resolution: {integrity: sha512-DffL94LsNOccVn4hyfRe5rdKa273swqeA5DJpMOeFmEn1wCDc7nAbbB0gXlgBCL7TNzeTv6G7XVWzan7iJtfig==} dev: false /ufo@1.3.2: From cc52c2ba785e78f251bc6cfac637bc4285b77f0f Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 06:48:19 +0100 Subject: [PATCH 61/87] fix(deps): update dependency next-auth to v5.0.0-beta.9 (#68) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 33 +++++---------------------------- 2 files changed, 6 insertions(+), 29 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 122f585be..358fa919d 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -19,7 +19,7 @@ "bcrypt": "^5.1.1", "cookies": "^0.9.1", "next": "^14.1.0", - "next-auth": "5.0.0-beta.8", + "next-auth": "5.0.0-beta.9", "react": "18.2.0", "react-dom": "18.2.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 065eb4d4c..80b7225cc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -251,8 +251,8 @@ importers: specifier: ^14.1.0 version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: - specifier: 5.0.0-beta.8 - version: 5.0.0-beta.8(next@14.1.0)(react@18.2.0) + specifier: 5.0.0-beta.9 + version: 5.0.0-beta.9(next@14.1.0)(react@18.2.0) react: specifier: 18.2.0 version: 18.2.0 @@ -645,29 +645,6 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - /@auth/core@0.26.2: - resolution: {integrity: sha512-BK+NaUDLcX8AMW/O32wxzk+SE9lr/xvjO4PsTgla9ToHHanoPMl+6pYu2/WoNKnZomdHBWOl/00LFfajuulIVA==} - peerDependencies: - '@simplewebauthn/browser': ^9.0.1 - '@simplewebauthn/server': ^9.0.1 - nodemailer: ^6.8.0 - peerDependenciesMeta: - '@simplewebauthn/browser': - optional: true - '@simplewebauthn/server': - optional: true - nodemailer: - optional: true - dependencies: - '@panva/hkdf': 1.1.1 - '@types/cookie': 0.6.0 - cookie: 0.6.0 - jose: 5.2.1 - oauth4webapi: 2.10.3 - preact: 10.11.3 - preact-render-to-string: 5.2.3(preact@10.11.3) - dev: false - /@auth/core@0.26.3: resolution: {integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==} peerDependencies: @@ -5876,8 +5853,8 @@ packages: engines: {node: '>= 0.4.0'} dev: true - /next-auth@5.0.0-beta.8(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-KRO3VBngzuxnfHhacXvp4lKa9afoE73D3Q4EiMSuQIKrg2KVFfB/uTRVro4Pjnhr/TzLqYZoaiJBfGpyhgby2Q==} + /next-auth@5.0.0-beta.9(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==} peerDependencies: '@simplewebauthn/browser': ^9.0.1 '@simplewebauthn/server': ^9.0.1 @@ -5892,7 +5869,7 @@ packages: nodemailer: optional: true dependencies: - '@auth/core': 0.26.2 + '@auth/core': 0.26.3 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false From 975f9123dd4d509e2b777d8af8d74f38ebc59aad Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Thu, 8 Feb 2024 07:00:00 +0100 Subject: [PATCH 62/87] feat: add widget server loader (#16) * wip: Add gridstack board * wip: Centralize board pages, Add board settings page * fix: remove cyclic dependency and rename widget-sort to kind * improve: Add header actions as parallel route * feat: add item select modal, add category edit modal, * feat: add edit item modal * feat: add remove item modal * wip: add category actions * feat: add saving of board, wip: add app widget * Merge branch 'main' into add-board * chore: update turbo dependencies * chore: update mantine dependencies * chore: fix typescript errors, lint and format * feat: add confirm modal to category removal, move items of removed category to above wrapper * feat: remove app widget to continue in another branch * feat: add loading spinner until board is initialized * fix: issue with cellheight of gridstack items * feat: add translations for board * fix: issue with translation for settings page * feat: add widget server loader * fix: typing issue * chore: address pull request feedback * fix: formatting --- .../src/app/[locale]/boards/_creator.tsx | 24 ++--- .../src/components/board/sections/content.tsx | 11 ++- packages/widgets/src/clock/component.tsx | 1 + packages/widgets/src/clock/index.ts | 45 +++++----- packages/widgets/src/clock/serverData.ts | 10 +++ packages/widgets/src/definition.ts | 85 +++++++++++++++--- packages/widgets/src/index.tsx | 2 + packages/widgets/src/options.ts | 2 +- packages/widgets/src/server/client.tsx | 13 +++ packages/widgets/src/server/provider.tsx | 89 +++++++++++++++++++ packages/widgets/src/server/runner.tsx | 43 +++++++++ packages/widgets/src/weather/index.ts | 8 +- 12 files changed, 286 insertions(+), 47 deletions(-) create mode 100644 packages/widgets/src/clock/serverData.ts create mode 100644 packages/widgets/src/server/client.tsx create mode 100644 packages/widgets/src/server/provider.tsx create mode 100644 packages/widgets/src/server/runner.tsx diff --git a/apps/nextjs/src/app/[locale]/boards/_creator.tsx b/apps/nextjs/src/app/[locale]/boards/_creator.tsx index ffb9b61ff..ec2ef4f97 100644 --- a/apps/nextjs/src/app/[locale]/boards/_creator.tsx +++ b/apps/nextjs/src/app/[locale]/boards/_creator.tsx @@ -13,6 +13,8 @@ import type { Board } from "./_types"; // This is placed here because it's used in the layout and the page and because it's here it's not needed to load it everywhere import "../../../styles/gridstack.scss"; +import { GlobalItemServerDataRunner } from "@homarr/widgets"; + type Params = Record; interface Props { @@ -31,16 +33,18 @@ export const createBoardPage = >({ const initialBoard = await getInitialBoard(params); return ( - - - } - actions={headeractions} - hasNavigation={false} - /> - {children} - - + + + + } + actions={headeractions} + hasNavigation={false} + /> + {children} + + + ); }, page: () => { diff --git a/apps/nextjs/src/components/board/sections/content.tsx b/apps/nextjs/src/components/board/sections/content.tsx index 006c2c2fd..bc6d21af7 100644 --- a/apps/nextjs/src/components/board/sections/content.tsx +++ b/apps/nextjs/src/components/board/sections/content.tsx @@ -17,6 +17,7 @@ import { import { loadWidgetDynamic, reduceWidgetOptionsWithDefaultValues, + useServerDataFor, } from "@homarr/widgets"; import type { Item } from "~/app/[locale]/boards/_types"; @@ -62,13 +63,21 @@ interface ItemProps { } const BoardItem = ({ item }: ItemProps) => { + const serverData = useServerDataFor(item.id); const Comp = loadWidgetDynamic(item.kind); const options = reduceWidgetOptionsWithDefaultValues(item.kind, item.options); const newItem = { ...item, options }; + + if (!serverData?.isReady) return null; + return ( <> - + ); }; diff --git a/packages/widgets/src/clock/component.tsx b/packages/widgets/src/clock/component.tsx index c8f3b7887..c1fab8aa0 100644 --- a/packages/widgets/src/clock/component.tsx +++ b/packages/widgets/src/clock/component.tsx @@ -3,6 +3,7 @@ import type { WidgetComponentProps } from "../definition"; export default function ClockWidget({ options: _options, integrations: _integrations, + serverData: _serverData, }: WidgetComponentProps<"clock">) { return
CLOCK
; } diff --git a/packages/widgets/src/clock/index.ts b/packages/widgets/src/clock/index.ts index 09337d32f..6892e5ef4 100644 --- a/packages/widgets/src/clock/index.ts +++ b/packages/widgets/src/clock/index.ts @@ -1,27 +1,30 @@ import { IconClock } from "@homarr/ui"; import { createWidgetDefinition } from "../definition"; -import { opt } from "../options"; +import { optionsBuilder } from "../options"; -export const { definition, componentLoader } = createWidgetDefinition("clock", { - icon: IconClock, - supportedIntegrations: ["adGuardHome", "piHole"], - options: opt.from( - (fac) => ({ - is24HourFormat: fac.switch({ - defaultValue: true, - withDescription: true, +export const { definition, componentLoader, serverDataLoader } = + createWidgetDefinition("clock", { + icon: IconClock, + supportedIntegrations: ["adGuardHome", "piHole"], + options: optionsBuilder.from( + (factory) => ({ + is24HourFormat: factory.switch({ + defaultValue: true, + withDescription: true, + }), + isLocaleTime: factory.switch({ defaultValue: true }), + timezone: factory.select({ + options: ["Europe/Berlin", "Europe/London", "Europe/Moscow"] as const, + defaultValue: "Europe/Berlin", + }), }), - isLocaleTime: fac.switch({ defaultValue: true }), - timezone: fac.select({ - options: ["Europe/Berlin", "Europe/London", "Europe/Moscow"] as const, - defaultValue: "Europe/Berlin", - }), - }), - { - timezone: { - shouldHide: (options) => options.isLocaleTime, + { + timezone: { + shouldHide: (options) => options.isLocaleTime, + }, }, - }, - ), -}).withDynamicImport(() => import("./component")); + ), + }) + .withServerData(() => import("./serverData")) + .withDynamicImport(() => import("./component")); diff --git a/packages/widgets/src/clock/serverData.ts b/packages/widgets/src/clock/serverData.ts new file mode 100644 index 000000000..e73580db1 --- /dev/null +++ b/packages/widgets/src/clock/serverData.ts @@ -0,0 +1,10 @@ +"use server"; + +import { db } from "../../../db"; +import type { WidgetProps } from "../definition"; + +export default async function getServerData(_item: WidgetProps<"clock">) { + const randomUuid = crypto.randomUUID(); + const data = await db.query.items.findMany(); + return { data, count: data.length, randomUuid }; +} diff --git a/packages/widgets/src/definition.ts b/packages/widgets/src/definition.ts index b7e5811e8..ad4554f96 100644 --- a/packages/widgets/src/definition.ts +++ b/packages/widgets/src/definition.ts @@ -10,6 +10,62 @@ import type { } from "./options"; import type { IntegrationSelectOption } from "./widget-integration-select"; +type ServerDataLoader = () => Promise<{ + default: (props: WidgetProps) => Promise>; +}>; + +const createWithDynamicImport = + < + TKind extends WidgetKind, + TDefinition extends WidgetDefinition, + TServerDataLoader extends ServerDataLoader | undefined, + >( + kind: TKind, + definition: TDefinition, + serverDataLoader: TServerDataLoader, + ) => + ( + componentLoader: () => LoaderComponent< + WidgetComponentProps & + (TServerDataLoader extends ServerDataLoader + ? { + serverData: Awaited< + ReturnType>["default"]> + >; + } + : never) + >, + ) => ({ + definition: { + ...definition, + kind, + }, + kind, + serverDataLoader, + componentLoader, + }); + +const createWithServerData = + ( + kind: TKind, + definition: TDefinition, + ) => + >( + serverDataLoader: TServerDataLoader, + ) => ({ + definition: { + ...definition, + kind, + }, + kind, + serverDataLoader, + withDynamicImport: createWithDynamicImport( + kind, + definition, + serverDataLoader, + ), + }); + export const createWidgetDefinition = < TKind extends WidgetKind, TDefinition extends WidgetDefinition, @@ -17,15 +73,8 @@ export const createWidgetDefinition = < kind: TKind, definition: TDefinition, ) => ({ - withDynamicImport: ( - componentLoader: () => LoaderComponent>, - ) => ({ - definition: { - kind, - ...definition, - }, - componentLoader, - }), + withServerData: createWithServerData(kind, definition), + withDynamicImport: createWithDynamicImport(kind, definition, undefined), }); export interface WidgetDefinition { @@ -34,13 +83,29 @@ export interface WidgetDefinition { options: WidgetOptionsRecord; } -export interface WidgetComponentProps { +export interface WidgetProps { options: inferOptionsFromDefinition>; integrations: inferIntegrationsFromDefinition< WidgetImports[TKind]["definition"] >; } +type inferServerDataForKind = + WidgetImports[TKind] extends { serverDataLoader: ServerDataLoader } + ? Awaited< + ReturnType< + Awaited< + ReturnType + >["default"] + > + > + : undefined; + +export type WidgetComponentProps = + WidgetProps & { + serverData?: inferServerDataForKind; + }; + type inferIntegrationsFromDefinition = TDefinition extends { supportedIntegrations: infer TSupportedIntegrations; diff --git a/packages/widgets/src/index.tsx b/packages/widgets/src/index.tsx index e72dcc2aa..0dd573f38 100644 --- a/packages/widgets/src/index.tsx +++ b/packages/widgets/src/index.tsx @@ -13,6 +13,8 @@ import * as weather from "./weather"; export { reduceWidgetOptionsWithDefaultValues } from "./options"; export { WidgetEditModal } from "./modals/widget-edit-modal"; +export { GlobalItemServerDataRunner } from "./server/runner"; +export { useServerDataFor } from "./server/provider"; export const widgetImports = { clock, diff --git a/packages/widgets/src/options.ts b/packages/widgets/src/options.ts index 94ab03db2..31ed0305a 100644 --- a/packages/widgets/src/options.ts +++ b/packages/widgets/src/options.ts @@ -141,7 +141,7 @@ const createOptions = ( }; }; -export const opt = { +export const optionsBuilder = { from: createOptions, }; diff --git a/packages/widgets/src/server/client.tsx b/packages/widgets/src/server/client.tsx new file mode 100644 index 000000000..ceb43c313 --- /dev/null +++ b/packages/widgets/src/server/client.tsx @@ -0,0 +1,13 @@ +"use client"; + +import { useServerDataInitializer } from "./provider"; + +interface Props { + id: string; + serverData: Record | undefined; +} + +export const ClientServerDataInitalizer = ({ id, serverData }: Props) => { + useServerDataInitializer(id, serverData); + return null; +}; diff --git a/packages/widgets/src/server/provider.tsx b/packages/widgets/src/server/provider.tsx new file mode 100644 index 000000000..4516559e9 --- /dev/null +++ b/packages/widgets/src/server/provider.tsx @@ -0,0 +1,89 @@ +"use client"; + +import type { PropsWithChildren } from "react"; +import { createContext, useContext, useEffect, useState } from "react"; + +type Data = Record< + string, + { + data: Record | undefined; + isReady: boolean; + } +>; + +interface GlobalItemServerDataContext { + setItemServerData: ( + id: string, + data: Record | undefined, + ) => void; + data: Data; + initalItemIds: string[]; +} + +const GlobalItemServerDataContext = + createContext(null); + +interface Props { + initalItemIds: string[]; +} + +export const GlobalItemServerDataProvider = ({ + children, + initalItemIds, +}: PropsWithChildren) => { + const [data, setData] = useState({}); + + const setItemServerData = ( + id: string, + itemData: Record | undefined, + ) => { + setData((prev) => ({ + ...prev, + [id]: { + data: itemData, + isReady: true, + }, + })); + }; + + return ( + + {children} + + ); +}; + +export const useServerDataFor = (id: string) => { + const context = useContext(GlobalItemServerDataContext); + + if (!context) { + throw new Error("GlobalItemServerDataProvider is required"); + } + + // When the item is not in the initial list, it means the data can not come from the server + if (!context.initalItemIds.includes(id)) { + return { + data: undefined, + isReady: true, + }; + } + + return context.data[id]; +}; + +export const useServerDataInitializer = ( + id: string, + serverData: Record | undefined, +) => { + const context = useContext(GlobalItemServerDataContext); + + if (!context) { + throw new Error("GlobalItemServerDataProvider is required"); + } + + useEffect(() => { + context.setItemServerData(id, serverData); + }, []); +}; diff --git a/packages/widgets/src/server/runner.tsx b/packages/widgets/src/server/runner.tsx new file mode 100644 index 000000000..090c8b934 --- /dev/null +++ b/packages/widgets/src/server/runner.tsx @@ -0,0 +1,43 @@ +import type { PropsWithChildren } from "react"; +import { Suspense } from "react"; + +import type { RouterOutputs } from "@homarr/api"; + +import { widgetImports } from ".."; +import { ClientServerDataInitalizer } from "./client"; +import { GlobalItemServerDataProvider } from "./provider"; + +type Board = RouterOutputs["board"]["default"]; + +type Props = PropsWithChildren<{ + board: Board; +}>; + +export const GlobalItemServerDataRunner = ({ board, children }: Props) => { + const allItems = board.sections.flatMap((section) => section.items); + + return ( + id)}> + {allItems.map((item) => ( + + + + ))} + {children} + + ); +}; + +interface ItemDataLoaderProps { + item: Board["sections"][number]["items"][number]; +} + +const ItemDataLoader = async ({ item }: ItemDataLoaderProps) => { + const widgetImport = widgetImports[item.kind]; + if (!("serverDataLoader" in widgetImport)) { + return ; + } + const loader = await widgetImport.serverDataLoader(); + const data = await loader.default(item as never); + return ; +}; diff --git a/packages/widgets/src/weather/index.ts b/packages/widgets/src/weather/index.ts index 39fbfcdb7..dacb27ace 100644 --- a/packages/widgets/src/weather/index.ts +++ b/packages/widgets/src/weather/index.ts @@ -1,15 +1,15 @@ import { IconCloud } from "@homarr/ui"; import { createWidgetDefinition } from "../definition"; -import { opt } from "../options"; +import { optionsBuilder } from "../options"; export const { definition, componentLoader } = createWidgetDefinition( "weather", { icon: IconCloud, - options: opt.from((fac) => ({ - location: fac.location(), - showCity: fac.switch(), + options: optionsBuilder.from((factory) => ({ + location: factory.location(), + showCity: factory.switch(), })), }, ).withDynamicImport(() => import("./component")); From 15f08011a6c2e7fd7274bc28b9d559269cb03f7e Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 19:58:56 +0100 Subject: [PATCH 63/87] fix(deps): update dependency prettier to ^3.2.5 (#53) * fix(deps): update dependency prettier to ^3.2.5 * fix: formatting * fix: formatting * fix: formatting --------- Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- .github/ISSUE_TEMPLATE/feature_request.yml | 1 - .github/renovate.json | 14 +- .github/workflows/automatic-release.yml | 4 +- .github/workflows/docker-image.yml | 8 +- apps/nextjs/package.json | 2 +- apps/nextjs/tsconfig.json | 10 +- package.json | 4 +- packages/api/package.json | 2 +- packages/api/tsconfig.json | 4 +- packages/auth/package.json | 2 +- packages/auth/tsconfig.json | 4 +- packages/common/tsconfig.json | 4 +- packages/db/package.json | 2 +- packages/db/tsconfig.json | 4 +- packages/definitions/tsconfig.json | 4 +- packages/form/tsconfig.json | 4 +- packages/notifications/tsconfig.json | 4 +- packages/spotlight/tsconfig.json | 4 +- packages/translation/tsconfig.json | 4 +- packages/ui/tsconfig.json | 4 +- packages/validation/tsconfig.json | 4 +- packages/widgets/tsconfig.json | 4 +- pnpm-lock.yaml | 7315 ++++++++++++------ tooling/eslint/tsconfig.json | 4 +- tooling/github/package.json | 2 +- tooling/prettier/package.json | 2 +- tooling/prettier/tsconfig.json | 4 +- tooling/semver/package.json | 2 +- tooling/semver/release.config.cjs | 27 +- tooling/typescript/base.json | 15 +- tooling/typescript/package.json | 2 +- turbo.json | 34 +- turbo/generators/templates/package.json.hbs | 44 +- turbo/generators/templates/tsconfig.json.hbs | 11 +- 34 files changed, 5190 insertions(+), 2369 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index ae1ccf2da..c2be403e0 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -26,4 +26,3 @@ body: attributes: label: Additional information description: Add any other information related to the feature here. If your feature request is related to any issues or discussions, link them here. - diff --git a/.github/renovate.json b/.github/renovate.json index 65e1d848e..1f5acc772 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -1,21 +1,15 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "extends": [ - "config:recommended" - ], + "extends": ["config:recommended"], "packageRules": [ { - "matchPackagePatterns": [ - "^@homarr/" - ], + "matchPackagePatterns": ["^@homarr/"], "enabled": false } ], "updateInternalDeps": true, "rangeStrategy": "bump", "automerge": false, - "baseBranches": [ - "dev" - ], + "baseBranches": ["dev"], "dependencyDashboard": false -} \ No newline at end of file +} diff --git a/.github/workflows/automatic-release.yml b/.github/workflows/automatic-release.yml index ca5cac543..9bf7dafe5 100644 --- a/.github/workflows/automatic-release.yml +++ b/.github/workflows/automatic-release.yml @@ -17,7 +17,7 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: 'Preparing the automatic release...' + args: "Preparing the automatic release..." - uses: actions/checkout@v4 - uses: peter-evans/create-pull-request@v6 id: create-pull-request @@ -38,4 +38,4 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: 'Deployment pull request has been created at [${{ steps.create-pull-request.outputs.pull-request-number }}](${{ steps.create-pull-request.outputs.pull-request-url }})' \ No newline at end of file + args: "Deployment pull request has been created at [${{ steps.create-pull-request.outputs.pull-request-number }}](${{ steps.create-pull-request.outputs.pull-request-url }})" diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index e8f22eb01..91bc51733 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -30,7 +30,7 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: 'Deployment of an image has been triggered' + args: "Deployment of an image has been triggered" - uses: actions/checkout@v4 - uses: pnpm/action-setup@v2 with: @@ -39,7 +39,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - cache: 'pnpm' + cache: "pnpm" - name: Install dependencies run: pnpm install - name: Build artifacts @@ -60,7 +60,7 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: 'Image has been tagged as ${{ steps.githubTagAction.outputs.new_tag }}' + args: "Image has been tagged as ${{ steps.githubTagAction.outputs.new_tag }}" - name: Docker meta id: meta uses: docker/metadata-action@v5 @@ -86,4 +86,4 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: 'Image built with ID ${{ steps.buildPushAction.outputs.imageid }}' + args: "Image built with ID ${{ steps.buildPushAction.outputs.imageid }}" diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 123638728..448488d2c 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -59,7 +59,7 @@ "@types/react-dom": "^18.2.19", "dotenv-cli": "^7.3.0", "eslint": "^8.56.0", - "prettier": "^3.2.4", + "prettier": "^3.2.5", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/apps/nextjs/tsconfig.json b/apps/nextjs/tsconfig.json index 6174641a4..f95b3ebf2 100644 --- a/apps/nextjs/tsconfig.json +++ b/apps/nextjs/tsconfig.json @@ -3,15 +3,15 @@ "compilerOptions": { "baseUrl": ".", "paths": { - "~/*": ["./src/*"], + "~/*": ["./src/*"] }, "plugins": [ { - "name": "next", - }, + "name": "next" + } ], - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": [".", ".next/types/**/*.ts"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/package.json b/package.json index 62fe2760b..33368690a 100644 --- a/package.json +++ b/package.json @@ -29,11 +29,11 @@ "@vitest/coverage-v8": "^1.2.2", "@vitest/ui": "^1.2.2", "cross-env": "^7.0.3", - "prettier": "^3.2.4", + "prettier": "^3.2.5", "turbo": "^1.12.3", "typescript": "^5.3.3", "vite-tsconfig-paths": "^4.3.1", "vitest": "^1.2.2" }, "prettier": "@homarr/prettier-config" -} \ No newline at end of file +} diff --git a/packages/api/package.json b/packages/api/package.json index c6d1da30b..1b84f6487 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,7 +29,7 @@ "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", "eslint": "^8.56.0", - "prettier": "^3.2.4", + "prettier": "^3.2.5", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/api/tsconfig.json b/packages/api/tsconfig.json index ae1fa0e17..35b272c7e 100644 --- a/packages/api/tsconfig.json +++ b/packages/api/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["."], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/auth/package.json b/packages/auth/package.json index 358fa919d..9f523d557 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -31,7 +31,7 @@ "@types/bcrypt": "5.0.2", "@types/cookies": "0.9.0", "eslint": "^8.56.0", - "prettier": "^3.2.4", + "prettier": "^3.2.5", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/auth/tsconfig.json b/packages/auth/tsconfig.json index ae1fa0e17..35b272c7e 100644 --- a/packages/auth/tsconfig.json +++ b/packages/auth/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["."], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/common/tsconfig.json b/packages/common/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/common/tsconfig.json +++ b/packages/common/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/db/package.json b/packages/db/package.json index 8f3565ff4..2529991c8 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -33,7 +33,7 @@ "dotenv-cli": "^7.3.0", "drizzle-kit": "^0.20.14", "eslint": "^8.56.0", - "prettier": "^3.2.4", + "prettier": "^3.2.5", "typescript": "^5.3.3" }, "eslintConfig": { diff --git a/packages/db/tsconfig.json b/packages/db/tsconfig.json index ae1fa0e17..35b272c7e 100644 --- a/packages/db/tsconfig.json +++ b/packages/db/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["."], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/definitions/tsconfig.json b/packages/definitions/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/definitions/tsconfig.json +++ b/packages/definitions/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/form/tsconfig.json b/packages/form/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/form/tsconfig.json +++ b/packages/form/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/notifications/tsconfig.json b/packages/notifications/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/notifications/tsconfig.json +++ b/packages/notifications/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/spotlight/tsconfig.json b/packages/spotlight/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/spotlight/tsconfig.json +++ b/packages/spotlight/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/translation/tsconfig.json b/packages/translation/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/translation/tsconfig.json +++ b/packages/translation/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/validation/tsconfig.json b/packages/validation/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/validation/tsconfig.json +++ b/packages/validation/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/packages/widgets/tsconfig.json b/packages/widgets/tsconfig.json index 1ba296b3b..cbe8483d9 100644 --- a/packages/widgets/tsconfig.json +++ b/packages/widgets/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", "src"], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 80b7225cc..3d617473d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,34 +1,33 @@ -lockfileVersion: '6.0' +lockfileVersion: "6.0" settings: autoInstallPeers: true excludeLinksFromLockfile: false importers: - .: devDependencies: - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:tooling/prettier - '@turbo/gen': + "@turbo/gen": specifier: ^1.12.3 version: 1.12.3(@types/node@20.11.16)(typescript@5.3.3) - '@vitejs/plugin-react': + "@vitejs/plugin-react": specifier: ^4.2.1 version: 4.2.1(vite@5.0.12) - '@vitest/coverage-v8': + "@vitest/coverage-v8": specifier: ^1.2.2 version: 1.2.2(vitest@1.2.2) - '@vitest/ui': + "@vitest/ui": specifier: ^1.2.2 version: 1.2.2(vitest@1.2.2) cross-env: specifier: ^7.0.3 version: 7.0.3 prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 turbo: specifier: ^1.12.3 version: 1.12.3 @@ -44,85 +43,85 @@ importers: apps/nextjs: dependencies: - '@homarr/api': + "@homarr/api": specifier: workspace:^0.1.0 version: link:../../packages/api - '@homarr/auth': + "@homarr/auth": specifier: workspace:^0.1.0 version: link:../../packages/auth - '@homarr/common': + "@homarr/common": specifier: workspace:^0.1.0 version: link:../../packages/common - '@homarr/db': + "@homarr/db": specifier: workspace:^0.1.0 version: link:../../packages/db - '@homarr/definitions': + "@homarr/definitions": specifier: workspace:^0.1.0 version: link:../../packages/definitions - '@homarr/form': + "@homarr/form": specifier: workspace:^0.1.0 version: link:../../packages/form - '@homarr/gridstack': + "@homarr/gridstack": specifier: ^1.0.0 version: 1.0.0 - '@homarr/notifications': + "@homarr/notifications": specifier: workspace:^0.1.0 version: link:../../packages/notifications - '@homarr/spotlight': + "@homarr/spotlight": specifier: workspace:^0.1.0 version: link:../../packages/spotlight - '@homarr/translation': + "@homarr/translation": specifier: workspace:^0.1.0 version: link:../../packages/translation - '@homarr/ui': + "@homarr/ui": specifier: workspace:^0.1.0 version: link:../../packages/ui - '@homarr/validation': + "@homarr/validation": specifier: workspace:^0.1.0 version: link:../../packages/validation - '@homarr/widgets': + "@homarr/widgets": specifier: workspace:^0.1.0 version: link:../../packages/widgets - '@mantine/hooks': + "@mantine/hooks": specifier: ^7.5.1 version: 7.5.1(react@18.2.0) - '@mantine/modals': + "@mantine/modals": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) - '@mantine/tiptap': + "@mantine/tiptap": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) - '@t3-oss/env-nextjs': + "@t3-oss/env-nextjs": specifier: ^0.8.0 version: 0.8.0(typescript@5.3.3)(zod@3.22.4) - '@tanstack/react-query': + "@tanstack/react-query": specifier: ^5.18.1 version: 5.18.1(react@18.2.0) - '@tanstack/react-query-devtools': + "@tanstack/react-query-devtools": specifier: ^5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0) - '@tanstack/react-query-next-experimental': + "@tanstack/react-query-next-experimental": specifier: 5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) - '@tiptap/extension-link': + "@tiptap/extension-link": specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/react': + "@tiptap/react": specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) - '@tiptap/starter-kit': + "@tiptap/starter-kit": specifier: ^2.2.2 version: 2.2.2(@tiptap/pm@2.2.2) - '@trpc/client': + "@trpc/client": specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/next': + "@trpc/next": specifier: next version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) - '@trpc/react-query': + "@trpc/react-query": specifier: next version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) - '@trpc/server': + "@trpc/server": specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 dayjs: @@ -153,22 +152,22 @@ importers: specifier: 2.2.1 version: 2.2.1 devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript - '@types/node': + "@types/node": specifier: ^20.11.16 version: 20.11.16 - '@types/react': + "@types/react": specifier: ^18.2.55 version: 18.2.55 - '@types/react-dom': + "@types/react-dom": specifier: ^18.2.19 version: 18.2.19 dotenv-cli: @@ -178,67 +177,67 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 typescript: specifier: ^5.3.3 version: 5.3.3 packages/api: dependencies: - '@homarr/auth': + "@homarr/auth": specifier: workspace:^0.1.0 version: link:../auth - '@homarr/db': + "@homarr/db": specifier: workspace:^0.1.0 version: link:../db - '@homarr/definitions': + "@homarr/definitions": specifier: workspace:^0.1.0 version: link:../definitions - '@homarr/validation': + "@homarr/validation": specifier: workspace:^0.1.0 version: link:../validation - '@trpc/client': + "@trpc/client": specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/server': + "@trpc/server": specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 superjson: specifier: 2.2.1 version: 2.2.1 devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 typescript: specifier: ^5.3.3 version: 5.3.3 packages/auth: dependencies: - '@auth/core': + "@auth/core": specifier: ^0.26.3 version: 0.26.3 - '@auth/drizzle-adapter': + "@auth/drizzle-adapter": specifier: ^0.6.3 version: 0.6.3 - '@homarr/db': + "@homarr/db": specifier: workspace:^0.1.0 version: link:../db - '@t3-oss/env-nextjs': + "@t3-oss/env-nextjs": specifier: ^0.8.0 version: 0.8.0(typescript@5.3.3)(zod@3.22.4) bcrypt: @@ -260,43 +259,43 @@ importers: specifier: 18.2.0 version: 18.2.0(react@18.2.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript - '@homarr/validation': + "@homarr/validation": specifier: workspace:^0.1.0 version: link:../validation - '@types/bcrypt': + "@types/bcrypt": specifier: 5.0.2 version: 5.0.2 - '@types/cookies': + "@types/cookies": specifier: 0.9.0 version: 0.9.0 eslint: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 typescript: specifier: ^5.3.3 version: 5.3.3 packages/common: devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -308,13 +307,13 @@ importers: packages/db: dependencies: - '@homarr/common': + "@homarr/common": specifier: workspace:^0.1.0 version: link:../common - '@homarr/definitions': + "@homarr/definitions": specifier: workspace:^0.1.0 version: link:../definitions - '@paralleldrive/cuid2': + "@paralleldrive/cuid2": specifier: ^2.2.2 version: 2.2.2 better-sqlite3: @@ -324,16 +323,16 @@ importers: specifier: ^0.29.3 version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript - '@types/better-sqlite3': + "@types/better-sqlite3": specifier: 7.6.9 version: 7.6.9 dotenv-cli: @@ -346,25 +345,25 @@ importers: specifier: ^8.56.0 version: 8.56.0 prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 typescript: specifier: ^5.3.3 version: 5.3.3 packages/definitions: dependencies: - '@homarr/common': + "@homarr/common": specifier: workspace:^0.1.0 version: link:../common devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -376,17 +375,17 @@ importers: packages/form: dependencies: - '@mantine/form': + "@mantine/form": specifier: ^7.5.1 version: 7.5.1(react@18.2.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -398,20 +397,20 @@ importers: packages/notifications: dependencies: - '@homarr/ui': + "@homarr/ui": specifier: workspace:^0.1.0 version: link:../ui - '@mantine/notifications': + "@mantine/notifications": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -423,17 +422,17 @@ importers: packages/spotlight: dependencies: - '@mantine/spotlight': + "@mantine/spotlight": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -449,13 +448,13 @@ importers: specifier: ^1.2.3 version: 1.2.3 devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -467,26 +466,26 @@ importers: packages/ui: dependencies: - '@mantine/core': + "@mantine/core": specifier: ^7.5.1 version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/dates': + "@mantine/dates": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) - '@tabler/icons-react': + "@tabler/icons-react": specifier: ^2.47.0 version: 2.47.0(react@18.2.0) devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript - '@types/css-modules': + "@types/css-modules": specifier: ^1.0.5 version: 1.0.5 eslint: @@ -498,20 +497,20 @@ importers: packages/validation: dependencies: - '@homarr/definitions': + "@homarr/definitions": specifier: workspace:^0.1.0 version: link:../definitions zod: specifier: ^3.22.4 version: 3.22.4 devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -523,38 +522,38 @@ importers: packages/widgets: dependencies: - '@homarr/api': + "@homarr/api": specifier: workspace:^0.1.0 version: link:../api - '@homarr/common': + "@homarr/common": specifier: workspace:^0.1.0 version: link:../common - '@homarr/definitions': + "@homarr/definitions": specifier: workspace:^0.1.0 version: link:../definitions - '@homarr/form': + "@homarr/form": specifier: workspace:^0.1.0 version: link:../form - '@homarr/notifications': + "@homarr/notifications": specifier: workspace:^0.1.0 version: link:../notifications - '@homarr/translation': + "@homarr/translation": specifier: workspace:^0.1.0 version: link:../translation - '@homarr/ui': + "@homarr/ui": specifier: workspace:^0.1.0 version: link:../ui - '@homarr/validation': + "@homarr/validation": specifier: workspace:^0.1.0 version: link:../validation devDependencies: - '@homarr/eslint-config': + "@homarr/eslint-config": specifier: workspace:^0.2.0 version: link:../../tooling/eslint - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../../tooling/prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -566,13 +565,13 @@ importers: tooling/eslint: dependencies: - '@next/eslint-plugin-next': + "@next/eslint-plugin-next": specifier: ^14.1.0 version: 14.1.0 - '@typescript-eslint/eslint-plugin': + "@typescript-eslint/eslint-plugin": specifier: ^6.21.0 version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/parser': + "@typescript-eslint/parser": specifier: ^6.21.0 version: 6.21.0(eslint@8.56.0)(typescript@5.3.3) eslint-config-prettier: @@ -594,13 +593,13 @@ importers: specifier: ^4.6.0 version: 4.6.0(eslint@8.56.0) devDependencies: - '@homarr/prettier-config': + "@homarr/prettier-config": specifier: workspace:^0.1.0 version: link:../prettier - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../typescript - '@types/eslint': + "@types/eslint": specifier: ^8.56.2 version: 8.56.2 eslint: @@ -614,14 +613,14 @@ importers: tooling/prettier: dependencies: - '@ianvs/prettier-plugin-sort-imports': + "@ianvs/prettier-plugin-sort-imports": specifier: ^4.1.1 - version: 4.1.1(prettier@3.2.4) + version: 4.1.1(prettier@3.2.5) prettier: - specifier: ^3.2.4 - version: 3.2.4 + specifier: ^3.2.5 + version: 3.2.5 devDependencies: - '@homarr/tsconfig': + "@homarr/tsconfig": specifier: workspace:^0.1.0 version: link:../typescript typescript: @@ -633,34 +632,42 @@ importers: tooling/typescript: {} packages: - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==, + } + engines: { node: ">=0.10.0" } /@ampproject/remapping@2.2.1: - resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==, + } + engines: { node: ">=6.0.0" } dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + "@jridgewell/gen-mapping": 0.3.3 + "@jridgewell/trace-mapping": 0.3.18 /@auth/core@0.26.3: - resolution: {integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==} + resolution: + { + integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==, + } peerDependencies: - '@simplewebauthn/browser': ^9.0.1 - '@simplewebauthn/server': ^9.0.1 + "@simplewebauthn/browser": ^9.0.1 + "@simplewebauthn/server": ^9.0.1 nodemailer: ^6.8.0 peerDependenciesMeta: - '@simplewebauthn/browser': + "@simplewebauthn/browser": optional: true - '@simplewebauthn/server': + "@simplewebauthn/server": optional: true nodemailer: optional: true dependencies: - '@panva/hkdf': 1.1.1 - '@types/cookie': 0.6.0 + "@panva/hkdf": 1.1.1 + "@types/cookie": 0.6.0 cookie: 0.6.0 jose: 5.2.1 oauth4webapi: 2.10.3 @@ -669,52 +676,70 @@ packages: dev: false /@auth/drizzle-adapter@0.6.3: - resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} + resolution: + { + integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==, + } dependencies: - '@auth/core': 0.26.3 + "@auth/core": 0.26.3 transitivePeerDependencies: - - '@simplewebauthn/browser' - - '@simplewebauthn/server' + - "@simplewebauthn/browser" + - "@simplewebauthn/server" - nodemailer dev: false /@babel/code-frame@7.22.13: - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/highlight': 7.22.13 + "@babel/highlight": 7.22.13 chalk: 2.4.2 /@babel/code-frame@7.23.5: - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/highlight': 7.23.4 + "@babel/highlight": 7.23.4 chalk: 2.4.2 /@babel/compat-data@7.23.2: - resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==, + } + engines: { node: ">=6.9.0" } dev: false /@babel/compat-data@7.23.5: - resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==, + } + engines: { node: ">=6.9.0" } /@babel/core@7.23.2: - resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==, + } + engines: { node: ">=6.9.0" } dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.0 - '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) - '@babel/helpers': 7.23.2 - '@babel/parser': 7.23.0 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 + "@ampproject/remapping": 2.2.1 + "@babel/code-frame": 7.22.13 + "@babel/generator": 7.23.0 + "@babel/helper-compilation-targets": 7.22.15 + "@babel/helper-module-transforms": 7.23.0(@babel/core@7.23.2) + "@babel/helpers": 7.23.2 + "@babel/parser": 7.23.0 + "@babel/template": 7.22.15 + "@babel/traverse": 7.23.2 + "@babel/types": 7.23.0 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -725,19 +750,22 @@ packages: dev: false /@babel/core@7.23.9: - resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) - '@babel/helpers': 7.23.9 - '@babel/parser': 7.23.9 - '@babel/template': 7.23.9 - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + "@ampproject/remapping": 2.2.1 + "@babel/code-frame": 7.23.5 + "@babel/generator": 7.23.6 + "@babel/helper-compilation-targets": 7.23.6 + "@babel/helper-module-transforms": 7.23.3(@babel/core@7.23.9) + "@babel/helpers": 7.23.9 + "@babel/parser": 7.23.9 + "@babel/template": 7.23.9 + "@babel/traverse": 7.23.9 + "@babel/types": 7.23.9 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -747,246 +775,339 @@ packages: - supports-color /@babel/generator@7.23.0: - resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.0 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + "@babel/types": 7.23.0 + "@jridgewell/gen-mapping": 0.3.3 + "@jridgewell/trace-mapping": 0.3.18 jsesc: 2.5.2 dev: false /@babel/generator@7.23.6: - resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.9 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + "@babel/types": 7.23.9 + "@jridgewell/gen-mapping": 0.3.3 + "@jridgewell/trace-mapping": 0.3.18 jsesc: 2.5.2 /@babel/helper-compilation-targets@7.22.15: - resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/compat-data': 7.23.2 - '@babel/helper-validator-option': 7.22.15 + "@babel/compat-data": 7.23.2 + "@babel/helper-validator-option": 7.22.15 browserslist: 4.22.1 lru-cache: 5.1.1 semver: 6.3.1 dev: false /@babel/helper-compilation-targets@7.23.6: - resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/compat-data': 7.23.5 - '@babel/helper-validator-option': 7.23.5 + "@babel/compat-data": 7.23.5 + "@babel/helper-validator-option": 7.23.5 browserslist: 4.22.3 lru-cache: 5.1.1 semver: 6.3.1 /@babel/helper-environment-visitor@7.22.20: - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==, + } + engines: { node: ">=6.9.0" } /@babel/helper-function-name@7.23.0: - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.0 + "@babel/template": 7.22.15 + "@babel/types": 7.23.0 /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.0 + "@babel/types": 7.23.0 /@babel/helper-module-imports@7.22.15: - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.0 + "@babel/types": 7.23.0 /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): - resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==, + } + engines: { node: ">=6.9.0" } peerDependencies: - '@babel/core': ^7.0.0 + "@babel/core": ^7.0.0 dependencies: - '@babel/core': 7.23.2 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 + "@babel/core": 7.23.2 + "@babel/helper-environment-visitor": 7.22.20 + "@babel/helper-module-imports": 7.22.15 + "@babel/helper-simple-access": 7.22.5 + "@babel/helper-split-export-declaration": 7.22.6 + "@babel/helper-validator-identifier": 7.22.20 dev: false /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9): - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==, + } + engines: { node: ">=6.9.0" } peerDependencies: - '@babel/core': ^7.0.0 + "@babel/core": ^7.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 + "@babel/core": 7.23.9 + "@babel/helper-environment-visitor": 7.22.20 + "@babel/helper-module-imports": 7.22.15 + "@babel/helper-simple-access": 7.22.5 + "@babel/helper-split-export-declaration": 7.22.6 + "@babel/helper-validator-identifier": 7.22.20 /@babel/helper-plugin-utils@7.22.5: - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==, + } + engines: { node: ">=6.9.0" } dev: true /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.0 + "@babel/types": 7.23.0 /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/types': 7.23.0 + "@babel/types": 7.23.0 /@babel/helper-string-parser@7.22.5: - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==, + } + engines: { node: ">=6.9.0" } /@babel/helper-string-parser@7.23.4: - resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==, + } + engines: { node: ">=6.9.0" } /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==, + } + engines: { node: ">=6.9.0" } /@babel/helper-validator-option@7.22.15: - resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==, + } + engines: { node: ">=6.9.0" } dev: false /@babel/helper-validator-option@7.23.5: - resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==, + } + engines: { node: ">=6.9.0" } /@babel/helpers@7.23.2: - resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 + "@babel/template": 7.22.15 + "@babel/traverse": 7.23.2 + "@babel/types": 7.23.0 transitivePeerDependencies: - supports-color dev: false /@babel/helpers@7.23.9: - resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/template': 7.23.9 - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + "@babel/template": 7.23.9 + "@babel/traverse": 7.23.9 + "@babel/types": 7.23.9 transitivePeerDependencies: - supports-color /@babel/highlight@7.22.13: - resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/helper-validator-identifier': 7.22.20 + "@babel/helper-validator-identifier": 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 /@babel/highlight@7.23.4: - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/helper-validator-identifier': 7.22.20 + "@babel/helper-validator-identifier": 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 /@babel/parser@7.23.0: - resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==, + } + engines: { node: ">=6.0.0" } dependencies: - '@babel/types': 7.23.0 + "@babel/types": 7.23.0 /@babel/parser@7.23.9: - resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==, + } + engines: { node: ">=6.0.0" } hasBin: true dependencies: - '@babel/types': 7.23.9 + "@babel/types": 7.23.9 /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.9): - resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==, + } + engines: { node: ">=6.9.0" } peerDependencies: - '@babel/core': ^7.0.0-0 + "@babel/core": ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + "@babel/core": 7.23.9 + "@babel/helper-plugin-utils": 7.22.5 dev: true /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.9): - resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==, + } + engines: { node: ">=6.9.0" } peerDependencies: - '@babel/core': ^7.0.0-0 + "@babel/core": ^7.0.0-0 dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + "@babel/core": 7.23.9 + "@babel/helper-plugin-utils": 7.22.5 dev: true /@babel/runtime-corejs3@7.22.10: - resolution: {integrity: sha512-IcixfV2Jl3UrqZX4c81+7lVg5++2ufYJyAFW3Aux/ZTvY6LVYYhJ9rMgnbX0zGVq6eqfVpnoatTjZdVki/GmWA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-IcixfV2Jl3UrqZX4c81+7lVg5++2ufYJyAFW3Aux/ZTvY6LVYYhJ9rMgnbX0zGVq6eqfVpnoatTjZdVki/GmWA==, + } + engines: { node: ">=6.9.0" } dependencies: core-js-pure: 3.32.1 regenerator-runtime: 0.14.0 dev: true /@babel/runtime@7.23.2: - resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==, + } + engines: { node: ">=6.9.0" } dependencies: regenerator-runtime: 0.14.0 dev: false /@babel/template@7.22.15: - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/code-frame': 7.22.13 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 + "@babel/code-frame": 7.22.13 + "@babel/parser": 7.23.0 + "@babel/types": 7.23.0 /@babel/template@7.23.9: - resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/code-frame': 7.23.5 - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 + "@babel/code-frame": 7.23.5 + "@babel/parser": 7.23.9 + "@babel/types": 7.23.9 /@babel/traverse@7.23.2: - resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/code-frame': 7.22.13 - '@babel/generator': 7.23.0 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.0 - '@babel/types': 7.23.0 + "@babel/code-frame": 7.22.13 + "@babel/generator": 7.23.0 + "@babel/helper-environment-visitor": 7.22.20 + "@babel/helper-function-name": 7.23.0 + "@babel/helper-hoist-variables": 7.22.5 + "@babel/helper-split-export-declaration": 7.22.6 + "@babel/parser": 7.23.0 + "@babel/types": 7.23.0 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: @@ -994,72 +1115,99 @@ packages: dev: false /@babel/traverse@7.23.9: - resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 + "@babel/code-frame": 7.23.5 + "@babel/generator": 7.23.6 + "@babel/helper-environment-visitor": 7.22.20 + "@babel/helper-function-name": 7.23.0 + "@babel/helper-hoist-variables": 7.22.5 + "@babel/helper-split-export-declaration": 7.22.6 + "@babel/parser": 7.23.9 + "@babel/types": 7.23.9 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color /@babel/types@7.23.0: - resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.20 + "@babel/helper-string-parser": 7.22.5 + "@babel/helper-validator-identifier": 7.22.20 to-fast-properties: 2.0.0 /@babel/types@7.23.9: - resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==, + } + engines: { node: ">=6.9.0" } dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 + "@babel/helper-string-parser": 7.23.4 + "@babel/helper-validator-identifier": 7.22.20 to-fast-properties: 2.0.0 /@bcoe/v8-coverage@0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + resolution: + { + integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, + } dev: true /@cspotcode/source-map-support@0.8.1: - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==, + } + engines: { node: ">=12" } dependencies: - '@jridgewell/trace-mapping': 0.3.9 + "@jridgewell/trace-mapping": 0.3.9 dev: true /@drizzle-team/studio@0.0.39: - resolution: {integrity: sha512-c5Hkm7MmQC2n5qAsKShjQrHoqlfGslB8+qWzsGGZ+2dHMRTNG60UuzalF0h0rvBax5uzPXuGkYLGaQ+TUX3yMw==} + resolution: + { + integrity: sha512-c5Hkm7MmQC2n5qAsKShjQrHoqlfGslB8+qWzsGGZ+2dHMRTNG60UuzalF0h0rvBax5uzPXuGkYLGaQ+TUX3yMw==, + } dependencies: superjson: 2.2.1 dev: true /@esbuild-kit/core-utils@3.1.0: - resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==} + resolution: + { + integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==, + } dependencies: esbuild: 0.17.19 source-map-support: 0.5.21 dev: true /@esbuild-kit/esm-loader@2.5.5: - resolution: {integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==} + resolution: + { + integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==, + } dependencies: - '@esbuild-kit/core-utils': 3.1.0 + "@esbuild-kit/core-utils": 3.1.0 get-tsconfig: 4.6.2 dev: true /@esbuild/android-arm64@0.17.19: - resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==, + } + engines: { node: ">=12" } cpu: [arm64] os: [android] requiresBuild: true @@ -1067,8 +1215,11 @@ packages: optional: true /@esbuild/android-arm64@0.19.8: - resolution: {integrity: sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==, + } + engines: { node: ">=12" } cpu: [arm64] os: [android] requiresBuild: true @@ -1076,8 +1227,11 @@ packages: optional: true /@esbuild/android-arm@0.17.19: - resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==, + } + engines: { node: ">=12" } cpu: [arm] os: [android] requiresBuild: true @@ -1085,8 +1239,11 @@ packages: optional: true /@esbuild/android-arm@0.19.8: - resolution: {integrity: sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==, + } + engines: { node: ">=12" } cpu: [arm] os: [android] requiresBuild: true @@ -1094,8 +1251,11 @@ packages: optional: true /@esbuild/android-x64@0.17.19: - resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==, + } + engines: { node: ">=12" } cpu: [x64] os: [android] requiresBuild: true @@ -1103,8 +1263,11 @@ packages: optional: true /@esbuild/android-x64@0.19.8: - resolution: {integrity: sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==, + } + engines: { node: ">=12" } cpu: [x64] os: [android] requiresBuild: true @@ -1112,8 +1275,11 @@ packages: optional: true /@esbuild/darwin-arm64@0.17.19: - resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==, + } + engines: { node: ">=12" } cpu: [arm64] os: [darwin] requiresBuild: true @@ -1121,8 +1287,11 @@ packages: optional: true /@esbuild/darwin-arm64@0.19.8: - resolution: {integrity: sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==, + } + engines: { node: ">=12" } cpu: [arm64] os: [darwin] requiresBuild: true @@ -1130,8 +1299,11 @@ packages: optional: true /@esbuild/darwin-x64@0.17.19: - resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==, + } + engines: { node: ">=12" } cpu: [x64] os: [darwin] requiresBuild: true @@ -1139,8 +1311,11 @@ packages: optional: true /@esbuild/darwin-x64@0.19.8: - resolution: {integrity: sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==, + } + engines: { node: ">=12" } cpu: [x64] os: [darwin] requiresBuild: true @@ -1148,8 +1323,11 @@ packages: optional: true /@esbuild/freebsd-arm64@0.17.19: - resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==, + } + engines: { node: ">=12" } cpu: [arm64] os: [freebsd] requiresBuild: true @@ -1157,8 +1335,11 @@ packages: optional: true /@esbuild/freebsd-arm64@0.19.8: - resolution: {integrity: sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==, + } + engines: { node: ">=12" } cpu: [arm64] os: [freebsd] requiresBuild: true @@ -1166,8 +1347,11 @@ packages: optional: true /@esbuild/freebsd-x64@0.17.19: - resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==, + } + engines: { node: ">=12" } cpu: [x64] os: [freebsd] requiresBuild: true @@ -1175,8 +1359,11 @@ packages: optional: true /@esbuild/freebsd-x64@0.19.8: - resolution: {integrity: sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==, + } + engines: { node: ">=12" } cpu: [x64] os: [freebsd] requiresBuild: true @@ -1184,8 +1371,11 @@ packages: optional: true /@esbuild/linux-arm64@0.17.19: - resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==, + } + engines: { node: ">=12" } cpu: [arm64] os: [linux] requiresBuild: true @@ -1193,8 +1383,11 @@ packages: optional: true /@esbuild/linux-arm64@0.19.8: - resolution: {integrity: sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==, + } + engines: { node: ">=12" } cpu: [arm64] os: [linux] requiresBuild: true @@ -1202,8 +1395,11 @@ packages: optional: true /@esbuild/linux-arm@0.17.19: - resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==, + } + engines: { node: ">=12" } cpu: [arm] os: [linux] requiresBuild: true @@ -1211,8 +1407,11 @@ packages: optional: true /@esbuild/linux-arm@0.19.8: - resolution: {integrity: sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==, + } + engines: { node: ">=12" } cpu: [arm] os: [linux] requiresBuild: true @@ -1220,8 +1419,11 @@ packages: optional: true /@esbuild/linux-ia32@0.17.19: - resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==, + } + engines: { node: ">=12" } cpu: [ia32] os: [linux] requiresBuild: true @@ -1229,8 +1431,11 @@ packages: optional: true /@esbuild/linux-ia32@0.19.8: - resolution: {integrity: sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==, + } + engines: { node: ">=12" } cpu: [ia32] os: [linux] requiresBuild: true @@ -1238,8 +1443,11 @@ packages: optional: true /@esbuild/linux-loong64@0.17.19: - resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==, + } + engines: { node: ">=12" } cpu: [loong64] os: [linux] requiresBuild: true @@ -1247,8 +1455,11 @@ packages: optional: true /@esbuild/linux-loong64@0.19.8: - resolution: {integrity: sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==, + } + engines: { node: ">=12" } cpu: [loong64] os: [linux] requiresBuild: true @@ -1256,8 +1467,11 @@ packages: optional: true /@esbuild/linux-mips64el@0.17.19: - resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==, + } + engines: { node: ">=12" } cpu: [mips64el] os: [linux] requiresBuild: true @@ -1265,8 +1479,11 @@ packages: optional: true /@esbuild/linux-mips64el@0.19.8: - resolution: {integrity: sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==, + } + engines: { node: ">=12" } cpu: [mips64el] os: [linux] requiresBuild: true @@ -1274,8 +1491,11 @@ packages: optional: true /@esbuild/linux-ppc64@0.17.19: - resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==, + } + engines: { node: ">=12" } cpu: [ppc64] os: [linux] requiresBuild: true @@ -1283,8 +1503,11 @@ packages: optional: true /@esbuild/linux-ppc64@0.19.8: - resolution: {integrity: sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==, + } + engines: { node: ">=12" } cpu: [ppc64] os: [linux] requiresBuild: true @@ -1292,8 +1515,11 @@ packages: optional: true /@esbuild/linux-riscv64@0.17.19: - resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==, + } + engines: { node: ">=12" } cpu: [riscv64] os: [linux] requiresBuild: true @@ -1301,8 +1527,11 @@ packages: optional: true /@esbuild/linux-riscv64@0.19.8: - resolution: {integrity: sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==, + } + engines: { node: ">=12" } cpu: [riscv64] os: [linux] requiresBuild: true @@ -1310,8 +1539,11 @@ packages: optional: true /@esbuild/linux-s390x@0.17.19: - resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==, + } + engines: { node: ">=12" } cpu: [s390x] os: [linux] requiresBuild: true @@ -1319,8 +1551,11 @@ packages: optional: true /@esbuild/linux-s390x@0.19.8: - resolution: {integrity: sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==, + } + engines: { node: ">=12" } cpu: [s390x] os: [linux] requiresBuild: true @@ -1328,8 +1563,11 @@ packages: optional: true /@esbuild/linux-x64@0.17.19: - resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==, + } + engines: { node: ">=12" } cpu: [x64] os: [linux] requiresBuild: true @@ -1337,8 +1575,11 @@ packages: optional: true /@esbuild/linux-x64@0.19.8: - resolution: {integrity: sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==, + } + engines: { node: ">=12" } cpu: [x64] os: [linux] requiresBuild: true @@ -1346,8 +1587,11 @@ packages: optional: true /@esbuild/netbsd-x64@0.17.19: - resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==, + } + engines: { node: ">=12" } cpu: [x64] os: [netbsd] requiresBuild: true @@ -1355,8 +1599,11 @@ packages: optional: true /@esbuild/netbsd-x64@0.19.8: - resolution: {integrity: sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==, + } + engines: { node: ">=12" } cpu: [x64] os: [netbsd] requiresBuild: true @@ -1364,8 +1611,11 @@ packages: optional: true /@esbuild/openbsd-x64@0.17.19: - resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==, + } + engines: { node: ">=12" } cpu: [x64] os: [openbsd] requiresBuild: true @@ -1373,8 +1623,11 @@ packages: optional: true /@esbuild/openbsd-x64@0.19.8: - resolution: {integrity: sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==, + } + engines: { node: ">=12" } cpu: [x64] os: [openbsd] requiresBuild: true @@ -1382,8 +1635,11 @@ packages: optional: true /@esbuild/sunos-x64@0.17.19: - resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==, + } + engines: { node: ">=12" } cpu: [x64] os: [sunos] requiresBuild: true @@ -1391,8 +1647,11 @@ packages: optional: true /@esbuild/sunos-x64@0.19.8: - resolution: {integrity: sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==, + } + engines: { node: ">=12" } cpu: [x64] os: [sunos] requiresBuild: true @@ -1400,8 +1659,11 @@ packages: optional: true /@esbuild/win32-arm64@0.17.19: - resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==, + } + engines: { node: ">=12" } cpu: [arm64] os: [win32] requiresBuild: true @@ -1409,8 +1671,11 @@ packages: optional: true /@esbuild/win32-arm64@0.19.8: - resolution: {integrity: sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==, + } + engines: { node: ">=12" } cpu: [arm64] os: [win32] requiresBuild: true @@ -1418,8 +1683,11 @@ packages: optional: true /@esbuild/win32-ia32@0.17.19: - resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==, + } + engines: { node: ">=12" } cpu: [ia32] os: [win32] requiresBuild: true @@ -1427,8 +1695,11 @@ packages: optional: true /@esbuild/win32-ia32@0.19.8: - resolution: {integrity: sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==, + } + engines: { node: ">=12" } cpu: [ia32] os: [win32] requiresBuild: true @@ -1436,8 +1707,11 @@ packages: optional: true /@esbuild/win32-x64@0.17.19: - resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==, + } + engines: { node: ">=12" } cpu: [x64] os: [win32] requiresBuild: true @@ -1445,8 +1719,11 @@ packages: optional: true /@esbuild/win32-x64@0.19.8: - resolution: {integrity: sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==, + } + engines: { node: ">=12" } cpu: [x64] os: [win32] requiresBuild: true @@ -1454,8 +1731,11 @@ packages: optional: true /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: @@ -1463,12 +1743,18 @@ packages: eslint-visitor-keys: 3.4.3 /@eslint-community/regexpp@4.6.2: - resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + resolution: + { + integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: ajv: 6.12.6 debug: 4.3.4 @@ -1483,40 +1769,55 @@ packages: - supports-color /@eslint/js@8.56.0: - resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } /@floating-ui/core@1.5.2: - resolution: {integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==} + resolution: + { + integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==, + } dependencies: - '@floating-ui/utils': 0.1.6 + "@floating-ui/utils": 0.1.6 dev: false /@floating-ui/dom@1.5.3: - resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} + resolution: + { + integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==, + } dependencies: - '@floating-ui/core': 1.5.2 - '@floating-ui/utils': 0.1.6 + "@floating-ui/core": 1.5.2 + "@floating-ui/utils": 0.1.6 dev: false /@floating-ui/react-dom@2.0.4(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==} + resolution: + { + integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==, + } peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' + react: ">=16.8.0" + react-dom: ">=16.8.0" dependencies: - '@floating-ui/dom': 1.5.3 + "@floating-ui/dom": 1.5.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@floating-ui/react@0.24.8(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==} + resolution: + { + integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==, + } peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' + react: ">=16.8.0" + react-dom: ">=16.8.0" dependencies: - '@floating-ui/react-dom': 2.0.4(react-dom@18.2.0)(react@18.2.0) + "@floating-ui/react-dom": 2.0.4(react-dom@18.2.0)(react@18.2.0) aria-hidden: 1.2.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1524,53 +1825,74 @@ packages: dev: false /@floating-ui/utils@0.1.6: - resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} + resolution: + { + integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==, + } dev: false /@homarr/gridstack@1.0.0: - resolution: {integrity: sha512-KM9024BipLD9BmtM6jHI8OKLZ1Iy4vZdTfU53ww4qEda/330XQYhIC2SBcQgkNnDB2MTkn/laNSO5gTy+lJg9Q==} + resolution: + { + integrity: sha512-KM9024BipLD9BmtM6jHI8OKLZ1Iy4vZdTfU53ww4qEda/330XQYhIC2SBcQgkNnDB2MTkn/laNSO5gTy+lJg9Q==, + } dev: false /@humanwhocodes/config-array@0.11.13: - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} - engines: {node: '>=10.10.0'} + resolution: + { + integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==, + } + engines: { node: ">=10.10.0" } dependencies: - '@humanwhocodes/object-schema': 2.0.1 + "@humanwhocodes/object-schema": 2.0.1 debug: 4.3.4 minimatch: 3.1.2 transitivePeerDependencies: - supports-color /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} + resolution: + { + integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==, + } + engines: { node: ">=12.22" } /@humanwhocodes/object-schema@2.0.1: - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} + resolution: + { + integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==, + } - /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.2.4): - resolution: {integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==} + /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.2.5): + resolution: + { + integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==, + } peerDependencies: - '@vue/compiler-sfc': '>=3.0.0' + "@vue/compiler-sfc": ">=3.0.0" prettier: 2 || 3 peerDependenciesMeta: - '@vue/compiler-sfc': + "@vue/compiler-sfc": optional: true dependencies: - '@babel/core': 7.23.2 - '@babel/generator': 7.23.0 - '@babel/parser': 7.23.0 - '@babel/traverse': 7.23.2 - '@babel/types': 7.23.0 - prettier: 3.2.4 + "@babel/core": 7.23.2 + "@babel/generator": 7.23.0 + "@babel/parser": 7.23.0 + "@babel/traverse": 7.23.2 + "@babel/types": 7.23.0 + prettier: 3.2.5 semver: 7.5.4 transitivePeerDependencies: - supports-color dev: false /@isaacs/cliui@8.0.2: - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==, + } + engines: { node: ">=12" } dependencies: string-width: 5.1.2 string-width-cjs: /string-width@4.2.3 @@ -1581,61 +1903,91 @@ packages: dev: false /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==, + } + engines: { node: ">=8" } dev: true /@jest/schemas@29.6.3: - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: - '@sinclair/typebox': 0.27.8 + "@sinclair/typebox": 0.27.8 dev: true /@jridgewell/gen-mapping@0.3.3: - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==, + } + engines: { node: ">=6.0.0" } dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.18 + "@jridgewell/set-array": 1.1.2 + "@jridgewell/sourcemap-codec": 1.4.15 + "@jridgewell/trace-mapping": 0.3.18 /@jridgewell/resolve-uri@3.1.0: - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==, + } + engines: { node: ">=6.0.0" } /@jridgewell/set-array@1.1.2: - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==, + } + engines: { node: ">=6.0.0" } /@jridgewell/sourcemap-codec@1.4.14: - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + resolution: + { + integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==, + } /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + resolution: + { + integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, + } /@jridgewell/trace-mapping@0.3.18: - resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} + resolution: + { + integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==, + } dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 + "@jridgewell/resolve-uri": 3.1.0 + "@jridgewell/sourcemap-codec": 1.4.14 /@jridgewell/trace-mapping@0.3.9: - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + resolution: + { + integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==, + } dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.15 + "@jridgewell/resolve-uri": 3.1.0 + "@jridgewell/sourcemap-codec": 1.4.15 dev: true /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} + resolution: + { + integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==, + } peerDependencies: - '@mantine/hooks': 7.5.1 + "@mantine/hooks": 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@floating-ui/react': 0.24.8(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + "@floating-ui/react": 0.24.8(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) clsx: 2.0.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1644,20 +1996,23 @@ packages: react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - - '@types/react' + - "@types/react" dev: false /@mantine/dates@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-FReER5Q7gP4YzJPv3a4BqdiufR184MTRAVrITtdPEeTaqTtryAAHuIjiC8QY3f0Q9ge/Pmbt9Khn/ONbULD4XA==} + resolution: + { + integrity: sha512-FReER5Q7gP4YzJPv3a4BqdiufR184MTRAVrITtdPEeTaqTtryAAHuIjiC8QY3f0Q9ge/Pmbt9Khn/ONbULD4XA==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 - dayjs: '>=1.0.0' + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 + dayjs: ">=1.0.0" react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 react: 18.2.0 @@ -1665,7 +2020,10 @@ packages: dev: false /@mantine/form@7.5.1(react@18.2.0): - resolution: {integrity: sha512-NPc6sYXZGImFsZvr9Md5DM8C+vpC14rqLcOJlW4DFqze1/MBblVxR+abCNM12r5hrqUxHXEu55yPzxcR9Hoj3Q==} + resolution: + { + integrity: sha512-NPc6sYXZGImFsZvr9Md5DM8C+vpC14rqLcOJlW4DFqze1/MBblVxR+abCNM12r5hrqUxHXEu55yPzxcR9Hoj3Q==, + } peerDependencies: react: ^18.2.0 dependencies: @@ -1675,7 +2033,10 @@ packages: dev: false /@mantine/hooks@7.5.1(react@18.2.0): - resolution: {integrity: sha512-LfrEOkX8U2KbkYAU5BMA7FPbMva/TSd65c45W35wHSx3iqYMsoPN9+Ll1zc/HT0XNFp73jGet9cU7VREbAl0/A==} + resolution: + { + integrity: sha512-LfrEOkX8U2KbkYAU5BMA7FPbMva/TSd65c45W35wHSx3iqYMsoPN9+Ll1zc/HT0XNFp73jGet9cU7VREbAl0/A==, + } peerDependencies: react: ^18.2.0 dependencies: @@ -1683,52 +2044,64 @@ packages: dev: false /@mantine/modals@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-s0+kGsYbm4sM6xjgR5njAAp5laOw7g9E4rf7kRpcAWadYTGH8ooKnSFuYfLJFm+viYHDHXRQGH6qvo4VAbOrLQ==} + resolution: + { + integrity: sha512-s0+kGsYbm4sM6xjgR5njAAp5laOw7g9E4rf7kRpcAWadYTGH8ooKnSFuYfLJFm+viYHDHXRQGH6qvo4VAbOrLQ==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mantine/notifications@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-IQDOAz+U9G6IkYXAXG9qL5EESmnhWV3JBJrxwBOPPdi1e9S/akQlsmABWS/voB9WFnOnbMbrkF067RVBA7W4dg==} + resolution: + { + integrity: sha512-IQDOAz+U9G6IkYXAXG9qL5EESmnhWV3JBJrxwBOPPdi1e9S/akQlsmABWS/voB9WFnOnbMbrkF067RVBA7W4dg==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) - '@mantine/store': 7.5.1(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) + "@mantine/store": 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false /@mantine/spotlight@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-J49+53nDTsk8eVDFWNVV4SufK5D6iYU5hs15PXwotre+OLgudYK9QXF8r3PA90hugxxiYmykxq2CT+Ttx6GoOg==} + resolution: + { + integrity: sha512-J49+53nDTsk8eVDFWNVV4SufK5D6iYU5hs15PXwotre+OLgudYK9QXF8r3PA90hugxxiYmykxq2CT+Ttx6GoOg==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) - '@mantine/store': 7.5.1(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) + "@mantine/store": 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mantine/store@7.5.1(react@18.2.0): - resolution: {integrity: sha512-sDaPXB3v9JlJghNTnRTFT2hC3HN6pdBcCXj0CqO/QrJgtRA7A3FxW+mnY7YQOaBxHJ1MIRr+zsv0Qy1f/pu1dw==} + resolution: + { + integrity: sha512-sDaPXB3v9JlJghNTnRTFT2hC3HN6pdBcCXj0CqO/QrJgtRA7A3FxW+mnY7YQOaBxHJ1MIRr+zsv0Qy1f/pu1dw==, + } peerDependencies: react: ^18.2.0 dependencies: @@ -1736,25 +2109,31 @@ packages: dev: false /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==} + resolution: + { + integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 - '@tiptap/extension-link': ^2.1.12 - '@tiptap/react': ^2.1.12 + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 + "@tiptap/extension-link": ^2.1.12 + "@tiptap/react": ^2.1.12 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) - '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) + "@tiptap/extension-link": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/react": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mapbox/node-pre-gyp@1.0.11: - resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} + resolution: + { + integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==, + } hasBin: true dependencies: detect-libc: 2.0.2 @@ -1772,18 +2151,27 @@ packages: dev: false /@next/env@14.1.0: - resolution: {integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==} + resolution: + { + integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==, + } dev: false /@next/eslint-plugin-next@14.1.0: - resolution: {integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==} + resolution: + { + integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==, + } dependencies: glob: 10.3.10 dev: false /@next/swc-darwin-arm64@14.1.0: - resolution: {integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==, + } + engines: { node: ">= 10" } cpu: [arm64] os: [darwin] requiresBuild: true @@ -1791,8 +2179,11 @@ packages: optional: true /@next/swc-darwin-x64@14.1.0: - resolution: {integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==, + } + engines: { node: ">= 10" } cpu: [x64] os: [darwin] requiresBuild: true @@ -1800,8 +2191,11 @@ packages: optional: true /@next/swc-linux-arm64-gnu@14.1.0: - resolution: {integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==, + } + engines: { node: ">= 10" } cpu: [arm64] os: [linux] requiresBuild: true @@ -1809,8 +2203,11 @@ packages: optional: true /@next/swc-linux-arm64-musl@14.1.0: - resolution: {integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==, + } + engines: { node: ">= 10" } cpu: [arm64] os: [linux] requiresBuild: true @@ -1818,8 +2215,11 @@ packages: optional: true /@next/swc-linux-x64-gnu@14.1.0: - resolution: {integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==, + } + engines: { node: ">= 10" } cpu: [x64] os: [linux] requiresBuild: true @@ -1827,8 +2227,11 @@ packages: optional: true /@next/swc-linux-x64-musl@14.1.0: - resolution: {integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==, + } + engines: { node: ">= 10" } cpu: [x64] os: [linux] requiresBuild: true @@ -1836,8 +2239,11 @@ packages: optional: true /@next/swc-win32-arm64-msvc@14.1.0: - resolution: {integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==, + } + engines: { node: ">= 10" } cpu: [arm64] os: [win32] requiresBuild: true @@ -1845,8 +2251,11 @@ packages: optional: true /@next/swc-win32-ia32-msvc@14.1.0: - resolution: {integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==, + } + engines: { node: ">= 10" } cpu: [ia32] os: [win32] requiresBuild: true @@ -1854,8 +2263,11 @@ packages: optional: true /@next/swc-win32-x64-msvc@14.1.0: - resolution: {integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==, + } + engines: { node: ">= 10" } cpu: [x64] os: [win32] requiresBuild: true @@ -1863,65 +2275,98 @@ packages: optional: true /@noble/hashes@1.3.2: - resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} - engines: {node: '>= 16'} + resolution: + { + integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==, + } + engines: { node: ">= 16" } dev: false /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, + } + engines: { node: ">= 8" } dependencies: - '@nodelib/fs.stat': 2.0.5 + "@nodelib/fs.stat": 2.0.5 run-parallel: 1.2.0 /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, + } + engines: { node: ">= 8" } /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, + } + engines: { node: ">= 8" } dependencies: - '@nodelib/fs.scandir': 2.1.5 + "@nodelib/fs.scandir": 2.1.5 fastq: 1.15.0 /@panva/hkdf@1.1.1: - resolution: {integrity: sha512-dhPeilub1NuIG0X5Kvhh9lH4iW3ZsHlnzwgwbOlgwQ2wG1IqFzsgHqmKPk3WzsdWAeaxKJxgM0+W433RmN45GA==} + resolution: + { + integrity: sha512-dhPeilub1NuIG0X5Kvhh9lH4iW3ZsHlnzwgwbOlgwQ2wG1IqFzsgHqmKPk3WzsdWAeaxKJxgM0+W433RmN45GA==, + } dev: false /@paralleldrive/cuid2@2.2.2: - resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==} + resolution: + { + integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==, + } dependencies: - '@noble/hashes': 1.3.2 + "@noble/hashes": 1.3.2 dev: false /@pkgjs/parseargs@0.11.0: - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==, + } + engines: { node: ">=14" } requiresBuild: true dev: false optional: true /@polka/url@1.0.0-next.24: - resolution: {integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==} + resolution: + { + integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==, + } dev: true /@popperjs/core@2.11.8: - resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + resolution: + { + integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==, + } dev: false /@remirror/core-constants@2.0.2: - resolution: {integrity: sha512-dyHY+sMF0ihPus3O27ODd4+agdHMEmuRdyiZJ2CCWjPV5UFmn17ZbElvk6WOGVE4rdCJKZQCrPV2BcikOMLUGQ==} + resolution: + { + integrity: sha512-dyHY+sMF0ihPus3O27ODd4+agdHMEmuRdyiZJ2CCWjPV5UFmn17ZbElvk6WOGVE4rdCJKZQCrPV2BcikOMLUGQ==, + } dev: false /@remirror/core-helpers@3.0.0: - resolution: {integrity: sha512-tusEgQJIqg4qKj6HSBUFcyRnWnziw3neh4T9wOmsPGHFC3w9kl5KSrDb9UAgE8uX6y32FnS7vJ955mWOl3n50A==} + resolution: + { + integrity: sha512-tusEgQJIqg4qKj6HSBUFcyRnWnziw3neh4T9wOmsPGHFC3w9kl5KSrDb9UAgE8uX6y32FnS7vJ955mWOl3n50A==, + } dependencies: - '@remirror/core-constants': 2.0.2 - '@remirror/types': 1.0.1 - '@types/object.omit': 3.0.3 - '@types/object.pick': 1.3.4 - '@types/throttle-debounce': 2.1.0 + "@remirror/core-constants": 2.0.2 + "@remirror/types": 1.0.1 + "@types/object.omit": 3.0.3 + "@types/object.pick": 1.3.4 + "@types/throttle-debounce": 2.1.0 case-anything: 2.1.13 dash-get: 1.0.2 deepmerge: 4.3.1 @@ -1933,13 +2378,19 @@ packages: dev: false /@remirror/types@1.0.1: - resolution: {integrity: sha512-VlZQxwGnt1jtQ18D6JqdIF+uFZo525WEqrfp9BOc3COPpK4+AWCgdnAWL+ho6imWcoINlGjR/+3b6y5C1vBVEA==} + resolution: + { + integrity: sha512-VlZQxwGnt1jtQ18D6JqdIF+uFZo525WEqrfp9BOc3COPpK4+AWCgdnAWL+ho6imWcoINlGjR/+3b6y5C1vBVEA==, + } dependencies: type-fest: 2.19.0 dev: false /@rollup/rollup-android-arm-eabi@4.9.6: - resolution: {integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==} + resolution: + { + integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==, + } cpu: [arm] os: [android] requiresBuild: true @@ -1947,7 +2398,10 @@ packages: optional: true /@rollup/rollup-android-arm64@4.9.6: - resolution: {integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==} + resolution: + { + integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==, + } cpu: [arm64] os: [android] requiresBuild: true @@ -1955,7 +2409,10 @@ packages: optional: true /@rollup/rollup-darwin-arm64@4.9.6: - resolution: {integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==} + resolution: + { + integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==, + } cpu: [arm64] os: [darwin] requiresBuild: true @@ -1963,7 +2420,10 @@ packages: optional: true /@rollup/rollup-darwin-x64@4.9.6: - resolution: {integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==} + resolution: + { + integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==, + } cpu: [x64] os: [darwin] requiresBuild: true @@ -1971,7 +2431,10 @@ packages: optional: true /@rollup/rollup-linux-arm-gnueabihf@4.9.6: - resolution: {integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==} + resolution: + { + integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==, + } cpu: [arm] os: [linux] requiresBuild: true @@ -1979,7 +2442,10 @@ packages: optional: true /@rollup/rollup-linux-arm64-gnu@4.9.6: - resolution: {integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==} + resolution: + { + integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==, + } cpu: [arm64] os: [linux] requiresBuild: true @@ -1987,7 +2453,10 @@ packages: optional: true /@rollup/rollup-linux-arm64-musl@4.9.6: - resolution: {integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==} + resolution: + { + integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==, + } cpu: [arm64] os: [linux] requiresBuild: true @@ -1995,7 +2464,10 @@ packages: optional: true /@rollup/rollup-linux-riscv64-gnu@4.9.6: - resolution: {integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==} + resolution: + { + integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==, + } cpu: [riscv64] os: [linux] requiresBuild: true @@ -2003,7 +2475,10 @@ packages: optional: true /@rollup/rollup-linux-x64-gnu@4.9.6: - resolution: {integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==} + resolution: + { + integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==, + } cpu: [x64] os: [linux] requiresBuild: true @@ -2011,7 +2486,10 @@ packages: optional: true /@rollup/rollup-linux-x64-musl@4.9.6: - resolution: {integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==} + resolution: + { + integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==, + } cpu: [x64] os: [linux] requiresBuild: true @@ -2019,7 +2497,10 @@ packages: optional: true /@rollup/rollup-win32-arm64-msvc@4.9.6: - resolution: {integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==} + resolution: + { + integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==, + } cpu: [arm64] os: [win32] requiresBuild: true @@ -2027,7 +2508,10 @@ packages: optional: true /@rollup/rollup-win32-ia32-msvc@4.9.6: - resolution: {integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==} + resolution: + { + integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==, + } cpu: [ia32] os: [win32] requiresBuild: true @@ -2035,7 +2519,10 @@ packages: optional: true /@rollup/rollup-win32-x64-msvc@4.9.6: - resolution: {integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==} + resolution: + { + integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==, + } cpu: [x64] os: [win32] requiresBuild: true @@ -2043,19 +2530,28 @@ packages: optional: true /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + resolution: + { + integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==, + } dev: true /@swc/helpers@0.5.2: - resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} + resolution: + { + integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==, + } dependencies: tslib: 2.5.0 dev: false /@t3-oss/env-core@0.8.0(typescript@5.3.3)(zod@3.22.4): - resolution: {integrity: sha512-Tc1pg0KH/tJeI0Z1s/Isp1VsGDj1N03ZAYFV8GjWgMxytF/ve0Dv+opjmTapHICRv8qiB1Y/fsTjkWNMpKPRCQ==} + resolution: + { + integrity: sha512-Tc1pg0KH/tJeI0Z1s/Isp1VsGDj1N03ZAYFV8GjWgMxytF/ve0Dv+opjmTapHICRv8qiB1Y/fsTjkWNMpKPRCQ==, + } peerDependencies: - typescript: '>=5.0.0' + typescript: ">=5.0.0" zod: ^3.0.0 peerDependenciesMeta: typescript: @@ -2066,270 +2562,363 @@ packages: dev: false /@t3-oss/env-nextjs@0.8.0(typescript@5.3.3)(zod@3.22.4): - resolution: {integrity: sha512-bJyoE8of4QmqZN7a49iLJAbUq4graScb9ezXzvnuIVr9JP43C093vmy55hT1uZL533CwiPz8zo1INwyAS6qnHw==} + resolution: + { + integrity: sha512-bJyoE8of4QmqZN7a49iLJAbUq4graScb9ezXzvnuIVr9JP43C093vmy55hT1uZL533CwiPz8zo1INwyAS6qnHw==, + } peerDependencies: - typescript: '>=5.0.0' + typescript: ">=5.0.0" zod: ^3.0.0 peerDependenciesMeta: typescript: optional: true dependencies: - '@t3-oss/env-core': 0.8.0(typescript@5.3.3)(zod@3.22.4) + "@t3-oss/env-core": 0.8.0(typescript@5.3.3)(zod@3.22.4) typescript: 5.3.3 zod: 3.22.4 dev: false /@tabler/icons-react@2.47.0(react@18.2.0): - resolution: {integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==} + resolution: + { + integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==, + } peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 dependencies: - '@tabler/icons': 2.47.0 + "@tabler/icons": 2.47.0 prop-types: 15.8.1 react: 18.2.0 dev: false /@tabler/icons@2.47.0: - resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} + resolution: + { + integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==, + } dev: false /@tanstack/query-core@5.18.1: - resolution: {integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==} + resolution: + { + integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==, + } dev: false /@tanstack/query-devtools@5.18.1: - resolution: {integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==} + resolution: + { + integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==, + } dev: false /@tanstack/react-query-devtools@5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0): - resolution: {integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==} + resolution: + { + integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==, + } peerDependencies: - '@tanstack/react-query': ^5.18.1 + "@tanstack/react-query": ^5.18.1 react: ^18.0.0 dependencies: - '@tanstack/query-devtools': 5.18.1 - '@tanstack/react-query': 5.18.1(react@18.2.0) + "@tanstack/query-devtools": 5.18.1 + "@tanstack/react-query": 5.18.1(react@18.2.0) react: 18.2.0 dev: false /@tanstack/react-query-next-experimental@5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==} + resolution: + { + integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==, + } peerDependencies: - '@tanstack/react-query': ^5.18.1 + "@tanstack/react-query": ^5.18.1 next: ^13 || ^14 react: ^18.0.0 dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + "@tanstack/react-query": 5.18.1(react@18.2.0) next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false /@tanstack/react-query@5.18.1(react@18.2.0): - resolution: {integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==} + resolution: + { + integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==, + } peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.18.1 + "@tanstack/query-core": 5.18.1 react: 18.2.0 dev: false /@tiptap/core@2.2.2(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} + resolution: + { + integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==, + } peerDependencies: - '@tiptap/pm': ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/pm': 2.2.2 + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-blockquote@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==} + resolution: + { + integrity: sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-bold@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==} + resolution: + { + integrity: sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==} + resolution: + { + integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 tippy.js: 6.3.7 dev: false /@tiptap/extension-bullet-list@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==} + resolution: + { + integrity: sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-code-block@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==} + resolution: + { + integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-code@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-CHMHK76fGFrY3TpsyNmPB393VvRgjnvLVOfc0Qx4KKEkntDQ1v2jg90XupLf0+H0aq0KQBHlSooW0Bh+7SxbmQ==} + resolution: + { + integrity: sha512-CHMHK76fGFrY3TpsyNmPB393VvRgjnvLVOfc0Qx4KKEkntDQ1v2jg90XupLf0+H0aq0KQBHlSooW0Bh+7SxbmQ==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-document@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==} + resolution: + { + integrity: sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-dropcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==} + resolution: + { + integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==} + resolution: + { + integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 tippy.js: 6.3.7 dev: false /@tiptap/extension-gapcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==} + resolution: + { + integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-hard-break@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==} + resolution: + { + integrity: sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-heading@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==} + resolution: + { + integrity: sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-history@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==} + resolution: + { + integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-horizontal-rule@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==} + resolution: + { + integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 dev: false /@tiptap/extension-italic@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==} + resolution: + { + integrity: sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==} + resolution: + { + integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 linkifyjs: 4.1.3 dev: false /@tiptap/extension-list-item@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==} + resolution: + { + integrity: sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-ordered-list@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==} + resolution: + { + integrity: sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-paragraph@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==} + resolution: + { + integrity: sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-strike@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==} + resolution: + { + integrity: sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-text@2.2.2(@tiptap/core@2.2.2): - resolution: {integrity: sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==} + resolution: + { + integrity: sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 + "@tiptap/core": ^2.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/pm@2.2.2: - resolution: {integrity: sha512-TcUxqevVcqLYOcbAGlmvZfOB5LL5zZmb6jxSHyevl41SRpGZLe9Jt0e1v98jS0o9GMS7nvcTK/scYQu9e0HqTA==} + resolution: + { + integrity: sha512-TcUxqevVcqLYOcbAGlmvZfOB5LL5zZmb6jxSHyevl41SRpGZLe9Jt0e1v98jS0o9GMS7nvcTK/scYQu9e0HqTA==, + } dependencies: prosemirror-changeset: 2.2.1 prosemirror-collab: 1.3.1 @@ -2352,74 +2941,89 @@ packages: dev: false /@tiptap/react@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==} + resolution: + { + integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==, + } peerDependencies: - '@tiptap/core': ^2.0.0 - '@tiptap/pm': ^2.0.0 + "@tiptap/core": ^2.0.0 + "@tiptap/pm": ^2.0.0 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/pm': 2.2.2 + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/extension-bubble-menu": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-floating-menu": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/pm": 2.2.2 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@tiptap/starter-kit@2.2.2(@tiptap/pm@2.2.2): - resolution: {integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==} + resolution: + { + integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==, + } dependencies: - '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) - '@tiptap/extension-blockquote': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-bold': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-bullet-list': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-code': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-code-block': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-document': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-dropcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-gapcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-hard-break': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-heading': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-history': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-horizontal-rule': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - '@tiptap/extension-italic': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-list-item': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-ordered-list': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-paragraph': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-strike': 2.2.2(@tiptap/core@2.2.2) - '@tiptap/extension-text': 2.2.2(@tiptap/core@2.2.2) + "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + "@tiptap/extension-blockquote": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-bold": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-bullet-list": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-code": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-code-block": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-document": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-dropcursor": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-gapcursor": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-hard-break": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-heading": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-history": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-horizontal-rule": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + "@tiptap/extension-italic": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-list-item": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-ordered-list": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-paragraph": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-strike": 2.2.2(@tiptap/core@2.2.2) + "@tiptap/extension-text": 2.2.2(@tiptap/core@2.2.2) transitivePeerDependencies: - - '@tiptap/pm' + - "@tiptap/pm" dev: false /@tootallnate/quickjs-emscripten@0.23.0: - resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} + resolution: + { + integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==, + } dev: true /@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93): - resolution: {integrity: sha512-Oz5AaCG3x5+WDo/O2B3ty23gc1k1M1fBEb8+9TCYZN747USP4E/jdRKCsXzoQiOTSQHAQncUlHqdhG3lUTi9xw==} + resolution: + { + integrity: sha512-Oz5AaCG3x5+WDo/O2B3ty23gc1k1M1fBEb8+9TCYZN747USP4E/jdRKCsXzoQiOTSQHAQncUlHqdhG3lUTi9xw==, + } peerDependencies: - '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93+d2abec87 + "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93+d2abec87 dependencies: - '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 + "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} + resolution: + { + integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==, + } peerDependencies: - '@tanstack/react-query': ^5.0.0 - '@trpc/client': 11.0.0-next.92+06cebb01 - '@trpc/react-query': 11.0.0-next.92+06cebb01 - '@trpc/server': 11.0.0-next.92+06cebb01 - next: '*' - react: '>=16.8.0' - react-dom: '>=16.8.0' + "@tanstack/react-query": ^5.0.0 + "@trpc/client": 11.0.0-next.92+06cebb01 + "@trpc/react-query": 11.0.0-next.92+06cebb01 + "@trpc/server": 11.0.0-next.92+06cebb01 + next: "*" + react: ">=16.8.0" + react-dom: ">=16.8.0" dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) - '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) - '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 + "@tanstack/react-query": 5.18.1(react@18.2.0) + "@trpc/client": 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) + "@trpc/react-query": 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -2427,46 +3031,67 @@ packages: dev: false /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} + resolution: + { + integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==, + } peerDependencies: - '@tanstack/react-query': ^5.0.0 - '@trpc/client': 11.0.0-next.92+06cebb01 - '@trpc/server': 11.0.0-next.92+06cebb01 - react: '>=16.8.0' - react-dom: '>=16.8.0' + "@tanstack/react-query": ^5.0.0 + "@trpc/client": 11.0.0-next.92+06cebb01 + "@trpc/server": 11.0.0-next.92+06cebb01 + react: ">=16.8.0" + react-dom: ">=16.8.0" dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) - '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 + "@tanstack/react-query": 5.18.1(react@18.2.0) + "@trpc/client": 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) + "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93: - resolution: {integrity: sha512-xOQakfePY/bRAy+yNa52PG9gvl5DtcJyHh4kYSVUDfMTBPxmU4ePFSZFSREMx0SpddbQ4c35AwGU4V4ngHCK/A==} + resolution: + { + integrity: sha512-xOQakfePY/bRAy+yNa52PG9gvl5DtcJyHh4kYSVUDfMTBPxmU4ePFSZFSREMx0SpddbQ4c35AwGU4V4ngHCK/A==, + } dev: false /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + resolution: + { + integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==, + } dev: true /@tsconfig/node12@1.0.11: - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + resolution: + { + integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==, + } dev: true /@tsconfig/node14@1.0.3: - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + resolution: + { + integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==, + } dev: true /@tsconfig/node16@1.0.4: - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + resolution: + { + integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==, + } dev: true /@turbo/gen@1.12.3(@types/node@20.11.16)(typescript@5.3.3): - resolution: {integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==} + resolution: + { + integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==, + } hasBin: true dependencies: - '@turbo/workspaces': 1.12.3 + "@turbo/workspaces": 1.12.3 chalk: 2.4.2 commander: 10.0.1 fs-extra: 10.1.0 @@ -2478,15 +3103,18 @@ packages: update-check: 1.5.4 validate-npm-package-name: 5.0.0 transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' + - "@swc/core" + - "@swc/wasm" + - "@types/node" - supports-color - typescript dev: true /@turbo/workspaces@1.12.3: - resolution: {integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==} + resolution: + { + integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==, + } hasBin: true dependencies: chalk: 2.4.2 @@ -2504,243 +3132,369 @@ packages: dev: true /@types/babel__core@7.20.5: - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + resolution: + { + integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, + } dependencies: - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 - '@types/babel__generator': 7.6.8 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.20.5 + "@babel/parser": 7.23.9 + "@babel/types": 7.23.9 + "@types/babel__generator": 7.6.8 + "@types/babel__template": 7.4.4 + "@types/babel__traverse": 7.20.5 dev: true /@types/babel__generator@7.6.8: - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + resolution: + { + integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==, + } dependencies: - '@babel/types': 7.23.9 + "@babel/types": 7.23.9 dev: true /@types/babel__template@7.4.4: - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + resolution: + { + integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, + } dependencies: - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 + "@babel/parser": 7.23.9 + "@babel/types": 7.23.9 dev: true /@types/babel__traverse@7.20.5: - resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} + resolution: + { + integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==, + } dependencies: - '@babel/types': 7.23.9 + "@babel/types": 7.23.9 dev: true /@types/bcrypt@5.0.2: - resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} + resolution: + { + integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==, + } dependencies: - '@types/node': 20.11.16 + "@types/node": 20.11.16 dev: true /@types/better-sqlite3@7.6.9: - resolution: {integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==} + resolution: + { + integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==, + } dependencies: - '@types/node': 20.11.16 + "@types/node": 20.11.16 /@types/body-parser@1.19.5: - resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} + resolution: + { + integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==, + } dependencies: - '@types/connect': 3.4.38 - '@types/node': 20.11.16 + "@types/connect": 3.4.38 + "@types/node": 20.11.16 dev: true /@types/connect@3.4.38: - resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} + resolution: + { + integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==, + } dependencies: - '@types/node': 20.11.16 + "@types/node": 20.11.16 dev: true /@types/cookie@0.6.0: - resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} + resolution: + { + integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==, + } dev: false /@types/cookies@0.9.0: - resolution: {integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==} + resolution: + { + integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==, + } dependencies: - '@types/connect': 3.4.38 - '@types/express': 4.17.21 - '@types/keygrip': 1.0.6 - '@types/node': 20.11.16 + "@types/connect": 3.4.38 + "@types/express": 4.17.21 + "@types/keygrip": 1.0.6 + "@types/node": 20.11.16 dev: true /@types/css-modules@1.0.5: - resolution: {integrity: sha512-oeKafs/df9lwOvtfiXVliZsocFVOexK9PZtLQWuPeuVCFR7jwiqlg60lu80JTe5NFNtH3tnV6Fs/ySR8BUPHAw==} + resolution: + { + integrity: sha512-oeKafs/df9lwOvtfiXVliZsocFVOexK9PZtLQWuPeuVCFR7jwiqlg60lu80JTe5NFNtH3tnV6Fs/ySR8BUPHAw==, + } dev: true /@types/eslint@8.56.2: - resolution: {integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==} + resolution: + { + integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==, + } dependencies: - '@types/estree': 1.0.1 - '@types/json-schema': 7.0.12 + "@types/estree": 1.0.1 + "@types/json-schema": 7.0.12 dev: true /@types/estree@1.0.1: - resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} + resolution: + { + integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==, + } dev: true /@types/estree@1.0.5: - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + resolution: + { + integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, + } dev: true /@types/express-serve-static-core@4.17.41: - resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} + resolution: + { + integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==, + } dependencies: - '@types/node': 20.11.16 - '@types/qs': 6.9.10 - '@types/range-parser': 1.2.7 - '@types/send': 0.17.4 + "@types/node": 20.11.16 + "@types/qs": 6.9.10 + "@types/range-parser": 1.2.7 + "@types/send": 0.17.4 dev: true /@types/express@4.17.21: - resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} + resolution: + { + integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==, + } dependencies: - '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.17.41 - '@types/qs': 6.9.10 - '@types/serve-static': 1.15.5 + "@types/body-parser": 1.19.5 + "@types/express-serve-static-core": 4.17.41 + "@types/qs": 6.9.10 + "@types/serve-static": 1.15.5 dev: true /@types/glob@7.2.0: - resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} + resolution: + { + integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==, + } dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 20.11.16 + "@types/minimatch": 5.1.2 + "@types/node": 20.11.16 dev: true /@types/http-errors@2.0.4: - resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} + resolution: + { + integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==, + } dev: true /@types/inquirer@6.5.0: - resolution: {integrity: sha512-rjaYQ9b9y/VFGOpqBEXRavc3jh0a+e6evAbI31tMda8VlPaSy0AZJfXsvmIe3wklc7W6C3zCSfleuMXR7NOyXw==} + resolution: + { + integrity: sha512-rjaYQ9b9y/VFGOpqBEXRavc3jh0a+e6evAbI31tMda8VlPaSy0AZJfXsvmIe3wklc7W6C3zCSfleuMXR7NOyXw==, + } dependencies: - '@types/through': 0.0.30 + "@types/through": 0.0.30 rxjs: 6.6.7 dev: true /@types/istanbul-lib-coverage@2.0.6: - resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + resolution: + { + integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==, + } dev: true /@types/json-schema@7.0.12: - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + resolution: + { + integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==, + } /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + resolution: + { + integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, + } dev: false /@types/keygrip@1.0.6: - resolution: {integrity: sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==} + resolution: + { + integrity: sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==, + } dev: true /@types/mime@1.3.5: - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} + resolution: + { + integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==, + } dev: true /@types/mime@3.0.4: - resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} + resolution: + { + integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==, + } dev: true /@types/minimatch@5.1.2: - resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} + resolution: + { + integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==, + } dev: true /@types/node@20.11.16: - resolution: {integrity: sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==} + resolution: + { + integrity: sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==, + } dependencies: undici-types: 5.26.5 /@types/object.omit@3.0.3: - resolution: {integrity: sha512-xrq4bQTBGYY2cw+gV4PzoG2Lv3L0pjZ1uXStRRDQoATOYW1lCsFQHhQ+OkPhIcQoqLjAq7gYif7D14Qaa6Zbew==} + resolution: + { + integrity: sha512-xrq4bQTBGYY2cw+gV4PzoG2Lv3L0pjZ1uXStRRDQoATOYW1lCsFQHhQ+OkPhIcQoqLjAq7gYif7D14Qaa6Zbew==, + } dev: false /@types/object.pick@1.3.4: - resolution: {integrity: sha512-5PjwB0uP2XDp3nt5u5NJAG2DORHIRClPzWT/TTZhJ2Ekwe8M5bA9tvPdi9NO/n2uvu2/ictat8kgqvLfcIE1SA==} + resolution: + { + integrity: sha512-5PjwB0uP2XDp3nt5u5NJAG2DORHIRClPzWT/TTZhJ2Ekwe8M5bA9tvPdi9NO/n2uvu2/ictat8kgqvLfcIE1SA==, + } dev: false /@types/prop-types@15.7.5: - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} + resolution: + { + integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==, + } /@types/qs@6.9.10: - resolution: {integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==} + resolution: + { + integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==, + } dev: true /@types/range-parser@1.2.7: - resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} + resolution: + { + integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==, + } dev: true /@types/react-dom@18.2.19: - resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} + resolution: + { + integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==, + } dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 dev: true /@types/react@18.2.55: - resolution: {integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==} + resolution: + { + integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==, + } dependencies: - '@types/prop-types': 15.7.5 - '@types/scheduler': 0.16.3 + "@types/prop-types": 15.7.5 + "@types/scheduler": 0.16.3 csstype: 3.1.2 /@types/scheduler@0.16.3: - resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==} + resolution: + { + integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==, + } /@types/semver@7.5.0: - resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + resolution: + { + integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==, + } dev: false /@types/send@0.17.4: - resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} + resolution: + { + integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==, + } dependencies: - '@types/mime': 1.3.5 - '@types/node': 20.11.16 + "@types/mime": 1.3.5 + "@types/node": 20.11.16 dev: true /@types/serve-static@1.15.5: - resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} + resolution: + { + integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==, + } dependencies: - '@types/http-errors': 2.0.4 - '@types/mime': 3.0.4 - '@types/node': 20.11.16 + "@types/http-errors": 2.0.4 + "@types/mime": 3.0.4 + "@types/node": 20.11.16 dev: true /@types/throttle-debounce@2.1.0: - resolution: {integrity: sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==} + resolution: + { + integrity: sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==, + } dev: false /@types/through@0.0.30: - resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} + resolution: + { + integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==, + } dependencies: - '@types/node': 20.11.16 + "@types/node": 20.11.16 dev: true /@types/tinycolor2@1.4.3: - resolution: {integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==} + resolution: + { + integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==, + } dev: true /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha eslint: ^7.0.0 || ^8.0.0 - typescript: '*' + typescript: "*" peerDependenciesMeta: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.21.0 + "@eslint-community/regexpp": 4.6.2 + "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/type-utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/visitor-keys": 6.21.0 debug: 4.3.4 eslint: 8.56.0 graphemer: 1.4.0 @@ -2754,19 +3508,22 @@ packages: dev: false /@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 - typescript: '*' + typescript: "*" peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.21.0 + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) + "@typescript-eslint/visitor-keys": 6.21.0 debug: 4.3.4 eslint: 8.56.0 typescript: 5.3.3 @@ -2775,25 +3532,31 @@ packages: dev: false /@typescript-eslint/scope-manager@6.21.0: - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==, + } + engines: { node: ^16.0.0 || >=18.0.0 } dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 dev: false /@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 - typescript: '*' + typescript: "*" peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) + "@typescript-eslint/utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 eslint: 8.56.0 ts-api-utils: 1.0.1(typescript@5.3.3) @@ -2803,21 +3566,27 @@ packages: dev: false /@typescript-eslint/types@6.21.0: - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==, + } + engines: { node: ^16.0.0 || >=18.0.0 } dev: false /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3): - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: - typescript: '*' + typescript: "*" peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2830,17 +3599,20 @@ packages: dev: false /@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==, + } + engines: { node: ^16.0.0 || >=18.0.0 } peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + "@eslint-community/eslint-utils": 4.4.0(eslint@8.56.0) + "@types/json-schema": 7.0.12 + "@types/semver": 7.5.0 + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -2849,26 +3621,35 @@ packages: dev: false /@typescript-eslint/visitor-keys@6.21.0: - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} + resolution: + { + integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==, + } + engines: { node: ^16.0.0 || >=18.0.0 } dependencies: - '@typescript-eslint/types': 6.21.0 + "@typescript-eslint/types": 6.21.0 eslint-visitor-keys: 3.4.3 dev: false /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + resolution: + { + integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==, + } /@vitejs/plugin-react@4.2.1(vite@5.0.12): - resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} - engines: {node: ^14.18.0 || >=16.0.0} + resolution: + { + integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==, + } + engines: { node: ^14.18.0 || >=16.0.0 } peerDependencies: vite: ^4.2.0 || ^5.0.0 dependencies: - '@babel/core': 7.23.9 - '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.9) - '@types/babel__core': 7.20.5 + "@babel/core": 7.23.9 + "@babel/plugin-transform-react-jsx-self": 7.23.3(@babel/core@7.23.9) + "@babel/plugin-transform-react-jsx-source": 7.23.3(@babel/core@7.23.9) + "@types/babel__core": 7.20.5 react-refresh: 0.14.0 vite: 5.0.12(@types/node@20.11.16) transitivePeerDependencies: @@ -2876,12 +3657,15 @@ packages: dev: true /@vitest/coverage-v8@1.2.2(vitest@1.2.2): - resolution: {integrity: sha512-IHyKnDz18SFclIEEAHb9Y4Uxx0sPKC2VO1kdDCs1BF6Ip4S8rQprs971zIsooLUn7Afs71GRxWMWpkCGZpRMhw==} + resolution: + { + integrity: sha512-IHyKnDz18SFclIEEAHb9Y4Uxx0sPKC2VO1kdDCs1BF6Ip4S8rQprs971zIsooLUn7Afs71GRxWMWpkCGZpRMhw==, + } peerDependencies: vitest: ^1.0.0 dependencies: - '@ampproject/remapping': 2.2.1 - '@bcoe/v8-coverage': 0.2.3 + "@ampproject/remapping": 2.2.1 + "@bcoe/v8-coverage": 0.2.3 debug: 4.3.4 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 @@ -2899,23 +3683,32 @@ packages: dev: true /@vitest/expect@1.2.2: - resolution: {integrity: sha512-3jpcdPAD7LwHUUiT2pZTj2U82I2Tcgg2oVPvKxhn6mDI2On6tfvPQTjAI4628GUGDZrCm4Zna9iQHm5cEexOAg==} + resolution: + { + integrity: sha512-3jpcdPAD7LwHUUiT2pZTj2U82I2Tcgg2oVPvKxhn6mDI2On6tfvPQTjAI4628GUGDZrCm4Zna9iQHm5cEexOAg==, + } dependencies: - '@vitest/spy': 1.2.2 - '@vitest/utils': 1.2.2 + "@vitest/spy": 1.2.2 + "@vitest/utils": 1.2.2 chai: 4.4.1 dev: true /@vitest/runner@1.2.2: - resolution: {integrity: sha512-JctG7QZ4LSDXr5CsUweFgcpEvrcxOV1Gft7uHrvkQ+fsAVylmWQvnaAr/HDp3LAH1fztGMQZugIheTWjaGzYIg==} + resolution: + { + integrity: sha512-JctG7QZ4LSDXr5CsUweFgcpEvrcxOV1Gft7uHrvkQ+fsAVylmWQvnaAr/HDp3LAH1fztGMQZugIheTWjaGzYIg==, + } dependencies: - '@vitest/utils': 1.2.2 + "@vitest/utils": 1.2.2 p-limit: 5.0.0 pathe: 1.1.2 dev: true /@vitest/snapshot@1.2.2: - resolution: {integrity: sha512-SmGY4saEw1+bwE1th6S/cZmPxz/Q4JWsl7LvbQIky2tKE35US4gd0Mjzqfr84/4OD0tikGWaWdMja/nWL5NIPA==} + resolution: + { + integrity: sha512-SmGY4saEw1+bwE1th6S/cZmPxz/Q4JWsl7LvbQIky2tKE35US4gd0Mjzqfr84/4OD0tikGWaWdMja/nWL5NIPA==, + } dependencies: magic-string: 0.30.6 pathe: 1.1.2 @@ -2923,17 +3716,23 @@ packages: dev: true /@vitest/spy@1.2.2: - resolution: {integrity: sha512-k9Gcahssw8d7X3pSLq3e3XEu/0L78mUkCjivUqCQeXJm9clfXR/Td8+AP+VC1O6fKPIDLcHDTAmBOINVuv6+7g==} + resolution: + { + integrity: sha512-k9Gcahssw8d7X3pSLq3e3XEu/0L78mUkCjivUqCQeXJm9clfXR/Td8+AP+VC1O6fKPIDLcHDTAmBOINVuv6+7g==, + } dependencies: tinyspy: 2.2.0 dev: true /@vitest/ui@1.2.2(vitest@1.2.2): - resolution: {integrity: sha512-CG+5fa8lyoBr+9i+UZGS31Qw81v33QlD10uecHxN2CLJVN+jLnqx4pGzGvFFeJ7jSnUCT0AlbmVWY6fU6NJZmw==} + resolution: + { + integrity: sha512-CG+5fa8lyoBr+9i+UZGS31Qw81v33QlD10uecHxN2CLJVN+jLnqx4pGzGvFFeJ7jSnUCT0AlbmVWY6fU6NJZmw==, + } peerDependencies: vitest: ^1.0.0 dependencies: - '@vitest/utils': 1.2.2 + "@vitest/utils": 1.2.2 fast-glob: 3.3.2 fflate: 0.8.1 flatted: 3.2.9 @@ -2944,7 +3743,10 @@ packages: dev: true /@vitest/utils@1.2.2: - resolution: {integrity: sha512-WKITBHLsBHlpjnDQahr+XK6RE7MiAsgrIkr0pGhQ9ygoxBfUeG0lUG5iLlzqjmKSlBv3+j5EGsriBzh+C3Tq9g==} + resolution: + { + integrity: sha512-WKITBHLsBHlpjnDQahr+XK6RE7MiAsgrIkr0pGhQ9ygoxBfUeG0lUG5iLlzqjmKSlBv3+j5EGsriBzh+C3Tq9g==, + } dependencies: diff-sequences: 29.6.3 estree-walker: 3.0.3 @@ -2953,34 +3755,52 @@ packages: dev: true /abbrev@1.1.1: - resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} + resolution: + { + integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==, + } dev: false /acorn-jsx@5.3.2(acorn@8.10.0): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + resolution: + { + integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, + } peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.10.0 /acorn-walk@8.3.2: - resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==, + } + engines: { node: ">=0.4.0" } dev: true /acorn@8.10.0: - resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==, + } + engines: { node: ">=0.4.0" } /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==, + } + engines: { node: ">=0.4.0" } hasBin: true dev: true /agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} + resolution: + { + integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==, + } + engines: { node: ">= 6.0.0" } dependencies: debug: 4.3.4 transitivePeerDependencies: @@ -2988,8 +3808,11 @@ packages: dev: false /agent-base@7.1.0: - resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==, + } + engines: { node: ">= 14" } dependencies: debug: 4.3.4 transitivePeerDependencies: @@ -2997,15 +3820,21 @@ packages: dev: true /aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==, + } + engines: { node: ">=8" } dependencies: clean-stack: 2.2.0 indent-string: 4.0.0 dev: true /ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + resolution: + { + integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, + } dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 @@ -3013,93 +3842,141 @@ packages: uri-js: 4.4.1 /ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, + } + engines: { node: ">=8" } dependencies: type-fest: 0.21.3 dev: true /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, + } + engines: { node: ">=8" } /ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==, + } + engines: { node: ">=12" } dev: false /ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, + } + engines: { node: ">=4" } dependencies: color-convert: 1.9.3 /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, + } + engines: { node: ">=8" } dependencies: color-convert: 2.0.1 /ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==, + } + engines: { node: ">=10" } dev: true /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==, + } + engines: { node: ">=12" } dev: false /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, + } + engines: { node: ">= 8" } dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 dev: false /aproba@2.0.0: - resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} + resolution: + { + integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==, + } dev: false /are-we-there-yet@2.0.0: - resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==, + } + engines: { node: ">=10" } dependencies: delegates: 1.0.0 readable-stream: 3.6.2 dev: false /arg@4.1.0: - resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} + resolution: + { + integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==, + } dev: true /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + resolution: + { + integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, + } /aria-hidden@1.2.3: - resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==, + } + engines: { node: ">=10" } dependencies: tslib: 2.5.0 dev: false /aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + resolution: + { + integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==, + } dependencies: dequal: 2.0.3 dev: false /array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + resolution: + { + integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==, + } dependencies: call-bind: 1.0.2 is-array-buffer: 3.0.2 dev: false /array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -3109,8 +3986,11 @@ packages: dev: false /array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -3120,12 +4000,18 @@ packages: dev: false /array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, + } + engines: { node: ">=8" } /array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -3135,8 +4021,11 @@ packages: dev: false /array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -3145,8 +4034,11 @@ packages: dev: false /array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -3155,8 +4047,11 @@ packages: dev: false /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -3165,7 +4060,10 @@ packages: dev: false /array.prototype.tosorted@1.1.1: - resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} + resolution: + { + integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==, + } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -3175,8 +4073,11 @@ packages: dev: false /arraybuffer.prototype.slice@1.0.1: - resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==, + } + engines: { node: ">= 0.4" } dependencies: array-buffer-byte-length: 1.0.0 call-bind: 1.0.2 @@ -3187,59 +4088,92 @@ packages: dev: false /assertion-error@1.1.0: - resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + resolution: + { + integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==, + } dev: true /ast-types-flow@0.0.8: - resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + resolution: + { + integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==, + } dev: false /ast-types@0.13.4: - resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==, + } + engines: { node: ">=4" } dependencies: tslib: 2.5.0 dev: true /asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} + resolution: + { + integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==, + } dependencies: has-symbols: 1.0.3 dev: false /available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==, + } + engines: { node: ">= 0.4" } dev: false /axe-core@4.7.0: - resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==, + } + engines: { node: ">=4" } dev: false /axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + resolution: + { + integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==, + } dependencies: dequal: 2.0.3 dev: false /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + resolution: + { + integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, + } /base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + resolution: + { + integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, + } /basic-ftp@5.0.3: - resolution: {integrity: sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==, + } + engines: { node: ">=10.0.0" } dev: true /bcrypt@5.1.1: - resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==} - engines: {node: '>= 10.0.0'} + resolution: + { + integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==, + } + engines: { node: ">= 10.0.0" } requiresBuild: true dependencies: - '@mapbox/node-pre-gyp': 1.0.11 + "@mapbox/node-pre-gyp": 1.0.11 node-addon-api: 5.1.0 transitivePeerDependencies: - encoding @@ -3247,7 +4181,10 @@ packages: dev: false /better-sqlite3@9.4.0: - resolution: {integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==} + resolution: + { + integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==, + } requiresBuild: true dependencies: bindings: 1.5.0 @@ -3255,43 +4192,64 @@ packages: dev: false /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, + } + engines: { node: ">=8" } dev: false /bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} + resolution: + { + integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==, + } dependencies: file-uri-to-path: 1.0.0 dev: false /bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + resolution: + { + integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, + } dependencies: buffer: 5.7.1 inherits: 2.0.4 readable-stream: 3.6.2 /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + resolution: + { + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, + } dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 /brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + resolution: + { + integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, + } dependencies: balanced-match: 1.0.2 /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, + } + engines: { node: ">=8" } dependencies: fill-range: 7.0.1 /browserslist@4.22.1: - resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + resolution: + { + integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==, + } + engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } dependencies: caniuse-lite: 1.0.30001579 electron-to-chromium: 1.4.559 @@ -3300,8 +4258,11 @@ packages: dev: false /browserslist@4.22.3: - resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + resolution: + { + integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==, + } + engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } hasBin: true dependencies: caniuse-lite: 1.0.30001583 @@ -3310,76 +4271,118 @@ packages: update-browserslist-db: 1.0.13(browserslist@4.22.3) /buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + resolution: + { + integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, + } dev: true /buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + resolution: + { + integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==, + } dependencies: base64-js: 1.5.1 ieee754: 1.2.1 /builtins@5.0.1: - resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} + resolution: + { + integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==, + } dependencies: semver: 7.5.4 dev: true /busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} + resolution: + { + integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==, + } + engines: { node: ">=10.16.0" } dependencies: streamsearch: 1.1.0 dev: false /cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, + } + engines: { node: ">=8" } dev: true /call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + resolution: + { + integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==, + } dependencies: function-bind: 1.1.2 get-intrinsic: 1.2.1 dev: false /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, + } + engines: { node: ">=6" } /camel-case@3.0.0: - resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} + resolution: + { + integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==, + } dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==, + } + engines: { node: ">= 6" } dev: false /camelcase@7.0.1: - resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} - engines: {node: '>=14.16'} + resolution: + { + integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==, + } + engines: { node: ">=14.16" } dev: true /caniuse-lite@1.0.30001579: - resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} + resolution: + { + integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==, + } dev: false /caniuse-lite@1.0.30001583: - resolution: {integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==} + resolution: + { + integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==, + } /case-anything@2.1.13: - resolution: {integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==} - engines: {node: '>=12.13'} + resolution: + { + integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==, + } + engines: { node: ">=12.13" } dev: false /chai@4.4.1: - resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==, + } + engines: { node: ">=4" } dependencies: assertion-error: 1.1.0 check-error: 1.0.3 @@ -3391,35 +4394,50 @@ packages: dev: true /chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, + } + engines: { node: ">=4" } dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 /chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==, + } + engines: { node: ">=8" } dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 dev: true /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, + } + engines: { node: ">=10" } dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 /chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + resolution: + { + integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==, + } + engines: { node: ^12.17.0 || ^14.13 || >=16.0.0 } dev: true /change-case@3.1.0: - resolution: {integrity: sha512-2AZp7uJZbYEzRPsFoa+ijKdvp9zsrnnt6+yFokfwEpeJm0xuJDVoxiRCAaTzyJND8GJkofo2IcKWaUZ/OECVzw==} + resolution: + { + integrity: sha512-2AZp7uJZbYEzRPsFoa+ijKdvp9zsrnnt6+yFokfwEpeJm0xuJDVoxiRCAaTzyJND8GJkofo2IcKWaUZ/OECVzw==, + } dependencies: camel-case: 3.0.0 constant-case: 2.0.0 @@ -3442,18 +4460,27 @@ packages: dev: true /chardet@0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + resolution: + { + integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==, + } dev: true /check-error@1.0.3: - resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + resolution: + { + integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==, + } dependencies: get-func-name: 2.0.2 dev: true /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} + resolution: + { + integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, + } + engines: { node: ">= 8.10.0" } dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -3467,22 +4494,34 @@ packages: dev: false /chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + resolution: + { + integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==, + } dev: false /chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==, + } + engines: { node: ">=10" } dev: false /clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==, + } + engines: { node: ">=6" } dev: true /cli-color@2.0.3: - resolution: {integrity: sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==, + } + engines: { node: ">=0.10" } dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -3492,169 +4531,268 @@ packages: dev: true /cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, + } + engines: { node: ">=8" } dependencies: restore-cursor: 3.1.0 dev: true /cli-spinners@2.9.0: - resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==, + } + engines: { node: ">=6" } dev: true /cli-width@3.0.0: - resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==, + } + engines: { node: ">= 10" } dev: true /client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + resolution: + { + integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==, + } dev: false /clone@1.0.4: - resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} - engines: {node: '>=0.8'} + resolution: + { + integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==, + } + engines: { node: ">=0.8" } dev: true /clsx@2.0.0: - resolution: {integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==, + } + engines: { node: ">=6" } dev: false /color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + resolution: + { + integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, + } dependencies: color-name: 1.1.3 /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} + resolution: + { + integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, + } + engines: { node: ">=7.0.0" } dependencies: color-name: 1.1.4 /color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + resolution: + { + integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, + } /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + resolution: + { + integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, + } /color-support@1.1.3: - resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} + resolution: + { + integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==, + } dev: false /commander@10.0.1: - resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==, + } + engines: { node: ">=14" } dev: true /commander@9.5.0: - resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} - engines: {node: ^12.20.0 || >=14} + resolution: + { + integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==, + } + engines: { node: ^12.20.0 || >=14 } dev: true /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + resolution: + { + integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, + } /console-control-strings@1.1.0: - resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} + resolution: + { + integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==, + } dev: false /constant-case@2.0.0: - resolution: {integrity: sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==} + resolution: + { + integrity: sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==, + } dependencies: snake-case: 2.1.0 upper-case: 1.1.3 dev: true /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + resolution: + { + integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, + } /cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==, + } + engines: { node: ">= 0.6" } dev: false /cookies@0.9.1: - resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==, + } + engines: { node: ">= 0.8" } dependencies: depd: 2.0.0 keygrip: 1.1.0 dev: false /copy-anything@3.0.4: - resolution: {integrity: sha512-MaQ9FwzlZ/KLeVCLhzI3rZw0EhrIryfZa3AyT4agVybR0DjlkDHA8898lamLD6kfkf9MMn8D+zDAUR4+GxaymQ==} - engines: {node: '>=12.13'} + resolution: + { + integrity: sha512-MaQ9FwzlZ/KLeVCLhzI3rZw0EhrIryfZa3AyT4agVybR0DjlkDHA8898lamLD6kfkf9MMn8D+zDAUR4+GxaymQ==, + } + engines: { node: ">=12.13" } dependencies: is-what: 4.1.9 /core-js-pure@3.32.1: - resolution: {integrity: sha512-f52QZwkFVDPf7UEQZGHKx6NYxsxmVGJe5DIvbzOdRMJlmT6yv0KDjR8rmy3ngr/t5wU54c7Sp/qIJH0ppbhVpQ==} + resolution: + { + integrity: sha512-f52QZwkFVDPf7UEQZGHKx6NYxsxmVGJe5DIvbzOdRMJlmT6yv0KDjR8rmy3ngr/t5wU54c7Sp/qIJH0ppbhVpQ==, + } requiresBuild: true dev: true /create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + resolution: + { + integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==, + } dev: true /crelt@1.0.6: - resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + resolution: + { + integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==, + } dev: false /cross-env@7.0.3: - resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} - engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + resolution: + { + integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==, + } + engines: { node: ">=10.14", npm: ">=6", yarn: ">=1" } hasBin: true dependencies: cross-spawn: 7.0.3 dev: true /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, + } + engines: { node: ">= 8" } dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 /cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==, + } + engines: { node: ">=4" } hasBin: true dev: false /csstype@3.1.2: - resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} + resolution: + { + integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==, + } /d@1.0.1: - resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} + resolution: + { + integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==, + } dependencies: es5-ext: 0.10.62 type: 1.2.0 dev: true /damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + resolution: + { + integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==, + } dev: false /dash-get@1.0.2: - resolution: {integrity: sha512-4FbVrHDwfOASx7uQVxeiCTo7ggSdYZbqs8lH+WU6ViypPlDbe9y6IP5VVUDQBv9DcnyaiPT5XT0UWHgJ64zLeQ==} + resolution: + { + integrity: sha512-4FbVrHDwfOASx7uQVxeiCTo7ggSdYZbqs8lH+WU6ViypPlDbe9y6IP5VVUDQBv9DcnyaiPT5XT0UWHgJ64zLeQ==, + } dev: false /data-uri-to-buffer@5.0.1: - resolution: {integrity: sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==, + } + engines: { node: ">= 14" } dev: true /dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} + resolution: + { + integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==, + } dev: false /debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + resolution: + { + integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, + } peerDependencies: - supports-color: '*' + supports-color: "*" peerDependenciesMeta: supports-color: optional: true @@ -3663,10 +4801,13 @@ packages: dev: false /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} + resolution: + { + integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, + } + engines: { node: ">=6.0" } peerDependencies: - supports-color: '*' + supports-color: "*" peerDependenciesMeta: supports-color: optional: true @@ -3674,40 +4815,61 @@ packages: ms: 2.1.2 /decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==, + } + engines: { node: ">=10" } dependencies: mimic-response: 3.1.0 dev: false /deep-eql@4.1.3: - resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==, + } + engines: { node: ">=6" } dependencies: type-detect: 4.0.8 dev: true /deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} + resolution: + { + integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==, + } + engines: { node: ">=4.0.0" } /deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + resolution: + { + integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, + } /deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, + } + engines: { node: ">=0.10.0" } dev: false /defaults@1.0.4: - resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + resolution: + { + integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==, + } dependencies: clone: 1.0.4 dev: true /define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==, + } + engines: { node: ">= 0.4" } dependencies: get-intrinsic: 1.2.1 gopd: 1.0.1 @@ -3715,16 +4877,22 @@ packages: dev: false /define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==, + } + engines: { node: ">= 0.4" } dependencies: has-property-descriptors: 1.0.0 object-keys: 1.1.1 dev: false /define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==, + } + engines: { node: ">= 0.4" } dependencies: define-data-property: 1.1.1 has-property-descriptors: 1.0.0 @@ -3732,8 +4900,11 @@ packages: dev: false /degenerator@5.0.1: - resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==, + } + engines: { node: ">= 14" } dependencies: ast-types: 0.13.4 escodegen: 2.1.0 @@ -3741,8 +4912,11 @@ packages: dev: true /del@5.1.0: - resolution: {integrity: sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==, + } + engines: { node: ">=8" } dependencies: globby: 10.0.2 graceful-fs: 4.2.11 @@ -3755,78 +4929,120 @@ packages: dev: true /delegates@1.0.0: - resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} + resolution: + { + integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==, + } dev: false /depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} + resolution: + { + integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, + } + engines: { node: ">= 0.8" } dev: false /dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==, + } + engines: { node: ">=6" } dev: false /detect-libc@2.0.2: - resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==, + } + engines: { node: ">=8" } dev: false /detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + resolution: + { + integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==, + } dev: false /diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dev: true /diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} + resolution: + { + integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==, + } + engines: { node: ">=0.3.1" } dev: true /difflib@0.2.4: - resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} + resolution: + { + integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==, + } dependencies: heap: 0.2.7 dev: true /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, + } + engines: { node: ">=8" } dependencies: path-type: 4.0.0 /doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==, + } + engines: { node: ">=0.10.0" } dependencies: esutils: 2.0.3 dev: false /doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} + resolution: + { + integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==, + } + engines: { node: ">=6.0.0" } dependencies: esutils: 2.0.3 /dom-helpers@5.2.1: - resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} + resolution: + { + integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==, + } dependencies: - '@babel/runtime': 7.23.2 + "@babel/runtime": 7.23.2 csstype: 3.1.2 dev: false /dot-case@2.1.1: - resolution: {integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==} + resolution: + { + integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==, + } dependencies: no-case: 2.3.2 dev: true /dotenv-cli@7.3.0: - resolution: {integrity: sha512-314CA4TyK34YEJ6ntBf80eUY+t1XaFLyem1k9P0sX1gn30qThZ5qZr/ZwE318gEnzyYP9yj9HJk6SqwE0upkfw==} + resolution: + { + integrity: sha512-314CA4TyK34YEJ6ntBf80eUY+t1XaFLyem1k9P0sX1gn30qThZ5qZr/ZwE318gEnzyYP9yj9HJk6SqwE0upkfw==, + } dependencies: cross-spawn: 7.0.3 dotenv: 16.3.1 @@ -3835,33 +5051,48 @@ packages: dev: true /dotenv-expand@10.0.0: - resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==, + } + engines: { node: ">=12" } dev: true /dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==, + } + engines: { node: ">=12" } dev: false /dotenv@16.3.1: - resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==, + } + engines: { node: ">=12" } dev: true /dreamopt@0.8.0: - resolution: {integrity: sha512-vyJTp8+mC+G+5dfgsY+r3ckxlz+QMX40VjPQsZc5gxVAxLmi64TBoVkP54A/pRAXMXsbu2GMMBrZPxNv23waMg==} - engines: {node: '>=0.4.0'} + resolution: + { + integrity: sha512-vyJTp8+mC+G+5dfgsY+r3ckxlz+QMX40VjPQsZc5gxVAxLmi64TBoVkP54A/pRAXMXsbu2GMMBrZPxNv23waMg==, + } + engines: { node: ">=0.4.0" } dependencies: wordwrap: 1.0.0 dev: true /drizzle-kit@0.20.14: - resolution: {integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==} + resolution: + { + integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==, + } hasBin: true dependencies: - '@drizzle-team/studio': 0.0.39 - '@esbuild-kit/esm-loader': 2.5.5 + "@drizzle-team/studio": 0.0.39 + "@esbuild-kit/esm-loader": 2.5.5 camelcase: 7.0.1 chalk: 5.3.0 commander: 9.5.0 @@ -3879,52 +5110,55 @@ packages: dev: true /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0): - resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} + resolution: + { + integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==, + } peerDependencies: - '@aws-sdk/client-rds-data': '>=3' - '@cloudflare/workers-types': '>=3' - '@libsql/client': '*' - '@neondatabase/serverless': '>=0.1' - '@opentelemetry/api': ^1.4.1 - '@planetscale/database': '>=1' - '@types/better-sqlite3': '*' - '@types/pg': '*' - '@types/react': '>=18' - '@types/sql.js': '*' - '@vercel/postgres': '*' - better-sqlite3: '>=7' - bun-types: '*' - expo-sqlite: '>=13.2.0' - knex: '*' - kysely: '*' - mysql2: '>=2' - pg: '>=8' - postgres: '>=3' - react: '>=18' - sql.js: '>=1' - sqlite3: '>=5' + "@aws-sdk/client-rds-data": ">=3" + "@cloudflare/workers-types": ">=3" + "@libsql/client": "*" + "@neondatabase/serverless": ">=0.1" + "@opentelemetry/api": ^1.4.1 + "@planetscale/database": ">=1" + "@types/better-sqlite3": "*" + "@types/pg": "*" + "@types/react": ">=18" + "@types/sql.js": "*" + "@vercel/postgres": "*" + better-sqlite3: ">=7" + bun-types: "*" + expo-sqlite: ">=13.2.0" + knex: "*" + kysely: "*" + mysql2: ">=2" + pg: ">=8" + postgres: ">=3" + react: ">=18" + sql.js: ">=1" + sqlite3: ">=5" peerDependenciesMeta: - '@aws-sdk/client-rds-data': + "@aws-sdk/client-rds-data": optional: true - '@cloudflare/workers-types': + "@cloudflare/workers-types": optional: true - '@libsql/client': + "@libsql/client": optional: true - '@neondatabase/serverless': + "@neondatabase/serverless": optional: true - '@opentelemetry/api': + "@opentelemetry/api": optional: true - '@planetscale/database': + "@planetscale/database": optional: true - '@types/better-sqlite3': + "@types/better-sqlite3": optional: true - '@types/pg': + "@types/pg": optional: true - '@types/react': + "@types/react": optional: true - '@types/sql.js': + "@types/sql.js": optional: true - '@vercel/postgres': + "@vercel/postgres": optional: true better-sqlite3: optional: true @@ -3949,47 +5183,74 @@ packages: sqlite3: optional: true dependencies: - '@types/better-sqlite3': 7.6.9 + "@types/better-sqlite3": 7.6.9 better-sqlite3: 9.4.0 dev: false /eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + resolution: + { + integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==, + } dev: false /electron-to-chromium@1.4.559: - resolution: {integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==} + resolution: + { + integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==, + } dev: false /electron-to-chromium@1.4.656: - resolution: {integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==} + resolution: + { + integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==, + } /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + resolution: + { + integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, + } /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + resolution: + { + integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==, + } dev: false /end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + resolution: + { + integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==, + } dependencies: once: 1.4.0 dev: false /entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} + resolution: + { + integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==, + } + engines: { node: ">=0.12" } dev: false /env-paths@3.0.0: - resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + resolution: + { + integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } dev: true /es-abstract@1.22.1: - resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==, + } + engines: { node: ">= 0.4" } dependencies: array-buffer-byte-length: 1.0.0 arraybuffer.prototype.slice: 1.0.1 @@ -4033,7 +5294,10 @@ packages: dev: false /es-iterator-helpers@1.0.13: - resolution: {integrity: sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA==} + resolution: + { + integrity: sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA==, + } dependencies: asynciterator.prototype: 1.0.0 call-bind: 1.0.2 @@ -4052,7 +5316,10 @@ packages: dev: false /es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} + resolution: + { + integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==, + } dependencies: asynciterator.prototype: 1.0.0 call-bind: 1.0.2 @@ -4071,8 +5338,11 @@ packages: dev: false /es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==, + } + engines: { node: ">= 0.4" } dependencies: get-intrinsic: 1.2.1 has: 1.0.3 @@ -4080,14 +5350,20 @@ packages: dev: false /es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + resolution: + { + integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==, + } dependencies: has: 1.0.3 dev: false /es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==, + } + engines: { node: ">= 0.4" } dependencies: is-callable: 1.2.7 is-date-object: 1.0.5 @@ -4095,8 +5371,11 @@ packages: dev: false /es5-ext@0.10.62: - resolution: {integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==, + } + engines: { node: ">=0.10" } requiresBuild: true dependencies: es6-iterator: 2.0.3 @@ -4105,7 +5384,10 @@ packages: dev: true /es6-iterator@2.0.3: - resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} + resolution: + { + integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==, + } dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -4113,14 +5395,20 @@ packages: dev: true /es6-symbol@3.1.3: - resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} + resolution: + { + integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==, + } dependencies: d: 1.0.1 ext: 1.7.0 dev: true /es6-weak-map@2.0.3: - resolution: {integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==} + resolution: + { + integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==, + } dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -4129,9 +5417,12 @@ packages: dev: true /esbuild-register@3.5.0(esbuild@0.19.8): - resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==} + resolution: + { + integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==, + } peerDependencies: - esbuild: '>=0.12 <1' + esbuild: ">=0.12 <1" dependencies: debug: 4.3.4 esbuild: 0.19.8 @@ -4140,80 +5431,98 @@ packages: dev: true /esbuild@0.17.19: - resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==, + } + engines: { node: ">=12" } hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.17.19 - '@esbuild/android-arm64': 0.17.19 - '@esbuild/android-x64': 0.17.19 - '@esbuild/darwin-arm64': 0.17.19 - '@esbuild/darwin-x64': 0.17.19 - '@esbuild/freebsd-arm64': 0.17.19 - '@esbuild/freebsd-x64': 0.17.19 - '@esbuild/linux-arm': 0.17.19 - '@esbuild/linux-arm64': 0.17.19 - '@esbuild/linux-ia32': 0.17.19 - '@esbuild/linux-loong64': 0.17.19 - '@esbuild/linux-mips64el': 0.17.19 - '@esbuild/linux-ppc64': 0.17.19 - '@esbuild/linux-riscv64': 0.17.19 - '@esbuild/linux-s390x': 0.17.19 - '@esbuild/linux-x64': 0.17.19 - '@esbuild/netbsd-x64': 0.17.19 - '@esbuild/openbsd-x64': 0.17.19 - '@esbuild/sunos-x64': 0.17.19 - '@esbuild/win32-arm64': 0.17.19 - '@esbuild/win32-ia32': 0.17.19 - '@esbuild/win32-x64': 0.17.19 + "@esbuild/android-arm": 0.17.19 + "@esbuild/android-arm64": 0.17.19 + "@esbuild/android-x64": 0.17.19 + "@esbuild/darwin-arm64": 0.17.19 + "@esbuild/darwin-x64": 0.17.19 + "@esbuild/freebsd-arm64": 0.17.19 + "@esbuild/freebsd-x64": 0.17.19 + "@esbuild/linux-arm": 0.17.19 + "@esbuild/linux-arm64": 0.17.19 + "@esbuild/linux-ia32": 0.17.19 + "@esbuild/linux-loong64": 0.17.19 + "@esbuild/linux-mips64el": 0.17.19 + "@esbuild/linux-ppc64": 0.17.19 + "@esbuild/linux-riscv64": 0.17.19 + "@esbuild/linux-s390x": 0.17.19 + "@esbuild/linux-x64": 0.17.19 + "@esbuild/netbsd-x64": 0.17.19 + "@esbuild/openbsd-x64": 0.17.19 + "@esbuild/sunos-x64": 0.17.19 + "@esbuild/win32-arm64": 0.17.19 + "@esbuild/win32-ia32": 0.17.19 + "@esbuild/win32-x64": 0.17.19 dev: true /esbuild@0.19.8: - resolution: {integrity: sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==, + } + engines: { node: ">=12" } hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.19.8 - '@esbuild/android-arm64': 0.19.8 - '@esbuild/android-x64': 0.19.8 - '@esbuild/darwin-arm64': 0.19.8 - '@esbuild/darwin-x64': 0.19.8 - '@esbuild/freebsd-arm64': 0.19.8 - '@esbuild/freebsd-x64': 0.19.8 - '@esbuild/linux-arm': 0.19.8 - '@esbuild/linux-arm64': 0.19.8 - '@esbuild/linux-ia32': 0.19.8 - '@esbuild/linux-loong64': 0.19.8 - '@esbuild/linux-mips64el': 0.19.8 - '@esbuild/linux-ppc64': 0.19.8 - '@esbuild/linux-riscv64': 0.19.8 - '@esbuild/linux-s390x': 0.19.8 - '@esbuild/linux-x64': 0.19.8 - '@esbuild/netbsd-x64': 0.19.8 - '@esbuild/openbsd-x64': 0.19.8 - '@esbuild/sunos-x64': 0.19.8 - '@esbuild/win32-arm64': 0.19.8 - '@esbuild/win32-ia32': 0.19.8 - '@esbuild/win32-x64': 0.19.8 + "@esbuild/android-arm": 0.19.8 + "@esbuild/android-arm64": 0.19.8 + "@esbuild/android-x64": 0.19.8 + "@esbuild/darwin-arm64": 0.19.8 + "@esbuild/darwin-x64": 0.19.8 + "@esbuild/freebsd-arm64": 0.19.8 + "@esbuild/freebsd-x64": 0.19.8 + "@esbuild/linux-arm": 0.19.8 + "@esbuild/linux-arm64": 0.19.8 + "@esbuild/linux-ia32": 0.19.8 + "@esbuild/linux-loong64": 0.19.8 + "@esbuild/linux-mips64el": 0.19.8 + "@esbuild/linux-ppc64": 0.19.8 + "@esbuild/linux-riscv64": 0.19.8 + "@esbuild/linux-s390x": 0.19.8 + "@esbuild/linux-x64": 0.19.8 + "@esbuild/netbsd-x64": 0.19.8 + "@esbuild/openbsd-x64": 0.19.8 + "@esbuild/sunos-x64": 0.19.8 + "@esbuild/win32-arm64": 0.19.8 + "@esbuild/win32-ia32": 0.19.8 + "@esbuild/win32-x64": 0.19.8 dev: true /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==, + } + engines: { node: ">=6" } /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} + resolution: + { + integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, + } + engines: { node: ">=0.8.0" } /escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, + } + engines: { node: ">=10" } /escodegen@2.1.0: - resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} - engines: {node: '>=6.0'} + resolution: + { + integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==, + } + engines: { node: ">=6.0" } hasBin: true dependencies: esprima: 4.0.1 @@ -4224,25 +5533,34 @@ packages: dev: true /eslint-config-prettier@9.1.0(eslint@8.56.0): - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + resolution: + { + integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==, + } hasBin: true peerDependencies: - eslint: '>=7.0.0' + eslint: ">=7.0.0" dependencies: eslint: 8.56.0 dev: false /eslint-config-turbo@1.12.3(eslint@8.56.0): - resolution: {integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==} + resolution: + { + integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==, + } peerDependencies: - eslint: '>6.6.0' + eslint: ">6.6.0" dependencies: eslint: 8.56.0 eslint-plugin-turbo: 1.12.3(eslint@8.56.0) dev: false /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + resolution: + { + integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, + } dependencies: debug: 3.2.7 is-core-module: 2.13.1 @@ -4252,16 +5570,19 @@ packages: dev: false /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==, + } + engines: { node: ">=4" } peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' + "@typescript-eslint/parser": "*" + eslint: "*" + eslint-import-resolver-node: "*" + eslint-import-resolver-typescript: "*" + eslint-import-resolver-webpack: "*" peerDependenciesMeta: - '@typescript-eslint/parser': + "@typescript-eslint/parser": optional: true eslint: optional: true @@ -4272,7 +5593,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -4281,16 +5602,19 @@ packages: dev: false /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0): - resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==, + } + engines: { node: ">=4" } peerDependencies: - '@typescript-eslint/parser': '*' + "@typescript-eslint/parser": "*" eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 peerDependenciesMeta: - '@typescript-eslint/parser': + "@typescript-eslint/parser": optional: true dependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -4316,12 +5640,15 @@ packages: dev: false /eslint-plugin-jsx-a11y@6.8.0(eslint@8.56.0): - resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==, + } + engines: { node: ">=4.0" } peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - '@babel/runtime': 7.23.2 + "@babel/runtime": 7.23.2 aria-query: 5.3.0 array-includes: 3.1.7 array.prototype.flatmap: 1.3.2 @@ -4341,8 +5668,11 @@ packages: dev: false /eslint-plugin-react-hooks@4.6.0(eslint@8.56.0): - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==, + } + engines: { node: ">=10" } peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: @@ -4350,8 +5680,11 @@ packages: dev: false /eslint-plugin-react@7.33.2(eslint@8.56.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==, + } + engines: { node: ">=4" } peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: @@ -4375,38 +5708,50 @@ packages: dev: false /eslint-plugin-turbo@1.12.3(eslint@8.56.0): - resolution: {integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==} + resolution: + { + integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==, + } peerDependencies: - eslint: '>6.6.0' + eslint: ">6.6.0" dependencies: dotenv: 16.0.3 eslint: 8.56.0 dev: false /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } /eslint@8.56.0: - resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) - '@eslint-community/regexpp': 4.6.2 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.56.0 - '@humanwhocodes/config-array': 0.11.13 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 + "@eslint-community/eslint-utils": 4.4.0(eslint@8.56.0) + "@eslint-community/regexpp": 4.6.2 + "@eslint/eslintrc": 2.1.4 + "@eslint/js": 8.56.0 + "@humanwhocodes/config-array": 0.11.13 + "@humanwhocodes/module-importer": 1.0.1 + "@nodelib/fs.walk": 1.2.8 + "@ungap/structured-clone": 1.2.0 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 @@ -4441,55 +5786,82 @@ packages: - supports-color /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + resolution: + { + integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } dependencies: acorn: 8.10.0 acorn-jsx: 5.3.2(acorn@8.10.0) eslint-visitor-keys: 3.4.3 /esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==, + } + engines: { node: ">=4" } hasBin: true dev: true /esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==, + } + engines: { node: ">=0.10" } dependencies: estraverse: 5.3.0 /esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, + } + engines: { node: ">=4.0" } dependencies: estraverse: 5.3.0 /estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, + } + engines: { node: ">=4.0" } /estree-walker@3.0.3: - resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + resolution: + { + integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==, + } dependencies: - '@types/estree': 1.0.1 + "@types/estree": 1.0.1 dev: true /esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, + } + engines: { node: ">=0.10.0" } /event-emitter@0.3.5: - resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} + resolution: + { + integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==, + } dependencies: d: 1.0.1 es5-ext: 0.10.62 dev: true /execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, + } + engines: { node: ">=10" } dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -4503,8 +5875,11 @@ packages: dev: true /execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} + resolution: + { + integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==, + } + engines: { node: ">=16.17" } dependencies: cross-spawn: 7.0.3 get-stream: 8.0.1 @@ -4518,19 +5893,28 @@ packages: dev: true /expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==, + } + engines: { node: ">=6" } dev: false /ext@1.7.0: - resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} + resolution: + { + integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==, + } dependencies: type: 2.7.2 dev: true /external-editor@3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==, + } + engines: { node: ">=4" } dependencies: chardet: 0.7.0 iconv-lite: 0.4.24 @@ -4538,98 +5922,152 @@ packages: dev: true /fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + resolution: + { + integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, + } /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} + resolution: + { + integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, + } + engines: { node: ">=8.6.0" } dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 + "@nodelib/fs.stat": 2.0.5 + "@nodelib/fs.walk": 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 /fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + resolution: + { + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, + } /fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + resolution: + { + integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, + } /fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} + resolution: + { + integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, + } dependencies: reusify: 1.0.4 /fflate@0.8.1: - resolution: {integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==} + resolution: + { + integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==, + } dev: true /figures@3.2.0: - resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==, + } + engines: { node: ">=8" } dependencies: escape-string-regexp: 1.0.5 dev: true /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + resolution: + { + integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==, + } + engines: { node: ^10.12.0 || >=12.0.0 } dependencies: flat-cache: 3.0.4 /file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} + resolution: + { + integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==, + } dev: false /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, + } + engines: { node: ">=8" } dependencies: to-regex-range: 5.0.1 /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==, + } + engines: { node: ">=10" } dependencies: locate-path: 6.0.0 path-exists: 4.0.0 /flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} - engines: {node: ^10.12.0 || >=12.0.0} + resolution: + { + integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==, + } + engines: { node: ^10.12.0 || >=12.0.0 } dependencies: flatted: 3.2.7 rimraf: 3.0.2 /flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + resolution: + { + integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==, + } /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} + resolution: + { + integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==, + } dev: true /for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + resolution: + { + integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==, + } dependencies: is-callable: 1.2.7 dev: false /foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==, + } + engines: { node: ">=14" } dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 dev: false /fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + resolution: + { + integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==, + } dev: false /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==, + } + engines: { node: ">=12" } dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 @@ -4637,8 +6075,11 @@ packages: dev: true /fs-extra@8.1.0: - resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} - engines: {node: '>=6 <7 || >=8'} + resolution: + { + integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==, + } + engines: { node: ">=6 <7 || >=8" } dependencies: graceful-fs: 4.2.11 jsonfile: 4.0.0 @@ -4646,28 +6087,43 @@ packages: dev: true /fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==, + } + engines: { node: ">= 8" } dependencies: minipass: 3.1.6 dev: false /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + resolution: + { + integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, + } /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + resolution: + { + integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, + } + engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } os: [darwin] requiresBuild: true optional: true /function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + resolution: + { + integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, + } /function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -4676,12 +6132,18 @@ packages: dev: false /functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + resolution: + { + integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, + } dev: false /gauge@3.0.2: - resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==, + } + engines: { node: ">=10" } dependencies: aproba: 2.0.0 color-support: 1.1.3 @@ -4695,15 +6157,24 @@ packages: dev: false /gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} + resolution: + { + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, + } + engines: { node: ">=6.9.0" } /get-func-name@2.0.2: - resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + resolution: + { + integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==, + } dev: true /get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} + resolution: + { + integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==, + } dependencies: function-bind: 1.1.2 has: 1.0.3 @@ -4712,37 +6183,55 @@ packages: dev: false /get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==, + } + engines: { node: ">=6" } dev: false /get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, + } + engines: { node: ">=10" } dev: true /get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==, + } + engines: { node: ">=16" } dev: true /get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 dev: false /get-tsconfig@4.6.2: - resolution: {integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==} + resolution: + { + integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==, + } dependencies: resolve-pkg-maps: 1.0.0 dev: true /get-uri@6.0.1: - resolution: {integrity: sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==, + } + engines: { node: ">= 14" } dependencies: basic-ftp: 5.0.3 data-uri-to-buffer: 5.0.1 @@ -4753,24 +6242,36 @@ packages: dev: true /github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + resolution: + { + integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==, + } dev: false /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, + } + engines: { node: ">= 6" } dependencies: is-glob: 4.0.3 /glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} + resolution: + { + integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==, + } + engines: { node: ">=10.13.0" } dependencies: is-glob: 4.0.3 /glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} - engines: {node: '>=16 || 14 >=14.17'} + resolution: + { + integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==, + } + engines: { node: ">=16 || 14 >=14.17" } hasBin: true dependencies: foreground-child: 3.1.1 @@ -4781,7 +6282,10 @@ packages: dev: false /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + resolution: + { + integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, + } dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -4791,8 +6295,11 @@ packages: path-is-absolute: 1.0.1 /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==, + } + engines: { node: ">=12" } dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -4802,27 +6309,39 @@ packages: dev: true /globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, + } + engines: { node: ">=4" } /globals@13.20.0: - resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==, + } + engines: { node: ">=8" } dependencies: type-fest: 0.20.2 /globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==, + } + engines: { node: ">= 0.4" } dependencies: define-properties: 1.2.1 dev: false /globby@10.0.2: - resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==, + } + engines: { node: ">=8" } dependencies: - '@types/glob': 7.2.0 + "@types/glob": 7.2.0 array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 @@ -4833,8 +6352,11 @@ packages: dev: true /globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, + } + engines: { node: ">=10" } dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -4845,32 +6367,50 @@ packages: dev: false /globrex@0.1.2: - resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + resolution: + { + integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==, + } dev: true /gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + resolution: + { + integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==, + } dependencies: get-intrinsic: 1.2.1 dev: false /graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + resolution: + { + integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, + } /gradient-string@2.0.2: - resolution: {integrity: sha512-rEDCuqUQ4tbD78TpzsMtt5OIf0cBCSDWSJtUDaF6JsAh+k0v9r++NzxNEG87oDZx9ZwGhD8DaezR2L/yrw0Jdw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-rEDCuqUQ4tbD78TpzsMtt5OIf0cBCSDWSJtUDaF6JsAh+k0v9r++NzxNEG87oDZx9ZwGhD8DaezR2L/yrw0Jdw==, + } + engines: { node: ">=10" } dependencies: chalk: 4.1.2 tinygradient: 1.1.5 dev: true /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + resolution: + { + integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==, + } /handlebars@4.7.8: - resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} - engines: {node: '>=0.4.7'} + resolution: + { + integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==, + } + engines: { node: ">=0.4.7" } hasBin: true dependencies: minimist: 1.2.8 @@ -4882,82 +6422,127 @@ packages: dev: true /hanji@0.0.5: - resolution: {integrity: sha512-Abxw1Lq+TnYiL4BueXqMau222fPSPMFtya8HdpWsz/xVAhifXou71mPh/kY2+08RgFcVccjG3uZHs6K5HAe3zw==} + resolution: + { + integrity: sha512-Abxw1Lq+TnYiL4BueXqMau222fPSPMFtya8HdpWsz/xVAhifXou71mPh/kY2+08RgFcVccjG3uZHs6K5HAe3zw==, + } dependencies: lodash.throttle: 4.1.1 sisteransi: 1.0.5 dev: true /has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + resolution: + { + integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==, + } dev: false /has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, + } + engines: { node: ">=4" } /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, + } + engines: { node: ">=8" } /has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + resolution: + { + integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==, + } dependencies: get-intrinsic: 1.2.1 dev: false /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==, + } + engines: { node: ">= 0.4" } dev: false /has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==, + } + engines: { node: ">= 0.4" } dev: false /has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==, + } + engines: { node: ">= 0.4" } dependencies: has-symbols: 1.0.3 dev: false /has-unicode@2.0.1: - resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} + resolution: + { + integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==, + } dev: false /has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} + resolution: + { + integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==, + } + engines: { node: ">= 0.4.0" } dependencies: function-bind: 1.1.2 dev: false /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==, + } + engines: { node: ">= 0.4" } dependencies: function-bind: 1.1.2 /header-case@1.0.1: - resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==} + resolution: + { + integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==, + } dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /heap@0.2.7: - resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} + resolution: + { + integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==, + } dev: true /html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + resolution: + { + integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==, + } dev: true /http-proxy-agent@7.0.0: - resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==, + } + engines: { node: ">= 14" } dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -4966,8 +6551,11 @@ packages: dev: true /https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==, + } + engines: { node: ">= 6" } dependencies: agent-base: 6.0.2 debug: 4.3.4 @@ -4976,8 +6564,11 @@ packages: dev: false /https-proxy-agent@7.0.2: - resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==, + } + engines: { node: ">= 14" } dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -4986,64 +6577,103 @@ packages: dev: true /human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} + resolution: + { + integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, + } + engines: { node: ">=10.17.0" } dev: true /human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} + resolution: + { + integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==, + } + engines: { node: ">=16.17.0" } dev: true /iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==, + } + engines: { node: ">=0.10.0" } dependencies: safer-buffer: 2.1.2 dev: true /ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + resolution: + { + integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, + } /ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} + resolution: + { + integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==, + } + engines: { node: ">= 4" } /immutable@4.3.4: - resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} + resolution: + { + integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==, + } dev: false /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, + } + engines: { node: ">=6" } dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} + resolution: + { + integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, + } + engines: { node: ">=0.8.19" } /indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==, + } + engines: { node: ">=8" } dev: true /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + resolution: + { + integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, + } dependencies: once: 1.4.0 wrappy: 1.0.2 /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + resolution: + { + integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, + } /ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + resolution: + { + integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==, + } /inquirer@7.3.3: - resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==} - engines: {node: '>=8.0.0'} + resolution: + { + integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==, + } + engines: { node: ">=8.0.0" } dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -5061,8 +6691,11 @@ packages: dev: true /inquirer@8.2.6: - resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} - engines: {node: '>=12.0.0'} + resolution: + { + integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==, + } + engines: { node: ">=12.0.0" } dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -5082,8 +6715,11 @@ packages: dev: true /internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==, + } + engines: { node: ">= 0.4" } dependencies: get-intrinsic: 1.2.1 has: 1.0.3 @@ -5091,25 +6727,40 @@ packages: dev: false /international-types@0.8.1: - resolution: {integrity: sha512-tajBCAHo4I0LIFlmQ9ZWfjMWVyRffzuvfbXCd6ssFt5u1Zw15DN0UBpVTItXdNa1ls+cpQt3Yw8+TxsfGF8JcA==} + resolution: + { + integrity: sha512-tajBCAHo4I0LIFlmQ9ZWfjMWVyRffzuvfbXCd6ssFt5u1Zw15DN0UBpVTItXdNa1ls+cpQt3Yw8+TxsfGF8JcA==, + } dev: false /invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + resolution: + { + integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, + } dependencies: loose-envify: 1.4.0 dev: false /ip@1.1.8: - resolution: {integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==} + resolution: + { + integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==, + } dev: true /ip@2.0.0: - resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} + resolution: + { + integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==, + } dev: true /is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + resolution: + { + integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==, + } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -5117,180 +6768,273 @@ packages: dev: false /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==, + } + engines: { node: ">= 0.4" } dependencies: has-tostringtag: 1.0.0 dev: false /is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + resolution: + { + integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==, + } dependencies: has-bigints: 1.0.2 dev: false /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, + } + engines: { node: ">=8" } dependencies: binary-extensions: 2.2.0 dev: false /is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 dev: false /is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==, + } + engines: { node: ">= 0.4" } dev: false /is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + resolution: + { + integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==, + } dependencies: hasown: 2.0.0 /is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==, + } + engines: { node: ">= 0.4" } dependencies: has-tostringtag: 1.0.0 dev: false /is-extendable@1.0.1: - resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==, + } + engines: { node: ">=0.10.0" } dependencies: is-plain-object: 2.0.4 dev: false /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, + } + engines: { node: ">=0.10.0" } /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + resolution: + { + integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==, + } dependencies: call-bind: 1.0.2 dev: false /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, + } + engines: { node: ">=8" } /is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==, + } + engines: { node: ">= 0.4" } dependencies: has-tostringtag: 1.0.0 dev: false /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, + } + engines: { node: ">=0.10.0" } dependencies: is-extglob: 2.1.1 /is-interactive@1.0.0: - resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==, + } + engines: { node: ">=8" } dev: true /is-lower-case@1.1.3: - resolution: {integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==} + resolution: + { + integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==, + } dependencies: lower-case: 1.1.4 dev: true /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} + resolution: + { + integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, + } dev: false /is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==, + } + engines: { node: ">= 0.4" } dev: false /is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==, + } + engines: { node: ">= 0.4" } dependencies: has-tostringtag: 1.0.0 dev: false /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} + resolution: + { + integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, + } + engines: { node: ">=0.12.0" } /is-path-cwd@2.2.0: - resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==, + } + engines: { node: ">=6" } dev: true /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, + } + engines: { node: ">=8" } /is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, + } + engines: { node: ">=0.10.0" } dependencies: isobject: 3.0.1 dev: false /is-promise@2.2.2: - resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} + resolution: + { + integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==, + } dev: true /is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 dev: false /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} + resolution: + { + integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==, + } dev: false /is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + resolution: + { + integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==, + } dependencies: call-bind: 1.0.2 dev: false /is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, + } + engines: { node: ">=8" } dev: true /is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + resolution: + { + integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } dev: true /is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==, + } + engines: { node: ">= 0.4" } dependencies: has-tostringtag: 1.0.0 dev: false /is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==, + } + engines: { node: ">= 0.4" } dependencies: has-symbols: 1.0.3 dev: false /is-typed-array@1.1.10: - resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==, + } + engines: { node: ">= 0.4" } dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -5300,62 +7044,98 @@ packages: dev: false /is-unicode-supported@0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==, + } + engines: { node: ">=10" } dev: true /is-upper-case@1.1.2: - resolution: {integrity: sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==} + resolution: + { + integrity: sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==, + } dependencies: upper-case: 1.1.3 dev: true /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} + resolution: + { + integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==, + } dev: false /is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + resolution: + { + integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==, + } dependencies: call-bind: 1.0.2 dev: false /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} + resolution: + { + integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==, + } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 dev: false /is-what@4.1.9: - resolution: {integrity: sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==} - engines: {node: '>=12.13'} + resolution: + { + integrity: sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==, + } + engines: { node: ">=12.13" } /isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + resolution: + { + integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, + } dev: false /isbinaryfile@4.0.10: - resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==} - engines: {node: '>= 8.0.0'} + resolution: + { + integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==, + } + engines: { node: ">= 8.0.0" } dev: true /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + resolution: + { + integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, + } /isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==, + } + engines: { node: ">=0.10.0" } dev: false /istanbul-lib-coverage@3.2.2: - resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==, + } + engines: { node: ">=8" } dev: true /istanbul-lib-report@3.0.1: - resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==, + } + engines: { node: ">=10" } dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 @@ -5363,8 +7143,11 @@ packages: dev: true /istanbul-lib-source-maps@4.0.1: - resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==, + } + engines: { node: ">=10" } dependencies: debug: 4.3.4 istanbul-lib-coverage: 3.2.2 @@ -5374,15 +7157,21 @@ packages: dev: true /istanbul-reports@3.1.6: - resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==, + } + engines: { node: ">=8" } dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 dev: true /iterator.prototype@1.1.0: - resolution: {integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==} + resolution: + { + integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==, + } dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.1 @@ -5392,7 +7181,10 @@ packages: dev: false /iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} + resolution: + { + integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==, + } dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.1 @@ -5402,48 +7194,69 @@ packages: dev: false /jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==, + } + engines: { node: ">=14" } dependencies: - '@isaacs/cliui': 8.0.2 + "@isaacs/cliui": 8.0.2 optionalDependencies: - '@pkgjs/parseargs': 0.11.0 + "@pkgjs/parseargs": 0.11.0 dev: false /jose@5.2.1: - resolution: {integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==} + resolution: + { + integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==, + } dev: false /jotai@2.6.4(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} - engines: {node: '>=12.20.0'} + resolution: + { + integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==, + } + engines: { node: ">=12.20.0" } peerDependencies: - '@types/react': '>=17.0.0' - react: '>=17.0.0' + "@types/react": ">=17.0.0" + react: ">=17.0.0" peerDependenciesMeta: - '@types/react': + "@types/react": optional: true react: optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 dev: false /js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + resolution: + { + integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, + } /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + resolution: + { + integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, + } dependencies: argparse: 2.0.1 /jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, + } + engines: { node: ">=4" } /json-diff@0.9.0: - resolution: {integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==} + resolution: + { + integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==, + } hasBin: true dependencies: cli-color: 2.0.3 @@ -5452,34 +7265,55 @@ packages: dev: true /json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + resolution: + { + integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, + } /json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + resolution: + { + integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==, + } /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + resolution: + { + integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==, + } hasBin: true dependencies: minimist: 1.2.8 dev: false /json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, + } + engines: { node: ">=6" } /jsonc-parser@3.2.1: - resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} + resolution: + { + integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==, + } dev: true /jsonfile@4.0.0: - resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + resolution: + { + integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==, + } optionalDependencies: graceful-fs: 4.2.11 dev: true /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + resolution: + { + integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==, + } dependencies: universalify: 2.0.0 optionalDependencies: @@ -5487,16 +7321,22 @@ packages: dev: true /jsx-ast-utils@3.3.3: - resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==, + } + engines: { node: ">=4.0" } dependencies: array-includes: 3.1.7 object.assign: 4.1.4 dev: false /jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} + resolution: + { + integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==, + } + engines: { node: ">=4.0" } dependencies: array-includes: 3.1.7 array.prototype.flat: 1.3.2 @@ -5505,186 +7345,279 @@ packages: dev: false /keygrip@1.1.0: - resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} - engines: {node: '>= 0.6'} + resolution: + { + integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==, + } + engines: { node: ">= 0.6" } dependencies: tsscmp: 1.0.6 dev: false /klona@2.0.6: - resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==, + } + engines: { node: ">= 8" } dev: false /language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} + resolution: + { + integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==, + } dev: false /language-tags@1.0.9: - resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} - engines: {node: '>=0.10'} + resolution: + { + integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==, + } + engines: { node: ">=0.10" } dependencies: language-subtag-registry: 0.3.22 dev: false /levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, + } + engines: { node: ">= 0.8.0" } dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 /linkify-it@5.0.0: - resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + resolution: + { + integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==, + } dependencies: uc.micro: 2.0.0 dev: false /linkifyjs@4.1.3: - resolution: {integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==} + resolution: + { + integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==, + } dev: false /local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==, + } + engines: { node: ">=14" } dependencies: mlly: 1.5.0 pkg-types: 1.0.3 dev: true /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==, + } + engines: { node: ">=10" } dependencies: p-locate: 5.0.0 /lodash.get@4.4.2: - resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} + resolution: + { + integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==, + } dev: true /lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + resolution: + { + integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==, + } /lodash.throttle@4.1.1: - resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + resolution: + { + integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==, + } dev: true /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + resolution: + { + integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, + } dev: true /log-symbols@3.0.0: - resolution: {integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==, + } + engines: { node: ">=8" } dependencies: chalk: 2.4.2 dev: true /log-symbols@4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==, + } + engines: { node: ">=10" } dependencies: chalk: 4.1.2 is-unicode-supported: 0.1.0 dev: true /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + resolution: + { + integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, + } dependencies: js-tokens: 4.0.0 dev: false /loupe@2.3.7: - resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + resolution: + { + integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==, + } dependencies: get-func-name: 2.0.2 dev: true /lower-case-first@1.0.2: - resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} + resolution: + { + integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==, + } dependencies: lower-case: 1.1.4 dev: true /lower-case@1.1.4: - resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} + resolution: + { + integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==, + } dev: true /lru-cache@10.2.0: - resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} - engines: {node: 14 || >=16.14} + resolution: + { + integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==, + } + engines: { node: 14 || >=16.14 } dev: false /lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + resolution: + { + integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, + } dependencies: yallist: 3.1.1 /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, + } + engines: { node: ">=10" } dependencies: yallist: 4.0.0 /lru-cache@7.18.3: - resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==, + } + engines: { node: ">=12" } dev: true /lru-queue@0.1.0: - resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==} + resolution: + { + integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==, + } dependencies: es5-ext: 0.10.62 dev: true /magic-string@0.30.6: - resolution: {integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==, + } + engines: { node: ">=12" } dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 + "@jridgewell/sourcemap-codec": 1.4.15 dev: true /magicast@0.3.3: - resolution: {integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==} + resolution: + { + integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==, + } dependencies: - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 + "@babel/parser": 7.23.9 + "@babel/types": 7.23.9 source-map-js: 1.0.2 dev: true /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==, + } + engines: { node: ">=8" } dependencies: semver: 6.3.1 dev: false /make-dir@4.0.0: - resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==, + } + engines: { node: ">=10" } dependencies: semver: 7.5.4 dev: true /make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + resolution: + { + integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, + } /mantine-modal-manager@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==} + resolution: + { + integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==, + } peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + "@mantine/core": 7.5.1 + "@mantine/hooks": 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + "@mantine/hooks": 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /markdown-it@14.0.0: - resolution: {integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==} + resolution: + { + integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==, + } hasBin: true dependencies: argparse: 2.0.1 @@ -5696,11 +7629,17 @@ packages: dev: false /mdurl@2.0.0: - resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + resolution: + { + integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==, + } dev: false /memoizee@0.4.15: - resolution: {integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==} + resolution: + { + integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==, + } dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -5713,102 +7652,156 @@ packages: dev: true /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + resolution: + { + integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, + } dev: true /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, + } + engines: { node: ">= 8" } /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} + resolution: + { + integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, + } + engines: { node: ">=8.6" } dependencies: braces: 3.0.2 picomatch: 2.3.1 /mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, + } + engines: { node: ">=6" } dev: true /mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==, + } + engines: { node: ">=12" } dev: true /mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==, + } + engines: { node: ">=10" } dev: false /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + resolution: + { + integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + } dependencies: brace-expansion: 1.1.11 /minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==, + } + engines: { node: ">=10" } dependencies: brace-expansion: 2.0.1 dev: true /minimatch@7.4.6: - resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==, + } + engines: { node: ">=10" } dependencies: brace-expansion: 2.0.1 dev: true /minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} + resolution: + { + integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==, + } + engines: { node: ">=16 || 14 >=14.17" } dependencies: brace-expansion: 2.0.1 /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + resolution: + { + integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, + } /minipass@3.1.6: - resolution: {integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==, + } + engines: { node: ">=8" } dependencies: yallist: 4.0.0 dev: false /minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==, + } + engines: { node: ">=8" } dev: false /minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==, + } + engines: { node: ">= 8" } dependencies: minipass: 3.1.6 yallist: 4.0.0 dev: false /mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} + resolution: + { + integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==, + } dev: false /mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + resolution: + { + integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==, + } hasBin: true dependencies: minimist: 1.2.8 dev: true /mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==, + } + engines: { node: ">=10" } hasBin: true dev: false /mlly@1.5.0: - resolution: {integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==} + resolution: + { + integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==, + } dependencies: acorn: 8.11.3 pathe: 1.1.2 @@ -5817,65 +7810,98 @@ packages: dev: true /mrmime@2.0.0: - resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==, + } + engines: { node: ">=10" } dev: true /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + resolution: + { + integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, + } /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + resolution: + { + integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, + } dev: false /mute-stream@0.0.8: - resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + resolution: + { + integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==, + } dev: true /nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + resolution: + { + integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==, + } + engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } hasBin: true /napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} + resolution: + { + integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==, + } dev: false /natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + resolution: + { + integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, + } /neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + resolution: + { + integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, + } dev: true /netmask@2.0.2: - resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} - engines: {node: '>= 0.4.0'} + resolution: + { + integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==, + } + engines: { node: ">= 0.4.0" } dev: true /next-auth@5.0.0-beta.9(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==} + resolution: + { + integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==, + } peerDependencies: - '@simplewebauthn/browser': ^9.0.1 - '@simplewebauthn/server': ^9.0.1 + "@simplewebauthn/browser": ^9.0.1 + "@simplewebauthn/server": ^9.0.1 next: ^14 nodemailer: ^6.6.5 react: ^18.2.0 peerDependenciesMeta: - '@simplewebauthn/browser': + "@simplewebauthn/browser": optional: true - '@simplewebauthn/server': + "@simplewebauthn/server": optional: true nodemailer: optional: true dependencies: - '@auth/core': 0.26.3 + "@auth/core": 0.26.3 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false /next-international@1.2.3: - resolution: {integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==} + resolution: + { + integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==, + } dependencies: client-only: 0.0.1 international-types: 0.8.1 @@ -5883,26 +7909,32 @@ packages: dev: false /next-tick@1.1.0: - resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} + resolution: + { + integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==, + } dev: true /next@14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0): - resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} - engines: {node: '>=18.17.0'} + resolution: + { + integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==, + } + engines: { node: ">=18.17.0" } hasBin: true peerDependencies: - '@opentelemetry/api': ^1.1.0 + "@opentelemetry/api": ^1.1.0 react: ^18.2.0 react-dom: ^18.2.0 sass: ^1.3.0 peerDependenciesMeta: - '@opentelemetry/api': + "@opentelemetry/api": optional: true sass: optional: true dependencies: - '@next/env': 14.1.0 - '@swc/helpers': 0.5.2 + "@next/env": 14.1.0 + "@swc/helpers": 0.5.2 busboy: 1.6.0 caniuse-lite: 1.0.30001583 graceful-fs: 4.2.11 @@ -5912,40 +7944,52 @@ packages: sass: 1.70.0 styled-jsx: 5.1.1(@babel/core@7.23.9)(react@18.2.0) optionalDependencies: - '@next/swc-darwin-arm64': 14.1.0 - '@next/swc-darwin-x64': 14.1.0 - '@next/swc-linux-arm64-gnu': 14.1.0 - '@next/swc-linux-arm64-musl': 14.1.0 - '@next/swc-linux-x64-gnu': 14.1.0 - '@next/swc-linux-x64-musl': 14.1.0 - '@next/swc-win32-arm64-msvc': 14.1.0 - '@next/swc-win32-ia32-msvc': 14.1.0 - '@next/swc-win32-x64-msvc': 14.1.0 + "@next/swc-darwin-arm64": 14.1.0 + "@next/swc-darwin-x64": 14.1.0 + "@next/swc-linux-arm64-gnu": 14.1.0 + "@next/swc-linux-arm64-musl": 14.1.0 + "@next/swc-linux-x64-gnu": 14.1.0 + "@next/swc-linux-x64-musl": 14.1.0 + "@next/swc-win32-arm64-msvc": 14.1.0 + "@next/swc-win32-ia32-msvc": 14.1.0 + "@next/swc-win32-x64-msvc": 14.1.0 transitivePeerDependencies: - - '@babel/core' + - "@babel/core" - babel-plugin-macros dev: false /no-case@2.3.2: - resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} + resolution: + { + integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==, + } dependencies: lower-case: 1.1.4 dev: true /node-abi@3.52.0: - resolution: {integrity: sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==, + } + engines: { node: ">=10" } dependencies: semver: 7.5.4 dev: false /node-addon-api@5.1.0: - resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} + resolution: + { + integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==, + } dev: false /node-fetch@2.6.11: - resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} - engines: {node: 4.x || >=6.0.0} + resolution: + { + integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==, + } + engines: { node: 4.x || >=6.0.0 } peerDependencies: encoding: ^0.1.0 peerDependenciesMeta: @@ -5956,11 +8000,14 @@ packages: dev: false /node-plop@0.26.3: - resolution: {integrity: sha512-Cov028YhBZ5aB7MdMWJEmwyBig43aGL5WT4vdoB28Oitau1zZAcHUn8Sgfk9HM33TqhtLJ9PlM/O0Mv+QpV/4Q==} - engines: {node: '>=8.9.4'} + resolution: + { + integrity: sha512-Cov028YhBZ5aB7MdMWJEmwyBig43aGL5WT4vdoB28Oitau1zZAcHUn8Sgfk9HM33TqhtLJ9PlM/O0Mv+QpV/4Q==, + } + engines: { node: ">=8.9.4" } dependencies: - '@babel/runtime-corejs3': 7.22.10 - '@types/inquirer': 6.5.0 + "@babel/runtime-corejs3": 7.22.10 + "@types/inquirer": 6.5.0 change-case: 3.1.0 del: 5.1.0 globby: 10.0.2 @@ -5973,40 +8020,61 @@ packages: dev: true /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + resolution: + { + integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==, + } dev: false /node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + resolution: + { + integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==, + } /nopt@5.0.0: - resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==, + } + engines: { node: ">=6" } dependencies: abbrev: 1.1.1 dev: false /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, + } + engines: { node: ">=0.10.0" } dev: false /npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, + } + engines: { node: ">=8" } dependencies: path-key: 3.1.1 dev: true /npm-run-path@5.2.0: - resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + resolution: + { + integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==, + } + engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } dependencies: path-key: 4.0.0 dev: true /npmlog@5.0.1: - resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} + resolution: + { + integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==, + } dependencies: are-we-there-yet: 2.0.0 console-control-strings: 1.1.0 @@ -6015,26 +8083,41 @@ packages: dev: false /oauth4webapi@2.10.3: - resolution: {integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==} + resolution: + { + integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==, + } dev: false /object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, + } + engines: { node: ">=0.10.0" } dev: false /object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} + resolution: + { + integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==, + } dev: false /object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==, + } + engines: { node: ">= 0.4" } dev: false /object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6043,8 +8126,11 @@ packages: dev: false /object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -6052,8 +8138,11 @@ packages: dev: false /object.entries@1.1.7: - resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -6061,8 +8150,11 @@ packages: dev: false /object.fromentries@2.0.6: - resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -6070,8 +8162,11 @@ packages: dev: false /object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6079,7 +8174,10 @@ packages: dev: false /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} + resolution: + { + integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==, + } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6088,29 +8186,41 @@ packages: dev: false /object.hasown@1.1.2: - resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} + resolution: + { + integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==, + } dependencies: define-properties: 1.2.0 es-abstract: 1.22.1 dev: false /object.omit@3.0.0: - resolution: {integrity: sha512-EO+BCv6LJfu+gBIF3ggLicFebFLN5zqzz/WWJlMFfkMyGth+oBkhxzDl0wx2W4GkLzuQs/FsSkXZb2IMWQqmBQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-EO+BCv6LJfu+gBIF3ggLicFebFLN5zqzz/WWJlMFfkMyGth+oBkhxzDl0wx2W4GkLzuQs/FsSkXZb2IMWQqmBQ==, + } + engines: { node: ">=0.10.0" } dependencies: is-extendable: 1.0.1 dev: false /object.pick@1.3.0: - resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==, + } + engines: { node: ">=0.10.0" } dependencies: isobject: 3.0.1 dev: false /object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -6118,8 +8228,11 @@ packages: dev: false /object.values@1.1.7: - resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6127,29 +8240,41 @@ packages: dev: false /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + resolution: + { + integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, + } dependencies: wrappy: 1.0.2 /onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, + } + engines: { node: ">=6" } dependencies: mimic-fn: 2.1.0 dev: true /onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==, + } + engines: { node: ">=12" } dependencies: mimic-fn: 4.0.0 dev: true /optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==, + } + engines: { node: ">= 0.8.0" } dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 + "@aashutoshrathi/word-wrap": 1.2.6 deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 @@ -6157,8 +8282,11 @@ packages: type-check: 0.4.0 /ora@4.1.1: - resolution: {integrity: sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==, + } + engines: { node: ">=8" } dependencies: chalk: 3.0.0 cli-cursor: 3.1.0 @@ -6171,8 +8299,11 @@ packages: dev: true /ora@5.4.1: - resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==, + } + engines: { node: ">=10" } dependencies: bl: 4.1.0 chalk: 4.1.2 @@ -6186,45 +8317,66 @@ packages: dev: true /orderedmap@2.1.1: - resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} + resolution: + { + integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==, + } dev: false /os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==, + } + engines: { node: ">=0.10.0" } dev: true /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, + } + engines: { node: ">=10" } dependencies: yocto-queue: 0.1.0 /p-limit@5.0.0: - resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} - engines: {node: '>=18'} + resolution: + { + integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==, + } + engines: { node: ">=18" } dependencies: yocto-queue: 1.0.0 dev: true /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==, + } + engines: { node: ">=10" } dependencies: p-limit: 3.1.0 /p-map@3.0.0: - resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==, + } + engines: { node: ">=8" } dependencies: aggregate-error: 3.1.0 dev: true /pac-proxy-agent@7.0.0: - resolution: {integrity: sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==, + } + engines: { node: ">= 14" } dependencies: - '@tootallnate/quickjs-emscripten': 0.23.0 + "@tootallnate/quickjs-emscripten": 0.23.0 agent-base: 7.1.0 debug: 4.3.4 get-uri: 6.0.1 @@ -6237,8 +8389,11 @@ packages: dev: true /pac-resolver@7.0.0: - resolution: {integrity: sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==, + } + engines: { node: ">= 14" } dependencies: degenerator: 5.0.1 ip: 1.1.8 @@ -6246,79 +8401,127 @@ packages: dev: true /param-case@2.1.1: - resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==} + resolution: + { + integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==, + } dependencies: no-case: 2.3.2 dev: true /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, + } + engines: { node: ">=6" } dependencies: callsites: 3.1.0 /pascal-case@2.0.1: - resolution: {integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==} + resolution: + { + integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==, + } dependencies: camel-case: 3.0.0 upper-case-first: 1.1.2 dev: true /path-case@2.1.1: - resolution: {integrity: sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==} + resolution: + { + integrity: sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==, + } dependencies: no-case: 2.3.2 dev: true /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, + } + engines: { node: ">=8" } /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, + } + engines: { node: ">=0.10.0" } /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, + } + engines: { node: ">=8" } /path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==, + } + engines: { node: ">=12" } dev: true /path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + resolution: + { + integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, + } /path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} + resolution: + { + integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==, + } + engines: { node: ">=16 || 14 >=14.17" } dependencies: lru-cache: 10.2.0 minipass: 5.0.0 dev: false /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, + } + engines: { node: ">=8" } /pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + resolution: + { + integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==, + } dev: true /pathval@1.1.1: - resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + resolution: + { + integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==, + } dev: true /picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + resolution: + { + integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, + } /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} + resolution: + { + integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, + } + engines: { node: ">=8.6" } /pkg-types@1.0.3: - resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + resolution: + { + integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==, + } dependencies: jsonc-parser: 3.2.1 mlly: 1.5.0 @@ -6326,8 +8529,11 @@ packages: dev: true /postcss-js@4.0.1(postcss@8.4.35): - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} + resolution: + { + integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==, + } + engines: { node: ^12 || ^14 || >= 16 } peerDependencies: postcss: ^8.4.21 dependencies: @@ -6336,8 +8542,11 @@ packages: dev: false /postcss-mixins@9.0.4(postcss@8.4.35): - resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} - engines: {node: '>=14.0'} + resolution: + { + integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==, + } + engines: { node: ">=14.0" } peerDependencies: postcss: ^8.2.14 dependencies: @@ -6349,8 +8558,11 @@ packages: dev: false /postcss-nested@6.0.1(postcss@8.4.35): - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} - engines: {node: '>=12.0'} + resolution: + { + integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==, + } + engines: { node: ">=12.0" } peerDependencies: postcss: ^8.2.14 dependencies: @@ -6359,9 +8571,12 @@ packages: dev: false /postcss-preset-mantine@1.13.0(postcss@8.4.35): - resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} + resolution: + { + integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==, + } peerDependencies: - postcss: '>=8.0.0' + postcss: ">=8.0.0" dependencies: postcss: 8.4.35 postcss-mixins: 9.0.4(postcss@8.4.35) @@ -6369,16 +8584,22 @@ packages: dev: false /postcss-selector-parser@6.0.13: - resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==, + } + engines: { node: ">=4" } dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 dev: false /postcss-simple-vars@7.0.1(postcss@8.4.35): - resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} - engines: {node: '>=14.0'} + resolution: + { + integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==, + } + engines: { node: ">=14.0" } peerDependencies: postcss: ^8.2.1 dependencies: @@ -6386,8 +8607,11 @@ packages: dev: false /postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==, + } + engines: { node: ^10 || ^12 || >=14 } dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -6395,8 +8619,11 @@ packages: dev: false /postcss@8.4.33: - resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==, + } + engines: { node: ^10 || ^12 || >=14 } dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -6404,8 +8631,11 @@ packages: dev: true /postcss@8.4.35: - resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} - engines: {node: ^10 || ^12 || >=14} + resolution: + { + integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==, + } + engines: { node: ^10 || ^12 || >=14 } dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -6413,21 +8643,30 @@ packages: dev: false /preact-render-to-string@5.2.3(preact@10.11.3): - resolution: {integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==} + resolution: + { + integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==, + } peerDependencies: - preact: '>=10' + preact: ">=10" dependencies: preact: 10.11.3 pretty-format: 3.8.0 dev: false /preact@10.11.3: - resolution: {integrity: sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==} + resolution: + { + integrity: sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==, + } dev: false /prebuild-install@7.1.1: - resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==, + } + engines: { node: ">=10" } hasBin: true dependencies: detect-libc: 2.0.2 @@ -6445,29 +8684,44 @@ packages: dev: false /prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, + } + engines: { node: ">= 0.8.0" } - /prettier@3.2.4: - resolution: {integrity: sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==} - engines: {node: '>=14'} + /prettier@3.2.5: + resolution: + { + integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==, + } + engines: { node: ">=14" } hasBin: true /pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + resolution: + { + integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==, + } + engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } dependencies: - '@jest/schemas': 29.6.3 + "@jest/schemas": 29.6.3 ansi-styles: 5.2.0 react-is: 18.2.0 dev: true /pretty-format@3.8.0: - resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} + resolution: + { + integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==, + } dev: false /prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + resolution: + { + integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, + } dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 @@ -6475,19 +8729,28 @@ packages: dev: false /prosemirror-changeset@2.2.1: - resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} + resolution: + { + integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==, + } dependencies: prosemirror-transform: 1.8.0 dev: false /prosemirror-collab@1.3.1: - resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} + resolution: + { + integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==, + } dependencies: prosemirror-state: 1.4.3 dev: false /prosemirror-commands@1.5.2: - resolution: {integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==} + resolution: + { + integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==, + } dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -6495,7 +8758,10 @@ packages: dev: false /prosemirror-dropcursor@1.8.1: - resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} + resolution: + { + integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==, + } dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 @@ -6503,7 +8769,10 @@ packages: dev: false /prosemirror-gapcursor@1.3.2: - resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} + resolution: + { + integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==, + } dependencies: prosemirror-keymap: 1.2.2 prosemirror-model: 1.19.4 @@ -6512,7 +8781,10 @@ packages: dev: false /prosemirror-history@1.3.2: - resolution: {integrity: sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==} + resolution: + { + integrity: sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==, + } dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 @@ -6521,28 +8793,40 @@ packages: dev: false /prosemirror-inputrules@1.4.0: - resolution: {integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==} + resolution: + { + integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==, + } dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 dev: false /prosemirror-keymap@1.2.2: - resolution: {integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==} + resolution: + { + integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==, + } dependencies: prosemirror-state: 1.4.3 w3c-keyname: 2.2.8 dev: false /prosemirror-markdown@1.12.0: - resolution: {integrity: sha512-6F5HS8Z0HDYiS2VQDZzfZP6A0s/I0gbkJy8NCzzDMtcsz3qrfqyroMMeoSjAmOhDITyon11NbXSzztfKi+frSQ==} + resolution: + { + integrity: sha512-6F5HS8Z0HDYiS2VQDZzfZP6A0s/I0gbkJy8NCzzDMtcsz3qrfqyroMMeoSjAmOhDITyon11NbXSzztfKi+frSQ==, + } dependencies: markdown-it: 14.0.0 prosemirror-model: 1.19.4 dev: false /prosemirror-menu@1.2.4: - resolution: {integrity: sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==} + resolution: + { + integrity: sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==, + } dependencies: crelt: 1.0.6 prosemirror-commands: 1.5.2 @@ -6551,19 +8835,28 @@ packages: dev: false /prosemirror-model@1.19.4: - resolution: {integrity: sha512-RPmVXxUfOhyFdayHawjuZCxiROsm9L4FCUA6pWI+l7n2yCBsWy9VpdE1hpDHUS8Vad661YLY9AzqfjLhAKQ4iQ==} + resolution: + { + integrity: sha512-RPmVXxUfOhyFdayHawjuZCxiROsm9L4FCUA6pWI+l7n2yCBsWy9VpdE1hpDHUS8Vad661YLY9AzqfjLhAKQ4iQ==, + } dependencies: orderedmap: 2.1.1 dev: false /prosemirror-schema-basic@1.2.2: - resolution: {integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==} + resolution: + { + integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==, + } dependencies: prosemirror-model: 1.19.4 dev: false /prosemirror-schema-list@1.3.0: - resolution: {integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==} + resolution: + { + integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==, + } dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -6571,7 +8864,10 @@ packages: dev: false /prosemirror-state@1.4.3: - resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} + resolution: + { + integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==, + } dependencies: prosemirror-model: 1.19.4 prosemirror-transform: 1.8.0 @@ -6579,7 +8875,10 @@ packages: dev: false /prosemirror-tables@1.3.5: - resolution: {integrity: sha512-JSZ2cCNlApu/ObAhdPyotrjBe2cimniniTpz60YXzbL0kZ+47nEYk2LWbfKU2lKpBkUNquta2PjteoNi4YCluQ==} + resolution: + { + integrity: sha512-JSZ2cCNlApu/ObAhdPyotrjBe2cimniniTpz60YXzbL0kZ+47nEYk2LWbfKU2lKpBkUNquta2PjteoNi4YCluQ==, + } dependencies: prosemirror-keymap: 1.2.2 prosemirror-model: 1.19.4 @@ -6589,14 +8888,17 @@ packages: dev: false /prosemirror-trailing-node@2.0.7(prosemirror-model@1.19.4)(prosemirror-state@1.4.3)(prosemirror-view@1.32.7): - resolution: {integrity: sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==} + resolution: + { + integrity: sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==, + } peerDependencies: prosemirror-model: ^1.19.0 prosemirror-state: ^1.4.2 prosemirror-view: ^1.31.2 dependencies: - '@remirror/core-constants': 2.0.2 - '@remirror/core-helpers': 3.0.0 + "@remirror/core-constants": 2.0.2 + "@remirror/core-helpers": 3.0.0 escape-string-regexp: 4.0.0 prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -6604,13 +8906,19 @@ packages: dev: false /prosemirror-transform@1.8.0: - resolution: {integrity: sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==} + resolution: + { + integrity: sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==, + } dependencies: prosemirror-model: 1.19.4 dev: false /prosemirror-view@1.32.7: - resolution: {integrity: sha512-pvxiOoD4shW41X5bYDjRQk3DSG4fMqxh36yPMt7VYgU3dWRmqFzWJM/R6zeo1KtC8nyk717ZbQND3CC9VNeptw==} + resolution: + { + integrity: sha512-pvxiOoD4shW41X5bYDjRQk3DSG4fMqxh36yPMt7VYgU3dWRmqFzWJM/R6zeo1KtC8nyk717ZbQND3CC9VNeptw==, + } dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -6618,8 +8926,11 @@ packages: dev: false /proxy-agent@6.3.0: - resolution: {integrity: sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==, + } + engines: { node: ">= 14" } dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -6634,30 +8945,48 @@ packages: dev: true /proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + resolution: + { + integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==, + } dev: true /pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + resolution: + { + integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==, + } dependencies: end-of-stream: 1.4.4 once: 1.4.0 dev: false /punycode.js@2.3.1: - resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==, + } + engines: { node: ">=6" } dev: false /punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==, + } + engines: { node: ">=6" } /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + resolution: + { + integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, + } /rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + resolution: + { + integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==, + } hasBin: true dependencies: deep-extend: 0.6.0 @@ -6666,7 +8995,10 @@ packages: strip-json-comments: 2.0.1 /react-dom@18.2.0(react@18.2.0): - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + resolution: + { + integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==, + } peerDependencies: react: ^18.2.0 dependencies: @@ -6676,15 +9008,24 @@ packages: dev: false /react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + resolution: + { + integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, + } dev: false /react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + resolution: + { + integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, + } dev: true /react-number-format@5.3.1(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==} + resolution: + { + integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==, + } peerDependencies: react: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-dom: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 @@ -6695,37 +9036,46 @@ packages: dev: false /react-refresh@0.14.0: - resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==, + } + engines: { node: ">=0.10.0" } dev: true /react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==, + } + engines: { node: ">=10" } peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 dev: false /react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==, + } + engines: { node: ">=10" } peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) @@ -6735,7 +9085,10 @@ packages: dev: false /react-ssr-prepass@1.5.0(react@18.2.0): - resolution: {integrity: sha512-yFNHrlVEReVYKsLI5lF05tZoHveA5pGzjFbFJY/3pOqqjGOmMmqx83N4hIjN2n6E1AOa+eQEUxs3CgRnPmT0RQ==} + resolution: + { + integrity: sha512-yFNHrlVEReVYKsLI5lF05tZoHveA5pGzjFbFJY/3pOqqjGOmMmqx83N4hIjN2n6E1AOa+eQEUxs3CgRnPmT0RQ==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -6743,16 +9096,19 @@ packages: dev: false /react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==, + } + engines: { node: ">=10" } peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 @@ -6760,26 +9116,32 @@ packages: dev: false /react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==, + } + engines: { node: ">=10" } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.23.2 + "@babel/runtime": 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) transitivePeerDependencies: - - '@types/react' + - "@types/react" dev: false /react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} + resolution: + { + integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==, + } peerDependencies: - react: '>=16.6.0' - react-dom: '>=16.6.0' + react: ">=16.6.0" + react-dom: ">=16.6.0" dependencies: - '@babel/runtime': 7.23.2 + "@babel/runtime": 7.23.2 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -6788,30 +9150,42 @@ packages: dev: false /react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, + } + engines: { node: ">=0.10.0" } dependencies: loose-envify: 1.4.0 dev: false /readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} + resolution: + { + integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, + } + engines: { node: ">= 6" } dependencies: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} + resolution: + { + integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, + } + engines: { node: ">=8.10.0" } dependencies: picomatch: 2.3.1 dev: false /reflect.getprototypeof@1.0.3: - resolution: {integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6822,8 +9196,11 @@ packages: dev: false /reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6834,11 +9211,17 @@ packages: dev: false /regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} + resolution: + { + integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==, + } /regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6846,29 +9229,44 @@ packages: dev: false /registry-auth-token@3.3.2: - resolution: {integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==} + resolution: + { + integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==, + } dependencies: rc: 1.2.8 safe-buffer: 5.2.1 dev: true /registry-url@3.1.0: - resolution: {integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==, + } + engines: { node: ">=0.10.0" } dependencies: rc: 1.2.8 dev: true /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, + } + engines: { node: ">=4" } /resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolution: + { + integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, + } dev: true /resolve@1.22.4: - resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} + resolution: + { + integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==, + } hasBin: true dependencies: is-core-module: 2.13.1 @@ -6876,7 +9274,10 @@ packages: supports-preserve-symlinks-flag: 1.0.0 /resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + resolution: + { + integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==, + } dependencies: is-core-module: 2.13.1 path-parse: 1.0.7 @@ -6884,75 +9285,105 @@ packages: dev: false /restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, + } + engines: { node: ">=8" } dependencies: onetime: 5.1.2 signal-exit: 3.0.7 dev: true /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + resolution: + { + integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, + } + engines: { iojs: ">=1.0.0", node: ">=0.10.0" } /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + resolution: + { + integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, + } dependencies: glob: 7.2.3 /rollup@4.9.6: - resolution: {integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} + resolution: + { + integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==, + } + engines: { node: ">=18.0.0", npm: ">=8.0.0" } hasBin: true dependencies: - '@types/estree': 1.0.5 + "@types/estree": 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.9.6 - '@rollup/rollup-android-arm64': 4.9.6 - '@rollup/rollup-darwin-arm64': 4.9.6 - '@rollup/rollup-darwin-x64': 4.9.6 - '@rollup/rollup-linux-arm-gnueabihf': 4.9.6 - '@rollup/rollup-linux-arm64-gnu': 4.9.6 - '@rollup/rollup-linux-arm64-musl': 4.9.6 - '@rollup/rollup-linux-riscv64-gnu': 4.9.6 - '@rollup/rollup-linux-x64-gnu': 4.9.6 - '@rollup/rollup-linux-x64-musl': 4.9.6 - '@rollup/rollup-win32-arm64-msvc': 4.9.6 - '@rollup/rollup-win32-ia32-msvc': 4.9.6 - '@rollup/rollup-win32-x64-msvc': 4.9.6 + "@rollup/rollup-android-arm-eabi": 4.9.6 + "@rollup/rollup-android-arm64": 4.9.6 + "@rollup/rollup-darwin-arm64": 4.9.6 + "@rollup/rollup-darwin-x64": 4.9.6 + "@rollup/rollup-linux-arm-gnueabihf": 4.9.6 + "@rollup/rollup-linux-arm64-gnu": 4.9.6 + "@rollup/rollup-linux-arm64-musl": 4.9.6 + "@rollup/rollup-linux-riscv64-gnu": 4.9.6 + "@rollup/rollup-linux-x64-gnu": 4.9.6 + "@rollup/rollup-linux-x64-musl": 4.9.6 + "@rollup/rollup-win32-arm64-msvc": 4.9.6 + "@rollup/rollup-win32-ia32-msvc": 4.9.6 + "@rollup/rollup-win32-x64-msvc": 4.9.6 fsevents: 2.3.3 dev: true /rope-sequence@1.3.4: - resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} + resolution: + { + integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==, + } dev: false /run-async@2.4.1: - resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} - engines: {node: '>=0.12.0'} + resolution: + { + integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==, + } + engines: { node: ">=0.12.0" } dev: true /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + resolution: + { + integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, + } dependencies: queue-microtask: 1.2.3 /rxjs@6.6.7: - resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} - engines: {npm: '>=2.0.0'} + resolution: + { + integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==, + } + engines: { npm: ">=2.0.0" } dependencies: tslib: 1.14.1 dev: true /rxjs@7.8.1: - resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} + resolution: + { + integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==, + } dependencies: tslib: 2.5.0 dev: true /safe-array-concat@1.0.0: - resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} - engines: {node: '>=0.4'} + resolution: + { + integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==, + } + engines: { node: ">=0.4" } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -6961,8 +9392,11 @@ packages: dev: false /safe-array-concat@1.0.1: - resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} - engines: {node: '>=0.4'} + resolution: + { + integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==, + } + engines: { node: ">=0.4" } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -6971,10 +9405,16 @@ packages: dev: false /safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + resolution: + { + integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, + } /safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + resolution: + { + integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==, + } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -6982,12 +9422,18 @@ packages: dev: false /safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + resolution: + { + integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==, + } dev: true /sass@1.70.0: - resolution: {integrity: sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==, + } + engines: { node: ">=14.0.0" } hasBin: true dependencies: chokidar: 3.5.3 @@ -6996,39 +9442,60 @@ packages: dev: false /scheduler@0.23.0: - resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + resolution: + { + integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==, + } dependencies: loose-envify: 1.4.0 dev: false /semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + resolution: + { + integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, + } hasBin: true /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==, + } + engines: { node: ">=10" } dependencies: lru-cache: 6.0.0 /sentence-case@2.1.1: - resolution: {integrity: sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==} + resolution: + { + integrity: sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==, + } dependencies: no-case: 2.3.2 upper-case-first: 1.1.2 dev: true /server-only@0.0.1: - resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} + resolution: + { + integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==, + } dev: false /set-blocking@2.0.0: - resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + resolution: + { + integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==, + } dev: false /set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==, + } + engines: { node: ">= 0.4" } dependencies: define-data-property: 1.1.1 functions-have-names: 1.2.3 @@ -7036,17 +9503,26 @@ packages: dev: false /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, + } + engines: { node: ">=8" } dependencies: shebang-regex: 3.0.0 /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, + } + engines: { node: ">=8" } /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + resolution: + { + integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==, + } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -7054,22 +9530,37 @@ packages: dev: false /siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + resolution: + { + integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==, + } dev: true /signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + resolution: + { + integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, + } /signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} + resolution: + { + integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==, + } + engines: { node: ">=14" } /simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + resolution: + { + integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==, + } dev: false /simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} + resolution: + { + integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==, + } dependencies: decompress-response: 6.0.0 once: 1.4.0 @@ -7077,36 +9568,54 @@ packages: dev: false /sirv@2.0.4: - resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} - engines: {node: '>= 10'} + resolution: + { + integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==, + } + engines: { node: ">= 10" } dependencies: - '@polka/url': 1.0.0-next.24 + "@polka/url": 1.0.0-next.24 mrmime: 2.0.0 totalist: 3.0.1 dev: true /sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + resolution: + { + integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, + } dev: true /slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, + } + engines: { node: ">=8" } /smart-buffer@4.2.0: - resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} - engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + resolution: + { + integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==, + } + engines: { node: ">= 6.0.0", npm: ">= 3.0.0" } dev: true /snake-case@2.1.0: - resolution: {integrity: sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==} + resolution: + { + integrity: sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==, + } dependencies: no-case: 2.3.2 dev: true /socks-proxy-agent@8.0.1: - resolution: {integrity: sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==} - engines: {node: '>= 14'} + resolution: + { + integrity: sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==, + } + engines: { node: ">= 14" } dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -7116,53 +9625,80 @@ packages: dev: true /socks@2.7.1: - resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} - engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + resolution: + { + integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==, + } + engines: { node: ">= 10.13.0", npm: ">= 3.0.0" } dependencies: ip: 2.0.0 smart-buffer: 4.2.0 dev: true /source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, + } + engines: { node: ">=0.10.0" } /source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + resolution: + { + integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, + } dependencies: buffer-from: 1.1.2 source-map: 0.6.1 dev: true /source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, + } + engines: { node: ">=0.10.0" } dev: true /stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + resolution: + { + integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==, + } dev: true /std-env@3.7.0: - resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + resolution: + { + integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==, + } dev: true /streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} + resolution: + { + integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==, + } + engines: { node: ">=10.0.0" } dev: false /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, + } + engines: { node: ">=8" } dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 /string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==, + } + engines: { node: ">=12" } dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 @@ -7170,7 +9706,10 @@ packages: dev: false /string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} + resolution: + { + integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==, + } dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -7183,8 +9722,11 @@ packages: dev: false /string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -7192,7 +9734,10 @@ packages: dev: false /string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} + resolution: + { + integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==, + } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -7200,7 +9745,10 @@ packages: dev: false /string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} + resolution: + { + integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==, + } dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -7208,73 +9756,106 @@ packages: dev: false /string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + resolution: + { + integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, + } dependencies: safe-buffer: 5.2.1 /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, + } + engines: { node: ">=8" } dependencies: ansi-regex: 5.0.1 /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==, + } + engines: { node: ">=12" } dependencies: ansi-regex: 6.0.1 dev: false /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, + } + engines: { node: ">=4" } dev: false /strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, + } + engines: { node: ">=6" } dev: true /strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, + } + engines: { node: ">=12" } dev: true /strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} + resolution: + { + integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==, + } + engines: { node: ">=0.10.0" } /strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, + } + engines: { node: ">=8" } /strip-literal@1.3.0: - resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} + resolution: + { + integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==, + } dependencies: acorn: 8.11.3 dev: true /styled-jsx@5.1.1(@babel/core@7.23.9)(react@18.2.0): - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} + resolution: + { + integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==, + } + engines: { node: ">= 12.0.0" } peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' + "@babel/core": "*" + babel-plugin-macros: "*" + react: ">= 16.8.0 || 17.x.x || ^18.0.0-0" peerDependenciesMeta: - '@babel/core': + "@babel/core": optional: true babel-plugin-macros: optional: true dependencies: - '@babel/core': 7.23.9 + "@babel/core": 7.23.9 client-only: 0.0.1 react: 18.2.0 dev: false /sugarss@4.0.1(postcss@8.4.35): - resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} - engines: {node: '>=12.0'} + resolution: + { + integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==, + } + engines: { node: ">=12.0" } peerDependencies: postcss: ^8.3.3 dependencies: @@ -7282,40 +9863,61 @@ packages: dev: false /superjson@2.2.1: - resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} - engines: {node: '>=16'} + resolution: + { + integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==, + } + engines: { node: ">=16" } dependencies: copy-anything: 3.0.4 /supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, + } + engines: { node: ">=4" } dependencies: has-flag: 3.0.0 /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, + } + engines: { node: ">=8" } dependencies: has-flag: 4.0.0 /supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, + } + engines: { node: ">= 0.4" } /swap-case@1.1.2: - resolution: {integrity: sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==} + resolution: + { + integrity: sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==, + } dependencies: lower-case: 1.1.4 upper-case: 1.1.3 dev: true /tabbable@6.2.0: - resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + resolution: + { + integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==, + } dev: false /tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} + resolution: + { + integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==, + } dependencies: chownr: 1.1.4 mkdirp-classic: 0.5.3 @@ -7324,8 +9926,11 @@ packages: dev: false /tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==, + } + engines: { node: ">=6" } dependencies: bl: 4.1.0 end-of-stream: 1.4.4 @@ -7335,8 +9940,11 @@ packages: dev: false /tar@6.2.0: - resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==, + } + engines: { node: ">=10" } dependencies: chownr: 2.0.0 fs-minipass: 2.1.0 @@ -7347,126 +9955,183 @@ packages: dev: false /test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==, + } + engines: { node: ">=8" } dependencies: - '@istanbuljs/schema': 0.1.3 + "@istanbuljs/schema": 0.1.3 glob: 7.2.3 minimatch: 3.1.2 dev: true /text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + resolution: + { + integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==, + } /throttle-debounce@3.0.1: - resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==, + } + engines: { node: ">=10" } dev: false /through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + resolution: + { + integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==, + } dev: true /timers-ext@0.1.7: - resolution: {integrity: sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==} + resolution: + { + integrity: sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==, + } dependencies: es5-ext: 0.10.62 next-tick: 1.1.0 dev: true /tinybench@2.6.0: - resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} + resolution: + { + integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==, + } dev: true /tinycolor2@1.6.0: - resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} + resolution: + { + integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==, + } dev: true /tinygradient@1.1.5: - resolution: {integrity: sha512-8nIfc2vgQ4TeLnk2lFj4tRLvvJwEfQuabdsmvDdQPT0xlk9TaNtpGd6nNRxXoK6vQhN6RSzj+Cnp5tTQmpxmbw==} + resolution: + { + integrity: sha512-8nIfc2vgQ4TeLnk2lFj4tRLvvJwEfQuabdsmvDdQPT0xlk9TaNtpGd6nNRxXoK6vQhN6RSzj+Cnp5tTQmpxmbw==, + } dependencies: - '@types/tinycolor2': 1.4.3 + "@types/tinycolor2": 1.4.3 tinycolor2: 1.6.0 dev: true /tinypool@0.8.2: - resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==, + } + engines: { node: ">=14.0.0" } dev: true /tinyspy@2.2.0: - resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} - engines: {node: '>=14.0.0'} + resolution: + { + integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==, + } + engines: { node: ">=14.0.0" } dev: true /tippy.js@6.3.7: - resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} + resolution: + { + integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==, + } dependencies: - '@popperjs/core': 2.11.8 + "@popperjs/core": 2.11.8 dev: false /title-case@2.1.1: - resolution: {integrity: sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==} + resolution: + { + integrity: sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==, + } dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} + resolution: + { + integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==, + } + engines: { node: ">=0.6.0" } dependencies: os-tmpdir: 1.0.2 dev: true /to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, + } + engines: { node: ">=4" } /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} + resolution: + { + integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, + } + engines: { node: ">=8.0" } dependencies: is-number: 7.0.0 /totalist@3.0.1: - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==, + } + engines: { node: ">=6" } dev: true /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + resolution: + { + integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, + } dev: false /ts-api-utils@1.0.1(typescript@5.3.3): - resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} - engines: {node: '>=16.13.0'} + resolution: + { + integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==, + } + engines: { node: ">=16.13.0" } peerDependencies: - typescript: '>=4.2.0' + typescript: ">=4.2.0" dependencies: typescript: 5.3.3 dev: false /ts-node@10.9.1(@types/node@20.11.16)(typescript@5.3.3): - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} + resolution: + { + integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==, + } hasBin: true peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' + "@swc/core": ">=1.2.50" + "@swc/wasm": ">=1.2.50" + "@types/node": "*" + typescript: ">=2.7" peerDependenciesMeta: - '@swc/core': + "@swc/core": optional: true - '@swc/wasm': + "@swc/wasm": optional: true dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.11.16 + "@cspotcode/source-map-support": 0.8.1 + "@tsconfig/node10": 1.0.9 + "@tsconfig/node12": 1.0.11 + "@tsconfig/node14": 1.0.3 + "@tsconfig/node16": 1.0.4 + "@types/node": 20.11.16 acorn: 8.11.3 acorn-walk: 8.3.2 arg: 4.1.0 @@ -7479,8 +10144,11 @@ packages: dev: true /tsconfck@3.0.1(typescript@5.3.3): - resolution: {integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==} - engines: {node: ^18 || >=20} + resolution: + { + integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==, + } + engines: { node: ^18 || >=20 } hasBin: true peerDependencies: typescript: ^5.0.0 @@ -7492,34 +10160,52 @@ packages: dev: true /tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + resolution: + { + integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==, + } dependencies: - '@types/json5': 0.0.29 + "@types/json5": 0.0.29 json5: 1.0.2 minimist: 1.2.8 strip-bom: 3.0.0 dev: false /tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + resolution: + { + integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==, + } dev: true /tslib@2.5.0: - resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} + resolution: + { + integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==, + } /tsscmp@1.0.6: - resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} - engines: {node: '>=0.6.x'} + resolution: + { + integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==, + } + engines: { node: ">=0.6.x" } dev: false /tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + resolution: + { + integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==, + } dependencies: safe-buffer: 5.2.1 dev: false /turbo-darwin-64@1.12.3: - resolution: {integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==} + resolution: + { + integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==, + } cpu: [x64] os: [darwin] requiresBuild: true @@ -7527,7 +10213,10 @@ packages: optional: true /turbo-darwin-arm64@1.12.3: - resolution: {integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==} + resolution: + { + integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==, + } cpu: [arm64] os: [darwin] requiresBuild: true @@ -7535,7 +10224,10 @@ packages: optional: true /turbo-linux-64@1.12.3: - resolution: {integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==} + resolution: + { + integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==, + } cpu: [x64] os: [linux] requiresBuild: true @@ -7543,7 +10235,10 @@ packages: optional: true /turbo-linux-arm64@1.12.3: - resolution: {integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==} + resolution: + { + integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==, + } cpu: [arm64] os: [linux] requiresBuild: true @@ -7551,7 +10246,10 @@ packages: optional: true /turbo-windows-64@1.12.3: - resolution: {integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==} + resolution: + { + integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==, + } cpu: [x64] os: [win32] requiresBuild: true @@ -7559,7 +10257,10 @@ packages: optional: true /turbo-windows-arm64@1.12.3: - resolution: {integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==} + resolution: + { + integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==, + } cpu: [arm64] os: [win32] requiresBuild: true @@ -7567,7 +10268,10 @@ packages: optional: true /turbo@1.12.3: - resolution: {integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==} + resolution: + { + integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==, + } hasBin: true optionalDependencies: turbo-darwin-64: 1.12.3 @@ -7579,46 +10283,73 @@ packages: dev: true /type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} + resolution: + { + integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, + } + engines: { node: ">= 0.8.0" } dependencies: prelude-ls: 1.2.1 /type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} + resolution: + { + integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==, + } + engines: { node: ">=4" } dev: true /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==, + } + engines: { node: ">=10" } /type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, + } + engines: { node: ">=10" } dev: true /type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} + resolution: + { + integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==, + } + engines: { node: ">=12.20" } dev: false /type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} + resolution: + { + integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==, + } + engines: { node: ">=14.16" } dev: false /type@1.2.0: - resolution: {integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==} + resolution: + { + integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==, + } dev: true /type@2.7.2: - resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} + resolution: + { + integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==, + } dev: true /typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -7626,8 +10357,11 @@ packages: dev: false /typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==, + } + engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.2 for-each: 0.3.3 @@ -7636,8 +10370,11 @@ packages: dev: false /typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==, + } + engines: { node: ">= 0.4" } dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -7647,7 +10384,10 @@ packages: dev: false /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + resolution: + { + integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==, + } dependencies: call-bind: 1.0.2 for-each: 0.3.3 @@ -7655,27 +10395,42 @@ packages: dev: false /typescript@5.3.3: - resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} - engines: {node: '>=14.17'} + resolution: + { + integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==, + } + engines: { node: ">=14.17" } /uc.micro@2.0.0: - resolution: {integrity: sha512-DffL94LsNOccVn4hyfRe5rdKa273swqeA5DJpMOeFmEn1wCDc7nAbbB0gXlgBCL7TNzeTv6G7XVWzan7iJtfig==} + resolution: + { + integrity: sha512-DffL94LsNOccVn4hyfRe5rdKa273swqeA5DJpMOeFmEn1wCDc7nAbbB0gXlgBCL7TNzeTv6G7XVWzan7iJtfig==, + } dev: false /ufo@1.3.2: - resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} + resolution: + { + integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==, + } dev: true /uglify-js@3.17.4: - resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} - engines: {node: '>=0.8.0'} + resolution: + { + integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==, + } + engines: { node: ">=0.8.0" } hasBin: true requiresBuild: true dev: true optional: true /unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + resolution: + { + integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==, + } dependencies: call-bind: 1.0.2 has-bigints: 1.0.2 @@ -7684,23 +10439,35 @@ packages: dev: false /undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + resolution: + { + integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==, + } /universalify@0.1.2: - resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} - engines: {node: '>= 4.0.0'} + resolution: + { + integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==, + } + engines: { node: ">= 4.0.0" } dev: true /universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} + resolution: + { + integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==, + } + engines: { node: ">= 10.0.0" } dev: true /update-browserslist-db@1.0.13(browserslist@4.22.1): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + resolution: + { + integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, + } hasBin: true peerDependencies: - browserslist: '>= 4.21.0' + browserslist: ">= 4.21.0" dependencies: browserslist: 4.22.1 escalade: 3.1.1 @@ -7708,54 +10475,75 @@ packages: dev: false /update-browserslist-db@1.0.13(browserslist@4.22.3): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + resolution: + { + integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, + } hasBin: true peerDependencies: - browserslist: '>= 4.21.0' + browserslist: ">= 4.21.0" dependencies: browserslist: 4.22.3 escalade: 3.1.1 picocolors: 1.0.0 /update-check@1.5.4: - resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} + resolution: + { + integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==, + } dependencies: registry-auth-token: 3.3.2 registry-url: 3.1.0 dev: true /upper-case-first@1.1.2: - resolution: {integrity: sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==} + resolution: + { + integrity: sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==, + } dependencies: upper-case: 1.1.3 dev: true /upper-case@1.1.3: - resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==} + resolution: + { + integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==, + } dev: true /uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + resolution: + { + integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, + } dependencies: punycode: 2.3.0 /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==, + } + engines: { node: ">=10" } peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 tslib: 2.5.0 dev: false /use-composed-ref@1.3.0(react@18.2.0): - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} + resolution: + { + integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==, + } peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -7763,74 +10551,98 @@ packages: dev: false /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} + resolution: + { + integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==, + } peerDependencies: - '@types/react': '*' + "@types/react": "*" react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 dev: false /use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} + resolution: + { + integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==, + } peerDependencies: - '@types/react': '*' + "@types/react": "*" react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 react: 18.2.0 use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false /use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==, + } + engines: { node: ">=10" } peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 + "@types/react": ^16.9.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - '@types/react': + "@types/react": optional: true dependencies: - '@types/react': 18.2.55 + "@types/react": 18.2.55 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 dev: false /util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + resolution: + { + integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, + } /v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + resolution: + { + integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==, + } dev: true /v8-to-istanbul@9.2.0: - resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} - engines: {node: '>=10.12.0'} + resolution: + { + integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==, + } + engines: { node: ">=10.12.0" } dependencies: - '@jridgewell/trace-mapping': 0.3.18 - '@types/istanbul-lib-coverage': 2.0.6 + "@jridgewell/trace-mapping": 0.3.18 + "@types/istanbul-lib-coverage": 2.0.6 convert-source-map: 2.0.0 dev: true /validate-npm-package-name@5.0.0: - resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + resolution: + { + integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==, + } + engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 } dependencies: builtins: 5.0.1 dev: true /vite-node@1.2.2(@types/node@20.11.16): - resolution: {integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==} - engines: {node: ^18.0.0 || >=20.0.0} + resolution: + { + integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==, + } + engines: { node: ^18.0.0 || >=20.0.0 } hasBin: true dependencies: cac: 6.7.14 @@ -7839,7 +10651,7 @@ packages: picocolors: 1.0.0 vite: 5.0.12(@types/node@20.11.16) transitivePeerDependencies: - - '@types/node' + - "@types/node" - less - lightningcss - sass @@ -7850,9 +10662,12 @@ packages: dev: true /vite-tsconfig-paths@4.3.1(typescript@5.3.3)(vite@5.0.12): - resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==} + resolution: + { + integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==, + } peerDependencies: - vite: '*' + vite: "*" peerDependenciesMeta: vite: optional: true @@ -7867,19 +10682,22 @@ packages: dev: true /vite@5.0.12(@types/node@20.11.16): - resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==} - engines: {node: ^18.0.0 || >=20.0.0} + resolution: + { + integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==, + } + engines: { node: ^18.0.0 || >=20.0.0 } hasBin: true peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' + "@types/node": ^18.0.0 || >=20.0.0 + less: "*" lightningcss: ^1.21.0 - sass: '*' - stylus: '*' - sugarss: '*' + sass: "*" + stylus: "*" + sugarss: "*" terser: ^5.4.0 peerDependenciesMeta: - '@types/node': + "@types/node": optional: true less: optional: true @@ -7894,7 +10712,7 @@ packages: terser: optional: true dependencies: - '@types/node': 20.11.16 + "@types/node": 20.11.16 esbuild: 0.19.8 postcss: 8.4.33 rollup: 4.9.6 @@ -7903,37 +10721,40 @@ packages: dev: true /vitest@1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2): - resolution: {integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==} - engines: {node: ^18.0.0 || >=20.0.0} + resolution: + { + integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==, + } + engines: { node: ^18.0.0 || >=20.0.0 } hasBin: true peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': ^1.0.0 - '@vitest/ui': ^1.0.0 - happy-dom: '*' - jsdom: '*' + "@edge-runtime/vm": "*" + "@types/node": ^18.0.0 || >=20.0.0 + "@vitest/browser": ^1.0.0 + "@vitest/ui": ^1.0.0 + happy-dom: "*" + jsdom: "*" peerDependenciesMeta: - '@edge-runtime/vm': + "@edge-runtime/vm": optional: true - '@types/node': + "@types/node": optional: true - '@vitest/browser': + "@vitest/browser": optional: true - '@vitest/ui': + "@vitest/ui": optional: true happy-dom: optional: true jsdom: optional: true dependencies: - '@types/node': 20.11.16 - '@vitest/expect': 1.2.2 - '@vitest/runner': 1.2.2 - '@vitest/snapshot': 1.2.2 - '@vitest/spy': 1.2.2 - '@vitest/ui': 1.2.2(vitest@1.2.2) - '@vitest/utils': 1.2.2 + "@types/node": 20.11.16 + "@vitest/expect": 1.2.2 + "@vitest/runner": 1.2.2 + "@vitest/snapshot": 1.2.2 + "@vitest/spy": 1.2.2 + "@vitest/ui": 1.2.2(vitest@1.2.2) + "@vitest/utils": 1.2.2 acorn-walk: 8.3.2 cac: 6.7.14 chai: 4.4.1 @@ -7961,28 +10782,43 @@ packages: dev: true /w3c-keyname@2.2.8: - resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} + resolution: + { + integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==, + } dev: false /wcwidth@1.0.1: - resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + resolution: + { + integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==, + } dependencies: defaults: 1.0.4 dev: true /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + resolution: + { + integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, + } dev: false /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + resolution: + { + integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, + } dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 dev: false /which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + resolution: + { + integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==, + } dependencies: is-bigint: 1.0.4 is-boolean-object: 1.1.2 @@ -7992,8 +10828,11 @@ packages: dev: false /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==, + } + engines: { node: ">= 0.4" } dependencies: function.prototype.name: 1.1.5 has-tostringtag: 1.0.0 @@ -8010,7 +10849,10 @@ packages: dev: false /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} + resolution: + { + integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==, + } dependencies: is-map: 2.0.2 is-set: 2.0.2 @@ -8019,8 +10861,11 @@ packages: dev: false /which-typed-array@1.1.11: - resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} - engines: {node: '>= 0.4'} + resolution: + { + integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==, + } + engines: { node: ">= 0.4" } dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -8030,14 +10875,20 @@ packages: dev: false /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} + resolution: + { + integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, + } + engines: { node: ">= 8" } dependencies: isexe: 2.0.0 /why-is-node-running@2.2.2: - resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==, + } + engines: { node: ">=8" } hasBin: true dependencies: siginfo: 2.0.0 @@ -8045,18 +10896,27 @@ packages: dev: true /wide-align@1.1.5: - resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} + resolution: + { + integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==, + } dependencies: string-width: 4.2.3 dev: false /wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + resolution: + { + integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==, + } dev: true /wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} + resolution: + { + integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==, + } + engines: { node: ">=8" } dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -8064,8 +10924,11 @@ packages: dev: true /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, + } + engines: { node: ">=10" } dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -8073,8 +10936,11 @@ packages: dev: false /wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} + resolution: + { + integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==, + } + engines: { node: ">=12" } dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 @@ -8082,27 +10948,48 @@ packages: dev: false /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + resolution: + { + integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, + } /yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + resolution: + { + integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, + } /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + resolution: + { + integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, + } /yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} + resolution: + { + integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==, + } + engines: { node: ">=6" } dev: true /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} + resolution: + { + integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, + } + engines: { node: ">=10" } /yocto-queue@1.0.0: - resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} - engines: {node: '>=12.20'} + resolution: + { + integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==, + } + engines: { node: ">=12.20" } dev: true /zod@3.22.4: - resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} + resolution: + { + integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==, + } diff --git a/tooling/eslint/tsconfig.json b/tooling/eslint/tsconfig.json index ae1fa0e17..35b272c7e 100644 --- a/tooling/eslint/tsconfig.json +++ b/tooling/eslint/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["."], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/tooling/github/package.json b/tooling/github/package.json index fa9349610..a0d5bac56 100644 --- a/tooling/github/package.json +++ b/tooling/github/package.json @@ -1,3 +1,3 @@ { "name": "@homarr/github" -} \ No newline at end of file +} diff --git a/tooling/prettier/package.json b/tooling/prettier/package.json index bfbd33447..e065836fb 100644 --- a/tooling/prettier/package.json +++ b/tooling/prettier/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@ianvs/prettier-plugin-sort-imports": "^4.1.1", - "prettier": "^3.2.4" + "prettier": "^3.2.5" }, "devDependencies": { "@homarr/tsconfig": "workspace:^0.1.0", diff --git a/tooling/prettier/tsconfig.json b/tooling/prettier/tsconfig.json index ae1fa0e17..35b272c7e 100644 --- a/tooling/prettier/tsconfig.json +++ b/tooling/prettier/tsconfig.json @@ -1,8 +1,8 @@ { "extends": "@homarr/tsconfig/base.json", "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["."], - "exclude": ["node_modules"], + "exclude": ["node_modules"] } diff --git a/tooling/semver/package.json b/tooling/semver/package.json index 2d6d6a635..160e32039 100644 --- a/tooling/semver/package.json +++ b/tooling/semver/package.json @@ -10,4 +10,4 @@ "@semantic-release/npm", "@semantic-release/git" ] -} \ No newline at end of file +} diff --git a/tooling/semver/release.config.cjs b/tooling/semver/release.config.cjs index b56c37d70..5b2b41cbd 100644 --- a/tooling/semver/release.config.cjs +++ b/tooling/semver/release.config.cjs @@ -2,18 +2,15 @@ * @type {import('semantic-release').GlobalConfig} */ module.exports = { - branches: ["main"], - prepare: [ - "@semantic-release/changelog", - "@semantic-release/npm", - { - "path": "@semantic-release/git", - "assets": [ - "package.json", - "package-lock.json", - "CHANGELOG.md" - ], - "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}" - } - ] -}; \ No newline at end of file + branches: ["main"], + prepare: [ + "@semantic-release/changelog", + "@semantic-release/npm", + { + path: "@semantic-release/git", + assets: ["package.json", "package-lock.json", "CHANGELOG.md"], + message: + "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}", + }, + ], +}; diff --git a/tooling/typescript/base.json b/tooling/typescript/base.json index c5f180cba..8ab2a746f 100644 --- a/tooling/typescript/base.json +++ b/tooling/typescript/base.json @@ -2,11 +2,7 @@ "$schema": "https://json.schemastore.org/tsconfig", "compilerOptions": { "target": "ES2022", - "lib": [ - "dom", - "dom.iterable", - "ES2022" - ], + "lib": ["dom", "dom.iterable", "ES2022"], "allowJs": true, "skipLibCheck": true, "strict": true, @@ -21,10 +17,5 @@ "incremental": true, "noUncheckedIndexedAccess": true }, - "exclude": [ - "node_modules", - "build", - "dist", - ".next" - ] -} \ No newline at end of file + "exclude": ["node_modules", "build", "dist", ".next"] +} diff --git a/tooling/typescript/package.json b/tooling/typescript/package.json index f8c4ac519..9b32e5264 100644 --- a/tooling/typescript/package.json +++ b/tooling/typescript/package.json @@ -5,4 +5,4 @@ "files": [ "base.json" ] -} \ No newline at end of file +} diff --git a/turbo.json b/turbo.json index aac9d5904..cfd0f356d 100644 --- a/turbo.json +++ b/turbo.json @@ -1,18 +1,12 @@ { "$schema": "https://turborepo.org/schema.json", - "globalDependencies": [ - "**/.env" - ], + "globalDependencies": ["**/.env"], "pipeline": { "topo": { - "dependsOn": [ - "^topo" - ] + "dependsOn": ["^topo"] }, "build": { - "dependsOn": [ - "^build" - ], + "dependsOn": ["^build"], "outputs": [ ".next/**", "!.next/cache/**", @@ -26,26 +20,16 @@ "cache": false }, "format": { - "outputs": [ - "node_modules/.cache/.prettiercache" - ], + "outputs": ["node_modules/.cache/.prettiercache"], "outputMode": "new-only" }, "lint": { - "dependsOn": [ - "^topo" - ], - "outputs": [ - "node_modules/.cache/.eslintcache" - ] + "dependsOn": ["^topo"], + "outputs": ["node_modules/.cache/.eslintcache"] }, "typecheck": { - "dependsOn": [ - "^topo" - ], - "outputs": [ - "node_modules/.cache/tsbuildinfo.json" - ] + "dependsOn": ["^topo"], + "outputs": ["node_modules/.cache/tsbuildinfo.json"] }, "clean": { "cache": false @@ -62,4 +46,4 @@ "AUTH_SECRET", "AUTH_URL" ] -} \ No newline at end of file +} diff --git a/turbo/generators/templates/package.json.hbs b/turbo/generators/templates/package.json.hbs index 8123f9036..aaaaf7d8f 100644 --- a/turbo/generators/templates/package.json.hbs +++ b/turbo/generators/templates/package.json.hbs @@ -1,35 +1,9 @@ -{ - "name": "@homarr/{{name}}", - "private": true, - "version": "0.1.0", - "exports": { - ".": "./index.ts" - }, - "typesVersions": { - "*": { - "*": [ - "src/*" - ] - } - }, - "license": "MIT", - "scripts": { - "clean": "rm -rf .turbo node_modules", - "lint": "eslint .", - "format": "prettier --check . --ignore-path ../../.gitignore", - "typecheck": "tsc --noEmit" - }, - "devDependencies": { - "@homarr/eslint-config": "workspace:^0.2.0", - "@homarr/prettier-config": "workspace:^0.1.0", - "@homarr/tsconfig": "workspace:^0.1.0", - "eslint": "^8.56.0", - "typescript": "^5.3.3" - }, - "eslintConfig": { - "extends": [ - "@homarr/eslint-config/base" - ] - }, - "prettier": "@homarr/prettier-config" -} \ No newline at end of file +{ "name": "@homarr/{{name}}", "private": true, "version": "0.1.0", "exports": { +".": "./index.ts" }, "typesVersions": { "*": { "*": [ "src/*" ] } }, "license": +"MIT", "scripts": { "clean": "rm -rf .turbo node_modules", "lint": "eslint .", +"format": "prettier --check . --ignore-path ../../.gitignore", "typecheck": "tsc +--noEmit" }, "devDependencies": { "@homarr/eslint-config": "workspace:^0.2.0", +"@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": +"workspace:^0.1.0", "eslint": "^8.56.0", "typescript": "^5.3.3" }, +"eslintConfig": { "extends": [ "@homarr/eslint-config/base" ] }, "prettier": +"@homarr/prettier-config" } \ No newline at end of file diff --git a/turbo/generators/templates/tsconfig.json.hbs b/turbo/generators/templates/tsconfig.json.hbs index cbe8483d9..2592044fa 100644 --- a/turbo/generators/templates/tsconfig.json.hbs +++ b/turbo/generators/templates/tsconfig.json.hbs @@ -1,8 +1,3 @@ -{ - "extends": "@homarr/tsconfig/base.json", - "compilerOptions": { - "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" - }, - "include": ["*.ts", "src"], - "exclude": ["node_modules"] -} +{ "extends": "@homarr/tsconfig/base.json", "compilerOptions": { +"tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "include": ["*.ts", +"src"], "exclude": ["node_modules"] } \ No newline at end of file From 11d15687149f2bf55aba1999f368436b15b4a9ce Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 20:05:09 +0100 Subject: [PATCH 64/87] fix(deps): update dependency @t3-oss/env-nextjs to ^0.9.2 (#69) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- apps/nextjs/package.json | 2 +- packages/auth/package.json | 2 +- pnpm-lock.yaml | 30 ++++++++++++------------------ 3 files changed, 14 insertions(+), 20 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 448488d2c..597e71b3f 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -28,7 +28,7 @@ "@mantine/hooks": "^7.5.1", "@mantine/modals": "^7.5.1", "@mantine/tiptap": "^7.5.1", - "@t3-oss/env-nextjs": "^0.8.0", + "@t3-oss/env-nextjs": "^0.9.2", "@tanstack/react-query": "^5.18.1", "@tanstack/react-query-devtools": "^5.18.1", "@tanstack/react-query-next-experimental": "5.18.1", diff --git a/packages/auth/package.json b/packages/auth/package.json index 9f523d557..8ac6c5a3b 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -15,7 +15,7 @@ "@homarr/db": "workspace:^0.1.0", "@auth/core": "^0.26.3", "@auth/drizzle-adapter": "^0.6.3", - "@t3-oss/env-nextjs": "^0.8.0", + "@t3-oss/env-nextjs": "^0.9.2", "bcrypt": "^5.1.1", "cookies": "^0.9.1", "next": "^14.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3d617473d..d78591a8c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -91,10 +91,10 @@ importers: "@mantine/tiptap": specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) - "@t3-oss/env-nextjs": - specifier: ^0.8.0 - version: 0.8.0(typescript@5.3.3)(zod@3.22.4) - "@tanstack/react-query": + '@t3-oss/env-nextjs': + specifier: ^0.9.2 + version: 0.9.2(typescript@5.3.3)(zod@3.22.4) + '@tanstack/react-query': specifier: ^5.18.1 version: 5.18.1(react@18.2.0) "@tanstack/react-query-devtools": @@ -237,9 +237,9 @@ importers: "@homarr/db": specifier: workspace:^0.1.0 version: link:../db - "@t3-oss/env-nextjs": - specifier: ^0.8.0 - version: 0.8.0(typescript@5.3.3)(zod@3.22.4) + '@t3-oss/env-nextjs': + specifier: ^0.9.2 + version: 0.9.2(typescript@5.3.3)(zod@3.22.4) bcrypt: specifier: ^5.1.1 version: 5.1.1 @@ -2545,11 +2545,8 @@ packages: tslib: 2.5.0 dev: false - /@t3-oss/env-core@0.8.0(typescript@5.3.3)(zod@3.22.4): - resolution: - { - integrity: sha512-Tc1pg0KH/tJeI0Z1s/Isp1VsGDj1N03ZAYFV8GjWgMxytF/ve0Dv+opjmTapHICRv8qiB1Y/fsTjkWNMpKPRCQ==, - } + /@t3-oss/env-core@0.9.2(typescript@5.3.3)(zod@3.22.4): + resolution: {integrity: sha512-KgWXljUTHgO3o7GMZQPAD5+P+HqpauMNNHowlm7V2b9IeMitSUpNKwG6xQrup/xARWHTdxRVIl0mSI4wCevQhQ==} peerDependencies: typescript: ">=5.0.0" zod: ^3.0.0 @@ -2561,11 +2558,8 @@ packages: zod: 3.22.4 dev: false - /@t3-oss/env-nextjs@0.8.0(typescript@5.3.3)(zod@3.22.4): - resolution: - { - integrity: sha512-bJyoE8of4QmqZN7a49iLJAbUq4graScb9ezXzvnuIVr9JP43C093vmy55hT1uZL533CwiPz8zo1INwyAS6qnHw==, - } + /@t3-oss/env-nextjs@0.9.2(typescript@5.3.3)(zod@3.22.4): + resolution: {integrity: sha512-dklHrgKLESStNVB67Jdbu6osxDYA+xNKaPBRerlnkEvzbCccSKMvZENx6EZebJuR4snqB3/yRykNMn/bdIAyiQ==} peerDependencies: typescript: ">=5.0.0" zod: ^3.0.0 @@ -2573,7 +2567,7 @@ packages: typescript: optional: true dependencies: - "@t3-oss/env-core": 0.8.0(typescript@5.3.3)(zod@3.22.4) + '@t3-oss/env-core': 0.9.2(typescript@5.3.3)(zod@3.22.4) typescript: 5.3.3 zod: 3.22.4 dev: false From a4f6a7c16a4de8adb758812356e947d88c5a5e35 Mon Sep 17 00:00:00 2001 From: "deepsource-autofix[bot]" <62050782+deepsource-autofix[bot]@users.noreply.github.com> Date: Thu, 8 Feb 2024 20:06:57 +0100 Subject: [PATCH 65/87] refactor: replace short hand type conversions with function calls (#65) * refactor: replace short hand type conversions with function calls Prefer using explicit casts by calling `Number`, `Boolean`, or `String` over using operators like `+`, `!!` or `"" +`. This is considered best practice as it improves readability. * fix: formatting --------- Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- apps/nextjs/src/env.mjs | 4 ++-- packages/api/src/router/integration.ts | 2 +- packages/auth/env.mjs | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/nextjs/src/env.mjs b/apps/nextjs/src/env.mjs index f098ee199..c4d2d4e1e 100644 --- a/apps/nextjs/src/env.mjs +++ b/apps/nextjs/src/env.mjs @@ -33,7 +33,7 @@ export const env = createEnv({ // NEXT_PUBLIC_CLIENTVAR: process.env.NEXT_PUBLIC_CLIENTVAR, }, skipValidation: - !!process.env.CI || - !!process.env.SKIP_ENV_VALIDATION || + Boolean(process.env.CI) || + Boolean(process.env.SKIP_ENV_VALIDATION) || process.env.npm_lifecycle_event === "lint", }); diff --git a/packages/api/src/router/integration.ts b/packages/api/src/router/integration.ts index 1cfe85cca..16018aec3 100644 --- a/packages/api/src/router/integration.ts +++ b/packages/api/src/router/integration.ts @@ -165,7 +165,7 @@ export const integrationRouter = createTRPCRouter({ const secretKinds = getSecretKinds(input.kind); const secrets = input.secrets.filter( (secret): secret is { kind: IntegrationSecretKind; value: string } => - !!secret.value, + Boolean(secret.value), ); const everyInputSecretDefined = secretKinds.every((secretKind) => secrets.some((secret) => secret.kind === secretKind), diff --git a/packages/auth/env.mjs b/packages/auth/env.mjs index 2866529a5..9c260510b 100644 --- a/packages/auth/env.mjs +++ b/packages/auth/env.mjs @@ -20,5 +20,6 @@ export const env = createEnv({ AUTH_SECRET: process.env.AUTH_SECRET, AUTH_URL: process.env.AUTH_URL, }, - skipValidation: !!process.env.CI || !!process.env.SKIP_ENV_VALIDATION, + skipValidation: + Boolean(process.env.CI) || Boolean(process.env.SKIP_ENV_VALIDATION), }); From 7f4ad88b0fea079eee6388cab9ac2df39f8d6f1d Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 9 Feb 2024 21:23:24 +0100 Subject: [PATCH 66/87] chore(deps): update dependency @types/node to ^20.11.17 (#70) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 7301 ++++++++++++-------------------------- 2 files changed, 2211 insertions(+), 5092 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 597e71b3f..65c690719 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -54,7 +54,7 @@ "@homarr/eslint-config": "workspace:^0.2.0", "@homarr/prettier-config": "workspace:^0.1.0", "@homarr/tsconfig": "workspace:^0.1.0", - "@types/node": "^20.11.16", + "@types/node": "^20.11.17", "@types/react": "^18.2.55", "@types/react-dom": "^18.2.19", "dotenv-cli": "^7.3.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d78591a8c..7b2cf8d9a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,25 +1,26 @@ -lockfileVersion: "6.0" +lockfileVersion: '6.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false importers: + .: devDependencies: - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:tooling/prettier - "@turbo/gen": + '@turbo/gen': specifier: ^1.12.3 - version: 1.12.3(@types/node@20.11.16)(typescript@5.3.3) - "@vitejs/plugin-react": + version: 1.12.3(@types/node@20.11.17)(typescript@5.3.3) + '@vitejs/plugin-react': specifier: ^4.2.1 version: 4.2.1(vite@5.0.12) - "@vitest/coverage-v8": + '@vitest/coverage-v8': specifier: ^1.2.2 version: 1.2.2(vitest@1.2.2) - "@vitest/ui": + '@vitest/ui': specifier: ^1.2.2 version: 1.2.2(vitest@1.2.2) cross-env: @@ -39,56 +40,56 @@ importers: version: 4.3.1(typescript@5.3.3)(vite@5.0.12) vitest: specifier: ^1.2.2 - version: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) + version: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) apps/nextjs: dependencies: - "@homarr/api": + '@homarr/api': specifier: workspace:^0.1.0 version: link:../../packages/api - "@homarr/auth": + '@homarr/auth': specifier: workspace:^0.1.0 version: link:../../packages/auth - "@homarr/common": + '@homarr/common': specifier: workspace:^0.1.0 version: link:../../packages/common - "@homarr/db": + '@homarr/db': specifier: workspace:^0.1.0 version: link:../../packages/db - "@homarr/definitions": + '@homarr/definitions': specifier: workspace:^0.1.0 version: link:../../packages/definitions - "@homarr/form": + '@homarr/form': specifier: workspace:^0.1.0 version: link:../../packages/form - "@homarr/gridstack": + '@homarr/gridstack': specifier: ^1.0.0 version: 1.0.0 - "@homarr/notifications": + '@homarr/notifications': specifier: workspace:^0.1.0 version: link:../../packages/notifications - "@homarr/spotlight": + '@homarr/spotlight': specifier: workspace:^0.1.0 version: link:../../packages/spotlight - "@homarr/translation": + '@homarr/translation': specifier: workspace:^0.1.0 version: link:../../packages/translation - "@homarr/ui": + '@homarr/ui': specifier: workspace:^0.1.0 version: link:../../packages/ui - "@homarr/validation": + '@homarr/validation': specifier: workspace:^0.1.0 version: link:../../packages/validation - "@homarr/widgets": + '@homarr/widgets': specifier: workspace:^0.1.0 version: link:../../packages/widgets - "@mantine/hooks": + '@mantine/hooks': specifier: ^7.5.1 version: 7.5.1(react@18.2.0) - "@mantine/modals": + '@mantine/modals': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) - "@mantine/tiptap": + '@mantine/tiptap': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': @@ -97,31 +98,31 @@ importers: '@tanstack/react-query': specifier: ^5.18.1 version: 5.18.1(react@18.2.0) - "@tanstack/react-query-devtools": + '@tanstack/react-query-devtools': specifier: ^5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0) - "@tanstack/react-query-next-experimental": + '@tanstack/react-query-next-experimental': specifier: 5.18.1 version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) - "@tiptap/extension-link": + '@tiptap/extension-link': specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/react": + '@tiptap/react': specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) - "@tiptap/starter-kit": + '@tiptap/starter-kit': specifier: ^2.2.2 version: 2.2.2(@tiptap/pm@2.2.2) - "@trpc/client": + '@trpc/client': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - "@trpc/next": + '@trpc/next': specifier: next version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) - "@trpc/react-query": + '@trpc/react-query': specifier: next version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) - "@trpc/server": + '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 dayjs: @@ -152,22 +153,22 @@ importers: specifier: 2.2.1 version: 2.2.1 devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript - "@types/node": - specifier: ^20.11.16 - version: 20.11.16 - "@types/react": + '@types/node': + specifier: ^20.11.17 + version: 20.11.17 + '@types/react': specifier: ^18.2.55 version: 18.2.55 - "@types/react-dom": + '@types/react-dom': specifier: ^18.2.19 version: 18.2.19 dotenv-cli: @@ -185,35 +186,35 @@ importers: packages/api: dependencies: - "@homarr/auth": + '@homarr/auth': specifier: workspace:^0.1.0 version: link:../auth - "@homarr/db": + '@homarr/db': specifier: workspace:^0.1.0 version: link:../db - "@homarr/definitions": + '@homarr/definitions': specifier: workspace:^0.1.0 version: link:../definitions - "@homarr/validation": + '@homarr/validation': specifier: workspace:^0.1.0 version: link:../validation - "@trpc/client": + '@trpc/client': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - "@trpc/server": + '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 superjson: specifier: 2.2.1 version: 2.2.1 devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -228,13 +229,13 @@ importers: packages/auth: dependencies: - "@auth/core": + '@auth/core': specifier: ^0.26.3 version: 0.26.3 - "@auth/drizzle-adapter": + '@auth/drizzle-adapter': specifier: ^0.6.3 version: 0.6.3 - "@homarr/db": + '@homarr/db': specifier: workspace:^0.1.0 version: link:../db '@t3-oss/env-nextjs': @@ -259,22 +260,22 @@ importers: specifier: 18.2.0 version: 18.2.0(react@18.2.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript - "@homarr/validation": + '@homarr/validation': specifier: workspace:^0.1.0 version: link:../validation - "@types/bcrypt": + '@types/bcrypt': specifier: 5.0.2 version: 5.0.2 - "@types/cookies": + '@types/cookies': specifier: 0.9.0 version: 0.9.0 eslint: @@ -289,13 +290,13 @@ importers: packages/common: devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -307,13 +308,13 @@ importers: packages/db: dependencies: - "@homarr/common": + '@homarr/common': specifier: workspace:^0.1.0 version: link:../common - "@homarr/definitions": + '@homarr/definitions': specifier: workspace:^0.1.0 version: link:../definitions - "@paralleldrive/cuid2": + '@paralleldrive/cuid2': specifier: ^2.2.2 version: 2.2.2 better-sqlite3: @@ -323,16 +324,16 @@ importers: specifier: ^0.29.3 version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript - "@types/better-sqlite3": + '@types/better-sqlite3': specifier: 7.6.9 version: 7.6.9 dotenv-cli: @@ -353,17 +354,17 @@ importers: packages/definitions: dependencies: - "@homarr/common": + '@homarr/common': specifier: workspace:^0.1.0 version: link:../common devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -375,17 +376,17 @@ importers: packages/form: dependencies: - "@mantine/form": + '@mantine/form': specifier: ^7.5.1 version: 7.5.1(react@18.2.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -397,20 +398,20 @@ importers: packages/notifications: dependencies: - "@homarr/ui": + '@homarr/ui': specifier: workspace:^0.1.0 version: link:../ui - "@mantine/notifications": + '@mantine/notifications': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -422,17 +423,17 @@ importers: packages/spotlight: dependencies: - "@mantine/spotlight": + '@mantine/spotlight': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -448,13 +449,13 @@ importers: specifier: ^1.2.3 version: 1.2.3 devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -466,26 +467,26 @@ importers: packages/ui: dependencies: - "@mantine/core": + '@mantine/core': specifier: ^7.5.1 version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/dates": + '@mantine/dates': specifier: ^7.5.1 version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) - "@tabler/icons-react": + '@tabler/icons-react': specifier: ^2.47.0 version: 2.47.0(react@18.2.0) devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript - "@types/css-modules": + '@types/css-modules': specifier: ^1.0.5 version: 1.0.5 eslint: @@ -497,20 +498,20 @@ importers: packages/validation: dependencies: - "@homarr/definitions": + '@homarr/definitions': specifier: workspace:^0.1.0 version: link:../definitions zod: specifier: ^3.22.4 version: 3.22.4 devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -522,38 +523,38 @@ importers: packages/widgets: dependencies: - "@homarr/api": + '@homarr/api': specifier: workspace:^0.1.0 version: link:../api - "@homarr/common": + '@homarr/common': specifier: workspace:^0.1.0 version: link:../common - "@homarr/definitions": + '@homarr/definitions': specifier: workspace:^0.1.0 version: link:../definitions - "@homarr/form": + '@homarr/form': specifier: workspace:^0.1.0 version: link:../form - "@homarr/notifications": + '@homarr/notifications': specifier: workspace:^0.1.0 version: link:../notifications - "@homarr/translation": + '@homarr/translation': specifier: workspace:^0.1.0 version: link:../translation - "@homarr/ui": + '@homarr/ui': specifier: workspace:^0.1.0 version: link:../ui - "@homarr/validation": + '@homarr/validation': specifier: workspace:^0.1.0 version: link:../validation devDependencies: - "@homarr/eslint-config": + '@homarr/eslint-config': specifier: workspace:^0.2.0 version: link:../../tooling/eslint - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../../tooling/prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../../tooling/typescript eslint: @@ -565,13 +566,13 @@ importers: tooling/eslint: dependencies: - "@next/eslint-plugin-next": + '@next/eslint-plugin-next': specifier: ^14.1.0 version: 14.1.0 - "@typescript-eslint/eslint-plugin": + '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3) - "@typescript-eslint/parser": + '@typescript-eslint/parser': specifier: ^6.21.0 version: 6.21.0(eslint@8.56.0)(typescript@5.3.3) eslint-config-prettier: @@ -593,13 +594,13 @@ importers: specifier: ^4.6.0 version: 4.6.0(eslint@8.56.0) devDependencies: - "@homarr/prettier-config": + '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:../prettier - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../typescript - "@types/eslint": + '@types/eslint': specifier: ^8.56.2 version: 8.56.2 eslint: @@ -613,14 +614,14 @@ importers: tooling/prettier: dependencies: - "@ianvs/prettier-plugin-sort-imports": + '@ianvs/prettier-plugin-sort-imports': specifier: ^4.1.1 version: 4.1.1(prettier@3.2.5) prettier: specifier: ^3.2.5 version: 3.2.5 devDependencies: - "@homarr/tsconfig": + '@homarr/tsconfig': specifier: workspace:^0.1.0 version: link:../typescript typescript: @@ -632,42 +633,34 @@ importers: tooling/typescript: {} packages: + /@aashutoshrathi/word-wrap@1.2.6: - resolution: - { - integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} + engines: {node: '>=0.10.0'} /@ampproject/remapping@2.2.1: - resolution: - { - integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} + engines: {node: '>=6.0.0'} dependencies: - "@jridgewell/gen-mapping": 0.3.3 - "@jridgewell/trace-mapping": 0.3.18 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 /@auth/core@0.26.3: - resolution: - { - integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==, - } + resolution: {integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==} peerDependencies: - "@simplewebauthn/browser": ^9.0.1 - "@simplewebauthn/server": ^9.0.1 + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.1 nodemailer: ^6.8.0 peerDependenciesMeta: - "@simplewebauthn/browser": + '@simplewebauthn/browser': optional: true - "@simplewebauthn/server": + '@simplewebauthn/server': optional: true nodemailer: optional: true dependencies: - "@panva/hkdf": 1.1.1 - "@types/cookie": 0.6.0 + '@panva/hkdf': 1.1.1 + '@types/cookie': 0.6.0 cookie: 0.6.0 jose: 5.2.1 oauth4webapi: 2.10.3 @@ -676,70 +669,52 @@ packages: dev: false /@auth/drizzle-adapter@0.6.3: - resolution: - { - integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==, - } + resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} dependencies: - "@auth/core": 0.26.3 + '@auth/core': 0.26.3 transitivePeerDependencies: - - "@simplewebauthn/browser" - - "@simplewebauthn/server" + - '@simplewebauthn/browser' + - '@simplewebauthn/server' - nodemailer dev: false /@babel/code-frame@7.22.13: - resolution: - { - integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/highlight": 7.22.13 + '@babel/highlight': 7.22.13 chalk: 2.4.2 /@babel/code-frame@7.23.5: - resolution: - { - integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/highlight": 7.23.4 + '@babel/highlight': 7.23.4 chalk: 2.4.2 /@babel/compat-data@7.23.2: - resolution: - { - integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} + engines: {node: '>=6.9.0'} dev: false /@babel/compat-data@7.23.5: - resolution: - { - integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} + engines: {node: '>=6.9.0'} /@babel/core@7.23.2: - resolution: - { - integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} + engines: {node: '>=6.9.0'} dependencies: - "@ampproject/remapping": 2.2.1 - "@babel/code-frame": 7.22.13 - "@babel/generator": 7.23.0 - "@babel/helper-compilation-targets": 7.22.15 - "@babel/helper-module-transforms": 7.23.0(@babel/core@7.23.2) - "@babel/helpers": 7.23.2 - "@babel/parser": 7.23.0 - "@babel/template": 7.22.15 - "@babel/traverse": 7.23.2 - "@babel/types": 7.23.0 + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.0 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) + '@babel/helpers': 7.23.2 + '@babel/parser': 7.23.0 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.2 + '@babel/types': 7.23.0 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -750,22 +725,19 @@ packages: dev: false /@babel/core@7.23.9: - resolution: - { - integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==} + engines: {node: '>=6.9.0'} dependencies: - "@ampproject/remapping": 2.2.1 - "@babel/code-frame": 7.23.5 - "@babel/generator": 7.23.6 - "@babel/helper-compilation-targets": 7.23.6 - "@babel/helper-module-transforms": 7.23.3(@babel/core@7.23.9) - "@babel/helpers": 7.23.9 - "@babel/parser": 7.23.9 - "@babel/template": 7.23.9 - "@babel/traverse": 7.23.9 - "@babel/types": 7.23.9 + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) + '@babel/helpers': 7.23.9 + '@babel/parser': 7.23.9 + '@babel/template': 7.23.9 + '@babel/traverse': 7.23.9 + '@babel/types': 7.23.9 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -775,339 +747,246 @@ packages: - supports-color /@babel/generator@7.23.0: - resolution: - { - integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.0 - "@jridgewell/gen-mapping": 0.3.3 - "@jridgewell/trace-mapping": 0.3.18 + '@babel/types': 7.23.0 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 jsesc: 2.5.2 dev: false /@babel/generator@7.23.6: - resolution: - { - integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.9 - "@jridgewell/gen-mapping": 0.3.3 - "@jridgewell/trace-mapping": 0.3.18 + '@babel/types': 7.23.9 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 jsesc: 2.5.2 /@babel/helper-compilation-targets@7.22.15: - resolution: - { - integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/compat-data": 7.23.2 - "@babel/helper-validator-option": 7.22.15 + '@babel/compat-data': 7.23.2 + '@babel/helper-validator-option': 7.22.15 browserslist: 4.22.1 lru-cache: 5.1.1 semver: 6.3.1 dev: false /@babel/helper-compilation-targets@7.23.6: - resolution: - { - integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/compat-data": 7.23.5 - "@babel/helper-validator-option": 7.23.5 + '@babel/compat-data': 7.23.5 + '@babel/helper-validator-option': 7.23.5 browserslist: 4.22.3 lru-cache: 5.1.1 semver: 6.3.1 /@babel/helper-environment-visitor@7.22.20: - resolution: - { - integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} + engines: {node: '>=6.9.0'} /@babel/helper-function-name@7.23.0: - resolution: - { - integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/template": 7.22.15 - "@babel/types": 7.23.0 + '@babel/template': 7.22.15 + '@babel/types': 7.23.0 /@babel/helper-hoist-variables@7.22.5: - resolution: - { - integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.0 + '@babel/types': 7.23.0 /@babel/helper-module-imports@7.22.15: - resolution: - { - integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.0 + '@babel/types': 7.23.0 /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): - resolution: - { - integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} + engines: {node: '>=6.9.0'} peerDependencies: - "@babel/core": ^7.0.0 + '@babel/core': ^7.0.0 dependencies: - "@babel/core": 7.23.2 - "@babel/helper-environment-visitor": 7.22.20 - "@babel/helper-module-imports": 7.22.15 - "@babel/helper-simple-access": 7.22.5 - "@babel/helper-split-export-declaration": 7.22.6 - "@babel/helper-validator-identifier": 7.22.20 + '@babel/core': 7.23.2 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 dev: false /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9): - resolution: - { - integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} + engines: {node: '>=6.9.0'} peerDependencies: - "@babel/core": ^7.0.0 + '@babel/core': ^7.0.0 dependencies: - "@babel/core": 7.23.9 - "@babel/helper-environment-visitor": 7.22.20 - "@babel/helper-module-imports": 7.22.15 - "@babel/helper-simple-access": 7.22.5 - "@babel/helper-split-export-declaration": 7.22.6 - "@babel/helper-validator-identifier": 7.22.20 + '@babel/core': 7.23.9 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 /@babel/helper-plugin-utils@7.22.5: - resolution: - { - integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} + engines: {node: '>=6.9.0'} dev: true /@babel/helper-simple-access@7.22.5: - resolution: - { - integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.0 + '@babel/types': 7.23.0 /@babel/helper-split-export-declaration@7.22.6: - resolution: - { - integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/types": 7.23.0 + '@babel/types': 7.23.0 /@babel/helper-string-parser@7.22.5: - resolution: - { - integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} + engines: {node: '>=6.9.0'} /@babel/helper-string-parser@7.23.4: - resolution: - { - integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + engines: {node: '>=6.9.0'} /@babel/helper-validator-identifier@7.22.20: - resolution: - { - integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + engines: {node: '>=6.9.0'} /@babel/helper-validator-option@7.22.15: - resolution: - { - integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} + engines: {node: '>=6.9.0'} dev: false /@babel/helper-validator-option@7.23.5: - resolution: - { - integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} + engines: {node: '>=6.9.0'} /@babel/helpers@7.23.2: - resolution: - { - integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/template": 7.22.15 - "@babel/traverse": 7.23.2 - "@babel/types": 7.23.0 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.2 + '@babel/types': 7.23.0 transitivePeerDependencies: - supports-color dev: false /@babel/helpers@7.23.9: - resolution: - { - integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/template": 7.23.9 - "@babel/traverse": 7.23.9 - "@babel/types": 7.23.9 + '@babel/template': 7.23.9 + '@babel/traverse': 7.23.9 + '@babel/types': 7.23.9 transitivePeerDependencies: - supports-color /@babel/highlight@7.22.13: - resolution: - { - integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/helper-validator-identifier": 7.22.20 + '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 /@babel/highlight@7.23.4: - resolution: - { - integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/helper-validator-identifier": 7.22.20 + '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 /@babel/parser@7.23.0: - resolution: - { - integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} + engines: {node: '>=6.0.0'} dependencies: - "@babel/types": 7.23.0 + '@babel/types': 7.23.0 /@babel/parser@7.23.9: - resolution: - { - integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} + engines: {node: '>=6.0.0'} hasBin: true dependencies: - "@babel/types": 7.23.9 + '@babel/types': 7.23.9 /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.9): - resolution: - { - integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} + engines: {node: '>=6.9.0'} peerDependencies: - "@babel/core": ^7.0.0-0 + '@babel/core': ^7.0.0-0 dependencies: - "@babel/core": 7.23.9 - "@babel/helper-plugin-utils": 7.22.5 + '@babel/core': 7.23.9 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.9): - resolution: - { - integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} + engines: {node: '>=6.9.0'} peerDependencies: - "@babel/core": ^7.0.0-0 + '@babel/core': ^7.0.0-0 dependencies: - "@babel/core": 7.23.9 - "@babel/helper-plugin-utils": 7.22.5 + '@babel/core': 7.23.9 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/runtime-corejs3@7.22.10: - resolution: - { - integrity: sha512-IcixfV2Jl3UrqZX4c81+7lVg5++2ufYJyAFW3Aux/ZTvY6LVYYhJ9rMgnbX0zGVq6eqfVpnoatTjZdVki/GmWA==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-IcixfV2Jl3UrqZX4c81+7lVg5++2ufYJyAFW3Aux/ZTvY6LVYYhJ9rMgnbX0zGVq6eqfVpnoatTjZdVki/GmWA==} + engines: {node: '>=6.9.0'} dependencies: core-js-pure: 3.32.1 regenerator-runtime: 0.14.0 dev: true /@babel/runtime@7.23.2: - resolution: - { - integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} + engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 dev: false /@babel/template@7.22.15: - resolution: - { - integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/code-frame": 7.22.13 - "@babel/parser": 7.23.0 - "@babel/types": 7.23.0 + '@babel/code-frame': 7.22.13 + '@babel/parser': 7.23.0 + '@babel/types': 7.23.0 /@babel/template@7.23.9: - resolution: - { - integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/code-frame": 7.23.5 - "@babel/parser": 7.23.9 - "@babel/types": 7.23.9 + '@babel/code-frame': 7.23.5 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 /@babel/traverse@7.23.2: - resolution: - { - integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/code-frame": 7.22.13 - "@babel/generator": 7.23.0 - "@babel/helper-environment-visitor": 7.22.20 - "@babel/helper-function-name": 7.23.0 - "@babel/helper-hoist-variables": 7.22.5 - "@babel/helper-split-export-declaration": 7.22.6 - "@babel/parser": 7.23.0 - "@babel/types": 7.23.0 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.0 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.23.0 + '@babel/types': 7.23.0 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: @@ -1115,99 +994,72 @@ packages: dev: false /@babel/traverse@7.23.9: - resolution: - { - integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/code-frame": 7.23.5 - "@babel/generator": 7.23.6 - "@babel/helper-environment-visitor": 7.22.20 - "@babel/helper-function-name": 7.23.0 - "@babel/helper-hoist-variables": 7.22.5 - "@babel/helper-split-export-declaration": 7.22.6 - "@babel/parser": 7.23.9 - "@babel/types": 7.23.9 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color /@babel/types@7.23.0: - resolution: - { - integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/helper-string-parser": 7.22.5 - "@babel/helper-validator-identifier": 7.22.20 + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 /@babel/types@7.23.9: - resolution: - { - integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==} + engines: {node: '>=6.9.0'} dependencies: - "@babel/helper-string-parser": 7.23.4 - "@babel/helper-validator-identifier": 7.22.20 + '@babel/helper-string-parser': 7.23.4 + '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 /@bcoe/v8-coverage@0.2.3: - resolution: - { - integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, - } + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true /@cspotcode/source-map-support@0.8.1: - resolution: - { - integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} dependencies: - "@jridgewell/trace-mapping": 0.3.9 + '@jridgewell/trace-mapping': 0.3.9 dev: true /@drizzle-team/studio@0.0.39: - resolution: - { - integrity: sha512-c5Hkm7MmQC2n5qAsKShjQrHoqlfGslB8+qWzsGGZ+2dHMRTNG60UuzalF0h0rvBax5uzPXuGkYLGaQ+TUX3yMw==, - } + resolution: {integrity: sha512-c5Hkm7MmQC2n5qAsKShjQrHoqlfGslB8+qWzsGGZ+2dHMRTNG60UuzalF0h0rvBax5uzPXuGkYLGaQ+TUX3yMw==} dependencies: superjson: 2.2.1 dev: true /@esbuild-kit/core-utils@3.1.0: - resolution: - { - integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==, - } + resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==} dependencies: esbuild: 0.17.19 source-map-support: 0.5.21 dev: true /@esbuild-kit/esm-loader@2.5.5: - resolution: - { - integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==, - } + resolution: {integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==} dependencies: - "@esbuild-kit/core-utils": 3.1.0 + '@esbuild-kit/core-utils': 3.1.0 get-tsconfig: 4.6.2 dev: true /@esbuild/android-arm64@0.17.19: - resolution: - { - integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} + engines: {node: '>=12'} cpu: [arm64] os: [android] requiresBuild: true @@ -1215,11 +1067,8 @@ packages: optional: true /@esbuild/android-arm64@0.19.8: - resolution: - { - integrity: sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==} + engines: {node: '>=12'} cpu: [arm64] os: [android] requiresBuild: true @@ -1227,11 +1076,8 @@ packages: optional: true /@esbuild/android-arm@0.17.19: - resolution: - { - integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} + engines: {node: '>=12'} cpu: [arm] os: [android] requiresBuild: true @@ -1239,11 +1085,8 @@ packages: optional: true /@esbuild/android-arm@0.19.8: - resolution: - { - integrity: sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==} + engines: {node: '>=12'} cpu: [arm] os: [android] requiresBuild: true @@ -1251,11 +1094,8 @@ packages: optional: true /@esbuild/android-x64@0.17.19: - resolution: - { - integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} + engines: {node: '>=12'} cpu: [x64] os: [android] requiresBuild: true @@ -1263,11 +1103,8 @@ packages: optional: true /@esbuild/android-x64@0.19.8: - resolution: - { - integrity: sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==} + engines: {node: '>=12'} cpu: [x64] os: [android] requiresBuild: true @@ -1275,11 +1112,8 @@ packages: optional: true /@esbuild/darwin-arm64@0.17.19: - resolution: - { - integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} + engines: {node: '>=12'} cpu: [arm64] os: [darwin] requiresBuild: true @@ -1287,11 +1121,8 @@ packages: optional: true /@esbuild/darwin-arm64@0.19.8: - resolution: - { - integrity: sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==} + engines: {node: '>=12'} cpu: [arm64] os: [darwin] requiresBuild: true @@ -1299,11 +1130,8 @@ packages: optional: true /@esbuild/darwin-x64@0.17.19: - resolution: - { - integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} + engines: {node: '>=12'} cpu: [x64] os: [darwin] requiresBuild: true @@ -1311,11 +1139,8 @@ packages: optional: true /@esbuild/darwin-x64@0.19.8: - resolution: - { - integrity: sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==} + engines: {node: '>=12'} cpu: [x64] os: [darwin] requiresBuild: true @@ -1323,11 +1148,8 @@ packages: optional: true /@esbuild/freebsd-arm64@0.17.19: - resolution: - { - integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} + engines: {node: '>=12'} cpu: [arm64] os: [freebsd] requiresBuild: true @@ -1335,11 +1157,8 @@ packages: optional: true /@esbuild/freebsd-arm64@0.19.8: - resolution: - { - integrity: sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==} + engines: {node: '>=12'} cpu: [arm64] os: [freebsd] requiresBuild: true @@ -1347,11 +1166,8 @@ packages: optional: true /@esbuild/freebsd-x64@0.17.19: - resolution: - { - integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} + engines: {node: '>=12'} cpu: [x64] os: [freebsd] requiresBuild: true @@ -1359,11 +1175,8 @@ packages: optional: true /@esbuild/freebsd-x64@0.19.8: - resolution: - { - integrity: sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==} + engines: {node: '>=12'} cpu: [x64] os: [freebsd] requiresBuild: true @@ -1371,11 +1184,8 @@ packages: optional: true /@esbuild/linux-arm64@0.17.19: - resolution: - { - integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} + engines: {node: '>=12'} cpu: [arm64] os: [linux] requiresBuild: true @@ -1383,11 +1193,8 @@ packages: optional: true /@esbuild/linux-arm64@0.19.8: - resolution: - { - integrity: sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==} + engines: {node: '>=12'} cpu: [arm64] os: [linux] requiresBuild: true @@ -1395,11 +1202,8 @@ packages: optional: true /@esbuild/linux-arm@0.17.19: - resolution: - { - integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} + engines: {node: '>=12'} cpu: [arm] os: [linux] requiresBuild: true @@ -1407,11 +1211,8 @@ packages: optional: true /@esbuild/linux-arm@0.19.8: - resolution: - { - integrity: sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==} + engines: {node: '>=12'} cpu: [arm] os: [linux] requiresBuild: true @@ -1419,11 +1220,8 @@ packages: optional: true /@esbuild/linux-ia32@0.17.19: - resolution: - { - integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} + engines: {node: '>=12'} cpu: [ia32] os: [linux] requiresBuild: true @@ -1431,11 +1229,8 @@ packages: optional: true /@esbuild/linux-ia32@0.19.8: - resolution: - { - integrity: sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==} + engines: {node: '>=12'} cpu: [ia32] os: [linux] requiresBuild: true @@ -1443,11 +1238,8 @@ packages: optional: true /@esbuild/linux-loong64@0.17.19: - resolution: - { - integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} + engines: {node: '>=12'} cpu: [loong64] os: [linux] requiresBuild: true @@ -1455,11 +1247,8 @@ packages: optional: true /@esbuild/linux-loong64@0.19.8: - resolution: - { - integrity: sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==} + engines: {node: '>=12'} cpu: [loong64] os: [linux] requiresBuild: true @@ -1467,11 +1256,8 @@ packages: optional: true /@esbuild/linux-mips64el@0.17.19: - resolution: - { - integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} + engines: {node: '>=12'} cpu: [mips64el] os: [linux] requiresBuild: true @@ -1479,11 +1265,8 @@ packages: optional: true /@esbuild/linux-mips64el@0.19.8: - resolution: - { - integrity: sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==} + engines: {node: '>=12'} cpu: [mips64el] os: [linux] requiresBuild: true @@ -1491,11 +1274,8 @@ packages: optional: true /@esbuild/linux-ppc64@0.17.19: - resolution: - { - integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} + engines: {node: '>=12'} cpu: [ppc64] os: [linux] requiresBuild: true @@ -1503,11 +1283,8 @@ packages: optional: true /@esbuild/linux-ppc64@0.19.8: - resolution: - { - integrity: sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==} + engines: {node: '>=12'} cpu: [ppc64] os: [linux] requiresBuild: true @@ -1515,11 +1292,8 @@ packages: optional: true /@esbuild/linux-riscv64@0.17.19: - resolution: - { - integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} + engines: {node: '>=12'} cpu: [riscv64] os: [linux] requiresBuild: true @@ -1527,11 +1301,8 @@ packages: optional: true /@esbuild/linux-riscv64@0.19.8: - resolution: - { - integrity: sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==} + engines: {node: '>=12'} cpu: [riscv64] os: [linux] requiresBuild: true @@ -1539,11 +1310,8 @@ packages: optional: true /@esbuild/linux-s390x@0.17.19: - resolution: - { - integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} + engines: {node: '>=12'} cpu: [s390x] os: [linux] requiresBuild: true @@ -1551,11 +1319,8 @@ packages: optional: true /@esbuild/linux-s390x@0.19.8: - resolution: - { - integrity: sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==} + engines: {node: '>=12'} cpu: [s390x] os: [linux] requiresBuild: true @@ -1563,11 +1328,8 @@ packages: optional: true /@esbuild/linux-x64@0.17.19: - resolution: - { - integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} + engines: {node: '>=12'} cpu: [x64] os: [linux] requiresBuild: true @@ -1575,11 +1337,8 @@ packages: optional: true /@esbuild/linux-x64@0.19.8: - resolution: - { - integrity: sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==} + engines: {node: '>=12'} cpu: [x64] os: [linux] requiresBuild: true @@ -1587,11 +1346,8 @@ packages: optional: true /@esbuild/netbsd-x64@0.17.19: - resolution: - { - integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} + engines: {node: '>=12'} cpu: [x64] os: [netbsd] requiresBuild: true @@ -1599,11 +1355,8 @@ packages: optional: true /@esbuild/netbsd-x64@0.19.8: - resolution: - { - integrity: sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==} + engines: {node: '>=12'} cpu: [x64] os: [netbsd] requiresBuild: true @@ -1611,11 +1364,8 @@ packages: optional: true /@esbuild/openbsd-x64@0.17.19: - resolution: - { - integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} + engines: {node: '>=12'} cpu: [x64] os: [openbsd] requiresBuild: true @@ -1623,11 +1373,8 @@ packages: optional: true /@esbuild/openbsd-x64@0.19.8: - resolution: - { - integrity: sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==} + engines: {node: '>=12'} cpu: [x64] os: [openbsd] requiresBuild: true @@ -1635,11 +1382,8 @@ packages: optional: true /@esbuild/sunos-x64@0.17.19: - resolution: - { - integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} + engines: {node: '>=12'} cpu: [x64] os: [sunos] requiresBuild: true @@ -1647,11 +1391,8 @@ packages: optional: true /@esbuild/sunos-x64@0.19.8: - resolution: - { - integrity: sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==} + engines: {node: '>=12'} cpu: [x64] os: [sunos] requiresBuild: true @@ -1659,11 +1400,8 @@ packages: optional: true /@esbuild/win32-arm64@0.17.19: - resolution: - { - integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} + engines: {node: '>=12'} cpu: [arm64] os: [win32] requiresBuild: true @@ -1671,11 +1409,8 @@ packages: optional: true /@esbuild/win32-arm64@0.19.8: - resolution: - { - integrity: sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==} + engines: {node: '>=12'} cpu: [arm64] os: [win32] requiresBuild: true @@ -1683,11 +1418,8 @@ packages: optional: true /@esbuild/win32-ia32@0.17.19: - resolution: - { - integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} + engines: {node: '>=12'} cpu: [ia32] os: [win32] requiresBuild: true @@ -1695,11 +1427,8 @@ packages: optional: true /@esbuild/win32-ia32@0.19.8: - resolution: - { - integrity: sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==} + engines: {node: '>=12'} cpu: [ia32] os: [win32] requiresBuild: true @@ -1707,11 +1436,8 @@ packages: optional: true /@esbuild/win32-x64@0.17.19: - resolution: - { - integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} + engines: {node: '>=12'} cpu: [x64] os: [win32] requiresBuild: true @@ -1719,11 +1445,8 @@ packages: optional: true /@esbuild/win32-x64@0.19.8: - resolution: - { - integrity: sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==} + engines: {node: '>=12'} cpu: [x64] os: [win32] requiresBuild: true @@ -1731,11 +1454,8 @@ packages: optional: true /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): - resolution: - { - integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: @@ -1743,18 +1463,12 @@ packages: eslint-visitor-keys: 3.4.3 /@eslint-community/regexpp@4.6.2: - resolution: - { - integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==, - } - engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } + resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} /@eslint/eslintrc@2.1.4: - resolution: - { - integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4 @@ -1769,55 +1483,40 @@ packages: - supports-color /@eslint/js@8.56.0: - resolution: - { - integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} /@floating-ui/core@1.5.2: - resolution: - { - integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==, - } + resolution: {integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==} dependencies: - "@floating-ui/utils": 0.1.6 + '@floating-ui/utils': 0.1.6 dev: false /@floating-ui/dom@1.5.3: - resolution: - { - integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==, - } + resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} dependencies: - "@floating-ui/core": 1.5.2 - "@floating-ui/utils": 0.1.6 + '@floating-ui/core': 1.5.2 + '@floating-ui/utils': 0.1.6 dev: false /@floating-ui/react-dom@2.0.4(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==, - } + resolution: {integrity: sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==} peerDependencies: - react: ">=16.8.0" - react-dom: ">=16.8.0" + react: '>=16.8.0' + react-dom: '>=16.8.0' dependencies: - "@floating-ui/dom": 1.5.3 + '@floating-ui/dom': 1.5.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@floating-ui/react@0.24.8(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==, - } + resolution: {integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==} peerDependencies: - react: ">=16.8.0" - react-dom: ">=16.8.0" + react: '>=16.8.0' + react-dom: '>=16.8.0' dependencies: - "@floating-ui/react-dom": 2.0.4(react-dom@18.2.0)(react@18.2.0) + '@floating-ui/react-dom': 2.0.4(react-dom@18.2.0)(react@18.2.0) aria-hidden: 1.2.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1825,62 +1524,44 @@ packages: dev: false /@floating-ui/utils@0.1.6: - resolution: - { - integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==, - } + resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} dev: false /@homarr/gridstack@1.0.0: - resolution: - { - integrity: sha512-KM9024BipLD9BmtM6jHI8OKLZ1Iy4vZdTfU53ww4qEda/330XQYhIC2SBcQgkNnDB2MTkn/laNSO5gTy+lJg9Q==, - } + resolution: {integrity: sha512-KM9024BipLD9BmtM6jHI8OKLZ1Iy4vZdTfU53ww4qEda/330XQYhIC2SBcQgkNnDB2MTkn/laNSO5gTy+lJg9Q==} dev: false /@humanwhocodes/config-array@0.11.13: - resolution: - { - integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==, - } - engines: { node: ">=10.10.0" } + resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} + engines: {node: '>=10.10.0'} dependencies: - "@humanwhocodes/object-schema": 2.0.1 + '@humanwhocodes/object-schema': 2.0.1 debug: 4.3.4 minimatch: 3.1.2 transitivePeerDependencies: - supports-color /@humanwhocodes/module-importer@1.0.1: - resolution: - { - integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==, - } - engines: { node: ">=12.22" } + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} /@humanwhocodes/object-schema@2.0.1: - resolution: - { - integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==, - } + resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} /@ianvs/prettier-plugin-sort-imports@4.1.1(prettier@3.2.5): - resolution: - { - integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==, - } + resolution: {integrity: sha512-kJhXq63ngpTQ2dxgf5GasbPJWsJA3LgoOdd7WGhpUSzLgLgI4IsIzYkbJf9kmpOHe7Vdm/o3PcRA3jmizXUuAQ==} peerDependencies: - "@vue/compiler-sfc": ">=3.0.0" + '@vue/compiler-sfc': '>=3.0.0' prettier: 2 || 3 peerDependenciesMeta: - "@vue/compiler-sfc": + '@vue/compiler-sfc': optional: true dependencies: - "@babel/core": 7.23.2 - "@babel/generator": 7.23.0 - "@babel/parser": 7.23.0 - "@babel/traverse": 7.23.2 - "@babel/types": 7.23.0 + '@babel/core': 7.23.2 + '@babel/generator': 7.23.0 + '@babel/parser': 7.23.0 + '@babel/traverse': 7.23.2 + '@babel/types': 7.23.0 prettier: 3.2.5 semver: 7.5.4 transitivePeerDependencies: @@ -1888,11 +1569,8 @@ packages: dev: false /@isaacs/cliui@8.0.2: - resolution: - { - integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} dependencies: string-width: 5.1.2 string-width-cjs: /string-width@4.2.3 @@ -1903,91 +1581,61 @@ packages: dev: false /@istanbuljs/schema@0.1.3: - resolution: - { - integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} dev: true /@jest/schemas@29.6.3: - resolution: - { - integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==, - } - engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - "@sinclair/typebox": 0.27.8 + '@sinclair/typebox': 0.27.8 dev: true /@jridgewell/gen-mapping@0.3.3: - resolution: - { - integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} + engines: {node: '>=6.0.0'} dependencies: - "@jridgewell/set-array": 1.1.2 - "@jridgewell/sourcemap-codec": 1.4.15 - "@jridgewell/trace-mapping": 0.3.18 + '@jridgewell/set-array': 1.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.18 /@jridgewell/resolve-uri@3.1.0: - resolution: - { - integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} + engines: {node: '>=6.0.0'} /@jridgewell/set-array@1.1.2: - resolution: - { - integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} + engines: {node: '>=6.0.0'} /@jridgewell/sourcemap-codec@1.4.14: - resolution: - { - integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==, - } + resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} /@jridgewell/sourcemap-codec@1.4.15: - resolution: - { - integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, - } + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} /@jridgewell/trace-mapping@0.3.18: - resolution: - { - integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==, - } + resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} dependencies: - "@jridgewell/resolve-uri": 3.1.0 - "@jridgewell/sourcemap-codec": 1.4.14 + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.14 /@jridgewell/trace-mapping@0.3.9: - resolution: - { - integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==, - } + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: - "@jridgewell/resolve-uri": 3.1.0 - "@jridgewell/sourcemap-codec": 1.4.15 + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.15 dev: true /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==, - } + resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} peerDependencies: - "@mantine/hooks": 7.5.1 + '@mantine/hooks': 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@floating-ui/react": 0.24.8(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) + '@floating-ui/react': 0.24.8(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) clsx: 2.0.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1996,23 +1644,20 @@ packages: react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - - "@types/react" + - '@types/react' dev: false /@mantine/dates@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-FReER5Q7gP4YzJPv3a4BqdiufR184MTRAVrITtdPEeTaqTtryAAHuIjiC8QY3f0Q9ge/Pmbt9Khn/ONbULD4XA==, - } + resolution: {integrity: sha512-FReER5Q7gP4YzJPv3a4BqdiufR184MTRAVrITtdPEeTaqTtryAAHuIjiC8QY3f0Q9ge/Pmbt9Khn/ONbULD4XA==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 - dayjs: ">=1.0.0" + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 + dayjs: '>=1.0.0' react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 react: 18.2.0 @@ -2020,10 +1665,7 @@ packages: dev: false /@mantine/form@7.5.1(react@18.2.0): - resolution: - { - integrity: sha512-NPc6sYXZGImFsZvr9Md5DM8C+vpC14rqLcOJlW4DFqze1/MBblVxR+abCNM12r5hrqUxHXEu55yPzxcR9Hoj3Q==, - } + resolution: {integrity: sha512-NPc6sYXZGImFsZvr9Md5DM8C+vpC14rqLcOJlW4DFqze1/MBblVxR+abCNM12r5hrqUxHXEu55yPzxcR9Hoj3Q==} peerDependencies: react: ^18.2.0 dependencies: @@ -2033,10 +1675,7 @@ packages: dev: false /@mantine/hooks@7.5.1(react@18.2.0): - resolution: - { - integrity: sha512-LfrEOkX8U2KbkYAU5BMA7FPbMva/TSd65c45W35wHSx3iqYMsoPN9+Ll1zc/HT0XNFp73jGet9cU7VREbAl0/A==, - } + resolution: {integrity: sha512-LfrEOkX8U2KbkYAU5BMA7FPbMva/TSd65c45W35wHSx3iqYMsoPN9+Ll1zc/HT0XNFp73jGet9cU7VREbAl0/A==} peerDependencies: react: ^18.2.0 dependencies: @@ -2044,64 +1683,52 @@ packages: dev: false /@mantine/modals@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-s0+kGsYbm4sM6xjgR5njAAp5laOw7g9E4rf7kRpcAWadYTGH8ooKnSFuYfLJFm+viYHDHXRQGH6qvo4VAbOrLQ==, - } + resolution: {integrity: sha512-s0+kGsYbm4sM6xjgR5njAAp5laOw7g9E4rf7kRpcAWadYTGH8ooKnSFuYfLJFm+viYHDHXRQGH6qvo4VAbOrLQ==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mantine/notifications@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-IQDOAz+U9G6IkYXAXG9qL5EESmnhWV3JBJrxwBOPPdi1e9S/akQlsmABWS/voB9WFnOnbMbrkF067RVBA7W4dg==, - } + resolution: {integrity: sha512-IQDOAz+U9G6IkYXAXG9qL5EESmnhWV3JBJrxwBOPPdi1e9S/akQlsmABWS/voB9WFnOnbMbrkF067RVBA7W4dg==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) - "@mantine/store": 7.5.1(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false /@mantine/spotlight@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-J49+53nDTsk8eVDFWNVV4SufK5D6iYU5hs15PXwotre+OLgudYK9QXF8r3PA90hugxxiYmykxq2CT+Ttx6GoOg==, - } + resolution: {integrity: sha512-J49+53nDTsk8eVDFWNVV4SufK5D6iYU5hs15PXwotre+OLgudYK9QXF8r3PA90hugxxiYmykxq2CT+Ttx6GoOg==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) - "@mantine/store": 7.5.1(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/store': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mantine/store@7.5.1(react@18.2.0): - resolution: - { - integrity: sha512-sDaPXB3v9JlJghNTnRTFT2hC3HN6pdBcCXj0CqO/QrJgtRA7A3FxW+mnY7YQOaBxHJ1MIRr+zsv0Qy1f/pu1dw==, - } + resolution: {integrity: sha512-sDaPXB3v9JlJghNTnRTFT2hC3HN6pdBcCXj0CqO/QrJgtRA7A3FxW+mnY7YQOaBxHJ1MIRr+zsv0Qy1f/pu1dw==} peerDependencies: react: ^18.2.0 dependencies: @@ -2109,31 +1736,25 @@ packages: dev: false /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==, - } + resolution: {integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 - "@tiptap/extension-link": ^2.1.12 - "@tiptap/react": ^2.1.12 + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 + '@tiptap/extension-link': ^2.1.12 + '@tiptap/react': ^2.1.12 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) - "@tiptap/extension-link": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/react": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) + '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@mapbox/node-pre-gyp@1.0.11: - resolution: - { - integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==, - } + resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} hasBin: true dependencies: detect-libc: 2.0.2 @@ -2151,27 +1772,18 @@ packages: dev: false /@next/env@14.1.0: - resolution: - { - integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==, - } + resolution: {integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==} dev: false /@next/eslint-plugin-next@14.1.0: - resolution: - { - integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==, - } + resolution: {integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==} dependencies: glob: 10.3.10 dev: false /@next/swc-darwin-arm64@14.1.0: - resolution: - { - integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==} + engines: {node: '>= 10'} cpu: [arm64] os: [darwin] requiresBuild: true @@ -2179,11 +1791,8 @@ packages: optional: true /@next/swc-darwin-x64@14.1.0: - resolution: - { - integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==} + engines: {node: '>= 10'} cpu: [x64] os: [darwin] requiresBuild: true @@ -2191,11 +1800,8 @@ packages: optional: true /@next/swc-linux-arm64-gnu@14.1.0: - resolution: - { - integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==} + engines: {node: '>= 10'} cpu: [arm64] os: [linux] requiresBuild: true @@ -2203,11 +1809,8 @@ packages: optional: true /@next/swc-linux-arm64-musl@14.1.0: - resolution: - { - integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==} + engines: {node: '>= 10'} cpu: [arm64] os: [linux] requiresBuild: true @@ -2215,11 +1818,8 @@ packages: optional: true /@next/swc-linux-x64-gnu@14.1.0: - resolution: - { - integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==} + engines: {node: '>= 10'} cpu: [x64] os: [linux] requiresBuild: true @@ -2227,11 +1827,8 @@ packages: optional: true /@next/swc-linux-x64-musl@14.1.0: - resolution: - { - integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==} + engines: {node: '>= 10'} cpu: [x64] os: [linux] requiresBuild: true @@ -2239,11 +1836,8 @@ packages: optional: true /@next/swc-win32-arm64-msvc@14.1.0: - resolution: - { - integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==} + engines: {node: '>= 10'} cpu: [arm64] os: [win32] requiresBuild: true @@ -2251,11 +1845,8 @@ packages: optional: true /@next/swc-win32-ia32-msvc@14.1.0: - resolution: - { - integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==} + engines: {node: '>= 10'} cpu: [ia32] os: [win32] requiresBuild: true @@ -2263,11 +1854,8 @@ packages: optional: true /@next/swc-win32-x64-msvc@14.1.0: - resolution: - { - integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==} + engines: {node: '>= 10'} cpu: [x64] os: [win32] requiresBuild: true @@ -2275,98 +1863,65 @@ packages: optional: true /@noble/hashes@1.3.2: - resolution: - { - integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==, - } - engines: { node: ">= 16" } + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} dev: false /@nodelib/fs.scandir@2.1.5: - resolution: - { - integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} dependencies: - "@nodelib/fs.stat": 2.0.5 + '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 /@nodelib/fs.stat@2.0.5: - resolution: - { - integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} /@nodelib/fs.walk@1.2.8: - resolution: - { - integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} dependencies: - "@nodelib/fs.scandir": 2.1.5 + '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 /@panva/hkdf@1.1.1: - resolution: - { - integrity: sha512-dhPeilub1NuIG0X5Kvhh9lH4iW3ZsHlnzwgwbOlgwQ2wG1IqFzsgHqmKPk3WzsdWAeaxKJxgM0+W433RmN45GA==, - } + resolution: {integrity: sha512-dhPeilub1NuIG0X5Kvhh9lH4iW3ZsHlnzwgwbOlgwQ2wG1IqFzsgHqmKPk3WzsdWAeaxKJxgM0+W433RmN45GA==} dev: false /@paralleldrive/cuid2@2.2.2: - resolution: - { - integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==, - } + resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==} dependencies: - "@noble/hashes": 1.3.2 + '@noble/hashes': 1.3.2 dev: false /@pkgjs/parseargs@0.11.0: - resolution: - { - integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} requiresBuild: true dev: false optional: true /@polka/url@1.0.0-next.24: - resolution: - { - integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==, - } + resolution: {integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==} dev: true /@popperjs/core@2.11.8: - resolution: - { - integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==, - } + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} dev: false /@remirror/core-constants@2.0.2: - resolution: - { - integrity: sha512-dyHY+sMF0ihPus3O27ODd4+agdHMEmuRdyiZJ2CCWjPV5UFmn17ZbElvk6WOGVE4rdCJKZQCrPV2BcikOMLUGQ==, - } + resolution: {integrity: sha512-dyHY+sMF0ihPus3O27ODd4+agdHMEmuRdyiZJ2CCWjPV5UFmn17ZbElvk6WOGVE4rdCJKZQCrPV2BcikOMLUGQ==} dev: false /@remirror/core-helpers@3.0.0: - resolution: - { - integrity: sha512-tusEgQJIqg4qKj6HSBUFcyRnWnziw3neh4T9wOmsPGHFC3w9kl5KSrDb9UAgE8uX6y32FnS7vJ955mWOl3n50A==, - } + resolution: {integrity: sha512-tusEgQJIqg4qKj6HSBUFcyRnWnziw3neh4T9wOmsPGHFC3w9kl5KSrDb9UAgE8uX6y32FnS7vJ955mWOl3n50A==} dependencies: - "@remirror/core-constants": 2.0.2 - "@remirror/types": 1.0.1 - "@types/object.omit": 3.0.3 - "@types/object.pick": 1.3.4 - "@types/throttle-debounce": 2.1.0 + '@remirror/core-constants': 2.0.2 + '@remirror/types': 1.0.1 + '@types/object.omit': 3.0.3 + '@types/object.pick': 1.3.4 + '@types/throttle-debounce': 2.1.0 case-anything: 2.1.13 dash-get: 1.0.2 deepmerge: 4.3.1 @@ -2378,19 +1933,13 @@ packages: dev: false /@remirror/types@1.0.1: - resolution: - { - integrity: sha512-VlZQxwGnt1jtQ18D6JqdIF+uFZo525WEqrfp9BOc3COPpK4+AWCgdnAWL+ho6imWcoINlGjR/+3b6y5C1vBVEA==, - } + resolution: {integrity: sha512-VlZQxwGnt1jtQ18D6JqdIF+uFZo525WEqrfp9BOc3COPpK4+AWCgdnAWL+ho6imWcoINlGjR/+3b6y5C1vBVEA==} dependencies: type-fest: 2.19.0 dev: false /@rollup/rollup-android-arm-eabi@4.9.6: - resolution: - { - integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==, - } + resolution: {integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==} cpu: [arm] os: [android] requiresBuild: true @@ -2398,10 +1947,7 @@ packages: optional: true /@rollup/rollup-android-arm64@4.9.6: - resolution: - { - integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==, - } + resolution: {integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==} cpu: [arm64] os: [android] requiresBuild: true @@ -2409,10 +1955,7 @@ packages: optional: true /@rollup/rollup-darwin-arm64@4.9.6: - resolution: - { - integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==, - } + resolution: {integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==} cpu: [arm64] os: [darwin] requiresBuild: true @@ -2420,10 +1963,7 @@ packages: optional: true /@rollup/rollup-darwin-x64@4.9.6: - resolution: - { - integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==, - } + resolution: {integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==} cpu: [x64] os: [darwin] requiresBuild: true @@ -2431,10 +1971,7 @@ packages: optional: true /@rollup/rollup-linux-arm-gnueabihf@4.9.6: - resolution: - { - integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==, - } + resolution: {integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==} cpu: [arm] os: [linux] requiresBuild: true @@ -2442,10 +1979,7 @@ packages: optional: true /@rollup/rollup-linux-arm64-gnu@4.9.6: - resolution: - { - integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==, - } + resolution: {integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==} cpu: [arm64] os: [linux] requiresBuild: true @@ -2453,10 +1987,7 @@ packages: optional: true /@rollup/rollup-linux-arm64-musl@4.9.6: - resolution: - { - integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==, - } + resolution: {integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==} cpu: [arm64] os: [linux] requiresBuild: true @@ -2464,10 +1995,7 @@ packages: optional: true /@rollup/rollup-linux-riscv64-gnu@4.9.6: - resolution: - { - integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==, - } + resolution: {integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==} cpu: [riscv64] os: [linux] requiresBuild: true @@ -2475,10 +2003,7 @@ packages: optional: true /@rollup/rollup-linux-x64-gnu@4.9.6: - resolution: - { - integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==, - } + resolution: {integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==} cpu: [x64] os: [linux] requiresBuild: true @@ -2486,10 +2011,7 @@ packages: optional: true /@rollup/rollup-linux-x64-musl@4.9.6: - resolution: - { - integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==, - } + resolution: {integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==} cpu: [x64] os: [linux] requiresBuild: true @@ -2497,10 +2019,7 @@ packages: optional: true /@rollup/rollup-win32-arm64-msvc@4.9.6: - resolution: - { - integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==, - } + resolution: {integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==} cpu: [arm64] os: [win32] requiresBuild: true @@ -2508,10 +2027,7 @@ packages: optional: true /@rollup/rollup-win32-ia32-msvc@4.9.6: - resolution: - { - integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==, - } + resolution: {integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==} cpu: [ia32] os: [win32] requiresBuild: true @@ -2519,10 +2035,7 @@ packages: optional: true /@rollup/rollup-win32-x64-msvc@4.9.6: - resolution: - { - integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==, - } + resolution: {integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==} cpu: [x64] os: [win32] requiresBuild: true @@ -2530,17 +2043,11 @@ packages: optional: true /@sinclair/typebox@0.27.8: - resolution: - { - integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==, - } + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true /@swc/helpers@0.5.2: - resolution: - { - integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==, - } + resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} dependencies: tslib: 2.5.0 dev: false @@ -2548,7 +2055,7 @@ packages: /@t3-oss/env-core@0.9.2(typescript@5.3.3)(zod@3.22.4): resolution: {integrity: sha512-KgWXljUTHgO3o7GMZQPAD5+P+HqpauMNNHowlm7V2b9IeMitSUpNKwG6xQrup/xARWHTdxRVIl0mSI4wCevQhQ==} peerDependencies: - typescript: ">=5.0.0" + typescript: '>=5.0.0' zod: ^3.0.0 peerDependenciesMeta: typescript: @@ -2561,7 +2068,7 @@ packages: /@t3-oss/env-nextjs@0.9.2(typescript@5.3.3)(zod@3.22.4): resolution: {integrity: sha512-dklHrgKLESStNVB67Jdbu6osxDYA+xNKaPBRerlnkEvzbCccSKMvZENx6EZebJuR4snqB3/yRykNMn/bdIAyiQ==} peerDependencies: - typescript: ">=5.0.0" + typescript: '>=5.0.0' zod: ^3.0.0 peerDependenciesMeta: typescript: @@ -2573,346 +2080,256 @@ packages: dev: false /@tabler/icons-react@2.47.0(react@18.2.0): - resolution: - { - integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==, - } + resolution: {integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==} peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 dependencies: - "@tabler/icons": 2.47.0 + '@tabler/icons': 2.47.0 prop-types: 15.8.1 react: 18.2.0 dev: false /@tabler/icons@2.47.0: - resolution: - { - integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==, - } + resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} dev: false /@tanstack/query-core@5.18.1: - resolution: - { - integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==, - } + resolution: {integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==} dev: false /@tanstack/query-devtools@5.18.1: - resolution: - { - integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==, - } + resolution: {integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==} dev: false /@tanstack/react-query-devtools@5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0): - resolution: - { - integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==, - } + resolution: {integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==} peerDependencies: - "@tanstack/react-query": ^5.18.1 + '@tanstack/react-query': ^5.18.1 react: ^18.0.0 dependencies: - "@tanstack/query-devtools": 5.18.1 - "@tanstack/react-query": 5.18.1(react@18.2.0) + '@tanstack/query-devtools': 5.18.1 + '@tanstack/react-query': 5.18.1(react@18.2.0) react: 18.2.0 dev: false /@tanstack/react-query-next-experimental@5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0): - resolution: - { - integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==, - } + resolution: {integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==} peerDependencies: - "@tanstack/react-query": ^5.18.1 + '@tanstack/react-query': ^5.18.1 next: ^13 || ^14 react: ^18.0.0 dependencies: - "@tanstack/react-query": 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.18.1(react@18.2.0) next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false /@tanstack/react-query@5.18.1(react@18.2.0): - resolution: - { - integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==, - } + resolution: {integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==} peerDependencies: react: ^18.0.0 dependencies: - "@tanstack/query-core": 5.18.1 + '@tanstack/query-core': 5.18.1 react: 18.2.0 dev: false /@tiptap/core@2.2.2(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==, - } + resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} peerDependencies: - "@tiptap/pm": ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/pm": 2.2.2 + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-blockquote@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==, - } + resolution: {integrity: sha512-ENCGx/yhNdUQ0epGOeTN4HFeUSfQDK2CQBy2szkQVtzG/Vhv8ExxBWTxHJcMoeSfEVmKag4B506vfRkKH24IMA==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-bold@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==, - } + resolution: {integrity: sha512-8/KLpPHwO+GXlWsXEION7ppLfFIaSpnw5m2QYXz/LGRK32hzpTavbdXV3rx9+Vu+7Z+0yQF9G/ro1z9dqTQHpw==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-bubble-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==, - } + resolution: {integrity: sha512-W3OvoHxgBdQSrlX8FXvIs5wA+eHXe/0jGsqQdwLXPtqZOSR4Ks9OLmxDk2+O8ci0KCLPb6/doJYg7j/8Ic4KRg==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 tippy.js: 6.3.7 dev: false /@tiptap/extension-bullet-list@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==, - } + resolution: {integrity: sha512-mZznxwymWitQRHYxEN8LX7theJdQ1/O6kUsvwDyHw42+jaCsZumTHEWGckBwkxk3BWWKbrkRGv/cC78sa3cNJw==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-code-block@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==, - } + resolution: {integrity: sha512-CKn4xqhpCfwkVdkj//A+LVf0hFrRkBbDx8u3KG+I7cegjXxvDSqb2OGhn/tXpFatLAE50GJiPIvqf+TmhIWBvA==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-code@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-CHMHK76fGFrY3TpsyNmPB393VvRgjnvLVOfc0Qx4KKEkntDQ1v2jg90XupLf0+H0aq0KQBHlSooW0Bh+7SxbmQ==, - } + resolution: {integrity: sha512-CHMHK76fGFrY3TpsyNmPB393VvRgjnvLVOfc0Qx4KKEkntDQ1v2jg90XupLf0+H0aq0KQBHlSooW0Bh+7SxbmQ==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-document@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==, - } + resolution: {integrity: sha512-eUhpYq8ErVAlxuTg5wslc96mniEQs+VN+tFmRrx9Q0n0nG/aDKUQFDgcSMpAMpHK7+h7tGc/rDq+ydpzZhFXlQ==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-dropcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==, - } + resolution: {integrity: sha512-HxXEf6m+W3PnT63Ib49qAmcwmapZvmyWgq9cvB5kSfl/znQT04wBgShEigkgUBLqgcM/R/RI8NS1GQl1Zpv9iQ==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-floating-menu@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==, - } + resolution: {integrity: sha512-DRz9kzcPt7S8s22EQC+KS/ghnHRV6j7Qequ+0kLjfLYPdqj2u4G5xTrFM7sWfzUqf2HdH8SS8Yo9WFMYm69D9w==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 tippy.js: 6.3.7 dev: false /@tiptap/extension-gapcursor@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==, - } + resolution: {integrity: sha512-qsE8yI9nZOLHg6XdFwn4BYMhR2f/50gppHJdsHx53575y2ci6uowMI+WjdEentl6yR9ctgV1jelHLs9ShmPzwQ==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-hard-break@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==, - } + resolution: {integrity: sha512-zbG6/7xyMim2fnRESIx2FiFHjdY7BXKMe+GUgLGPnRfXrJqSZhdVguBrtYGBnBFCnuSiOZZ6rFy+k5uORGSrhA==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-heading@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==, - } + resolution: {integrity: sha512-oCd8VsLnrqJFY+lgA+5I/2EjBa4mQzB5DFLzCI460PfZnQJ2DmaNUdpY38BpHUv8E2PbBXzxxWS9h88yycW6yw==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-history@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==, - } + resolution: {integrity: sha512-hcCEh7mP5H38ZY3YtbyyUOTNfKWAvITkJhVqjKbrRI3E+FOlG3pWPH3wz4srW5bHK38oUsiKwyP9FqC3C2Mixg==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-horizontal-rule@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==, - } + resolution: {integrity: sha512-5hun56M9elO6slOoDH03q2of06KB1rX8MLvfiKpfAvjbhmuQJav20fz2MQ2lCunek0D8mUIySwhfMvBrTcd90A==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 dev: false /@tiptap/extension-italic@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==, - } + resolution: {integrity: sha512-l9NZK4vYqYY9Y5UskLQpdbvi0sXG4I/MuhRxPdjitK8E3SVhZxMnoNwCTkq0+I1xBjCD/jSrDMV4FqkKesrl2w==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-link@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==, - } + resolution: {integrity: sha512-hk2cxSWeFagv2erxVI4UUN9kTLqhTSLhtHKVNbKOW50dtkDqjzp9tri1+LYYpiObxDKoFFKfKjE6ojVtqMyn2w==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 linkifyjs: 4.1.3 dev: false /@tiptap/extension-list-item@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==, - } + resolution: {integrity: sha512-VuHlbhLePXvKTx55X0iIZ1EXARAoOf6lpbKJK8180jny2gpYxGhk7rwG1G8s6G6ZDST+kyVa04gncxz8F/z6oA==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-ordered-list@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==, - } + resolution: {integrity: sha512-TgG+mJyQB5CfeqCD65B9CLesl2IQTjc7tAKm8ZxRzF80GrCrmWNnoXi424TWmSF6cUV/4TY0G5dTkc9kB+S2tw==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-paragraph@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==, - } + resolution: {integrity: sha512-USTzajni/hsQXsBF0Lbw++FyPJKCDlROyaKbZi77QQoUsU2MbJIka7k4tGc0kwyTB04aAl+E6+0iS4xIhC3rug==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-strike@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==, - } + resolution: {integrity: sha512-0wsqiZPatw9QrK3DJ1jCMukenc8DRQtEXo4/dQjtnzNDhe7ZySed6kPpGO9A4lASG7NV7GmYZ/k5iEELr+iE6Q==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/extension-text@2.2.2(@tiptap/core@2.2.2): - resolution: - { - integrity: sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==, - } + resolution: {integrity: sha512-Zj53Vp/9MSQj5uiaObFaD3y7grUpMy+PfHmrK5XAZSFhRx+QpGUp+oItlKod6IJEIu8rq4dChgE7i6kT9uwWlA==} peerDependencies: - "@tiptap/core": ^2.0.0 + '@tiptap/core': ^2.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) dev: false /@tiptap/pm@2.2.2: - resolution: - { - integrity: sha512-TcUxqevVcqLYOcbAGlmvZfOB5LL5zZmb6jxSHyevl41SRpGZLe9Jt0e1v98jS0o9GMS7nvcTK/scYQu9e0HqTA==, - } + resolution: {integrity: sha512-TcUxqevVcqLYOcbAGlmvZfOB5LL5zZmb6jxSHyevl41SRpGZLe9Jt0e1v98jS0o9GMS7nvcTK/scYQu9e0HqTA==} dependencies: prosemirror-changeset: 2.2.1 prosemirror-collab: 1.3.1 @@ -2935,89 +2352,74 @@ packages: dev: false /@tiptap/react@2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==, - } + resolution: {integrity: sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==} peerDependencies: - "@tiptap/core": ^2.0.0 - "@tiptap/pm": ^2.0.0 + '@tiptap/core': ^2.0.0 + '@tiptap/pm': ^2.0.0 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/extension-bubble-menu": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-floating-menu": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/pm": 2.2.2 + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/extension-bubble-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-floating-menu': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/pm': 2.2.2 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@tiptap/starter-kit@2.2.2(@tiptap/pm@2.2.2): - resolution: - { - integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==, - } + resolution: {integrity: sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==} dependencies: - "@tiptap/core": 2.2.2(@tiptap/pm@2.2.2) - "@tiptap/extension-blockquote": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-bold": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-bullet-list": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-code": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-code-block": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-document": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-dropcursor": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-gapcursor": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-hard-break": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-heading": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-history": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-horizontal-rule": 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) - "@tiptap/extension-italic": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-list-item": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-ordered-list": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-paragraph": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-strike": 2.2.2(@tiptap/core@2.2.2) - "@tiptap/extension-text": 2.2.2(@tiptap/core@2.2.2) + '@tiptap/core': 2.2.2(@tiptap/pm@2.2.2) + '@tiptap/extension-blockquote': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-bold': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-bullet-list': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-code': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-code-block': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-document': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-dropcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-gapcursor': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-hard-break': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-heading': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-history': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-horizontal-rule': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) + '@tiptap/extension-italic': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-list-item': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-ordered-list': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-paragraph': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-strike': 2.2.2(@tiptap/core@2.2.2) + '@tiptap/extension-text': 2.2.2(@tiptap/core@2.2.2) transitivePeerDependencies: - - "@tiptap/pm" + - '@tiptap/pm' dev: false /@tootallnate/quickjs-emscripten@0.23.0: - resolution: - { - integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==, - } + resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} dev: true /@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93): - resolution: - { - integrity: sha512-Oz5AaCG3x5+WDo/O2B3ty23gc1k1M1fBEb8+9TCYZN747USP4E/jdRKCsXzoQiOTSQHAQncUlHqdhG3lUTi9xw==, - } + resolution: {integrity: sha512-Oz5AaCG3x5+WDo/O2B3ty23gc1k1M1fBEb8+9TCYZN747USP4E/jdRKCsXzoQiOTSQHAQncUlHqdhG3lUTi9xw==} peerDependencies: - "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93+d2abec87 + '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93+d2abec87 dependencies: - "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 + '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==, - } + resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} peerDependencies: - "@tanstack/react-query": ^5.0.0 - "@trpc/client": 11.0.0-next.92+06cebb01 - "@trpc/react-query": 11.0.0-next.92+06cebb01 - "@trpc/server": 11.0.0-next.92+06cebb01 - next: "*" - react: ">=16.8.0" - react-dom: ">=16.8.0" + '@tanstack/react-query': ^5.0.0 + '@trpc/client': 11.0.0-next.92+06cebb01 + '@trpc/react-query': 11.0.0-next.92+06cebb01 + '@trpc/server': 11.0.0-next.92+06cebb01 + next: '*' + react: '>=16.8.0' + react-dom: '>=16.8.0' dependencies: - "@tanstack/react-query": 5.18.1(react@18.2.0) - "@trpc/client": 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - "@trpc/react-query": 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) - "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 + '@tanstack/react-query': 5.18.1(react@18.2.0) + '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) + '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -3025,67 +2427,46 @@ packages: dev: false /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==, - } + resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} peerDependencies: - "@tanstack/react-query": ^5.0.0 - "@trpc/client": 11.0.0-next.92+06cebb01 - "@trpc/server": 11.0.0-next.92+06cebb01 - react: ">=16.8.0" - react-dom: ">=16.8.0" + '@tanstack/react-query': ^5.0.0 + '@trpc/client': 11.0.0-next.92+06cebb01 + '@trpc/server': 11.0.0-next.92+06cebb01 + react: '>=16.8.0' + react-dom: '>=16.8.0' dependencies: - "@tanstack/react-query": 5.18.1(react@18.2.0) - "@trpc/client": 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - "@trpc/server": 11.0.0-alpha-next-2023-10-26-15-15-56.93 + '@tanstack/react-query': 5.18.1(react@18.2.0) + '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) + '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93: - resolution: - { - integrity: sha512-xOQakfePY/bRAy+yNa52PG9gvl5DtcJyHh4kYSVUDfMTBPxmU4ePFSZFSREMx0SpddbQ4c35AwGU4V4ngHCK/A==, - } + resolution: {integrity: sha512-xOQakfePY/bRAy+yNa52PG9gvl5DtcJyHh4kYSVUDfMTBPxmU4ePFSZFSREMx0SpddbQ4c35AwGU4V4ngHCK/A==} dev: false /@tsconfig/node10@1.0.9: - resolution: - { - integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==, - } + resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} dev: true /@tsconfig/node12@1.0.11: - resolution: - { - integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==, - } + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} dev: true /@tsconfig/node14@1.0.3: - resolution: - { - integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==, - } + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} dev: true /@tsconfig/node16@1.0.4: - resolution: - { - integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==, - } + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.12.3(@types/node@20.11.16)(typescript@5.3.3): - resolution: - { - integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==, - } + /@turbo/gen@1.12.3(@types/node@20.11.17)(typescript@5.3.3): + resolution: {integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==} hasBin: true dependencies: - "@turbo/workspaces": 1.12.3 + '@turbo/workspaces': 1.12.3 chalk: 2.4.2 commander: 10.0.1 fs-extra: 10.1.0 @@ -3093,22 +2474,19 @@ packages: minimatch: 9.0.3 node-plop: 0.26.3 proxy-agent: 6.3.0 - ts-node: 10.9.1(@types/node@20.11.16)(typescript@5.3.3) + ts-node: 10.9.1(@types/node@20.11.17)(typescript@5.3.3) update-check: 1.5.4 validate-npm-package-name: 5.0.0 transitivePeerDependencies: - - "@swc/core" - - "@swc/wasm" - - "@types/node" + - '@swc/core' + - '@swc/wasm' + - '@types/node' - supports-color - typescript dev: true /@turbo/workspaces@1.12.3: - resolution: - { - integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==, - } + resolution: {integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==} hasBin: true dependencies: chalk: 2.4.2 @@ -3126,369 +2504,243 @@ packages: dev: true /@types/babel__core@7.20.5: - resolution: - { - integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, - } + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: - "@babel/parser": 7.23.9 - "@babel/types": 7.23.9 - "@types/babel__generator": 7.6.8 - "@types/babel__template": 7.4.4 - "@types/babel__traverse": 7.20.5 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.5 dev: true /@types/babel__generator@7.6.8: - resolution: - { - integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==, - } + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} dependencies: - "@babel/types": 7.23.9 + '@babel/types': 7.23.9 dev: true /@types/babel__template@7.4.4: - resolution: - { - integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, - } + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} dependencies: - "@babel/parser": 7.23.9 - "@babel/types": 7.23.9 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 dev: true /@types/babel__traverse@7.20.5: - resolution: - { - integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==, - } + resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} dependencies: - "@babel/types": 7.23.9 + '@babel/types': 7.23.9 dev: true /@types/bcrypt@5.0.2: - resolution: - { - integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==, - } + resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} dependencies: - "@types/node": 20.11.16 + '@types/node': 20.11.17 dev: true /@types/better-sqlite3@7.6.9: - resolution: - { - integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==, - } + resolution: {integrity: sha512-FvktcujPDj9XKMJQWFcl2vVl7OdRIqsSRX9b0acWwTmwLK9CF2eqo/FRcmMLNpugKoX/avA6pb7TorDLmpgTnQ==} dependencies: - "@types/node": 20.11.16 + '@types/node': 20.11.17 /@types/body-parser@1.19.5: - resolution: - { - integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==, - } + resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: - "@types/connect": 3.4.38 - "@types/node": 20.11.16 + '@types/connect': 3.4.38 + '@types/node': 20.11.17 dev: true /@types/connect@3.4.38: - resolution: - { - integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==, - } + resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - "@types/node": 20.11.16 + '@types/node': 20.11.17 dev: true /@types/cookie@0.6.0: - resolution: - { - integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==, - } + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} dev: false /@types/cookies@0.9.0: - resolution: - { - integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==, - } + resolution: {integrity: sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==} dependencies: - "@types/connect": 3.4.38 - "@types/express": 4.17.21 - "@types/keygrip": 1.0.6 - "@types/node": 20.11.16 + '@types/connect': 3.4.38 + '@types/express': 4.17.21 + '@types/keygrip': 1.0.6 + '@types/node': 20.11.17 dev: true /@types/css-modules@1.0.5: - resolution: - { - integrity: sha512-oeKafs/df9lwOvtfiXVliZsocFVOexK9PZtLQWuPeuVCFR7jwiqlg60lu80JTe5NFNtH3tnV6Fs/ySR8BUPHAw==, - } + resolution: {integrity: sha512-oeKafs/df9lwOvtfiXVliZsocFVOexK9PZtLQWuPeuVCFR7jwiqlg60lu80JTe5NFNtH3tnV6Fs/ySR8BUPHAw==} dev: true /@types/eslint@8.56.2: - resolution: - { - integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==, - } + resolution: {integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==} dependencies: - "@types/estree": 1.0.1 - "@types/json-schema": 7.0.12 + '@types/estree': 1.0.1 + '@types/json-schema': 7.0.12 dev: true /@types/estree@1.0.1: - resolution: - { - integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==, - } + resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} dev: true /@types/estree@1.0.5: - resolution: - { - integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, - } + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: true /@types/express-serve-static-core@4.17.41: - resolution: - { - integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==, - } + resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - "@types/node": 20.11.16 - "@types/qs": 6.9.10 - "@types/range-parser": 1.2.7 - "@types/send": 0.17.4 + '@types/node': 20.11.17 + '@types/qs': 6.9.10 + '@types/range-parser': 1.2.7 + '@types/send': 0.17.4 dev: true /@types/express@4.17.21: - resolution: - { - integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==, - } + resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} dependencies: - "@types/body-parser": 1.19.5 - "@types/express-serve-static-core": 4.17.41 - "@types/qs": 6.9.10 - "@types/serve-static": 1.15.5 + '@types/body-parser': 1.19.5 + '@types/express-serve-static-core': 4.17.41 + '@types/qs': 6.9.10 + '@types/serve-static': 1.15.5 dev: true /@types/glob@7.2.0: - resolution: - { - integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==, - } + resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} dependencies: - "@types/minimatch": 5.1.2 - "@types/node": 20.11.16 + '@types/minimatch': 5.1.2 + '@types/node': 20.11.17 dev: true /@types/http-errors@2.0.4: - resolution: - { - integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==, - } + resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} dev: true /@types/inquirer@6.5.0: - resolution: - { - integrity: sha512-rjaYQ9b9y/VFGOpqBEXRavc3jh0a+e6evAbI31tMda8VlPaSy0AZJfXsvmIe3wklc7W6C3zCSfleuMXR7NOyXw==, - } + resolution: {integrity: sha512-rjaYQ9b9y/VFGOpqBEXRavc3jh0a+e6evAbI31tMda8VlPaSy0AZJfXsvmIe3wklc7W6C3zCSfleuMXR7NOyXw==} dependencies: - "@types/through": 0.0.30 + '@types/through': 0.0.30 rxjs: 6.6.7 dev: true /@types/istanbul-lib-coverage@2.0.6: - resolution: - { - integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==, - } + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} dev: true /@types/json-schema@7.0.12: - resolution: - { - integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==, - } + resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} /@types/json5@0.0.29: - resolution: - { - integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, - } + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: false /@types/keygrip@1.0.6: - resolution: - { - integrity: sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==, - } + resolution: {integrity: sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==} dev: true /@types/mime@1.3.5: - resolution: - { - integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==, - } + resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} dev: true /@types/mime@3.0.4: - resolution: - { - integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==, - } + resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} dev: true /@types/minimatch@5.1.2: - resolution: - { - integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==, - } + resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} dev: true - /@types/node@20.11.16: - resolution: - { - integrity: sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==, - } + /@types/node@20.11.17: + resolution: {integrity: sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==} dependencies: undici-types: 5.26.5 /@types/object.omit@3.0.3: - resolution: - { - integrity: sha512-xrq4bQTBGYY2cw+gV4PzoG2Lv3L0pjZ1uXStRRDQoATOYW1lCsFQHhQ+OkPhIcQoqLjAq7gYif7D14Qaa6Zbew==, - } + resolution: {integrity: sha512-xrq4bQTBGYY2cw+gV4PzoG2Lv3L0pjZ1uXStRRDQoATOYW1lCsFQHhQ+OkPhIcQoqLjAq7gYif7D14Qaa6Zbew==} dev: false /@types/object.pick@1.3.4: - resolution: - { - integrity: sha512-5PjwB0uP2XDp3nt5u5NJAG2DORHIRClPzWT/TTZhJ2Ekwe8M5bA9tvPdi9NO/n2uvu2/ictat8kgqvLfcIE1SA==, - } + resolution: {integrity: sha512-5PjwB0uP2XDp3nt5u5NJAG2DORHIRClPzWT/TTZhJ2Ekwe8M5bA9tvPdi9NO/n2uvu2/ictat8kgqvLfcIE1SA==} dev: false /@types/prop-types@15.7.5: - resolution: - { - integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==, - } + resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} /@types/qs@6.9.10: - resolution: - { - integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==, - } + resolution: {integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==} dev: true /@types/range-parser@1.2.7: - resolution: - { - integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==, - } + resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} dev: true /@types/react-dom@18.2.19: - resolution: - { - integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==, - } + resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 dev: true /@types/react@18.2.55: - resolution: - { - integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==, - } + resolution: {integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==} dependencies: - "@types/prop-types": 15.7.5 - "@types/scheduler": 0.16.3 + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.3 csstype: 3.1.2 /@types/scheduler@0.16.3: - resolution: - { - integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==, - } + resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==} /@types/semver@7.5.0: - resolution: - { - integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==, - } + resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} dev: false /@types/send@0.17.4: - resolution: - { - integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==, - } + resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: - "@types/mime": 1.3.5 - "@types/node": 20.11.16 + '@types/mime': 1.3.5 + '@types/node': 20.11.17 dev: true /@types/serve-static@1.15.5: - resolution: - { - integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==, - } + resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} dependencies: - "@types/http-errors": 2.0.4 - "@types/mime": 3.0.4 - "@types/node": 20.11.16 + '@types/http-errors': 2.0.4 + '@types/mime': 3.0.4 + '@types/node': 20.11.17 dev: true /@types/throttle-debounce@2.1.0: - resolution: - { - integrity: sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==, - } + resolution: {integrity: sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==} dev: false /@types/through@0.0.30: - resolution: - { - integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==, - } + resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} dependencies: - "@types/node": 20.11.16 + '@types/node': 20.11.17 dev: true /@types/tinycolor2@1.4.3: - resolution: - { - integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==, - } + resolution: {integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==} dev: true /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: - { - integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha eslint: ^7.0.0 || ^8.0.0 - typescript: "*" + typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - "@eslint-community/regexpp": 4.6.2 - "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/type-utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) - "@typescript-eslint/utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) - "@typescript-eslint/visitor-keys": 6.21.0 + '@eslint-community/regexpp': 4.6.2 + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 eslint: 8.56.0 graphemer: 1.4.0 @@ -3502,22 +2754,19 @@ packages: dev: false /@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: - { - integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 - typescript: "*" + typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) - "@typescript-eslint/visitor-keys": 6.21.0 + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 eslint: 8.56.0 typescript: 5.3.3 @@ -3526,31 +2775,25 @@ packages: dev: false /@typescript-eslint/scope-manager@6.21.0: - resolution: - { - integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 dev: false /@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: - { - integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 - typescript: "*" + typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) - "@typescript-eslint/utils": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 eslint: 8.56.0 ts-api-utils: 1.0.1(typescript@5.3.3) @@ -3560,27 +2803,21 @@ packages: dev: false /@typescript-eslint/types@6.21.0: - resolution: - { - integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + engines: {node: ^16.0.0 || >=18.0.0} dev: false /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3): - resolution: - { - integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - typescript: "*" + typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -3593,20 +2830,17 @@ packages: dev: false /@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: - { - integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - "@eslint-community/eslint-utils": 4.4.0(eslint@8.56.0) - "@types/json-schema": 7.0.12 - "@types/semver": 7.5.0 - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/typescript-estree": 6.21.0(typescript@5.3.3) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.0 + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -3615,51 +2849,39 @@ packages: dev: false /@typescript-eslint/visitor-keys@6.21.0: - resolution: - { - integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==, - } - engines: { node: ^16.0.0 || >=18.0.0 } + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - "@typescript-eslint/types": 6.21.0 + '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 dev: false /@ungap/structured-clone@1.2.0: - resolution: - { - integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==, - } + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} /@vitejs/plugin-react@4.2.1(vite@5.0.12): - resolution: - { - integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==, - } - engines: { node: ^14.18.0 || >=16.0.0 } + resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} + engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: vite: ^4.2.0 || ^5.0.0 dependencies: - "@babel/core": 7.23.9 - "@babel/plugin-transform-react-jsx-self": 7.23.3(@babel/core@7.23.9) - "@babel/plugin-transform-react-jsx-source": 7.23.3(@babel/core@7.23.9) - "@types/babel__core": 7.20.5 + '@babel/core': 7.23.9 + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.9) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.9) + '@types/babel__core': 7.20.5 react-refresh: 0.14.0 - vite: 5.0.12(@types/node@20.11.16) + vite: 5.0.12(@types/node@20.11.17) transitivePeerDependencies: - supports-color dev: true /@vitest/coverage-v8@1.2.2(vitest@1.2.2): - resolution: - { - integrity: sha512-IHyKnDz18SFclIEEAHb9Y4Uxx0sPKC2VO1kdDCs1BF6Ip4S8rQprs971zIsooLUn7Afs71GRxWMWpkCGZpRMhw==, - } + resolution: {integrity: sha512-IHyKnDz18SFclIEEAHb9Y4Uxx0sPKC2VO1kdDCs1BF6Ip4S8rQprs971zIsooLUn7Afs71GRxWMWpkCGZpRMhw==} peerDependencies: vitest: ^1.0.0 dependencies: - "@ampproject/remapping": 2.2.1 - "@bcoe/v8-coverage": 0.2.3 + '@ampproject/remapping': 2.2.1 + '@bcoe/v8-coverage': 0.2.3 debug: 4.3.4 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 @@ -3671,38 +2893,29 @@ packages: std-env: 3.7.0 test-exclude: 6.0.0 v8-to-istanbul: 9.2.0 - vitest: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) + vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) transitivePeerDependencies: - supports-color dev: true /@vitest/expect@1.2.2: - resolution: - { - integrity: sha512-3jpcdPAD7LwHUUiT2pZTj2U82I2Tcgg2oVPvKxhn6mDI2On6tfvPQTjAI4628GUGDZrCm4Zna9iQHm5cEexOAg==, - } + resolution: {integrity: sha512-3jpcdPAD7LwHUUiT2pZTj2U82I2Tcgg2oVPvKxhn6mDI2On6tfvPQTjAI4628GUGDZrCm4Zna9iQHm5cEexOAg==} dependencies: - "@vitest/spy": 1.2.2 - "@vitest/utils": 1.2.2 + '@vitest/spy': 1.2.2 + '@vitest/utils': 1.2.2 chai: 4.4.1 dev: true /@vitest/runner@1.2.2: - resolution: - { - integrity: sha512-JctG7QZ4LSDXr5CsUweFgcpEvrcxOV1Gft7uHrvkQ+fsAVylmWQvnaAr/HDp3LAH1fztGMQZugIheTWjaGzYIg==, - } + resolution: {integrity: sha512-JctG7QZ4LSDXr5CsUweFgcpEvrcxOV1Gft7uHrvkQ+fsAVylmWQvnaAr/HDp3LAH1fztGMQZugIheTWjaGzYIg==} dependencies: - "@vitest/utils": 1.2.2 + '@vitest/utils': 1.2.2 p-limit: 5.0.0 pathe: 1.1.2 dev: true /@vitest/snapshot@1.2.2: - resolution: - { - integrity: sha512-SmGY4saEw1+bwE1th6S/cZmPxz/Q4JWsl7LvbQIky2tKE35US4gd0Mjzqfr84/4OD0tikGWaWdMja/nWL5NIPA==, - } + resolution: {integrity: sha512-SmGY4saEw1+bwE1th6S/cZmPxz/Q4JWsl7LvbQIky2tKE35US4gd0Mjzqfr84/4OD0tikGWaWdMja/nWL5NIPA==} dependencies: magic-string: 0.30.6 pathe: 1.1.2 @@ -3710,37 +2923,28 @@ packages: dev: true /@vitest/spy@1.2.2: - resolution: - { - integrity: sha512-k9Gcahssw8d7X3pSLq3e3XEu/0L78mUkCjivUqCQeXJm9clfXR/Td8+AP+VC1O6fKPIDLcHDTAmBOINVuv6+7g==, - } + resolution: {integrity: sha512-k9Gcahssw8d7X3pSLq3e3XEu/0L78mUkCjivUqCQeXJm9clfXR/Td8+AP+VC1O6fKPIDLcHDTAmBOINVuv6+7g==} dependencies: tinyspy: 2.2.0 dev: true /@vitest/ui@1.2.2(vitest@1.2.2): - resolution: - { - integrity: sha512-CG+5fa8lyoBr+9i+UZGS31Qw81v33QlD10uecHxN2CLJVN+jLnqx4pGzGvFFeJ7jSnUCT0AlbmVWY6fU6NJZmw==, - } + resolution: {integrity: sha512-CG+5fa8lyoBr+9i+UZGS31Qw81v33QlD10uecHxN2CLJVN+jLnqx4pGzGvFFeJ7jSnUCT0AlbmVWY6fU6NJZmw==} peerDependencies: vitest: ^1.0.0 dependencies: - "@vitest/utils": 1.2.2 + '@vitest/utils': 1.2.2 fast-glob: 3.3.2 fflate: 0.8.1 flatted: 3.2.9 pathe: 1.1.2 picocolors: 1.0.0 sirv: 2.0.4 - vitest: 1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2) + vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) dev: true /@vitest/utils@1.2.2: - resolution: - { - integrity: sha512-WKITBHLsBHlpjnDQahr+XK6RE7MiAsgrIkr0pGhQ9ygoxBfUeG0lUG5iLlzqjmKSlBv3+j5EGsriBzh+C3Tq9g==, - } + resolution: {integrity: sha512-WKITBHLsBHlpjnDQahr+XK6RE7MiAsgrIkr0pGhQ9ygoxBfUeG0lUG5iLlzqjmKSlBv3+j5EGsriBzh+C3Tq9g==} dependencies: diff-sequences: 29.6.3 estree-walker: 3.0.3 @@ -3749,52 +2953,34 @@ packages: dev: true /abbrev@1.1.1: - resolution: - { - integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==, - } + resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: false /acorn-jsx@5.3.2(acorn@8.10.0): - resolution: - { - integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, - } + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: acorn: 8.10.0 /acorn-walk@8.3.2: - resolution: - { - integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==, - } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} + engines: {node: '>=0.4.0'} dev: true /acorn@8.10.0: - resolution: - { - integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==, - } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} + engines: {node: '>=0.4.0'} /acorn@8.11.3: - resolution: - { - integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==, - } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} hasBin: true dev: true /agent-base@6.0.2: - resolution: - { - integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==, - } - engines: { node: ">= 6.0.0" } + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} dependencies: debug: 4.3.4 transitivePeerDependencies: @@ -3802,11 +2988,8 @@ packages: dev: false /agent-base@7.1.0: - resolution: - { - integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} + engines: {node: '>= 14'} dependencies: debug: 4.3.4 transitivePeerDependencies: @@ -3814,21 +2997,15 @@ packages: dev: true /aggregate-error@3.1.0: - resolution: - { - integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} dependencies: clean-stack: 2.2.0 indent-string: 4.0.0 dev: true /ajv@6.12.6: - resolution: - { - integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, - } + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 @@ -3836,141 +3013,93 @@ packages: uri-js: 4.4.1 /ansi-escapes@4.3.2: - resolution: - { - integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} dependencies: type-fest: 0.21.3 dev: true /ansi-regex@5.0.1: - resolution: - { - integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} /ansi-regex@6.0.1: - resolution: - { - integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} dev: false /ansi-styles@3.2.1: - resolution: - { - integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} dependencies: color-convert: 1.9.3 /ansi-styles@4.3.0: - resolution: - { - integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} dependencies: color-convert: 2.0.1 /ansi-styles@5.2.0: - resolution: - { - integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} dev: true /ansi-styles@6.2.1: - resolution: - { - integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} dev: false /anymatch@3.1.3: - resolution: - { - integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 dev: false /aproba@2.0.0: - resolution: - { - integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==, - } + resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} dev: false /are-we-there-yet@2.0.0: - resolution: - { - integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} + engines: {node: '>=10'} dependencies: delegates: 1.0.0 readable-stream: 3.6.2 dev: false /arg@4.1.0: - resolution: - { - integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==, - } + resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} dev: true /argparse@2.0.1: - resolution: - { - integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, - } + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} /aria-hidden@1.2.3: - resolution: - { - integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} + engines: {node: '>=10'} dependencies: tslib: 2.5.0 dev: false /aria-query@5.3.0: - resolution: - { - integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==, - } + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} dependencies: dequal: 2.0.3 dev: false /array-buffer-byte-length@1.0.0: - resolution: - { - integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==, - } + resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} dependencies: call-bind: 1.0.2 is-array-buffer: 3.0.2 dev: false /array-includes@3.1.6: - resolution: - { - integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -3980,11 +3109,8 @@ packages: dev: false /array-includes@3.1.7: - resolution: - { - integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -3994,18 +3120,12 @@ packages: dev: false /array-union@2.1.0: - resolution: - { - integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} /array.prototype.findlastindex@1.2.3: - resolution: - { - integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -4015,11 +3135,8 @@ packages: dev: false /array.prototype.flat@1.3.2: - resolution: - { - integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -4028,11 +3145,8 @@ packages: dev: false /array.prototype.flatmap@1.3.1: - resolution: - { - integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -4041,11 +3155,8 @@ packages: dev: false /array.prototype.flatmap@1.3.2: - resolution: - { - integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -4054,10 +3165,7 @@ packages: dev: false /array.prototype.tosorted@1.1.1: - resolution: - { - integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==, - } + resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -4067,11 +3175,8 @@ packages: dev: false /arraybuffer.prototype.slice@1.0.1: - resolution: - { - integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} + engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.0 call-bind: 1.0.2 @@ -4082,92 +3187,59 @@ packages: dev: false /assertion-error@1.1.0: - resolution: - { - integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==, - } + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true /ast-types-flow@0.0.8: - resolution: - { - integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==, - } + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} dev: false /ast-types@0.13.4: - resolution: - { - integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} + engines: {node: '>=4'} dependencies: tslib: 2.5.0 dev: true /asynciterator.prototype@1.0.0: - resolution: - { - integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==, - } + resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} dependencies: has-symbols: 1.0.3 dev: false /available-typed-arrays@1.0.5: - resolution: - { - integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + engines: {node: '>= 0.4'} dev: false /axe-core@4.7.0: - resolution: - { - integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} + engines: {node: '>=4'} dev: false /axobject-query@3.2.1: - resolution: - { - integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==, - } + resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} dependencies: dequal: 2.0.3 dev: false /balanced-match@1.0.2: - resolution: - { - integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, - } + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} /base64-js@1.5.1: - resolution: - { - integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, - } + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} /basic-ftp@5.0.3: - resolution: - { - integrity: sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==, - } - engines: { node: ">=10.0.0" } + resolution: {integrity: sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g==} + engines: {node: '>=10.0.0'} dev: true /bcrypt@5.1.1: - resolution: - { - integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==, - } - engines: { node: ">= 10.0.0" } + resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==} + engines: {node: '>= 10.0.0'} requiresBuild: true dependencies: - "@mapbox/node-pre-gyp": 1.0.11 + '@mapbox/node-pre-gyp': 1.0.11 node-addon-api: 5.1.0 transitivePeerDependencies: - encoding @@ -4175,10 +3247,7 @@ packages: dev: false /better-sqlite3@9.4.0: - resolution: - { - integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==, - } + resolution: {integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==} requiresBuild: true dependencies: bindings: 1.5.0 @@ -4186,64 +3255,43 @@ packages: dev: false /binary-extensions@2.2.0: - resolution: - { - integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} dev: false /bindings@1.5.0: - resolution: - { - integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==, - } + resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} dependencies: file-uri-to-path: 1.0.0 dev: false /bl@4.1.0: - resolution: - { - integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, - } + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} dependencies: buffer: 5.7.1 inherits: 2.0.4 readable-stream: 3.6.2 /brace-expansion@1.1.11: - resolution: - { - integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, - } + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 /brace-expansion@2.0.1: - resolution: - { - integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, - } + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 /braces@3.0.2: - resolution: - { - integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} dependencies: fill-range: 7.0.1 /browserslist@4.22.1: - resolution: - { - integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==, - } - engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } + resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} dependencies: caniuse-lite: 1.0.30001579 electron-to-chromium: 1.4.559 @@ -4252,11 +3300,8 @@ packages: dev: false /browserslist@4.22.3: - resolution: - { - integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==, - } - engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } + resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: caniuse-lite: 1.0.30001583 @@ -4265,118 +3310,76 @@ packages: update-browserslist-db: 1.0.13(browserslist@4.22.3) /buffer-from@1.1.2: - resolution: - { - integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, - } + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true /buffer@5.7.1: - resolution: - { - integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==, - } + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: base64-js: 1.5.1 ieee754: 1.2.1 /builtins@5.0.1: - resolution: - { - integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==, - } + resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} dependencies: semver: 7.5.4 dev: true /busboy@1.6.0: - resolution: - { - integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==, - } - engines: { node: ">=10.16.0" } + resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} + engines: {node: '>=10.16.0'} dependencies: streamsearch: 1.1.0 dev: false /cac@6.7.14: - resolution: - { - integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} dev: true /call-bind@1.0.2: - resolution: - { - integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==, - } + resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: function-bind: 1.1.2 get-intrinsic: 1.2.1 dev: false /callsites@3.1.0: - resolution: - { - integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} /camel-case@3.0.0: - resolution: - { - integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==, - } + resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /camelcase-css@2.0.1: - resolution: - { - integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==, - } - engines: { node: ">= 6" } + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} dev: false /camelcase@7.0.1: - resolution: - { - integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==, - } - engines: { node: ">=14.16" } + resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} + engines: {node: '>=14.16'} dev: true /caniuse-lite@1.0.30001579: - resolution: - { - integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==, - } + resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} dev: false /caniuse-lite@1.0.30001583: - resolution: - { - integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==, - } + resolution: {integrity: sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q==} /case-anything@2.1.13: - resolution: - { - integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==, - } - engines: { node: ">=12.13" } + resolution: {integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==} + engines: {node: '>=12.13'} dev: false /chai@4.4.1: - resolution: - { - integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} + engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 check-error: 1.0.3 @@ -4388,50 +3391,35 @@ packages: dev: true /chalk@2.4.2: - resolution: - { - integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 /chalk@3.0.0: - resolution: - { - integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} + engines: {node: '>=8'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 dev: true /chalk@4.1.2: - resolution: - { - integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 /chalk@5.3.0: - resolution: - { - integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==, - } - engines: { node: ^12.17.0 || ^14.13 || >=16.0.0 } + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true /change-case@3.1.0: - resolution: - { - integrity: sha512-2AZp7uJZbYEzRPsFoa+ijKdvp9zsrnnt6+yFokfwEpeJm0xuJDVoxiRCAaTzyJND8GJkofo2IcKWaUZ/OECVzw==, - } + resolution: {integrity: sha512-2AZp7uJZbYEzRPsFoa+ijKdvp9zsrnnt6+yFokfwEpeJm0xuJDVoxiRCAaTzyJND8GJkofo2IcKWaUZ/OECVzw==} dependencies: camel-case: 3.0.0 constant-case: 2.0.0 @@ -4454,27 +3442,18 @@ packages: dev: true /chardet@0.7.0: - resolution: - { - integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==, - } + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true /check-error@1.0.3: - resolution: - { - integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==, - } + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} dependencies: get-func-name: 2.0.2 dev: true /chokidar@3.5.3: - resolution: - { - integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, - } - engines: { node: ">= 8.10.0" } + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -4488,34 +3467,22 @@ packages: dev: false /chownr@1.1.4: - resolution: - { - integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==, - } + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} dev: false /chownr@2.0.0: - resolution: - { - integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} + engines: {node: '>=10'} dev: false /clean-stack@2.2.0: - resolution: - { - integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} dev: true /cli-color@2.0.3: - resolution: - { - integrity: sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==, - } - engines: { node: ">=0.10" } + resolution: {integrity: sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==} + engines: {node: '>=0.10'} dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -4525,268 +3492,169 @@ packages: dev: true /cli-cursor@3.1.0: - resolution: - { - integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} + engines: {node: '>=8'} dependencies: restore-cursor: 3.1.0 dev: true /cli-spinners@2.9.0: - resolution: - { - integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==} + engines: {node: '>=6'} dev: true /cli-width@3.0.0: - resolution: - { - integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} + engines: {node: '>= 10'} dev: true /client-only@0.0.1: - resolution: - { - integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==, - } + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} dev: false /clone@1.0.4: - resolution: - { - integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==, - } - engines: { node: ">=0.8" } + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} dev: true /clsx@2.0.0: - resolution: - { - integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==} + engines: {node: '>=6'} dev: false /color-convert@1.9.3: - resolution: - { - integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, - } + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 /color-convert@2.0.1: - resolution: - { - integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, - } - engines: { node: ">=7.0.0" } + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 /color-name@1.1.3: - resolution: - { - integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, - } + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} /color-name@1.1.4: - resolution: - { - integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, - } + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} /color-support@1.1.3: - resolution: - { - integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==, - } + resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} dev: false /commander@10.0.1: - resolution: - { - integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} dev: true /commander@9.5.0: - resolution: - { - integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==, - } - engines: { node: ^12.20.0 || >=14 } + resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} + engines: {node: ^12.20.0 || >=14} dev: true /concat-map@0.0.1: - resolution: - { - integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, - } + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} /console-control-strings@1.1.0: - resolution: - { - integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==, - } + resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} dev: false /constant-case@2.0.0: - resolution: - { - integrity: sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==, - } + resolution: {integrity: sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==} dependencies: snake-case: 2.1.0 upper-case: 1.1.3 dev: true /convert-source-map@2.0.0: - resolution: - { - integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, - } + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} /cookie@0.6.0: - resolution: - { - integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==, - } - engines: { node: ">= 0.6" } + resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + engines: {node: '>= 0.6'} dev: false /cookies@0.9.1: - resolution: - { - integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==, - } - engines: { node: ">= 0.8" } + resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==} + engines: {node: '>= 0.8'} dependencies: depd: 2.0.0 keygrip: 1.1.0 dev: false /copy-anything@3.0.4: - resolution: - { - integrity: sha512-MaQ9FwzlZ/KLeVCLhzI3rZw0EhrIryfZa3AyT4agVybR0DjlkDHA8898lamLD6kfkf9MMn8D+zDAUR4+GxaymQ==, - } - engines: { node: ">=12.13" } + resolution: {integrity: sha512-MaQ9FwzlZ/KLeVCLhzI3rZw0EhrIryfZa3AyT4agVybR0DjlkDHA8898lamLD6kfkf9MMn8D+zDAUR4+GxaymQ==} + engines: {node: '>=12.13'} dependencies: is-what: 4.1.9 /core-js-pure@3.32.1: - resolution: - { - integrity: sha512-f52QZwkFVDPf7UEQZGHKx6NYxsxmVGJe5DIvbzOdRMJlmT6yv0KDjR8rmy3ngr/t5wU54c7Sp/qIJH0ppbhVpQ==, - } + resolution: {integrity: sha512-f52QZwkFVDPf7UEQZGHKx6NYxsxmVGJe5DIvbzOdRMJlmT6yv0KDjR8rmy3ngr/t5wU54c7Sp/qIJH0ppbhVpQ==} requiresBuild: true dev: true /create-require@1.1.1: - resolution: - { - integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==, - } + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} dev: true /crelt@1.0.6: - resolution: - { - integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==, - } + resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} dev: false /cross-env@7.0.3: - resolution: - { - integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==, - } - engines: { node: ">=10.14", npm: ">=6", yarn: ">=1" } + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} hasBin: true dependencies: cross-spawn: 7.0.3 dev: true /cross-spawn@7.0.3: - resolution: - { - integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 /cssesc@3.0.0: - resolution: - { - integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} hasBin: true dev: false /csstype@3.1.2: - resolution: - { - integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==, - } + resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} /d@1.0.1: - resolution: - { - integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==, - } + resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} dependencies: es5-ext: 0.10.62 type: 1.2.0 dev: true /damerau-levenshtein@1.0.8: - resolution: - { - integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==, - } + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} dev: false /dash-get@1.0.2: - resolution: - { - integrity: sha512-4FbVrHDwfOASx7uQVxeiCTo7ggSdYZbqs8lH+WU6ViypPlDbe9y6IP5VVUDQBv9DcnyaiPT5XT0UWHgJ64zLeQ==, - } + resolution: {integrity: sha512-4FbVrHDwfOASx7uQVxeiCTo7ggSdYZbqs8lH+WU6ViypPlDbe9y6IP5VVUDQBv9DcnyaiPT5XT0UWHgJ64zLeQ==} dev: false /data-uri-to-buffer@5.0.1: - resolution: - { - integrity: sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg==} + engines: {node: '>= 14'} dev: true /dayjs@1.11.10: - resolution: - { - integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==, - } + resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} dev: false /debug@3.2.7: - resolution: - { - integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, - } + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} peerDependencies: - supports-color: "*" + supports-color: '*' peerDependenciesMeta: supports-color: optional: true @@ -4795,13 +3663,10 @@ packages: dev: false /debug@4.3.4: - resolution: - { - integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, - } - engines: { node: ">=6.0" } + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} peerDependencies: - supports-color: "*" + supports-color: '*' peerDependenciesMeta: supports-color: optional: true @@ -4809,61 +3674,40 @@ packages: ms: 2.1.2 /decompress-response@6.0.0: - resolution: - { - integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} dependencies: mimic-response: 3.1.0 dev: false /deep-eql@4.1.3: - resolution: - { - integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} + engines: {node: '>=6'} dependencies: type-detect: 4.0.8 dev: true /deep-extend@0.6.0: - resolution: - { - integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==, - } - engines: { node: ">=4.0.0" } + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} /deep-is@0.1.4: - resolution: - { - integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, - } + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} /deepmerge@4.3.1: - resolution: - { - integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} dev: false /defaults@1.0.4: - resolution: - { - integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==, - } + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} dependencies: clone: 1.0.4 dev: true /define-data-property@1.1.1: - resolution: - { - integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + engines: {node: '>= 0.4'} dependencies: get-intrinsic: 1.2.1 gopd: 1.0.1 @@ -4871,22 +3715,16 @@ packages: dev: false /define-properties@1.2.0: - resolution: - { - integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} + engines: {node: '>= 0.4'} dependencies: has-property-descriptors: 1.0.0 object-keys: 1.1.1 dev: false /define-properties@1.2.1: - resolution: - { - integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.1 has-property-descriptors: 1.0.0 @@ -4894,11 +3732,8 @@ packages: dev: false /degenerator@5.0.1: - resolution: - { - integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} + engines: {node: '>= 14'} dependencies: ast-types: 0.13.4 escodegen: 2.1.0 @@ -4906,11 +3741,8 @@ packages: dev: true /del@5.1.0: - resolution: - { - integrity: sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==} + engines: {node: '>=8'} dependencies: globby: 10.0.2 graceful-fs: 4.2.11 @@ -4923,120 +3755,78 @@ packages: dev: true /delegates@1.0.0: - resolution: - { - integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==, - } + resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} dev: false /depd@2.0.0: - resolution: - { - integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, - } - engines: { node: ">= 0.8" } + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} dev: false /dequal@2.0.3: - resolution: - { - integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} dev: false /detect-libc@2.0.2: - resolution: - { - integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} + engines: {node: '>=8'} dev: false /detect-node-es@1.1.0: - resolution: - { - integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==, - } + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} dev: false /diff-sequences@29.6.3: - resolution: - { - integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==, - } - engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true /diff@4.0.2: - resolution: - { - integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==, - } - engines: { node: ">=0.3.1" } + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} dev: true /difflib@0.2.4: - resolution: - { - integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==, - } + resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} dependencies: heap: 0.2.7 dev: true /dir-glob@3.0.1: - resolution: - { - integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} dependencies: path-type: 4.0.0 /doctrine@2.1.0: - resolution: - { - integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} dependencies: esutils: 2.0.3 dev: false /doctrine@3.0.0: - resolution: - { - integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==, - } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} dependencies: esutils: 2.0.3 /dom-helpers@5.2.1: - resolution: - { - integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==, - } + resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} dependencies: - "@babel/runtime": 7.23.2 + '@babel/runtime': 7.23.2 csstype: 3.1.2 dev: false /dot-case@2.1.1: - resolution: - { - integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==, - } + resolution: {integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==} dependencies: no-case: 2.3.2 dev: true /dotenv-cli@7.3.0: - resolution: - { - integrity: sha512-314CA4TyK34YEJ6ntBf80eUY+t1XaFLyem1k9P0sX1gn30qThZ5qZr/ZwE318gEnzyYP9yj9HJk6SqwE0upkfw==, - } + resolution: {integrity: sha512-314CA4TyK34YEJ6ntBf80eUY+t1XaFLyem1k9P0sX1gn30qThZ5qZr/ZwE318gEnzyYP9yj9HJk6SqwE0upkfw==} dependencies: cross-spawn: 7.0.3 dotenv: 16.3.1 @@ -5045,48 +3835,33 @@ packages: dev: true /dotenv-expand@10.0.0: - resolution: - { - integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} + engines: {node: '>=12'} dev: true /dotenv@16.0.3: - resolution: - { - integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + engines: {node: '>=12'} dev: false /dotenv@16.3.1: - resolution: - { - integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} + engines: {node: '>=12'} dev: true /dreamopt@0.8.0: - resolution: - { - integrity: sha512-vyJTp8+mC+G+5dfgsY+r3ckxlz+QMX40VjPQsZc5gxVAxLmi64TBoVkP54A/pRAXMXsbu2GMMBrZPxNv23waMg==, - } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-vyJTp8+mC+G+5dfgsY+r3ckxlz+QMX40VjPQsZc5gxVAxLmi64TBoVkP54A/pRAXMXsbu2GMMBrZPxNv23waMg==} + engines: {node: '>=0.4.0'} dependencies: wordwrap: 1.0.0 dev: true /drizzle-kit@0.20.14: - resolution: - { - integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==, - } + resolution: {integrity: sha512-0fHv3YIEaUcSVPSGyaaBfOi9bmpajjhbJNdPsRMIUvYdLVxBu9eGjH8mRc3Qk7HVmEidFc/lhG1YyJhoXrn5yA==} hasBin: true dependencies: - "@drizzle-team/studio": 0.0.39 - "@esbuild-kit/esm-loader": 2.5.5 + '@drizzle-team/studio': 0.0.39 + '@esbuild-kit/esm-loader': 2.5.5 camelcase: 7.0.1 chalk: 5.3.0 commander: 9.5.0 @@ -5104,55 +3879,52 @@ packages: dev: true /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0): - resolution: - { - integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==, - } + resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} peerDependencies: - "@aws-sdk/client-rds-data": ">=3" - "@cloudflare/workers-types": ">=3" - "@libsql/client": "*" - "@neondatabase/serverless": ">=0.1" - "@opentelemetry/api": ^1.4.1 - "@planetscale/database": ">=1" - "@types/better-sqlite3": "*" - "@types/pg": "*" - "@types/react": ">=18" - "@types/sql.js": "*" - "@vercel/postgres": "*" - better-sqlite3: ">=7" - bun-types: "*" - expo-sqlite: ">=13.2.0" - knex: "*" - kysely: "*" - mysql2: ">=2" - pg: ">=8" - postgres: ">=3" - react: ">=18" - sql.js: ">=1" - sqlite3: ">=5" + '@aws-sdk/client-rds-data': '>=3' + '@cloudflare/workers-types': '>=3' + '@libsql/client': '*' + '@neondatabase/serverless': '>=0.1' + '@opentelemetry/api': ^1.4.1 + '@planetscale/database': '>=1' + '@types/better-sqlite3': '*' + '@types/pg': '*' + '@types/react': '>=18' + '@types/sql.js': '*' + '@vercel/postgres': '*' + better-sqlite3: '>=7' + bun-types: '*' + expo-sqlite: '>=13.2.0' + knex: '*' + kysely: '*' + mysql2: '>=2' + pg: '>=8' + postgres: '>=3' + react: '>=18' + sql.js: '>=1' + sqlite3: '>=5' peerDependenciesMeta: - "@aws-sdk/client-rds-data": + '@aws-sdk/client-rds-data': optional: true - "@cloudflare/workers-types": + '@cloudflare/workers-types': optional: true - "@libsql/client": + '@libsql/client': optional: true - "@neondatabase/serverless": + '@neondatabase/serverless': optional: true - "@opentelemetry/api": + '@opentelemetry/api': optional: true - "@planetscale/database": + '@planetscale/database': optional: true - "@types/better-sqlite3": + '@types/better-sqlite3': optional: true - "@types/pg": + '@types/pg': optional: true - "@types/react": + '@types/react': optional: true - "@types/sql.js": + '@types/sql.js': optional: true - "@vercel/postgres": + '@vercel/postgres': optional: true better-sqlite3: optional: true @@ -5177,74 +3949,47 @@ packages: sqlite3: optional: true dependencies: - "@types/better-sqlite3": 7.6.9 + '@types/better-sqlite3': 7.6.9 better-sqlite3: 9.4.0 dev: false /eastasianwidth@0.2.0: - resolution: - { - integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==, - } + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: false /electron-to-chromium@1.4.559: - resolution: - { - integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==, - } + resolution: {integrity: sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==} dev: false /electron-to-chromium@1.4.656: - resolution: - { - integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==, - } + resolution: {integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==} /emoji-regex@8.0.0: - resolution: - { - integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, - } + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} /emoji-regex@9.2.2: - resolution: - { - integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==, - } + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: false /end-of-stream@1.4.4: - resolution: - { - integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==, - } + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 dev: false /entities@4.5.0: - resolution: - { - integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==, - } - engines: { node: ">=0.12" } + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} dev: false /env-paths@3.0.0: - resolution: - { - integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==, - } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /es-abstract@1.22.1: - resolution: - { - integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} + engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.0 arraybuffer.prototype.slice: 1.0.1 @@ -5288,10 +4033,7 @@ packages: dev: false /es-iterator-helpers@1.0.13: - resolution: - { - integrity: sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA==, - } + resolution: {integrity: sha512-LK3VGwzvaPWobO8xzXXGRUOGw8Dcjyfk62CsY/wfHN75CwsJPbuypOYJxK6g5RyEL8YDjIWcl6jgd8foO6mmrA==} dependencies: asynciterator.prototype: 1.0.0 call-bind: 1.0.2 @@ -5310,10 +4052,7 @@ packages: dev: false /es-iterator-helpers@1.0.15: - resolution: - { - integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==, - } + resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} dependencies: asynciterator.prototype: 1.0.0 call-bind: 1.0.2 @@ -5332,11 +4071,8 @@ packages: dev: false /es-set-tostringtag@2.0.1: - resolution: - { - integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + engines: {node: '>= 0.4'} dependencies: get-intrinsic: 1.2.1 has: 1.0.3 @@ -5344,20 +4080,14 @@ packages: dev: false /es-shim-unscopables@1.0.0: - resolution: - { - integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==, - } + resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} dependencies: has: 1.0.3 dev: false /es-to-primitive@1.2.1: - resolution: - { - integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + engines: {node: '>= 0.4'} dependencies: is-callable: 1.2.7 is-date-object: 1.0.5 @@ -5365,11 +4095,8 @@ packages: dev: false /es5-ext@0.10.62: - resolution: - { - integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==, - } - engines: { node: ">=0.10" } + resolution: {integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==} + engines: {node: '>=0.10'} requiresBuild: true dependencies: es6-iterator: 2.0.3 @@ -5378,10 +4105,7 @@ packages: dev: true /es6-iterator@2.0.3: - resolution: - { - integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==, - } + resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -5389,20 +4113,14 @@ packages: dev: true /es6-symbol@3.1.3: - resolution: - { - integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==, - } + resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} dependencies: d: 1.0.1 ext: 1.7.0 dev: true /es6-weak-map@2.0.3: - resolution: - { - integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==, - } + resolution: {integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==} dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -5411,12 +4129,9 @@ packages: dev: true /esbuild-register@3.5.0(esbuild@0.19.8): - resolution: - { - integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==, - } + resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==} peerDependencies: - esbuild: ">=0.12 <1" + esbuild: '>=0.12 <1' dependencies: debug: 4.3.4 esbuild: 0.19.8 @@ -5425,98 +4140,80 @@ packages: dev: true /esbuild@0.17.19: - resolution: - { - integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==} + engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - "@esbuild/android-arm": 0.17.19 - "@esbuild/android-arm64": 0.17.19 - "@esbuild/android-x64": 0.17.19 - "@esbuild/darwin-arm64": 0.17.19 - "@esbuild/darwin-x64": 0.17.19 - "@esbuild/freebsd-arm64": 0.17.19 - "@esbuild/freebsd-x64": 0.17.19 - "@esbuild/linux-arm": 0.17.19 - "@esbuild/linux-arm64": 0.17.19 - "@esbuild/linux-ia32": 0.17.19 - "@esbuild/linux-loong64": 0.17.19 - "@esbuild/linux-mips64el": 0.17.19 - "@esbuild/linux-ppc64": 0.17.19 - "@esbuild/linux-riscv64": 0.17.19 - "@esbuild/linux-s390x": 0.17.19 - "@esbuild/linux-x64": 0.17.19 - "@esbuild/netbsd-x64": 0.17.19 - "@esbuild/openbsd-x64": 0.17.19 - "@esbuild/sunos-x64": 0.17.19 - "@esbuild/win32-arm64": 0.17.19 - "@esbuild/win32-ia32": 0.17.19 - "@esbuild/win32-x64": 0.17.19 + '@esbuild/android-arm': 0.17.19 + '@esbuild/android-arm64': 0.17.19 + '@esbuild/android-x64': 0.17.19 + '@esbuild/darwin-arm64': 0.17.19 + '@esbuild/darwin-x64': 0.17.19 + '@esbuild/freebsd-arm64': 0.17.19 + '@esbuild/freebsd-x64': 0.17.19 + '@esbuild/linux-arm': 0.17.19 + '@esbuild/linux-arm64': 0.17.19 + '@esbuild/linux-ia32': 0.17.19 + '@esbuild/linux-loong64': 0.17.19 + '@esbuild/linux-mips64el': 0.17.19 + '@esbuild/linux-ppc64': 0.17.19 + '@esbuild/linux-riscv64': 0.17.19 + '@esbuild/linux-s390x': 0.17.19 + '@esbuild/linux-x64': 0.17.19 + '@esbuild/netbsd-x64': 0.17.19 + '@esbuild/openbsd-x64': 0.17.19 + '@esbuild/sunos-x64': 0.17.19 + '@esbuild/win32-arm64': 0.17.19 + '@esbuild/win32-ia32': 0.17.19 + '@esbuild/win32-x64': 0.17.19 dev: true /esbuild@0.19.8: - resolution: - { - integrity: sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==} + engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - "@esbuild/android-arm": 0.19.8 - "@esbuild/android-arm64": 0.19.8 - "@esbuild/android-x64": 0.19.8 - "@esbuild/darwin-arm64": 0.19.8 - "@esbuild/darwin-x64": 0.19.8 - "@esbuild/freebsd-arm64": 0.19.8 - "@esbuild/freebsd-x64": 0.19.8 - "@esbuild/linux-arm": 0.19.8 - "@esbuild/linux-arm64": 0.19.8 - "@esbuild/linux-ia32": 0.19.8 - "@esbuild/linux-loong64": 0.19.8 - "@esbuild/linux-mips64el": 0.19.8 - "@esbuild/linux-ppc64": 0.19.8 - "@esbuild/linux-riscv64": 0.19.8 - "@esbuild/linux-s390x": 0.19.8 - "@esbuild/linux-x64": 0.19.8 - "@esbuild/netbsd-x64": 0.19.8 - "@esbuild/openbsd-x64": 0.19.8 - "@esbuild/sunos-x64": 0.19.8 - "@esbuild/win32-arm64": 0.19.8 - "@esbuild/win32-ia32": 0.19.8 - "@esbuild/win32-x64": 0.19.8 + '@esbuild/android-arm': 0.19.8 + '@esbuild/android-arm64': 0.19.8 + '@esbuild/android-x64': 0.19.8 + '@esbuild/darwin-arm64': 0.19.8 + '@esbuild/darwin-x64': 0.19.8 + '@esbuild/freebsd-arm64': 0.19.8 + '@esbuild/freebsd-x64': 0.19.8 + '@esbuild/linux-arm': 0.19.8 + '@esbuild/linux-arm64': 0.19.8 + '@esbuild/linux-ia32': 0.19.8 + '@esbuild/linux-loong64': 0.19.8 + '@esbuild/linux-mips64el': 0.19.8 + '@esbuild/linux-ppc64': 0.19.8 + '@esbuild/linux-riscv64': 0.19.8 + '@esbuild/linux-s390x': 0.19.8 + '@esbuild/linux-x64': 0.19.8 + '@esbuild/netbsd-x64': 0.19.8 + '@esbuild/openbsd-x64': 0.19.8 + '@esbuild/sunos-x64': 0.19.8 + '@esbuild/win32-arm64': 0.19.8 + '@esbuild/win32-ia32': 0.19.8 + '@esbuild/win32-x64': 0.19.8 dev: true /escalade@3.1.1: - resolution: - { - integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} /escape-string-regexp@1.0.5: - resolution: - { - integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, - } - engines: { node: ">=0.8.0" } + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} /escape-string-regexp@4.0.0: - resolution: - { - integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} /escodegen@2.1.0: - resolution: - { - integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==, - } - engines: { node: ">=6.0" } + resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} + engines: {node: '>=6.0'} hasBin: true dependencies: esprima: 4.0.1 @@ -5527,34 +4224,25 @@ packages: dev: true /eslint-config-prettier@9.1.0(eslint@8.56.0): - resolution: - { - integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==, - } + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} hasBin: true peerDependencies: - eslint: ">=7.0.0" + eslint: '>=7.0.0' dependencies: eslint: 8.56.0 dev: false /eslint-config-turbo@1.12.3(eslint@8.56.0): - resolution: - { - integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==, - } + resolution: {integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==} peerDependencies: - eslint: ">6.6.0" + eslint: '>6.6.0' dependencies: eslint: 8.56.0 eslint-plugin-turbo: 1.12.3(eslint@8.56.0) dev: false /eslint-import-resolver-node@0.3.9: - resolution: - { - integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, - } + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: debug: 3.2.7 is-core-module: 2.13.1 @@ -5564,19 +4252,16 @@ packages: dev: false /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): - resolution: - { - integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} + engines: {node: '>=4'} peerDependencies: - "@typescript-eslint/parser": "*" - eslint: "*" - eslint-import-resolver-node: "*" - eslint-import-resolver-typescript: "*" - eslint-import-resolver-webpack: "*" + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' peerDependenciesMeta: - "@typescript-eslint/parser": + '@typescript-eslint/parser': optional: true eslint: optional: true @@ -5587,7 +4272,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -5596,19 +4281,16 @@ packages: dev: false /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0): - resolution: - { - integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} + engines: {node: '>=4'} peerDependencies: - "@typescript-eslint/parser": "*" + '@typescript-eslint/parser': '*' eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 peerDependenciesMeta: - "@typescript-eslint/parser": + '@typescript-eslint/parser': optional: true dependencies: - "@typescript-eslint/parser": 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -5634,15 +4316,12 @@ packages: dev: false /eslint-plugin-jsx-a11y@6.8.0(eslint@8.56.0): - resolution: - { - integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==, - } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} + engines: {node: '>=4.0'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - "@babel/runtime": 7.23.2 + '@babel/runtime': 7.23.2 aria-query: 5.3.0 array-includes: 3.1.7 array.prototype.flatmap: 1.3.2 @@ -5662,11 +4341,8 @@ packages: dev: false /eslint-plugin-react-hooks@4.6.0(eslint@8.56.0): - resolution: - { - integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} + engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: @@ -5674,11 +4350,8 @@ packages: dev: false /eslint-plugin-react@7.33.2(eslint@8.56.0): - resolution: - { - integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} + engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: @@ -5702,50 +4375,38 @@ packages: dev: false /eslint-plugin-turbo@1.12.3(eslint@8.56.0): - resolution: - { - integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==, - } + resolution: {integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==} peerDependencies: - eslint: ">6.6.0" + eslint: '>6.6.0' dependencies: dotenv: 16.0.3 eslint: 8.56.0 dev: false /eslint-scope@7.2.2: - resolution: - { - integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 /eslint-visitor-keys@3.4.3: - resolution: - { - integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} /eslint@8.56.0: - resolution: - { - integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - "@eslint-community/eslint-utils": 4.4.0(eslint@8.56.0) - "@eslint-community/regexpp": 4.6.2 - "@eslint/eslintrc": 2.1.4 - "@eslint/js": 8.56.0 - "@humanwhocodes/config-array": 0.11.13 - "@humanwhocodes/module-importer": 1.0.1 - "@nodelib/fs.walk": 1.2.8 - "@ungap/structured-clone": 1.2.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@eslint-community/regexpp': 4.6.2 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.56.0 + '@humanwhocodes/config-array': 0.11.13 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 @@ -5780,82 +4441,55 @@ packages: - supports-color /espree@9.6.1: - resolution: - { - integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==, - } - engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.10.0 acorn-jsx: 5.3.2(acorn@8.10.0) eslint-visitor-keys: 3.4.3 /esprima@4.0.1: - resolution: - { - integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} hasBin: true dev: true /esquery@1.5.0: - resolution: - { - integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==, - } - engines: { node: ">=0.10" } + resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 /esrecurse@4.3.0: - resolution: - { - integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, - } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 /estraverse@5.3.0: - resolution: - { - integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, - } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} /estree-walker@3.0.3: - resolution: - { - integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==, - } + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: - "@types/estree": 1.0.1 + '@types/estree': 1.0.1 dev: true /esutils@2.0.3: - resolution: - { - integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} /event-emitter@0.3.5: - resolution: - { - integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==, - } + resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} dependencies: d: 1.0.1 es5-ext: 0.10.62 dev: true /execa@5.1.1: - resolution: - { - integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -5869,11 +4503,8 @@ packages: dev: true /execa@8.0.1: - resolution: - { - integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==, - } - engines: { node: ">=16.17" } + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} dependencies: cross-spawn: 7.0.3 get-stream: 8.0.1 @@ -5887,28 +4518,19 @@ packages: dev: true /expand-template@2.0.3: - resolution: - { - integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} + engines: {node: '>=6'} dev: false /ext@1.7.0: - resolution: - { - integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==, - } + resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} dependencies: type: 2.7.2 dev: true /external-editor@3.1.0: - resolution: - { - integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} dependencies: chardet: 0.7.0 iconv-lite: 0.4.24 @@ -5916,152 +4538,98 @@ packages: dev: true /fast-deep-equal@3.1.3: - resolution: - { - integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, - } + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} /fast-glob@3.3.2: - resolution: - { - integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, - } - engines: { node: ">=8.6.0" } + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} dependencies: - "@nodelib/fs.stat": 2.0.5 - "@nodelib/fs.walk": 1.2.8 + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 /fast-json-stable-stringify@2.1.0: - resolution: - { - integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, - } + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} /fast-levenshtein@2.0.6: - resolution: - { - integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, - } + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} /fastq@1.15.0: - resolution: - { - integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, - } + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} dependencies: reusify: 1.0.4 /fflate@0.8.1: - resolution: - { - integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==, - } + resolution: {integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==} dev: true /figures@3.2.0: - resolution: - { - integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} + engines: {node: '>=8'} dependencies: escape-string-regexp: 1.0.5 dev: true /file-entry-cache@6.0.1: - resolution: - { - integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==, - } - engines: { node: ^10.12.0 || >=12.0.0 } + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.0.4 /file-uri-to-path@1.0.0: - resolution: - { - integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==, - } + resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} dev: false /fill-range@7.0.1: - resolution: - { - integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 /find-up@5.0.0: - resolution: - { - integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} dependencies: locate-path: 6.0.0 path-exists: 4.0.0 /flat-cache@3.0.4: - resolution: - { - integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==, - } - engines: { node: ^10.12.0 || >=12.0.0 } + resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flatted: 3.2.7 rimraf: 3.0.2 /flatted@3.2.7: - resolution: - { - integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==, - } + resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} /flatted@3.2.9: - resolution: - { - integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==, - } + resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true /for-each@0.3.3: - resolution: - { - integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==, - } + resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: is-callable: 1.2.7 dev: false /foreground-child@3.1.1: - resolution: - { - integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 dev: false /fs-constants@1.0.0: - resolution: - { - integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==, - } + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} dev: false /fs-extra@10.1.0: - resolution: - { - integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 @@ -6069,11 +4637,8 @@ packages: dev: true /fs-extra@8.1.0: - resolution: - { - integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==, - } - engines: { node: ">=6 <7 || >=8" } + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} dependencies: graceful-fs: 4.2.11 jsonfile: 4.0.0 @@ -6081,43 +4646,28 @@ packages: dev: true /fs-minipass@2.1.0: - resolution: - { - integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} + engines: {node: '>= 8'} dependencies: minipass: 3.1.6 dev: false /fs.realpath@1.0.0: - resolution: - { - integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, - } + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} /fsevents@2.3.3: - resolution: - { - integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, - } - engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true optional: true /function-bind@1.1.2: - resolution: - { - integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, - } + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} /function.prototype.name@1.1.5: - resolution: - { - integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -6126,18 +4676,12 @@ packages: dev: false /functions-have-names@1.2.3: - resolution: - { - integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, - } + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: false /gauge@3.0.2: - resolution: - { - integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} + engines: {node: '>=10'} dependencies: aproba: 2.0.0 color-support: 1.1.3 @@ -6151,24 +4695,15 @@ packages: dev: false /gensync@1.0.0-beta.2: - resolution: - { - integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, - } - engines: { node: ">=6.9.0" } + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} /get-func-name@2.0.2: - resolution: - { - integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==, - } + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} dev: true /get-intrinsic@1.2.1: - resolution: - { - integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==, - } + resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} dependencies: function-bind: 1.1.2 has: 1.0.3 @@ -6177,55 +4712,37 @@ packages: dev: false /get-nonce@1.0.1: - resolution: - { - integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} + engines: {node: '>=6'} dev: false /get-stream@6.0.1: - resolution: - { - integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} dev: true /get-stream@8.0.1: - resolution: - { - integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==, - } - engines: { node: ">=16" } + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} dev: true /get-symbol-description@1.0.0: - resolution: - { - integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 dev: false /get-tsconfig@4.6.2: - resolution: - { - integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==, - } + resolution: {integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==} dependencies: resolve-pkg-maps: 1.0.0 dev: true /get-uri@6.0.1: - resolution: - { - integrity: sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q==} + engines: {node: '>= 14'} dependencies: basic-ftp: 5.0.3 data-uri-to-buffer: 5.0.1 @@ -6236,36 +4753,24 @@ packages: dev: true /github-from-package@0.0.0: - resolution: - { - integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==, - } + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} dev: false /glob-parent@5.1.2: - resolution: - { - integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, - } - engines: { node: ">= 6" } + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 /glob-parent@6.0.2: - resolution: - { - integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==, - } - engines: { node: ">=10.13.0" } + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} dependencies: is-glob: 4.0.3 /glob@10.3.10: - resolution: - { - integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==, - } - engines: { node: ">=16 || 14 >=14.17" } + resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} + engines: {node: '>=16 || 14 >=14.17'} hasBin: true dependencies: foreground-child: 3.1.1 @@ -6276,10 +4781,7 @@ packages: dev: false /glob@7.2.3: - resolution: - { - integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, - } + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -6289,11 +4791,8 @@ packages: path-is-absolute: 1.0.1 /glob@8.1.0: - resolution: - { - integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -6303,39 +4802,27 @@ packages: dev: true /globals@11.12.0: - resolution: - { - integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} /globals@13.20.0: - resolution: - { - integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} + engines: {node: '>=8'} dependencies: type-fest: 0.20.2 /globalthis@1.0.3: - resolution: - { - integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.1 dev: false /globby@10.0.2: - resolution: - { - integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} + engines: {node: '>=8'} dependencies: - "@types/glob": 7.2.0 + '@types/glob': 7.2.0 array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 @@ -6346,11 +4833,8 @@ packages: dev: true /globby@11.1.0: - resolution: - { - integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -6361,50 +4845,32 @@ packages: dev: false /globrex@0.1.2: - resolution: - { - integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==, - } + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} dev: true /gopd@1.0.1: - resolution: - { - integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==, - } + resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: get-intrinsic: 1.2.1 dev: false /graceful-fs@4.2.11: - resolution: - { - integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, - } + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} /gradient-string@2.0.2: - resolution: - { - integrity: sha512-rEDCuqUQ4tbD78TpzsMtt5OIf0cBCSDWSJtUDaF6JsAh+k0v9r++NzxNEG87oDZx9ZwGhD8DaezR2L/yrw0Jdw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-rEDCuqUQ4tbD78TpzsMtt5OIf0cBCSDWSJtUDaF6JsAh+k0v9r++NzxNEG87oDZx9ZwGhD8DaezR2L/yrw0Jdw==} + engines: {node: '>=10'} dependencies: chalk: 4.1.2 tinygradient: 1.1.5 dev: true /graphemer@1.4.0: - resolution: - { - integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==, - } + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} /handlebars@4.7.8: - resolution: - { - integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==, - } - engines: { node: ">=0.4.7" } + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} + engines: {node: '>=0.4.7'} hasBin: true dependencies: minimist: 1.2.8 @@ -6416,127 +4882,82 @@ packages: dev: true /hanji@0.0.5: - resolution: - { - integrity: sha512-Abxw1Lq+TnYiL4BueXqMau222fPSPMFtya8HdpWsz/xVAhifXou71mPh/kY2+08RgFcVccjG3uZHs6K5HAe3zw==, - } + resolution: {integrity: sha512-Abxw1Lq+TnYiL4BueXqMau222fPSPMFtya8HdpWsz/xVAhifXou71mPh/kY2+08RgFcVccjG3uZHs6K5HAe3zw==} dependencies: lodash.throttle: 4.1.1 sisteransi: 1.0.5 dev: true /has-bigints@1.0.2: - resolution: - { - integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==, - } + resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: false /has-flag@3.0.0: - resolution: - { - integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} /has-flag@4.0.0: - resolution: - { - integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} /has-property-descriptors@1.0.0: - resolution: - { - integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==, - } + resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: get-intrinsic: 1.2.1 dev: false /has-proto@1.0.1: - resolution: - { - integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + engines: {node: '>= 0.4'} dev: false /has-symbols@1.0.3: - resolution: - { - integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + engines: {node: '>= 0.4'} dev: false /has-tostringtag@1.0.0: - resolution: - { - integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} + engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 dev: false /has-unicode@2.0.1: - resolution: - { - integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==, - } + resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} dev: false /has@1.0.3: - resolution: - { - integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==, - } - engines: { node: ">= 0.4.0" } + resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} + engines: {node: '>= 0.4.0'} dependencies: function-bind: 1.1.2 dev: false /hasown@2.0.0: - resolution: - { - integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 /header-case@1.0.1: - resolution: - { - integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==, - } + resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==} dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /heap@0.2.7: - resolution: - { - integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==, - } + resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} dev: true /html-escaper@2.0.2: - resolution: - { - integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==, - } + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} dev: true /http-proxy-agent@7.0.0: - resolution: - { - integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -6545,11 +4966,8 @@ packages: dev: true /https-proxy-agent@5.0.1: - resolution: - { - integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==, - } - engines: { node: ">= 6" } + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} dependencies: agent-base: 6.0.2 debug: 4.3.4 @@ -6558,11 +4976,8 @@ packages: dev: false /https-proxy-agent@7.0.2: - resolution: - { - integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -6571,103 +4986,64 @@ packages: dev: true /human-signals@2.1.0: - resolution: - { - integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, - } - engines: { node: ">=10.17.0" } + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} dev: true /human-signals@5.0.0: - resolution: - { - integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==, - } - engines: { node: ">=16.17.0" } + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} dev: true /iconv-lite@0.4.24: - resolution: - { - integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 dev: true /ieee754@1.2.1: - resolution: - { - integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, - } + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} /ignore@5.2.4: - resolution: - { - integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==, - } - engines: { node: ">= 4" } + resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} + engines: {node: '>= 4'} /immutable@4.3.4: - resolution: - { - integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==, - } + resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} dev: false /import-fresh@3.3.0: - resolution: - { - integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 /imurmurhash@0.1.4: - resolution: - { - integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, - } - engines: { node: ">=0.8.19" } + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} /indent-string@4.0.0: - resolution: - { - integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} dev: true /inflight@1.0.6: - resolution: - { - integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, - } + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: once: 1.4.0 wrappy: 1.0.2 /inherits@2.0.4: - resolution: - { - integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, - } + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} /ini@1.3.8: - resolution: - { - integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==, - } + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} /inquirer@7.3.3: - resolution: - { - integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==, - } - engines: { node: ">=8.0.0" } + resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==} + engines: {node: '>=8.0.0'} dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -6685,11 +5061,8 @@ packages: dev: true /inquirer@8.2.6: - resolution: - { - integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==, - } - engines: { node: ">=12.0.0" } + resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} + engines: {node: '>=12.0.0'} dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -6709,11 +5082,8 @@ packages: dev: true /internal-slot@1.0.5: - resolution: - { - integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + engines: {node: '>= 0.4'} dependencies: get-intrinsic: 1.2.1 has: 1.0.3 @@ -6721,40 +5091,25 @@ packages: dev: false /international-types@0.8.1: - resolution: - { - integrity: sha512-tajBCAHo4I0LIFlmQ9ZWfjMWVyRffzuvfbXCd6ssFt5u1Zw15DN0UBpVTItXdNa1ls+cpQt3Yw8+TxsfGF8JcA==, - } + resolution: {integrity: sha512-tajBCAHo4I0LIFlmQ9ZWfjMWVyRffzuvfbXCd6ssFt5u1Zw15DN0UBpVTItXdNa1ls+cpQt3Yw8+TxsfGF8JcA==} dev: false /invariant@2.2.4: - resolution: - { - integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, - } + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} dependencies: loose-envify: 1.4.0 dev: false /ip@1.1.8: - resolution: - { - integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==, - } + resolution: {integrity: sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==} dev: true /ip@2.0.0: - resolution: - { - integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==, - } + resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} dev: true /is-array-buffer@3.0.2: - resolution: - { - integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==, - } + resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -6762,273 +5117,180 @@ packages: dev: false /is-async-function@2.0.0: - resolution: - { - integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false /is-bigint@1.0.4: - resolution: - { - integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==, - } + resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: has-bigints: 1.0.2 dev: false /is-binary-path@2.1.0: - resolution: - { - integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} dependencies: binary-extensions: 2.2.0 dev: false /is-boolean-object@1.1.2: - resolution: - { - integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 dev: false /is-callable@1.2.7: - resolution: - { - integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} dev: false /is-core-module@2.13.1: - resolution: - { - integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==, - } + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: hasown: 2.0.0 /is-date-object@1.0.5: - resolution: - { - integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false /is-extendable@1.0.1: - resolution: - { - integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} + engines: {node: '>=0.10.0'} dependencies: is-plain-object: 2.0.4 dev: false /is-extglob@2.1.1: - resolution: - { - integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} /is-finalizationregistry@1.0.2: - resolution: - { - integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==, - } + resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} dependencies: call-bind: 1.0.2 dev: false /is-fullwidth-code-point@3.0.0: - resolution: - { - integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} /is-generator-function@1.0.10: - resolution: - { - integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false /is-glob@4.0.3: - resolution: - { - integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 /is-interactive@1.0.0: - resolution: - { - integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} + engines: {node: '>=8'} dev: true /is-lower-case@1.1.3: - resolution: - { - integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==, - } + resolution: {integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==} dependencies: lower-case: 1.1.4 dev: true /is-map@2.0.2: - resolution: - { - integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, - } + resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} dev: false /is-negative-zero@2.0.2: - resolution: - { - integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + engines: {node: '>= 0.4'} dev: false /is-number-object@1.0.7: - resolution: - { - integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false /is-number@7.0.0: - resolution: - { - integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, - } - engines: { node: ">=0.12.0" } + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} /is-path-cwd@2.2.0: - resolution: - { - integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} + engines: {node: '>=6'} dev: true /is-path-inside@3.0.3: - resolution: - { - integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} /is-plain-object@2.0.4: - resolution: - { - integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} + engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 dev: false /is-promise@2.2.2: - resolution: - { - integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==, - } + resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} dev: true /is-regex@1.1.4: - resolution: - { - integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 dev: false /is-set@2.0.2: - resolution: - { - integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==, - } + resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} dev: false /is-shared-array-buffer@1.0.2: - resolution: - { - integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==, - } + resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: call-bind: 1.0.2 dev: false /is-stream@2.0.1: - resolution: - { - integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} dev: true /is-stream@3.0.0: - resolution: - { - integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, - } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /is-string@1.0.7: - resolution: - { - integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false /is-symbol@1.0.4: - resolution: - { - integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 dev: false /is-typed-array@1.1.10: - resolution: - { - integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} + engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -7038,98 +5300,62 @@ packages: dev: false /is-unicode-supported@0.1.0: - resolution: - { - integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} dev: true /is-upper-case@1.1.2: - resolution: - { - integrity: sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==, - } + resolution: {integrity: sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==} dependencies: upper-case: 1.1.3 dev: true /is-weakmap@2.0.1: - resolution: - { - integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==, - } + resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} dev: false /is-weakref@1.0.2: - resolution: - { - integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==, - } + resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.2 dev: false /is-weakset@2.0.2: - resolution: - { - integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==, - } + resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 dev: false /is-what@4.1.9: - resolution: - { - integrity: sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==, - } - engines: { node: ">=12.13" } + resolution: {integrity: sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==} + engines: {node: '>=12.13'} /isarray@2.0.5: - resolution: - { - integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==, - } + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} dev: false /isbinaryfile@4.0.10: - resolution: - { - integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==, - } - engines: { node: ">= 8.0.0" } + resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==} + engines: {node: '>= 8.0.0'} dev: true /isexe@2.0.0: - resolution: - { - integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, - } + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} /isobject@3.0.1: - resolution: - { - integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} + engines: {node: '>=0.10.0'} dev: false /istanbul-lib-coverage@3.2.2: - resolution: - { - integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} dev: true /istanbul-lib-report@3.0.1: - resolution: - { - integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 @@ -7137,11 +5363,8 @@ packages: dev: true /istanbul-lib-source-maps@4.0.1: - resolution: - { - integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} + engines: {node: '>=10'} dependencies: debug: 4.3.4 istanbul-lib-coverage: 3.2.2 @@ -7151,21 +5374,15 @@ packages: dev: true /istanbul-reports@3.1.6: - resolution: - { - integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} + engines: {node: '>=8'} dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 dev: true /iterator.prototype@1.1.0: - resolution: - { - integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==, - } + resolution: {integrity: sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==} dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.1 @@ -7175,10 +5392,7 @@ packages: dev: false /iterator.prototype@1.1.2: - resolution: - { - integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==, - } + resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.1 @@ -7188,69 +5402,48 @@ packages: dev: false /jackspeak@2.3.6: - resolution: - { - integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} + engines: {node: '>=14'} dependencies: - "@isaacs/cliui": 8.0.2 + '@isaacs/cliui': 8.0.2 optionalDependencies: - "@pkgjs/parseargs": 0.11.0 + '@pkgjs/parseargs': 0.11.0 dev: false /jose@5.2.1: - resolution: - { - integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==, - } + resolution: {integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==} dev: false /jotai@2.6.4(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==, - } - engines: { node: ">=12.20.0" } + resolution: {integrity: sha512-RniwQPX4893YlNR1muOtyUGHYaTD1fhEN4qnOuZJSrDHj6xdEMrqlRSN/hCm2fshwk78ruecB/P2l+NCVWe6TQ==} + engines: {node: '>=12.20.0'} peerDependencies: - "@types/react": ">=17.0.0" - react: ">=17.0.0" + '@types/react': '>=17.0.0' + react: '>=17.0.0' peerDependenciesMeta: - "@types/react": + '@types/react': optional: true react: optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 dev: false /js-tokens@4.0.0: - resolution: - { - integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, - } + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} /js-yaml@4.1.0: - resolution: - { - integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, - } + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} dependencies: argparse: 2.0.1 /jsesc@2.5.2: - resolution: - { - integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} /json-diff@0.9.0: - resolution: - { - integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==, - } + resolution: {integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==} hasBin: true dependencies: cli-color: 2.0.3 @@ -7259,55 +5452,34 @@ packages: dev: true /json-schema-traverse@0.4.1: - resolution: - { - integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, - } + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} /json-stable-stringify-without-jsonify@1.0.1: - resolution: - { - integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==, - } + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} /json5@1.0.2: - resolution: - { - integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==, - } + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} hasBin: true dependencies: minimist: 1.2.8 dev: false /json5@2.2.3: - resolution: - { - integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} /jsonc-parser@3.2.1: - resolution: - { - integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==, - } + resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} dev: true /jsonfile@4.0.0: - resolution: - { - integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==, - } + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: graceful-fs: 4.2.11 dev: true /jsonfile@6.1.0: - resolution: - { - integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==, - } + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: universalify: 2.0.0 optionalDependencies: @@ -7315,22 +5487,16 @@ packages: dev: true /jsx-ast-utils@3.3.3: - resolution: - { - integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==, - } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} + engines: {node: '>=4.0'} dependencies: array-includes: 3.1.7 object.assign: 4.1.4 dev: false /jsx-ast-utils@3.3.5: - resolution: - { - integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==, - } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} dependencies: array-includes: 3.1.7 array.prototype.flat: 1.3.2 @@ -7339,279 +5505,186 @@ packages: dev: false /keygrip@1.1.0: - resolution: - { - integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==, - } - engines: { node: ">= 0.6" } + resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} + engines: {node: '>= 0.6'} dependencies: tsscmp: 1.0.6 dev: false /klona@2.0.6: - resolution: - { - integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} + engines: {node: '>= 8'} dev: false /language-subtag-registry@0.3.22: - resolution: - { - integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==, - } + resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} dev: false /language-tags@1.0.9: - resolution: - { - integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==, - } - engines: { node: ">=0.10" } + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} dependencies: language-subtag-registry: 0.3.22 dev: false /levn@0.4.1: - resolution: - { - integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, - } - engines: { node: ">= 0.8.0" } + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 /linkify-it@5.0.0: - resolution: - { - integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==, - } + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} dependencies: uc.micro: 2.0.0 dev: false /linkifyjs@4.1.3: - resolution: - { - integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==, - } + resolution: {integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==} dev: false /local-pkg@0.5.0: - resolution: - { - integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + engines: {node: '>=14'} dependencies: mlly: 1.5.0 pkg-types: 1.0.3 dev: true /locate-path@6.0.0: - resolution: - { - integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} dependencies: p-locate: 5.0.0 /lodash.get@4.4.2: - resolution: - { - integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==, - } + resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} dev: true /lodash.merge@4.6.2: - resolution: - { - integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==, - } + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} /lodash.throttle@4.1.1: - resolution: - { - integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==, - } + resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} dev: true /lodash@4.17.21: - resolution: - { - integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, - } + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: true /log-symbols@3.0.0: - resolution: - { - integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==} + engines: {node: '>=8'} dependencies: chalk: 2.4.2 dev: true /log-symbols@4.1.0: - resolution: - { - integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} dependencies: chalk: 4.1.2 is-unicode-supported: 0.1.0 dev: true /loose-envify@1.4.0: - resolution: - { - integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, - } + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} dependencies: js-tokens: 4.0.0 dev: false /loupe@2.3.7: - resolution: - { - integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==, - } + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} dependencies: get-func-name: 2.0.2 dev: true /lower-case-first@1.0.2: - resolution: - { - integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==, - } + resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} dependencies: lower-case: 1.1.4 dev: true /lower-case@1.1.4: - resolution: - { - integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==, - } + resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} dev: true /lru-cache@10.2.0: - resolution: - { - integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==, - } - engines: { node: 14 || >=16.14 } + resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} + engines: {node: 14 || >=16.14} dev: false /lru-cache@5.1.1: - resolution: - { - integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, - } + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 /lru-cache@6.0.0: - resolution: - { - integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} dependencies: yallist: 4.0.0 /lru-cache@7.18.3: - resolution: - { - integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} + engines: {node: '>=12'} dev: true /lru-queue@0.1.0: - resolution: - { - integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==, - } + resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==} dependencies: es5-ext: 0.10.62 dev: true /magic-string@0.30.6: - resolution: - { - integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==} + engines: {node: '>=12'} dependencies: - "@jridgewell/sourcemap-codec": 1.4.15 + '@jridgewell/sourcemap-codec': 1.4.15 dev: true /magicast@0.3.3: - resolution: - { - integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==, - } + resolution: {integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==} dependencies: - "@babel/parser": 7.23.9 - "@babel/types": 7.23.9 + '@babel/parser': 7.23.9 + '@babel/types': 7.23.9 source-map-js: 1.0.2 dev: true /make-dir@3.1.0: - resolution: - { - integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} + engines: {node: '>=8'} dependencies: semver: 6.3.1 dev: false /make-dir@4.0.0: - resolution: - { - integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} dependencies: semver: 7.5.4 dev: true /make-error@1.3.6: - resolution: - { - integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, - } + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} /mantine-modal-manager@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==, - } + resolution: {integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==} peerDependencies: - "@mantine/core": 7.5.1 - "@mantine/hooks": 7.5.1 + '@mantine/core': 7.5.1 + '@mantine/hooks': 7.5.1 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - "@mantine/core": 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - "@mantine/hooks": 7.5.1(react@18.2.0) + '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /markdown-it@14.0.0: - resolution: - { - integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==, - } + resolution: {integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==} hasBin: true dependencies: argparse: 2.0.1 @@ -7623,17 +5696,11 @@ packages: dev: false /mdurl@2.0.0: - resolution: - { - integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==, - } + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} dev: false /memoizee@0.4.15: - resolution: - { - integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==, - } + resolution: {integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==} dependencies: d: 1.0.1 es5-ext: 0.10.62 @@ -7646,156 +5713,102 @@ packages: dev: true /merge-stream@2.0.0: - resolution: - { - integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, - } + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} dev: true /merge2@1.4.1: - resolution: - { - integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} /micromatch@4.0.5: - resolution: - { - integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, - } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} dependencies: braces: 3.0.2 picomatch: 2.3.1 /mimic-fn@2.1.0: - resolution: - { - integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} dev: true /mimic-fn@4.0.0: - resolution: - { - integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} dev: true /mimic-response@3.1.0: - resolution: - { - integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} dev: false /minimatch@3.1.2: - resolution: - { - integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, - } + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 /minimatch@5.1.6: - resolution: - { - integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 dev: true /minimatch@7.4.6: - resolution: - { - integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==} + engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 dev: true /minimatch@9.0.3: - resolution: - { - integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==, - } - engines: { node: ">=16 || 14 >=14.17" } + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 /minimist@1.2.8: - resolution: - { - integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, - } + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} /minipass@3.1.6: - resolution: - { - integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==} + engines: {node: '>=8'} dependencies: yallist: 4.0.0 dev: false /minipass@5.0.0: - resolution: - { - integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} + engines: {node: '>=8'} dev: false /minizlib@2.1.2: - resolution: - { - integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} + engines: {node: '>= 8'} dependencies: minipass: 3.1.6 yallist: 4.0.0 dev: false /mkdirp-classic@0.5.3: - resolution: - { - integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==, - } + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} dev: false /mkdirp@0.5.6: - resolution: - { - integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==, - } + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true dependencies: minimist: 1.2.8 dev: true /mkdirp@1.0.4: - resolution: - { - integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} hasBin: true dev: false /mlly@1.5.0: - resolution: - { - integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==, - } + resolution: {integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==} dependencies: acorn: 8.11.3 pathe: 1.1.2 @@ -7804,98 +5817,65 @@ packages: dev: true /mrmime@2.0.0: - resolution: - { - integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} + engines: {node: '>=10'} dev: true /ms@2.1.2: - resolution: - { - integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, - } + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} /ms@2.1.3: - resolution: - { - integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, - } + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: false /mute-stream@0.0.8: - resolution: - { - integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==, - } + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true /nanoid@3.3.7: - resolution: - { - integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==, - } - engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true /napi-build-utils@1.0.2: - resolution: - { - integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==, - } + resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} dev: false /natural-compare@1.4.0: - resolution: - { - integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, - } + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} /neo-async@2.6.2: - resolution: - { - integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==, - } + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} dev: true /netmask@2.0.2: - resolution: - { - integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==, - } - engines: { node: ">= 0.4.0" } + resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} + engines: {node: '>= 0.4.0'} dev: true /next-auth@5.0.0-beta.9(next@14.1.0)(react@18.2.0): - resolution: - { - integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==, - } + resolution: {integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==} peerDependencies: - "@simplewebauthn/browser": ^9.0.1 - "@simplewebauthn/server": ^9.0.1 + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.1 next: ^14 nodemailer: ^6.6.5 react: ^18.2.0 peerDependenciesMeta: - "@simplewebauthn/browser": + '@simplewebauthn/browser': optional: true - "@simplewebauthn/server": + '@simplewebauthn/server': optional: true nodemailer: optional: true dependencies: - "@auth/core": 0.26.3 + '@auth/core': 0.26.3 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false /next-international@1.2.3: - resolution: - { - integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==, - } + resolution: {integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==} dependencies: client-only: 0.0.1 international-types: 0.8.1 @@ -7903,32 +5883,26 @@ packages: dev: false /next-tick@1.1.0: - resolution: - { - integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==, - } + resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} dev: true /next@14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0): - resolution: - { - integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==, - } - engines: { node: ">=18.17.0" } + resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} + engines: {node: '>=18.17.0'} hasBin: true peerDependencies: - "@opentelemetry/api": ^1.1.0 + '@opentelemetry/api': ^1.1.0 react: ^18.2.0 react-dom: ^18.2.0 sass: ^1.3.0 peerDependenciesMeta: - "@opentelemetry/api": + '@opentelemetry/api': optional: true sass: optional: true dependencies: - "@next/env": 14.1.0 - "@swc/helpers": 0.5.2 + '@next/env': 14.1.0 + '@swc/helpers': 0.5.2 busboy: 1.6.0 caniuse-lite: 1.0.30001583 graceful-fs: 4.2.11 @@ -7938,52 +5912,40 @@ packages: sass: 1.70.0 styled-jsx: 5.1.1(@babel/core@7.23.9)(react@18.2.0) optionalDependencies: - "@next/swc-darwin-arm64": 14.1.0 - "@next/swc-darwin-x64": 14.1.0 - "@next/swc-linux-arm64-gnu": 14.1.0 - "@next/swc-linux-arm64-musl": 14.1.0 - "@next/swc-linux-x64-gnu": 14.1.0 - "@next/swc-linux-x64-musl": 14.1.0 - "@next/swc-win32-arm64-msvc": 14.1.0 - "@next/swc-win32-ia32-msvc": 14.1.0 - "@next/swc-win32-x64-msvc": 14.1.0 + '@next/swc-darwin-arm64': 14.1.0 + '@next/swc-darwin-x64': 14.1.0 + '@next/swc-linux-arm64-gnu': 14.1.0 + '@next/swc-linux-arm64-musl': 14.1.0 + '@next/swc-linux-x64-gnu': 14.1.0 + '@next/swc-linux-x64-musl': 14.1.0 + '@next/swc-win32-arm64-msvc': 14.1.0 + '@next/swc-win32-ia32-msvc': 14.1.0 + '@next/swc-win32-x64-msvc': 14.1.0 transitivePeerDependencies: - - "@babel/core" + - '@babel/core' - babel-plugin-macros dev: false /no-case@2.3.2: - resolution: - { - integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==, - } + resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} dependencies: lower-case: 1.1.4 dev: true /node-abi@3.52.0: - resolution: - { - integrity: sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==} + engines: {node: '>=10'} dependencies: semver: 7.5.4 dev: false /node-addon-api@5.1.0: - resolution: - { - integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==, - } + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} dev: false /node-fetch@2.6.11: - resolution: - { - integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==, - } - engines: { node: 4.x || >=6.0.0 } + resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} + engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 peerDependenciesMeta: @@ -7994,14 +5956,11 @@ packages: dev: false /node-plop@0.26.3: - resolution: - { - integrity: sha512-Cov028YhBZ5aB7MdMWJEmwyBig43aGL5WT4vdoB28Oitau1zZAcHUn8Sgfk9HM33TqhtLJ9PlM/O0Mv+QpV/4Q==, - } - engines: { node: ">=8.9.4" } + resolution: {integrity: sha512-Cov028YhBZ5aB7MdMWJEmwyBig43aGL5WT4vdoB28Oitau1zZAcHUn8Sgfk9HM33TqhtLJ9PlM/O0Mv+QpV/4Q==} + engines: {node: '>=8.9.4'} dependencies: - "@babel/runtime-corejs3": 7.22.10 - "@types/inquirer": 6.5.0 + '@babel/runtime-corejs3': 7.22.10 + '@types/inquirer': 6.5.0 change-case: 3.1.0 del: 5.1.0 globby: 10.0.2 @@ -8014,61 +5973,40 @@ packages: dev: true /node-releases@2.0.13: - resolution: - { - integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==, - } + resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} dev: false /node-releases@2.0.14: - resolution: - { - integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==, - } + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} /nopt@5.0.0: - resolution: - { - integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} + engines: {node: '>=6'} dependencies: abbrev: 1.1.1 dev: false /normalize-path@3.0.0: - resolution: - { - integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} dev: false /npm-run-path@4.0.1: - resolution: - { - integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} dependencies: path-key: 3.1.1 dev: true /npm-run-path@5.2.0: - resolution: - { - integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==, - } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: path-key: 4.0.0 dev: true /npmlog@5.0.1: - resolution: - { - integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==, - } + resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} dependencies: are-we-there-yet: 2.0.0 console-control-strings: 1.1.0 @@ -8077,41 +6015,26 @@ packages: dev: false /oauth4webapi@2.10.3: - resolution: - { - integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==, - } + resolution: {integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==} dev: false /object-assign@4.1.1: - resolution: - { - integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} dev: false /object-inspect@1.12.3: - resolution: - { - integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==, - } + resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: false /object-keys@1.1.1: - resolution: - { - integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} dev: false /object.assign@4.1.4: - resolution: - { - integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -8120,11 +6043,8 @@ packages: dev: false /object.entries@1.1.6: - resolution: - { - integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -8132,11 +6052,8 @@ packages: dev: false /object.entries@1.1.7: - resolution: - { - integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -8144,11 +6061,8 @@ packages: dev: false /object.fromentries@2.0.6: - resolution: - { - integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -8156,11 +6070,8 @@ packages: dev: false /object.fromentries@2.0.7: - resolution: - { - integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -8168,10 +6079,7 @@ packages: dev: false /object.groupby@1.0.1: - resolution: - { - integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==, - } + resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -8180,41 +6088,29 @@ packages: dev: false /object.hasown@1.1.2: - resolution: - { - integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==, - } + resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} dependencies: define-properties: 1.2.0 es-abstract: 1.22.1 dev: false /object.omit@3.0.0: - resolution: - { - integrity: sha512-EO+BCv6LJfu+gBIF3ggLicFebFLN5zqzz/WWJlMFfkMyGth+oBkhxzDl0wx2W4GkLzuQs/FsSkXZb2IMWQqmBQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-EO+BCv6LJfu+gBIF3ggLicFebFLN5zqzz/WWJlMFfkMyGth+oBkhxzDl0wx2W4GkLzuQs/FsSkXZb2IMWQqmBQ==} + engines: {node: '>=0.10.0'} dependencies: is-extendable: 1.0.1 dev: false /object.pick@1.3.0: - resolution: - { - integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} + engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 dev: false /object.values@1.1.6: - resolution: - { - integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -8222,11 +6118,8 @@ packages: dev: false /object.values@1.1.7: - resolution: - { - integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -8234,41 +6127,29 @@ packages: dev: false /once@1.4.0: - resolution: - { - integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, - } + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 /onetime@5.1.2: - resolution: - { - integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} dependencies: mimic-fn: 2.1.0 dev: true /onetime@6.0.0: - resolution: - { - integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} dependencies: mimic-fn: 4.0.0 dev: true /optionator@0.9.3: - resolution: - { - integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==, - } - engines: { node: ">= 0.8.0" } + resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} + engines: {node: '>= 0.8.0'} dependencies: - "@aashutoshrathi/word-wrap": 1.2.6 + '@aashutoshrathi/word-wrap': 1.2.6 deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 @@ -8276,11 +6157,8 @@ packages: type-check: 0.4.0 /ora@4.1.1: - resolution: - { - integrity: sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==} + engines: {node: '>=8'} dependencies: chalk: 3.0.0 cli-cursor: 3.1.0 @@ -8293,11 +6171,8 @@ packages: dev: true /ora@5.4.1: - resolution: - { - integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} + engines: {node: '>=10'} dependencies: bl: 4.1.0 chalk: 4.1.2 @@ -8311,66 +6186,45 @@ packages: dev: true /orderedmap@2.1.1: - resolution: - { - integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==, - } + resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} dev: false /os-tmpdir@1.0.2: - resolution: - { - integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} dev: true /p-limit@3.1.0: - resolution: - { - integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 /p-limit@5.0.0: - resolution: - { - integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==, - } - engines: { node: ">=18" } + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} dependencies: yocto-queue: 1.0.0 dev: true /p-locate@5.0.0: - resolution: - { - integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} dependencies: p-limit: 3.1.0 /p-map@3.0.0: - resolution: - { - integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==} + engines: {node: '>=8'} dependencies: aggregate-error: 3.1.0 dev: true /pac-proxy-agent@7.0.0: - resolution: - { - integrity: sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA==} + engines: {node: '>= 14'} dependencies: - "@tootallnate/quickjs-emscripten": 0.23.0 + '@tootallnate/quickjs-emscripten': 0.23.0 agent-base: 7.1.0 debug: 4.3.4 get-uri: 6.0.1 @@ -8383,11 +6237,8 @@ packages: dev: true /pac-resolver@7.0.0: - resolution: - { - integrity: sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==} + engines: {node: '>= 14'} dependencies: degenerator: 5.0.1 ip: 1.1.8 @@ -8395,127 +6246,79 @@ packages: dev: true /param-case@2.1.1: - resolution: - { - integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==, - } + resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==} dependencies: no-case: 2.3.2 dev: true /parent-module@1.0.1: - resolution: - { - integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} dependencies: callsites: 3.1.0 /pascal-case@2.0.1: - resolution: - { - integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==, - } + resolution: {integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==} dependencies: camel-case: 3.0.0 upper-case-first: 1.1.2 dev: true /path-case@2.1.1: - resolution: - { - integrity: sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==, - } + resolution: {integrity: sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==} dependencies: no-case: 2.3.2 dev: true /path-exists@4.0.0: - resolution: - { - integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} /path-is-absolute@1.0.1: - resolution: - { - integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} /path-key@3.1.1: - resolution: - { - integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} /path-key@4.0.0: - resolution: - { - integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} dev: true /path-parse@1.0.7: - resolution: - { - integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, - } + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} /path-scurry@1.10.1: - resolution: - { - integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==, - } - engines: { node: ">=16 || 14 >=14.17" } + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: lru-cache: 10.2.0 minipass: 5.0.0 dev: false /path-type@4.0.0: - resolution: - { - integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} /pathe@1.1.2: - resolution: - { - integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==, - } + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} dev: true /pathval@1.1.1: - resolution: - { - integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==, - } + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true /picocolors@1.0.0: - resolution: - { - integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, - } + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} /picomatch@2.3.1: - resolution: - { - integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, - } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} /pkg-types@1.0.3: - resolution: - { - integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==, - } + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: jsonc-parser: 3.2.1 mlly: 1.5.0 @@ -8523,11 +6326,8 @@ packages: dev: true /postcss-js@4.0.1(postcss@8.4.35): - resolution: - { - integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==, - } - engines: { node: ^12 || ^14 || >= 16 } + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: @@ -8536,11 +6336,8 @@ packages: dev: false /postcss-mixins@9.0.4(postcss@8.4.35): - resolution: - { - integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==, - } - engines: { node: ">=14.0" } + resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} + engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.14 dependencies: @@ -8552,11 +6349,8 @@ packages: dev: false /postcss-nested@6.0.1(postcss@8.4.35): - resolution: - { - integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==, - } - engines: { node: ">=12.0" } + resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: @@ -8565,12 +6359,9 @@ packages: dev: false /postcss-preset-mantine@1.13.0(postcss@8.4.35): - resolution: - { - integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==, - } + resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} peerDependencies: - postcss: ">=8.0.0" + postcss: '>=8.0.0' dependencies: postcss: 8.4.35 postcss-mixins: 9.0.4(postcss@8.4.35) @@ -8578,22 +6369,16 @@ packages: dev: false /postcss-selector-parser@6.0.13: - resolution: - { - integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} + engines: {node: '>=4'} dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 dev: false /postcss-simple-vars@7.0.1(postcss@8.4.35): - resolution: - { - integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==, - } - engines: { node: ">=14.0" } + resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} + engines: {node: '>=14.0'} peerDependencies: postcss: ^8.2.1 dependencies: @@ -8601,11 +6386,8 @@ packages: dev: false /postcss@8.4.31: - resolution: - { - integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==, - } - engines: { node: ^10 || ^12 || >=14 } + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -8613,11 +6395,8 @@ packages: dev: false /postcss@8.4.33: - resolution: - { - integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==, - } - engines: { node: ^10 || ^12 || >=14 } + resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -8625,11 +6404,8 @@ packages: dev: true /postcss@8.4.35: - resolution: - { - integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==, - } - engines: { node: ^10 || ^12 || >=14 } + resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.0 @@ -8637,30 +6413,21 @@ packages: dev: false /preact-render-to-string@5.2.3(preact@10.11.3): - resolution: - { - integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==, - } + resolution: {integrity: sha512-aPDxUn5o3GhWdtJtW0svRC2SS/l8D9MAgo2+AWml+BhDImb27ALf04Q2d+AHqUUOc6RdSXFIBVa2gxzgMKgtZA==} peerDependencies: - preact: ">=10" + preact: '>=10' dependencies: preact: 10.11.3 pretty-format: 3.8.0 dev: false /preact@10.11.3: - resolution: - { - integrity: sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==, - } + resolution: {integrity: sha512-eY93IVpod/zG3uMF22Unl8h9KkrcKIRs2EGar8hwLZZDU1lkjph303V9HZBwufh2s736U6VXuhD109LYqPoffg==} dev: false /prebuild-install@7.1.1: - resolution: - { - integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} + engines: {node: '>=10'} hasBin: true dependencies: detect-libc: 2.0.2 @@ -8678,44 +6445,29 @@ packages: dev: false /prelude-ls@1.2.1: - resolution: - { - integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, - } - engines: { node: ">= 0.8.0" } + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} /prettier@3.2.5: - resolution: - { - integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} + engines: {node: '>=14'} hasBin: true /pretty-format@29.7.0: - resolution: - { - integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==, - } - engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - "@jest/schemas": 29.6.3 + '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 react-is: 18.2.0 dev: true /pretty-format@3.8.0: - resolution: - { - integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==, - } + resolution: {integrity: sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==} dev: false /prop-types@15.8.1: - resolution: - { - integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, - } + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 @@ -8723,28 +6475,19 @@ packages: dev: false /prosemirror-changeset@2.2.1: - resolution: - { - integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==, - } + resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} dependencies: prosemirror-transform: 1.8.0 dev: false /prosemirror-collab@1.3.1: - resolution: - { - integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==, - } + resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} dependencies: prosemirror-state: 1.4.3 dev: false /prosemirror-commands@1.5.2: - resolution: - { - integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==, - } + resolution: {integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==} dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -8752,10 +6495,7 @@ packages: dev: false /prosemirror-dropcursor@1.8.1: - resolution: - { - integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==, - } + resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 @@ -8763,10 +6503,7 @@ packages: dev: false /prosemirror-gapcursor@1.3.2: - resolution: - { - integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==, - } + resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} dependencies: prosemirror-keymap: 1.2.2 prosemirror-model: 1.19.4 @@ -8775,10 +6512,7 @@ packages: dev: false /prosemirror-history@1.3.2: - resolution: - { - integrity: sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==, - } + resolution: {integrity: sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==} dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 @@ -8787,40 +6521,28 @@ packages: dev: false /prosemirror-inputrules@1.4.0: - resolution: - { - integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==, - } + resolution: {integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==} dependencies: prosemirror-state: 1.4.3 prosemirror-transform: 1.8.0 dev: false /prosemirror-keymap@1.2.2: - resolution: - { - integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==, - } + resolution: {integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==} dependencies: prosemirror-state: 1.4.3 w3c-keyname: 2.2.8 dev: false /prosemirror-markdown@1.12.0: - resolution: - { - integrity: sha512-6F5HS8Z0HDYiS2VQDZzfZP6A0s/I0gbkJy8NCzzDMtcsz3qrfqyroMMeoSjAmOhDITyon11NbXSzztfKi+frSQ==, - } + resolution: {integrity: sha512-6F5HS8Z0HDYiS2VQDZzfZP6A0s/I0gbkJy8NCzzDMtcsz3qrfqyroMMeoSjAmOhDITyon11NbXSzztfKi+frSQ==} dependencies: markdown-it: 14.0.0 prosemirror-model: 1.19.4 dev: false /prosemirror-menu@1.2.4: - resolution: - { - integrity: sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==, - } + resolution: {integrity: sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==} dependencies: crelt: 1.0.6 prosemirror-commands: 1.5.2 @@ -8829,28 +6551,19 @@ packages: dev: false /prosemirror-model@1.19.4: - resolution: - { - integrity: sha512-RPmVXxUfOhyFdayHawjuZCxiROsm9L4FCUA6pWI+l7n2yCBsWy9VpdE1hpDHUS8Vad661YLY9AzqfjLhAKQ4iQ==, - } + resolution: {integrity: sha512-RPmVXxUfOhyFdayHawjuZCxiROsm9L4FCUA6pWI+l7n2yCBsWy9VpdE1hpDHUS8Vad661YLY9AzqfjLhAKQ4iQ==} dependencies: orderedmap: 2.1.1 dev: false /prosemirror-schema-basic@1.2.2: - resolution: - { - integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==, - } + resolution: {integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==} dependencies: prosemirror-model: 1.19.4 dev: false /prosemirror-schema-list@1.3.0: - resolution: - { - integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==, - } + resolution: {integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==} dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -8858,10 +6571,7 @@ packages: dev: false /prosemirror-state@1.4.3: - resolution: - { - integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==, - } + resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} dependencies: prosemirror-model: 1.19.4 prosemirror-transform: 1.8.0 @@ -8869,10 +6579,7 @@ packages: dev: false /prosemirror-tables@1.3.5: - resolution: - { - integrity: sha512-JSZ2cCNlApu/ObAhdPyotrjBe2cimniniTpz60YXzbL0kZ+47nEYk2LWbfKU2lKpBkUNquta2PjteoNi4YCluQ==, - } + resolution: {integrity: sha512-JSZ2cCNlApu/ObAhdPyotrjBe2cimniniTpz60YXzbL0kZ+47nEYk2LWbfKU2lKpBkUNquta2PjteoNi4YCluQ==} dependencies: prosemirror-keymap: 1.2.2 prosemirror-model: 1.19.4 @@ -8882,17 +6589,14 @@ packages: dev: false /prosemirror-trailing-node@2.0.7(prosemirror-model@1.19.4)(prosemirror-state@1.4.3)(prosemirror-view@1.32.7): - resolution: - { - integrity: sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==, - } + resolution: {integrity: sha512-8zcZORYj/8WEwsGo6yVCRXFMOfBo0Ub3hCUvmoWIZYfMP26WqENU0mpEP27w7mt8buZWuGrydBewr0tOArPb1Q==} peerDependencies: prosemirror-model: ^1.19.0 prosemirror-state: ^1.4.2 prosemirror-view: ^1.31.2 dependencies: - "@remirror/core-constants": 2.0.2 - "@remirror/core-helpers": 3.0.0 + '@remirror/core-constants': 2.0.2 + '@remirror/core-helpers': 3.0.0 escape-string-regexp: 4.0.0 prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -8900,19 +6604,13 @@ packages: dev: false /prosemirror-transform@1.8.0: - resolution: - { - integrity: sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==, - } + resolution: {integrity: sha512-BaSBsIMv52F1BVVMvOmp1yzD3u65uC3HTzCBQV1WDPqJRQ2LuHKcyfn0jwqodo8sR9vVzMzZyI+Dal5W9E6a9A==} dependencies: prosemirror-model: 1.19.4 dev: false /prosemirror-view@1.32.7: - resolution: - { - integrity: sha512-pvxiOoD4shW41X5bYDjRQk3DSG4fMqxh36yPMt7VYgU3dWRmqFzWJM/R6zeo1KtC8nyk717ZbQND3CC9VNeptw==, - } + resolution: {integrity: sha512-pvxiOoD4shW41X5bYDjRQk3DSG4fMqxh36yPMt7VYgU3dWRmqFzWJM/R6zeo1KtC8nyk717ZbQND3CC9VNeptw==} dependencies: prosemirror-model: 1.19.4 prosemirror-state: 1.4.3 @@ -8920,11 +6618,8 @@ packages: dev: false /proxy-agent@6.3.0: - resolution: - { - integrity: sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -8939,48 +6634,30 @@ packages: dev: true /proxy-from-env@1.1.0: - resolution: - { - integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==, - } + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: true /pump@3.0.0: - resolution: - { - integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==, - } + resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} dependencies: end-of-stream: 1.4.4 once: 1.4.0 dev: false /punycode.js@2.3.1: - resolution: - { - integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} dev: false /punycode@2.3.0: - resolution: - { - integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} + engines: {node: '>=6'} /queue-microtask@1.2.3: - resolution: - { - integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, - } + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} /rc@1.2.8: - resolution: - { - integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==, - } + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true dependencies: deep-extend: 0.6.0 @@ -8989,10 +6666,7 @@ packages: strip-json-comments: 2.0.1 /react-dom@18.2.0(react@18.2.0): - resolution: - { - integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==, - } + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: react: ^18.2.0 dependencies: @@ -9002,24 +6676,15 @@ packages: dev: false /react-is@16.13.1: - resolution: - { - integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, - } + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} dev: false /react-is@18.2.0: - resolution: - { - integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, - } + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: true /react-number-format@5.3.1(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==, - } + resolution: {integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==} peerDependencies: react: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-dom: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 @@ -9030,46 +6695,37 @@ packages: dev: false /react-refresh@0.14.0: - resolution: - { - integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} + engines: {node: '>=0.10.0'} dev: true /react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} + engines: {node: '>=10'} peerDependencies: - "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 dev: false /react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} + engines: {node: '>=10'} peerDependencies: - "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) @@ -9079,10 +6735,7 @@ packages: dev: false /react-ssr-prepass@1.5.0(react@18.2.0): - resolution: - { - integrity: sha512-yFNHrlVEReVYKsLI5lF05tZoHveA5pGzjFbFJY/3pOqqjGOmMmqx83N4hIjN2n6E1AOa+eQEUxs3CgRnPmT0RQ==, - } + resolution: {integrity: sha512-yFNHrlVEReVYKsLI5lF05tZoHveA5pGzjFbFJY/3pOqqjGOmMmqx83N4hIjN2n6E1AOa+eQEUxs3CgRnPmT0RQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -9090,19 +6743,16 @@ packages: dev: false /react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} + engines: {node: '>=10'} peerDependencies: - "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 @@ -9110,32 +6760,26 @@ packages: dev: false /react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} + engines: {node: '>=10'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - "@babel/runtime": 7.23.2 + '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) transitivePeerDependencies: - - "@types/react" + - '@types/react' dev: false /react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): - resolution: - { - integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==, - } + resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} peerDependencies: - react: ">=16.6.0" - react-dom: ">=16.6.0" + react: '>=16.6.0' + react-dom: '>=16.6.0' dependencies: - "@babel/runtime": 7.23.2 + '@babel/runtime': 7.23.2 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -9144,42 +6788,30 @@ packages: dev: false /react@18.2.0: - resolution: - { - integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 dev: false /readable-stream@3.6.2: - resolution: - { - integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, - } - engines: { node: ">= 6" } + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} dependencies: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 /readdirp@3.6.0: - resolution: - { - integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, - } - engines: { node: ">=8.10.0" } + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 dev: false /reflect.getprototypeof@1.0.3: - resolution: - { - integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9190,11 +6822,8 @@ packages: dev: false /reflect.getprototypeof@1.0.4: - resolution: - { - integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9205,17 +6834,11 @@ packages: dev: false /regenerator-runtime@0.14.0: - resolution: - { - integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==, - } + resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} /regexp.prototype.flags@1.5.0: - resolution: - { - integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9223,44 +6846,29 @@ packages: dev: false /registry-auth-token@3.3.2: - resolution: - { - integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==, - } + resolution: {integrity: sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==} dependencies: rc: 1.2.8 safe-buffer: 5.2.1 dev: true /registry-url@3.1.0: - resolution: - { - integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==} + engines: {node: '>=0.10.0'} dependencies: rc: 1.2.8 dev: true /resolve-from@4.0.0: - resolution: - { - integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} /resolve-pkg-maps@1.0.0: - resolution: - { - integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, - } + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} dev: true /resolve@1.22.4: - resolution: - { - integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==, - } + resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} hasBin: true dependencies: is-core-module: 2.13.1 @@ -9268,10 +6876,7 @@ packages: supports-preserve-symlinks-flag: 1.0.0 /resolve@2.0.0-next.4: - resolution: - { - integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==, - } + resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} dependencies: is-core-module: 2.13.1 path-parse: 1.0.7 @@ -9279,105 +6884,75 @@ packages: dev: false /restore-cursor@3.1.0: - resolution: - { - integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} dependencies: onetime: 5.1.2 signal-exit: 3.0.7 dev: true /reusify@1.0.4: - resolution: - { - integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, - } - engines: { iojs: ">=1.0.0", node: ">=0.10.0" } + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} /rimraf@3.0.2: - resolution: - { - integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, - } + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} dependencies: glob: 7.2.3 /rollup@4.9.6: - resolution: - { - integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==, - } - engines: { node: ">=18.0.0", npm: ">=8.0.0" } + resolution: {integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: - "@types/estree": 1.0.5 + '@types/estree': 1.0.5 optionalDependencies: - "@rollup/rollup-android-arm-eabi": 4.9.6 - "@rollup/rollup-android-arm64": 4.9.6 - "@rollup/rollup-darwin-arm64": 4.9.6 - "@rollup/rollup-darwin-x64": 4.9.6 - "@rollup/rollup-linux-arm-gnueabihf": 4.9.6 - "@rollup/rollup-linux-arm64-gnu": 4.9.6 - "@rollup/rollup-linux-arm64-musl": 4.9.6 - "@rollup/rollup-linux-riscv64-gnu": 4.9.6 - "@rollup/rollup-linux-x64-gnu": 4.9.6 - "@rollup/rollup-linux-x64-musl": 4.9.6 - "@rollup/rollup-win32-arm64-msvc": 4.9.6 - "@rollup/rollup-win32-ia32-msvc": 4.9.6 - "@rollup/rollup-win32-x64-msvc": 4.9.6 + '@rollup/rollup-android-arm-eabi': 4.9.6 + '@rollup/rollup-android-arm64': 4.9.6 + '@rollup/rollup-darwin-arm64': 4.9.6 + '@rollup/rollup-darwin-x64': 4.9.6 + '@rollup/rollup-linux-arm-gnueabihf': 4.9.6 + '@rollup/rollup-linux-arm64-gnu': 4.9.6 + '@rollup/rollup-linux-arm64-musl': 4.9.6 + '@rollup/rollup-linux-riscv64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-musl': 4.9.6 + '@rollup/rollup-win32-arm64-msvc': 4.9.6 + '@rollup/rollup-win32-ia32-msvc': 4.9.6 + '@rollup/rollup-win32-x64-msvc': 4.9.6 fsevents: 2.3.3 dev: true /rope-sequence@1.3.4: - resolution: - { - integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==, - } + resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} dev: false /run-async@2.4.1: - resolution: - { - integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==, - } - engines: { node: ">=0.12.0" } + resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} + engines: {node: '>=0.12.0'} dev: true /run-parallel@1.2.0: - resolution: - { - integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, - } + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 /rxjs@6.6.7: - resolution: - { - integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==, - } - engines: { npm: ">=2.0.0" } + resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} + engines: {npm: '>=2.0.0'} dependencies: tslib: 1.14.1 dev: true /rxjs@7.8.1: - resolution: - { - integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==, - } + resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} dependencies: tslib: 2.5.0 dev: true /safe-array-concat@1.0.0: - resolution: - { - integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==, - } - engines: { node: ">=0.4" } + resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} + engines: {node: '>=0.4'} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -9386,11 +6961,8 @@ packages: dev: false /safe-array-concat@1.0.1: - resolution: - { - integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==, - } - engines: { node: ">=0.4" } + resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} + engines: {node: '>=0.4'} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -9399,16 +6971,10 @@ packages: dev: false /safe-buffer@5.2.1: - resolution: - { - integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, - } + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} /safe-regex-test@1.0.0: - resolution: - { - integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==, - } + resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -9416,18 +6982,12 @@ packages: dev: false /safer-buffer@2.1.2: - resolution: - { - integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==, - } + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true /sass@1.70.0: - resolution: - { - integrity: sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==, - } - engines: { node: ">=14.0.0" } + resolution: {integrity: sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==} + engines: {node: '>=14.0.0'} hasBin: true dependencies: chokidar: 3.5.3 @@ -9436,60 +6996,39 @@ packages: dev: false /scheduler@0.23.0: - resolution: - { - integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==, - } + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 dev: false /semver@6.3.1: - resolution: - { - integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, - } + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true /semver@7.5.4: - resolution: - { - integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + engines: {node: '>=10'} dependencies: lru-cache: 6.0.0 /sentence-case@2.1.1: - resolution: - { - integrity: sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==, - } + resolution: {integrity: sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==} dependencies: no-case: 2.3.2 upper-case-first: 1.1.2 dev: true /server-only@0.0.1: - resolution: - { - integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==, - } + resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} dev: false /set-blocking@2.0.0: - resolution: - { - integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==, - } + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} dev: false /set-function-name@2.0.1: - resolution: - { - integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + engines: {node: '>= 0.4'} dependencies: define-data-property: 1.1.1 functions-have-names: 1.2.3 @@ -9497,26 +7036,17 @@ packages: dev: false /shebang-command@2.0.0: - resolution: - { - integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 /shebang-regex@3.0.0: - resolution: - { - integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} /side-channel@1.0.4: - resolution: - { - integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==, - } + resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -9524,37 +7054,22 @@ packages: dev: false /siginfo@2.0.0: - resolution: - { - integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==, - } + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} dev: true /signal-exit@3.0.7: - resolution: - { - integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, - } + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} /signal-exit@4.1.0: - resolution: - { - integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==, - } - engines: { node: ">=14" } + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} /simple-concat@1.0.1: - resolution: - { - integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==, - } + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} dev: false /simple-get@4.0.1: - resolution: - { - integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==, - } + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} dependencies: decompress-response: 6.0.0 once: 1.4.0 @@ -9562,54 +7077,36 @@ packages: dev: false /sirv@2.0.4: - resolution: - { - integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==, - } - engines: { node: ">= 10" } + resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} + engines: {node: '>= 10'} dependencies: - "@polka/url": 1.0.0-next.24 + '@polka/url': 1.0.0-next.24 mrmime: 2.0.0 totalist: 3.0.1 dev: true /sisteransi@1.0.5: - resolution: - { - integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, - } + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: true /slash@3.0.0: - resolution: - { - integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} /smart-buffer@4.2.0: - resolution: - { - integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==, - } - engines: { node: ">= 6.0.0", npm: ">= 3.0.0" } + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} dev: true /snake-case@2.1.0: - resolution: - { - integrity: sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==, - } + resolution: {integrity: sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==} dependencies: no-case: 2.3.2 dev: true /socks-proxy-agent@8.0.1: - resolution: - { - integrity: sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==, - } - engines: { node: ">= 14" } + resolution: {integrity: sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ==} + engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 debug: 4.3.4 @@ -9619,80 +7116,53 @@ packages: dev: true /socks@2.7.1: - resolution: - { - integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==, - } - engines: { node: ">= 10.13.0", npm: ">= 3.0.0" } + resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} + engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} dependencies: ip: 2.0.0 smart-buffer: 4.2.0 dev: true /source-map-js@1.0.2: - resolution: - { - integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} + engines: {node: '>=0.10.0'} /source-map-support@0.5.21: - resolution: - { - integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, - } + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} dependencies: buffer-from: 1.1.2 source-map: 0.6.1 dev: true /source-map@0.6.1: - resolution: - { - integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} dev: true /stackback@0.0.2: - resolution: - { - integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==, - } + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true /std-env@3.7.0: - resolution: - { - integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==, - } + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} dev: true /streamsearch@1.1.0: - resolution: - { - integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==, - } - engines: { node: ">=10.0.0" } + resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} + engines: {node: '>=10.0.0'} dev: false /string-width@4.2.3: - resolution: - { - integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 /string-width@5.1.2: - resolution: - { - integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 @@ -9700,10 +7170,7 @@ packages: dev: false /string.prototype.matchall@4.0.8: - resolution: - { - integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==, - } + resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} dependencies: call-bind: 1.0.2 define-properties: 1.2.0 @@ -9716,11 +7183,8 @@ packages: dev: false /string.prototype.trim@1.2.7: - resolution: - { - integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9728,10 +7192,7 @@ packages: dev: false /string.prototype.trimend@1.0.6: - resolution: - { - integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==, - } + resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9739,10 +7200,7 @@ packages: dev: false /string.prototype.trimstart@1.0.6: - resolution: - { - integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==, - } + resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} dependencies: call-bind: 1.0.2 define-properties: 1.2.1 @@ -9750,106 +7208,73 @@ packages: dev: false /string_decoder@1.3.0: - resolution: - { - integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, - } + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} dependencies: safe-buffer: 5.2.1 /strip-ansi@6.0.1: - resolution: - { - integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 /strip-ansi@7.1.0: - resolution: - { - integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 dev: false /strip-bom@3.0.0: - resolution: - { - integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} dev: false /strip-final-newline@2.0.0: - resolution: - { - integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} dev: true /strip-final-newline@3.0.0: - resolution: - { - integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} dev: true /strip-json-comments@2.0.1: - resolution: - { - integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==, - } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} /strip-json-comments@3.1.1: - resolution: - { - integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} /strip-literal@1.3.0: - resolution: - { - integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==, - } + resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} dependencies: acorn: 8.11.3 dev: true /styled-jsx@5.1.1(@babel/core@7.23.9)(react@18.2.0): - resolution: - { - integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==, - } - engines: { node: ">= 12.0.0" } + resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} + engines: {node: '>= 12.0.0'} peerDependencies: - "@babel/core": "*" - babel-plugin-macros: "*" - react: ">= 16.8.0 || 17.x.x || ^18.0.0-0" + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' peerDependenciesMeta: - "@babel/core": + '@babel/core': optional: true babel-plugin-macros: optional: true dependencies: - "@babel/core": 7.23.9 + '@babel/core': 7.23.9 client-only: 0.0.1 react: 18.2.0 dev: false /sugarss@4.0.1(postcss@8.4.35): - resolution: - { - integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==, - } - engines: { node: ">=12.0" } + resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} + engines: {node: '>=12.0'} peerDependencies: postcss: ^8.3.3 dependencies: @@ -9857,61 +7282,40 @@ packages: dev: false /superjson@2.2.1: - resolution: - { - integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==, - } - engines: { node: ">=16" } + resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} + engines: {node: '>=16'} dependencies: copy-anything: 3.0.4 /supports-color@5.5.0: - resolution: - { - integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} dependencies: has-flag: 3.0.0 /supports-color@7.2.0: - resolution: - { - integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} dependencies: has-flag: 4.0.0 /supports-preserve-symlinks-flag@1.0.0: - resolution: - { - integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} /swap-case@1.1.2: - resolution: - { - integrity: sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==, - } + resolution: {integrity: sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==} dependencies: lower-case: 1.1.4 upper-case: 1.1.3 dev: true /tabbable@6.2.0: - resolution: - { - integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==, - } + resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} dev: false /tar-fs@2.1.1: - resolution: - { - integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==, - } + resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} dependencies: chownr: 1.1.4 mkdirp-classic: 0.5.3 @@ -9920,11 +7324,8 @@ packages: dev: false /tar-stream@2.2.0: - resolution: - { - integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} dependencies: bl: 4.1.0 end-of-stream: 1.4.4 @@ -9934,11 +7335,8 @@ packages: dev: false /tar@6.2.0: - resolution: - { - integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} + engines: {node: '>=10'} dependencies: chownr: 2.0.0 fs-minipass: 2.1.0 @@ -9949,183 +7347,126 @@ packages: dev: false /test-exclude@6.0.0: - resolution: - { - integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} + engines: {node: '>=8'} dependencies: - "@istanbuljs/schema": 0.1.3 + '@istanbuljs/schema': 0.1.3 glob: 7.2.3 minimatch: 3.1.2 dev: true /text-table@0.2.0: - resolution: - { - integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==, - } + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} /throttle-debounce@3.0.1: - resolution: - { - integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} + engines: {node: '>=10'} dev: false /through@2.3.8: - resolution: - { - integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==, - } + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} dev: true /timers-ext@0.1.7: - resolution: - { - integrity: sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==, - } + resolution: {integrity: sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==} dependencies: es5-ext: 0.10.62 next-tick: 1.1.0 dev: true /tinybench@2.6.0: - resolution: - { - integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==, - } + resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} dev: true /tinycolor2@1.6.0: - resolution: - { - integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==, - } + resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} dev: true /tinygradient@1.1.5: - resolution: - { - integrity: sha512-8nIfc2vgQ4TeLnk2lFj4tRLvvJwEfQuabdsmvDdQPT0xlk9TaNtpGd6nNRxXoK6vQhN6RSzj+Cnp5tTQmpxmbw==, - } + resolution: {integrity: sha512-8nIfc2vgQ4TeLnk2lFj4tRLvvJwEfQuabdsmvDdQPT0xlk9TaNtpGd6nNRxXoK6vQhN6RSzj+Cnp5tTQmpxmbw==} dependencies: - "@types/tinycolor2": 1.4.3 + '@types/tinycolor2': 1.4.3 tinycolor2: 1.6.0 dev: true /tinypool@0.8.2: - resolution: - { - integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==, - } - engines: { node: ">=14.0.0" } + resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==} + engines: {node: '>=14.0.0'} dev: true /tinyspy@2.2.0: - resolution: - { - integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==, - } - engines: { node: ">=14.0.0" } + resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} + engines: {node: '>=14.0.0'} dev: true /tippy.js@6.3.7: - resolution: - { - integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==, - } + resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} dependencies: - "@popperjs/core": 2.11.8 + '@popperjs/core': 2.11.8 dev: false /title-case@2.1.1: - resolution: - { - integrity: sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==, - } + resolution: {integrity: sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==} dependencies: no-case: 2.3.2 upper-case: 1.1.3 dev: true /tmp@0.0.33: - resolution: - { - integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==, - } - engines: { node: ">=0.6.0" } + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} dependencies: os-tmpdir: 1.0.2 dev: true /to-fast-properties@2.0.0: - resolution: - { - integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} /to-regex-range@5.0.1: - resolution: - { - integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, - } - engines: { node: ">=8.0" } + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 /totalist@3.0.1: - resolution: - { - integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} dev: true /tr46@0.0.3: - resolution: - { - integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, - } + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false /ts-api-utils@1.0.1(typescript@5.3.3): - resolution: - { - integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==, - } - engines: { node: ">=16.13.0" } + resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} + engines: {node: '>=16.13.0'} peerDependencies: - typescript: ">=4.2.0" + typescript: '>=4.2.0' dependencies: typescript: 5.3.3 dev: false - /ts-node@10.9.1(@types/node@20.11.16)(typescript@5.3.3): - resolution: - { - integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==, - } + /ts-node@10.9.1(@types/node@20.11.17)(typescript@5.3.3): + resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' peerDependenciesMeta: - "@swc/core": + '@swc/core': optional: true - "@swc/wasm": + '@swc/wasm': optional: true dependencies: - "@cspotcode/source-map-support": 0.8.1 - "@tsconfig/node10": 1.0.9 - "@tsconfig/node12": 1.0.11 - "@tsconfig/node14": 1.0.3 - "@tsconfig/node16": 1.0.4 - "@types/node": 20.11.16 + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.11.17 acorn: 8.11.3 acorn-walk: 8.3.2 arg: 4.1.0 @@ -10138,11 +7479,8 @@ packages: dev: true /tsconfck@3.0.1(typescript@5.3.3): - resolution: - { - integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==, - } - engines: { node: ^18 || >=20 } + resolution: {integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==} + engines: {node: ^18 || >=20} hasBin: true peerDependencies: typescript: ^5.0.0 @@ -10154,52 +7492,34 @@ packages: dev: true /tsconfig-paths@3.15.0: - resolution: - { - integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==, - } + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: - "@types/json5": 0.0.29 + '@types/json5': 0.0.29 json5: 1.0.2 minimist: 1.2.8 strip-bom: 3.0.0 dev: false /tslib@1.14.1: - resolution: - { - integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==, - } + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true /tslib@2.5.0: - resolution: - { - integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==, - } + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} /tsscmp@1.0.6: - resolution: - { - integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==, - } - engines: { node: ">=0.6.x" } + resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} + engines: {node: '>=0.6.x'} dev: false /tunnel-agent@0.6.0: - resolution: - { - integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==, - } + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: safe-buffer: 5.2.1 dev: false /turbo-darwin-64@1.12.3: - resolution: - { - integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==, - } + resolution: {integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==} cpu: [x64] os: [darwin] requiresBuild: true @@ -10207,10 +7527,7 @@ packages: optional: true /turbo-darwin-arm64@1.12.3: - resolution: - { - integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==, - } + resolution: {integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==} cpu: [arm64] os: [darwin] requiresBuild: true @@ -10218,10 +7535,7 @@ packages: optional: true /turbo-linux-64@1.12.3: - resolution: - { - integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==, - } + resolution: {integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==} cpu: [x64] os: [linux] requiresBuild: true @@ -10229,10 +7543,7 @@ packages: optional: true /turbo-linux-arm64@1.12.3: - resolution: - { - integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==, - } + resolution: {integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==} cpu: [arm64] os: [linux] requiresBuild: true @@ -10240,10 +7551,7 @@ packages: optional: true /turbo-windows-64@1.12.3: - resolution: - { - integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==, - } + resolution: {integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==} cpu: [x64] os: [win32] requiresBuild: true @@ -10251,10 +7559,7 @@ packages: optional: true /turbo-windows-arm64@1.12.3: - resolution: - { - integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==, - } + resolution: {integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==} cpu: [arm64] os: [win32] requiresBuild: true @@ -10262,10 +7567,7 @@ packages: optional: true /turbo@1.12.3: - resolution: - { - integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==, - } + resolution: {integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==} hasBin: true optionalDependencies: turbo-darwin-64: 1.12.3 @@ -10277,73 +7579,46 @@ packages: dev: true /type-check@0.4.0: - resolution: - { - integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, - } - engines: { node: ">= 0.8.0" } + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 /type-detect@4.0.8: - resolution: - { - integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==, - } - engines: { node: ">=4" } + resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} + engines: {node: '>=4'} dev: true /type-fest@0.20.2: - resolution: - { - integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} /type-fest@0.21.3: - resolution: - { - integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} dev: true /type-fest@2.19.0: - resolution: - { - integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==, - } - engines: { node: ">=12.20" } + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} dev: false /type-fest@3.13.1: - resolution: - { - integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==, - } - engines: { node: ">=14.16" } + resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} + engines: {node: '>=14.16'} dev: false /type@1.2.0: - resolution: - { - integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==, - } + resolution: {integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==} dev: true /type@2.7.2: - resolution: - { - integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==, - } + resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} dev: true /typed-array-buffer@1.0.0: - resolution: - { - integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 @@ -10351,11 +7626,8 @@ packages: dev: false /typed-array-byte-length@1.0.0: - resolution: - { - integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 for-each: 0.3.3 @@ -10364,11 +7636,8 @@ packages: dev: false /typed-array-byte-offset@1.0.0: - resolution: - { - integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -10378,10 +7647,7 @@ packages: dev: false /typed-array-length@1.0.4: - resolution: - { - integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==, - } + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} dependencies: call-bind: 1.0.2 for-each: 0.3.3 @@ -10389,42 +7655,27 @@ packages: dev: false /typescript@5.3.3: - resolution: - { - integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==, - } - engines: { node: ">=14.17" } + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + engines: {node: '>=14.17'} /uc.micro@2.0.0: - resolution: - { - integrity: sha512-DffL94LsNOccVn4hyfRe5rdKa273swqeA5DJpMOeFmEn1wCDc7nAbbB0gXlgBCL7TNzeTv6G7XVWzan7iJtfig==, - } + resolution: {integrity: sha512-DffL94LsNOccVn4hyfRe5rdKa273swqeA5DJpMOeFmEn1wCDc7nAbbB0gXlgBCL7TNzeTv6G7XVWzan7iJtfig==} dev: false /ufo@1.3.2: - resolution: - { - integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==, - } + resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} dev: true /uglify-js@3.17.4: - resolution: - { - integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==, - } - engines: { node: ">=0.8.0" } + resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} + engines: {node: '>=0.8.0'} hasBin: true requiresBuild: true dev: true optional: true /unbox-primitive@1.0.2: - resolution: - { - integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==, - } + resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: call-bind: 1.0.2 has-bigints: 1.0.2 @@ -10433,35 +7684,23 @@ packages: dev: false /undici-types@5.26.5: - resolution: - { - integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==, - } + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} /universalify@0.1.2: - resolution: - { - integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==, - } - engines: { node: ">= 4.0.0" } + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} dev: true /universalify@2.0.0: - resolution: - { - integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==, - } - engines: { node: ">= 10.0.0" } + resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} + engines: {node: '>= 10.0.0'} dev: true /update-browserslist-db@1.0.13(browserslist@4.22.1): - resolution: - { - integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, - } + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: - browserslist: ">= 4.21.0" + browserslist: '>= 4.21.0' dependencies: browserslist: 4.22.1 escalade: 3.1.1 @@ -10469,75 +7708,54 @@ packages: dev: false /update-browserslist-db@1.0.13(browserslist@4.22.3): - resolution: - { - integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, - } + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: - browserslist: ">= 4.21.0" + browserslist: '>= 4.21.0' dependencies: browserslist: 4.22.3 escalade: 3.1.1 picocolors: 1.0.0 /update-check@1.5.4: - resolution: - { - integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==, - } + resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} dependencies: registry-auth-token: 3.3.2 registry-url: 3.1.0 dev: true /upper-case-first@1.1.2: - resolution: - { - integrity: sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==, - } + resolution: {integrity: sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==} dependencies: upper-case: 1.1.3 dev: true /upper-case@1.1.3: - resolution: - { - integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==, - } + resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==} dev: true /uri-js@4.4.1: - resolution: - { - integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, - } + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.0 /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} + engines: {node: '>=10'} peerDependencies: - "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 tslib: 2.5.0 dev: false /use-composed-ref@1.3.0(react@18.2.0): - resolution: - { - integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==, - } + resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: @@ -10545,107 +7763,83 @@ packages: dev: false /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==, - } + resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: - "@types/react": "*" + '@types/react': '*' react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 dev: false /use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==, - } + resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: - "@types/react": "*" + '@types/react': '*' react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 react: 18.2.0 use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false /use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): - resolution: - { - integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} + engines: {node: '>=10'} peerDependencies: - "@types/react": ^16.9.0 || ^17.0.0 || ^18.0.0 + '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: - "@types/react": + '@types/react': optional: true dependencies: - "@types/react": 18.2.55 + '@types/react': 18.2.55 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 dev: false /util-deprecate@1.0.2: - resolution: - { - integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, - } + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} /v8-compile-cache-lib@3.0.1: - resolution: - { - integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==, - } + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} dev: true /v8-to-istanbul@9.2.0: - resolution: - { - integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==, - } - engines: { node: ">=10.12.0" } + resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} + engines: {node: '>=10.12.0'} dependencies: - "@jridgewell/trace-mapping": 0.3.18 - "@types/istanbul-lib-coverage": 2.0.6 + '@jridgewell/trace-mapping': 0.3.18 + '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 dev: true /validate-npm-package-name@5.0.0: - resolution: - { - integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==, - } - engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 } + resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: builtins: 5.0.1 dev: true - /vite-node@1.2.2(@types/node@20.11.16): - resolution: - { - integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==, - } - engines: { node: ^18.0.0 || >=20.0.0 } + /vite-node@1.2.2(@types/node@20.11.17): + resolution: {integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true dependencies: cac: 6.7.14 debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.0.12(@types/node@20.11.16) + vite: 5.0.12(@types/node@20.11.17) transitivePeerDependencies: - - "@types/node" + - '@types/node' - less - lightningcss - sass @@ -10656,12 +7850,9 @@ packages: dev: true /vite-tsconfig-paths@4.3.1(typescript@5.3.3)(vite@5.0.12): - resolution: - { - integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==, - } + resolution: {integrity: sha512-cfgJwcGOsIxXOLU/nELPny2/LUD/lcf1IbfyeKTv2bsupVbTH/xpFtdQlBmIP1GEK2CjjLxYhFfB+QODFAx5aw==} peerDependencies: - vite: "*" + vite: '*' peerDependenciesMeta: vite: optional: true @@ -10669,29 +7860,26 @@ packages: debug: 4.3.4 globrex: 0.1.2 tsconfck: 3.0.1(typescript@5.3.3) - vite: 5.0.12(@types/node@20.11.16) + vite: 5.0.12(@types/node@20.11.17) transitivePeerDependencies: - supports-color - typescript dev: true - /vite@5.0.12(@types/node@20.11.16): - resolution: - { - integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==, - } - engines: { node: ^18.0.0 || >=20.0.0 } + /vite@5.0.12(@types/node@20.11.17): + resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: - "@types/node": ^18.0.0 || >=20.0.0 - less: "*" + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' lightningcss: ^1.21.0 - sass: "*" - stylus: "*" - sugarss: "*" + sass: '*' + stylus: '*' + sugarss: '*' terser: ^5.4.0 peerDependenciesMeta: - "@types/node": + '@types/node': optional: true less: optional: true @@ -10706,7 +7894,7 @@ packages: terser: optional: true dependencies: - "@types/node": 20.11.16 + '@types/node': 20.11.17 esbuild: 0.19.8 postcss: 8.4.33 rollup: 4.9.6 @@ -10714,41 +7902,38 @@ packages: fsevents: 2.3.3 dev: true - /vitest@1.2.2(@types/node@20.11.16)(@vitest/ui@1.2.2): - resolution: - { - integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==, - } - engines: { node: ^18.0.0 || >=20.0.0 } + /vitest@1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2): + resolution: {integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==} + engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: - "@edge-runtime/vm": "*" - "@types/node": ^18.0.0 || >=20.0.0 - "@vitest/browser": ^1.0.0 - "@vitest/ui": ^1.0.0 - happy-dom: "*" - jsdom: "*" + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': ^1.0.0 + '@vitest/ui': ^1.0.0 + happy-dom: '*' + jsdom: '*' peerDependenciesMeta: - "@edge-runtime/vm": + '@edge-runtime/vm': optional: true - "@types/node": + '@types/node': optional: true - "@vitest/browser": + '@vitest/browser': optional: true - "@vitest/ui": + '@vitest/ui': optional: true happy-dom: optional: true jsdom: optional: true dependencies: - "@types/node": 20.11.16 - "@vitest/expect": 1.2.2 - "@vitest/runner": 1.2.2 - "@vitest/snapshot": 1.2.2 - "@vitest/spy": 1.2.2 - "@vitest/ui": 1.2.2(vitest@1.2.2) - "@vitest/utils": 1.2.2 + '@types/node': 20.11.17 + '@vitest/expect': 1.2.2 + '@vitest/runner': 1.2.2 + '@vitest/snapshot': 1.2.2 + '@vitest/spy': 1.2.2 + '@vitest/ui': 1.2.2(vitest@1.2.2) + '@vitest/utils': 1.2.2 acorn-walk: 8.3.2 cac: 6.7.14 chai: 4.4.1 @@ -10762,8 +7947,8 @@ packages: strip-literal: 1.3.0 tinybench: 2.6.0 tinypool: 0.8.2 - vite: 5.0.12(@types/node@20.11.16) - vite-node: 1.2.2(@types/node@20.11.16) + vite: 5.0.12(@types/node@20.11.17) + vite-node: 1.2.2(@types/node@20.11.17) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -10776,43 +7961,28 @@ packages: dev: true /w3c-keyname@2.2.8: - resolution: - { - integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==, - } + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} dev: false /wcwidth@1.0.1: - resolution: - { - integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==, - } + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} dependencies: defaults: 1.0.4 dev: true /webidl-conversions@3.0.1: - resolution: - { - integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, - } + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: false /whatwg-url@5.0.0: - resolution: - { - integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, - } + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 dev: false /which-boxed-primitive@1.0.2: - resolution: - { - integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==, - } + resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: is-bigint: 1.0.4 is-boolean-object: 1.1.2 @@ -10822,11 +7992,8 @@ packages: dev: false /which-builtin-type@1.1.3: - resolution: - { - integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} + engines: {node: '>= 0.4'} dependencies: function.prototype.name: 1.1.5 has-tostringtag: 1.0.0 @@ -10843,10 +8010,7 @@ packages: dev: false /which-collection@1.0.1: - resolution: - { - integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==, - } + resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} dependencies: is-map: 2.0.2 is-set: 2.0.2 @@ -10855,11 +8019,8 @@ packages: dev: false /which-typed-array@1.1.11: - resolution: - { - integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==, - } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} + engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 call-bind: 1.0.2 @@ -10869,20 +8030,14 @@ packages: dev: false /which@2.0.2: - resolution: - { - integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, - } - engines: { node: ">= 8" } + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} dependencies: isexe: 2.0.0 /why-is-node-running@2.2.2: - resolution: - { - integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} + engines: {node: '>=8'} hasBin: true dependencies: siginfo: 2.0.0 @@ -10890,27 +8045,18 @@ packages: dev: true /wide-align@1.1.5: - resolution: - { - integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==, - } + resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} dependencies: string-width: 4.2.3 dev: false /wordwrap@1.0.0: - resolution: - { - integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==, - } + resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} dev: true /wrap-ansi@6.2.0: - resolution: - { - integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==, - } - engines: { node: ">=8" } + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -10918,11 +8064,8 @@ packages: dev: true /wrap-ansi@7.0.0: - resolution: - { - integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -10930,11 +8073,8 @@ packages: dev: false /wrap-ansi@8.1.0: - resolution: - { - integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==, - } - engines: { node: ">=12" } + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 @@ -10942,48 +8082,27 @@ packages: dev: false /wrappy@1.0.2: - resolution: - { - integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, - } + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} /yallist@3.1.1: - resolution: - { - integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, - } + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} /yallist@4.0.0: - resolution: - { - integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, - } + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} /yn@3.1.1: - resolution: - { - integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==, - } - engines: { node: ">=6" } + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} dev: true /yocto-queue@0.1.0: - resolution: - { - integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, - } - engines: { node: ">=10" } + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} /yocto-queue@1.0.0: - resolution: - { - integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==, - } - engines: { node: ">=12.20" } + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} dev: true /zod@3.22.4: - resolution: - { - integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==, - } + resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} From 81e61b4d6bea3f32822917c4cf03f4d5876397ca Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 9 Feb 2024 22:05:39 +0100 Subject: [PATCH 67/87] fix(deps): update mantine monorepo to ^7.5.2 (#71) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 6 +- packages/form/package.json | 2 +- packages/notifications/package.json | 2 +- packages/spotlight/package.json | 2 +- packages/ui/package.json | 4 +- pnpm-lock.yaml | 162 +++++++++++++--------------- 6 files changed, 84 insertions(+), 94 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 65c690719..8770dbc10 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -25,9 +25,9 @@ "@homarr/ui": "workspace:^0.1.0", "@homarr/validation": "workspace:^0.1.0", "@homarr/widgets": "workspace:^0.1.0", - "@mantine/hooks": "^7.5.1", - "@mantine/modals": "^7.5.1", - "@mantine/tiptap": "^7.5.1", + "@mantine/hooks": "^7.5.2", + "@mantine/modals": "^7.5.2", + "@mantine/tiptap": "^7.5.2", "@t3-oss/env-nextjs": "^0.9.2", "@tanstack/react-query": "^5.18.1", "@tanstack/react-query-devtools": "^5.18.1", diff --git a/packages/form/package.json b/packages/form/package.json index f58d82317..653a19037 100644 --- a/packages/form/package.json +++ b/packages/form/package.json @@ -33,6 +33,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/form": "^7.5.1" + "@mantine/form": "^7.5.2" } } diff --git a/packages/notifications/package.json b/packages/notifications/package.json index a22de4fdd..50c175f22 100644 --- a/packages/notifications/package.json +++ b/packages/notifications/package.json @@ -28,7 +28,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "@mantine/notifications": "^7.5.1", + "@mantine/notifications": "^7.5.2", "@homarr/ui": "workspace:^0.1.0" }, "eslintConfig": { diff --git a/packages/spotlight/package.json b/packages/spotlight/package.json index fcfc16cc5..5462b7111 100644 --- a/packages/spotlight/package.json +++ b/packages/spotlight/package.json @@ -34,6 +34,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/spotlight": "^7.5.1" + "@mantine/spotlight": "^7.5.2" } } diff --git a/packages/ui/package.json b/packages/ui/package.json index d24d9cd9c..29da02d12 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -35,8 +35,8 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@mantine/core": "^7.5.1", - "@mantine/dates": "^7.5.1", + "@mantine/core": "^7.5.2", + "@mantine/dates": "^7.5.2", "@tabler/icons-react": "^2.47.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7b2cf8d9a..1f269fdba 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -84,14 +84,14 @@ importers: specifier: workspace:^0.1.0 version: link:../../packages/widgets '@mantine/hooks': - specifier: ^7.5.1 - version: 7.5.1(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(react@18.2.0) '@mantine/modals': - specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) '@mantine/tiptap': - specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': specifier: ^0.9.2 version: 0.9.2(typescript@5.3.3)(zod@3.22.4) @@ -133,7 +133,7 @@ importers: version: 2.6.4(@types/react@18.2.55)(react@18.2.0) mantine-modal-manager: specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.1(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) next: specifier: ^14.1.0 version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) @@ -377,8 +377,8 @@ importers: packages/form: dependencies: '@mantine/form': - specifier: ^7.5.1 - version: 7.5.1(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(react@18.2.0) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -402,8 +402,8 @@ importers: specifier: workspace:^0.1.0 version: link:../ui '@mantine/notifications': - specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -424,8 +424,8 @@ importers: packages/spotlight: dependencies: '@mantine/spotlight': - specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -468,11 +468,11 @@ importers: packages/ui: dependencies: '@mantine/core': - specifier: ^7.5.1 - version: 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': - specifier: ^7.5.1 - version: 7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) '@tabler/icons-react': specifier: ^2.47.0 version: 2.47.0(react@18.2.0) @@ -1627,45 +1627,45 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mantine/core@7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-V7apuQuRubqxTRXb1uxOM43K7tkLRzpbb1ONJ/sj8QRp/26bShkdYp7EVuSKyrQ8DQ5EGYyBBGyzBOQARh41gA==} + /@mantine/core@7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-e58qTiLEp9qLxQ5JZlPNykJWBR+oi0q2J8JPKTjTJD+4UM58uh9oL4wuMEdUyBgiYGvDc/cVYF+rftMpuCt+KQ==} peerDependencies: - '@mantine/hooks': 7.5.1 + '@mantine/hooks': 7.5.2 react: ^18.2.0 react-dom: ^18.2.0 dependencies: '@floating-ui/react': 0.24.8(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) clsx: 2.0.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-number-format: 5.3.1(react-dom@18.2.0)(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.55)(react@18.2.0) - react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) + react-remove-scroll: 2.5.7(react@18.2.0) + react-textarea-autosize: 8.5.3(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - '@types/react' dev: false - /@mantine/dates@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-FReER5Q7gP4YzJPv3a4BqdiufR184MTRAVrITtdPEeTaqTtryAAHuIjiC8QY3f0Q9ge/Pmbt9Khn/ONbULD4XA==} + /@mantine/dates@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-fQN/5YXgXEr3rpyPq3TeiBIljCJWFo957DTFqLzkn/m0E2Qx5Sk+l6CjCTF9ShdPAuDaTkI9RKdE9NaV5JvcrQ==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 dayjs: '>=1.0.0' react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mantine/form@7.5.1(react@18.2.0): - resolution: {integrity: sha512-NPc6sYXZGImFsZvr9Md5DM8C+vpC14rqLcOJlW4DFqze1/MBblVxR+abCNM12r5hrqUxHXEu55yPzxcR9Hoj3Q==} + /@mantine/form@7.5.2(react@18.2.0): + resolution: {integrity: sha512-Kz4UNLvAvxB1utKflt4gr5Uzt1Dxj17thcnlLzB2JX6unzV3OkvC36b5XoXAtuoFxt/RzEyUrp5M38jZLwCLEA==} peerDependencies: react: ^18.2.0 dependencies: @@ -1674,79 +1674,77 @@ packages: react: 18.2.0 dev: false - /@mantine/hooks@7.5.1(react@18.2.0): - resolution: {integrity: sha512-LfrEOkX8U2KbkYAU5BMA7FPbMva/TSd65c45W35wHSx3iqYMsoPN9+Ll1zc/HT0XNFp73jGet9cU7VREbAl0/A==} + /@mantine/hooks@7.5.2(react@18.2.0): + resolution: {integrity: sha512-4POujH5Xx84VB/xfM6EttDq725dqqL2DntoeMjHz3Ua94aK5Y0VSc1IwlETxCuF7yNV5/w/Z8kgeVVa5cDgrPg==} peerDependencies: react: ^18.2.0 dependencies: react: 18.2.0 dev: false - /@mantine/modals@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-s0+kGsYbm4sM6xjgR5njAAp5laOw7g9E4rf7kRpcAWadYTGH8ooKnSFuYfLJFm+viYHDHXRQGH6qvo4VAbOrLQ==} + /@mantine/modals@7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-QRdFZtaGvyE9/nYgnsyMPsWEy+o0vaTzD+Sle6c/CaZ4MPk0ok3Au8bd04LnSMmoinYgLeei9IsmP78UXO9kNA==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mantine/notifications@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-IQDOAz+U9G6IkYXAXG9qL5EESmnhWV3JBJrxwBOPPdi1e9S/akQlsmABWS/voB9WFnOnbMbrkF067RVBA7W4dg==} + /@mantine/notifications@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-wGRDeOG2NGng202k/vZPfkRJMHtflvIORYe4cJaQAd9EhP646xr/ji8zzdXeXvUO5PrKlBpu+K+HSF1bQQY4og==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) - '@mantine/store': 7.5.1(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) + '@mantine/store': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false - /@mantine/spotlight@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-J49+53nDTsk8eVDFWNVV4SufK5D6iYU5hs15PXwotre+OLgudYK9QXF8r3PA90hugxxiYmykxq2CT+Ttx6GoOg==} + /@mantine/spotlight@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-2z23INFOUAvtPpeiXaqJDCakKo1asCGzlyg1FJ3AByZOrGtyT1WY3tAo/0XXFaKh+dUmcj7HcQcEEobJL5QKzQ==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) - '@mantine/store': 7.5.1(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) + '@mantine/store': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mantine/store@7.5.1(react@18.2.0): - resolution: {integrity: sha512-sDaPXB3v9JlJghNTnRTFT2hC3HN6pdBcCXj0CqO/QrJgtRA7A3FxW+mnY7YQOaBxHJ1MIRr+zsv0Qy1f/pu1dw==} + /@mantine/store@7.5.2(react@18.2.0): + resolution: {integrity: sha512-au53HLLH/LfHLOR2Zb00TgG11xAXZNJb4jqsEhAr90axCIw6mlBDIAhbb+Yu6OwDaV7TscE/sonkUstmRjLh/w==} peerDependencies: react: ^18.2.0 dependencies: react: 18.2.0 dev: false - /@mantine/tiptap@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-UaDQ0j0eZmyCpoSDKcaMKDFvhrkzCoZUI9bB2N7ktzmrYw/hgbp7ZwOSrftZgNbRaKdcu6SC7ZuiP/fZzGDZ7g==} + /@mantine/tiptap@7.5.2(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-NoMdyayJ/I/Z0KJKLJMc+tWuq5Aghz0MSktMxB6TaMIgfdXhnJCwwAlq8LP0z4tXNPt74FTS4RbEEHu0+Go1FA==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 '@tiptap/extension-link': ^2.1.12 '@tiptap/react': ^2.1.12 react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 @@ -5669,7 +5667,7 @@ packages: /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - /mantine-modal-manager@7.5.1(@mantine/core@7.5.1)(@mantine/hooks@7.5.1)(react-dom@18.2.0)(react@18.2.0): + /mantine-modal-manager@7.5.1(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==} peerDependencies: '@mantine/core': 7.5.1 @@ -5677,8 +5675,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.1(@mantine/hooks@7.5.1)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 7.5.1(react@18.2.0) + '@mantine/hooks': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -6699,7 +6696,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): + /react-remove-scroll-bar@2.3.4(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -6709,13 +6706,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) + react-style-singleton: 2.2.1(react@18.2.0) tslib: 2.5.0 dev: false - /react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): + /react-remove-scroll@2.5.7(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -6725,13 +6721,12 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) + react-remove-scroll-bar: 2.3.4(react@18.2.0) + react-style-singleton: 2.2.1(react@18.2.0) tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.55)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.55)(react@18.2.0) + use-callback-ref: 1.3.0(react@18.2.0) + use-sidecar: 1.1.2(react@18.2.0) dev: false /react-ssr-prepass@1.5.0(react@18.2.0): @@ -6742,7 +6737,7 @@ packages: react: 18.2.0 dev: false - /react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): + /react-style-singleton@2.2.1(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -6752,14 +6747,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.5.0 dev: false - /react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): + /react-textarea-autosize@8.5.3(react@18.2.0): resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: @@ -6768,7 +6762,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) + use-latest: 1.2.1(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -7739,7 +7733,7 @@ packages: dependencies: punycode: 2.3.0 - /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): + /use-callback-ref@1.3.0(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -7749,7 +7743,6 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 react: 18.2.0 tslib: 2.5.0 dev: false @@ -7762,7 +7755,7 @@ packages: react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -7771,11 +7764,10 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): + /use-latest@1.2.1(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -7784,12 +7776,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(react@18.2.0) dev: false - /use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): + /use-sidecar@1.1.2(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -7799,7 +7790,6 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.55 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 From 5ef79edc1aac1f675d613255a02741da4d836f81 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Fri, 9 Feb 2024 22:20:28 +0100 Subject: [PATCH 68/87] feat: add boards management page (#55) --- .gitignore | 1 + .../_components/create-board-button.tsx | 28 +++++++++++++ .../_components/delete-board-button.tsx | 34 ++++++++++++++++ .../src/app/[locale]/manage/boards/page.tsx | 38 ++++++++++++++++++ packages/api/src/router/board.ts | 39 ++++++++++++++++++- packages/db/schema/sqlite.ts | 2 +- packages/translation/src/lang/en.ts | 9 +++++ packages/validation/src/board.ts | 3 ++ 8 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 apps/nextjs/src/app/[locale]/manage/boards/_components/create-board-button.tsx create mode 100644 apps/nextjs/src/app/[locale]/manage/boards/_components/delete-board-button.tsx create mode 100644 apps/nextjs/src/app/[locale]/manage/boards/page.tsx diff --git a/.gitignore b/.gitignore index a9669defa..43091d08b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ node_modules .pnp .pnp.js +.idea/ # testing coverage diff --git a/apps/nextjs/src/app/[locale]/manage/boards/_components/create-board-button.tsx b/apps/nextjs/src/app/[locale]/manage/boards/_components/create-board-button.tsx new file mode 100644 index 000000000..339ae07d8 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/manage/boards/_components/create-board-button.tsx @@ -0,0 +1,28 @@ +"use client"; + +import React from "react"; + +import { clientApi } from "@homarr/api/client"; +import { useI18n } from "@homarr/translation/client"; +import { Button } from "@homarr/ui"; + +import { revalidatePathAction } from "~/app/revalidatePathAction"; + +export const CreateBoardButton = () => { + const t = useI18n(); + const { mutateAsync, isPending } = clientApi.board.create.useMutation({ + onSettled: async () => { + await revalidatePathAction("/manage/boards"); + }, + }); + + const onClick = React.useCallback(async () => { + await mutateAsync({ name: "default" }); + }, [mutateAsync]); + + return ( + + ); +}; diff --git a/apps/nextjs/src/app/[locale]/manage/boards/_components/delete-board-button.tsx b/apps/nextjs/src/app/[locale]/manage/boards/_components/delete-board-button.tsx new file mode 100644 index 000000000..4d49ed17a --- /dev/null +++ b/apps/nextjs/src/app/[locale]/manage/boards/_components/delete-board-button.tsx @@ -0,0 +1,34 @@ +"use client"; + +import React from "react"; + +import { clientApi } from "@homarr/api/client"; +import { useI18n } from "@homarr/translation/client"; +import { Button } from "@homarr/ui"; + +import { revalidatePathAction } from "~/app/revalidatePathAction"; + +interface Props { + id: string; +} + +export const DeleteBoardButton = ({ id }: Props) => { + const t = useI18n(); + const { mutateAsync, isPending } = clientApi.board.delete.useMutation({ + onSettled: async () => { + await revalidatePathAction("/manage/boards"); + }, + }); + + const onClick = React.useCallback(async () => { + await mutateAsync({ + id, + }); + }, [id, mutateAsync]); + + return ( + + ); +}; diff --git a/apps/nextjs/src/app/[locale]/manage/boards/page.tsx b/apps/nextjs/src/app/[locale]/manage/boards/page.tsx new file mode 100644 index 000000000..a5baaa881 --- /dev/null +++ b/apps/nextjs/src/app/[locale]/manage/boards/page.tsx @@ -0,0 +1,38 @@ +import React from "react"; + +import { getScopedI18n } from "@homarr/translation/server"; +import { Card, Grid, GridCol, Text, Title } from "@homarr/ui"; + +import { api } from "~/trpc/server"; +import { CreateBoardButton } from "./_components/create-board-button"; +import { DeleteBoardButton } from "./_components/delete-board-button"; + +export default async function ManageBoardsPage() { + const t = await getScopedI18n("management.page.board"); + + const boards = await api.board.getAll.query(); + + return ( + <> + {t("title")} + + + + + {boards.map((board) => ( + + + {board.name} + + + {JSON.stringify(board)} + + + + + + ))} + + + ); +} diff --git a/packages/api/src/router/board.ts b/packages/api/src/router/board.ts index 1560e4f0b..246b78201 100644 --- a/packages/api/src/router/board.ts +++ b/packages/api/src/router/board.ts @@ -2,7 +2,7 @@ import { TRPCError } from "@trpc/server"; import superjson from "superjson"; import type { Database } from "@homarr/db"; -import { and, db, eq, inArray } from "@homarr/db"; +import { and, createId, db, eq, inArray } from "@homarr/db"; import { boards, integrationItems, @@ -47,6 +47,43 @@ const filterUpdatedItems = ( ); export const boardRouter = createTRPCRouter({ + getAll: publicProcedure.query(async () => { + return await db.query.boards.findMany({ + columns: { + id: true, + name: true, + }, + with: { + sections: { + with: { + items: true, + }, + }, + }, + }); + }), + create: publicProcedure + .input(validation.board.create) + .mutation(async ({ ctx, input }) => { + const boardId = createId(); + await ctx.db.transaction(async (transaction) => { + await transaction.insert(boards).values({ + id: boardId, + name: input.name, + }); + await transaction.insert(sections).values({ + id: createId(), + kind: "empty", + position: 0, + boardId, + }); + }); + }), + delete: publicProcedure + .input(z.object({ id: z.string() })) + .mutation(async ({ ctx, input }) => { + await ctx.db.delete(boards).where(eq(boards.id, input.id)); + }), default: publicProcedure.query(async ({ ctx }) => { return await getFullBoardByName(ctx.db, "default"); }), diff --git a/packages/db/schema/sqlite.ts b/packages/db/schema/sqlite.ts index f9fd3da8e..a154cf4f7 100644 --- a/packages/db/schema/sqlite.ts +++ b/packages/db/schema/sqlite.ts @@ -116,7 +116,7 @@ export const integrationSecrets = sqliteTable( export const boards = sqliteTable("board", { id: text("id").notNull().primaryKey(), - name: text("name").notNull(), + name: text("name").unique().notNull(), isPublic: int("is_public", { mode: "boolean" }).default(false).notNull(), pageTitle: text("page_title"), metaTitle: text("meta_title"), diff --git a/packages/translation/src/lang/en.ts b/packages/translation/src/lang/en.ts index 71cb4c950..62acddd59 100644 --- a/packages/translation/src/lang/en.ts +++ b/packages/translation/src/lang/en.ts @@ -363,5 +363,14 @@ export default { about: "About", }, }, + page: { + board: { + title: "Manage boards", + button: { + create: "Create board", + delete: "Delete board", + }, + }, + }, }, } as const; diff --git a/packages/validation/src/board.ts b/packages/validation/src/board.ts index dc2a93989..6b56666fb 100644 --- a/packages/validation/src/board.ts +++ b/packages/validation/src/board.ts @@ -36,8 +36,11 @@ const saveSchema = z.object({ sections: z.array(createSectionSchema(commonItemSchema)), }); +const createSchema = z.object({ name: z.string() }); + export const boardSchemas = { byName: byNameSchema, saveGeneralSettings: saveGeneralSettingsSchema, save: saveSchema, + create: createSchema, }; From f704bad36e103fc349b0303d9f79440d076c1e88 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 9 Feb 2024 22:20:41 +0100 Subject: [PATCH 69/87] fix(deps): update dependency mantine-modal-manager to ^7.5.2 (#72) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 74 +++++++++++++++++++++++----------------- 2 files changed, 43 insertions(+), 33 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 8770dbc10..fe815dd73 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -42,7 +42,7 @@ "dayjs": "^1.11.10", "@homarr/gridstack": "^1.0.0", "jotai": "^2.6.4", - "mantine-modal-manager": "^7.5.1", + "mantine-modal-manager": "^7.5.2", "next": "^14.1.0", "postcss-preset-mantine": "^1.13.0", "react": "18.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1f269fdba..d21378ef9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -88,10 +88,10 @@ importers: version: 7.5.2(react@18.2.0) '@mantine/modals': specifier: ^7.5.2 - version: 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) '@mantine/tiptap': specifier: ^7.5.2 - version: 7.5.2(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0) '@t3-oss/env-nextjs': specifier: ^0.9.2 version: 0.9.2(typescript@5.3.3)(zod@3.22.4) @@ -132,8 +132,8 @@ importers: specifier: ^2.6.4 version: 2.6.4(@types/react@18.2.55)(react@18.2.0) mantine-modal-manager: - specifier: ^7.5.1 - version: 7.5.1(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + specifier: ^7.5.2 + version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) next: specifier: ^14.1.0 version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) @@ -469,7 +469,7 @@ importers: dependencies: '@mantine/core': specifier: ^7.5.2 - version: 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + version: 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/dates': specifier: ^7.5.2 version: 7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(dayjs@1.11.10)(react-dom@18.2.0)(react@18.2.0) @@ -1627,7 +1627,7 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mantine/core@7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + /@mantine/core@7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-e58qTiLEp9qLxQ5JZlPNykJWBR+oi0q2J8JPKTjTJD+4UM58uh9oL4wuMEdUyBgiYGvDc/cVYF+rftMpuCt+KQ==} peerDependencies: '@mantine/hooks': 7.5.2 @@ -1640,8 +1640,8 @@ packages: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-number-format: 5.3.1(react-dom@18.2.0)(react@18.2.0) - react-remove-scroll: 2.5.7(react@18.2.0) - react-textarea-autosize: 8.5.3(react@18.2.0) + react-remove-scroll: 2.5.7(@types/react@18.2.55)(react@18.2.0) + react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) type-fest: 3.13.1 transitivePeerDependencies: - '@types/react' @@ -1656,7 +1656,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) clsx: 2.0.0 dayjs: 1.11.10 @@ -1682,7 +1682,7 @@ packages: react: 18.2.0 dev: false - /@mantine/modals@7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + /@mantine/modals@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-QRdFZtaGvyE9/nYgnsyMPsWEy+o0vaTzD+Sle6c/CaZ4MPk0ok3Au8bd04LnSMmoinYgLeei9IsmP78UXO9kNA==} peerDependencies: '@mantine/core': 7.5.2 @@ -1690,6 +1690,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -1703,7 +1704,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) '@mantine/store': 7.5.2(react@18.2.0) react: 18.2.0 @@ -1719,7 +1720,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0) + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) '@mantine/store': 7.5.2(react@18.2.0) react: 18.2.0 @@ -1734,7 +1735,7 @@ packages: react: 18.2.0 dev: false - /@mantine/tiptap@7.5.2(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): + /@mantine/tiptap@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(@tiptap/extension-link@2.2.2)(@tiptap/react@2.2.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-NoMdyayJ/I/Z0KJKLJMc+tWuq5Aghz0MSktMxB6TaMIgfdXhnJCwwAlq8LP0z4tXNPt74FTS4RbEEHu0+Go1FA==} peerDependencies: '@mantine/core': 7.5.2 @@ -1744,6 +1745,7 @@ packages: react: ^18.2.0 react-dom: ^18.2.0 dependencies: + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) '@tiptap/extension-link': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) '@tiptap/react': 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2)(react-dom@18.2.0)(react@18.2.0) @@ -5667,14 +5669,15 @@ packages: /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - /mantine-modal-manager@7.5.1(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-wOkG/ZBZiy05UdjI+UbSqut+eKehAvQdeOlpFflBSl2SaG2M1iSV0Zf+vN1+10y+9KBv13iAJtXCKtNDFj4LwA==} + /mantine-modal-manager@7.5.2(@mantine/core@7.5.2)(@mantine/hooks@7.5.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-MI2j7WQso2n+AxvyfMyRFjOHrfW1SVZKOUUd35/JxPks3dF5FbQAU3aLHPj2QtVuf2MUgFqH/yJKJlr1tfiQjw==} peerDependencies: - '@mantine/core': 7.5.1 - '@mantine/hooks': 7.5.1 + '@mantine/core': 7.5.2 + '@mantine/hooks': 7.5.2 react: ^18.2.0 react-dom: ^18.2.0 dependencies: + '@mantine/core': 7.5.2(@mantine/hooks@7.5.2)(@types/react@18.2.55)(react-dom@18.2.0)(react@18.2.0) '@mantine/hooks': 7.5.2(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -6696,7 +6699,7 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-remove-scroll-bar@2.3.4(react@18.2.0): + /react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} engines: {node: '>=10'} peerDependencies: @@ -6706,12 +6709,13 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 react: 18.2.0 - react-style-singleton: 2.2.1(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 dev: false - /react-remove-scroll@2.5.7(react@18.2.0): + /react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} engines: {node: '>=10'} peerDependencies: @@ -6721,12 +6725,13 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 react: 18.2.0 - react-remove-scroll-bar: 2.3.4(react@18.2.0) - react-style-singleton: 2.2.1(react@18.2.0) + react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) + react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) tslib: 2.5.0 - use-callback-ref: 1.3.0(react@18.2.0) - use-sidecar: 1.1.2(react@18.2.0) + use-callback-ref: 1.3.0(@types/react@18.2.55)(react@18.2.0) + use-sidecar: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false /react-ssr-prepass@1.5.0(react@18.2.0): @@ -6737,7 +6742,7 @@ packages: react: 18.2.0 dev: false - /react-style-singleton@2.2.1(react@18.2.0): + /react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: @@ -6747,13 +6752,14 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 get-nonce: 1.0.1 invariant: 2.2.4 react: 18.2.0 tslib: 2.5.0 dev: false - /react-textarea-autosize@8.5.3(react@18.2.0): + /react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: @@ -6762,7 +6768,7 @@ packages: '@babel/runtime': 7.23.2 react: 18.2.0 use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false @@ -7733,7 +7739,7 @@ packages: dependencies: punycode: 2.3.0 - /use-callback-ref@1.3.0(react@18.2.0): + /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} peerDependencies: @@ -7743,6 +7749,7 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 react: 18.2.0 tslib: 2.5.0 dev: false @@ -7755,7 +7762,7 @@ packages: react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(react@18.2.0): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -7764,10 +7771,11 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 react: 18.2.0 dev: false - /use-latest@1.2.1(react@18.2.0): + /use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -7776,11 +7784,12 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(react@18.2.0) + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) dev: false - /use-sidecar@1.1.2(react@18.2.0): + /use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} engines: {node: '>=10'} peerDependencies: @@ -7790,6 +7799,7 @@ packages: '@types/react': optional: true dependencies: + '@types/react': 18.2.55 detect-node-es: 1.1.0 react: 18.2.0 tslib: 2.5.0 From 3e732fc613171817db43f994697b3674d7859012 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Fri, 9 Feb 2024 23:05:50 +0100 Subject: [PATCH 70/87] config: add permissions to automatic release workflow --- .github/workflows/automatic-release.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/automatic-release.yml b/.github/workflows/automatic-release.yml index 9bf7dafe5..b573974b5 100644 --- a/.github/workflows/automatic-release.yml +++ b/.github/workflows/automatic-release.yml @@ -8,6 +8,10 @@ on: env: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK_AUTOMATIC_RELEASE }} +permissions: + contents: write + pull-requests: write + jobs: merge: runs-on: ubuntu-latest From 60d5ebbc11fd8a8f5494e303335e2bd46ec09a3d Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sat, 10 Feb 2024 11:27:31 +0100 Subject: [PATCH 71/87] fix(deps): update dependency next-international to ^1.2.4 (#76) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/translation/package.json | 2 +- pnpm-lock.yaml | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/translation/package.json b/packages/translation/package.json index 814c4d65f..f2f8716e7 100644 --- a/packages/translation/package.json +++ b/packages/translation/package.json @@ -36,6 +36,6 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "next-international": "^1.2.3" + "next-international": "^1.2.4" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d21378ef9..4b88bd16d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -446,8 +446,8 @@ importers: packages/translation: dependencies: next-international: - specifier: ^1.2.3 - version: 1.2.3 + specifier: ^1.2.4 + version: 1.2.4 devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -5874,8 +5874,8 @@ packages: react: 18.2.0 dev: false - /next-international@1.2.3: - resolution: {integrity: sha512-pLHX6dIjg2bd/LHcBIylhQXsiv2CQgAEKXb1tlVMXIj+RxpxgB9ymgkNdm4OsEmEpVlleCoq4T3k4Pi9QXZ8wQ==} + /next-international@1.2.4: + resolution: {integrity: sha512-JQvp+h2iSgA/t8hu5S/Lwow1ZErJutQRdpnplxjv4VTlCiND8T95fYih8BjkHcVhQbtM+Wu9Mb1CM32wD9hlWQ==} dependencies: client-only: 0.0.1 international-types: 0.8.1 From 00f4a288a413383b4c412a1165eeba8a4c973a67 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sat, 10 Feb 2024 13:45:18 +0100 Subject: [PATCH 72/87] fix(deps): update tanstack-query monorepo to ^5.20.1 (#75) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 6 ++--- pnpm-lock.yaml | 58 ++++++++++++++++++++-------------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index fe815dd73..139aa3533 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -29,9 +29,9 @@ "@mantine/modals": "^7.5.2", "@mantine/tiptap": "^7.5.2", "@t3-oss/env-nextjs": "^0.9.2", - "@tanstack/react-query": "^5.18.1", - "@tanstack/react-query-devtools": "^5.18.1", - "@tanstack/react-query-next-experimental": "5.18.1", + "@tanstack/react-query": "^5.20.1", + "@tanstack/react-query-devtools": "^5.20.1", + "@tanstack/react-query-next-experimental": "5.20.1", "@tiptap/extension-link": "^2.2.2", "@tiptap/react": "^2.2.2", "@tiptap/starter-kit": "^2.2.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4b88bd16d..a386e4059 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -96,14 +96,14 @@ importers: specifier: ^0.9.2 version: 0.9.2(typescript@5.3.3)(zod@3.22.4) '@tanstack/react-query': - specifier: ^5.18.1 - version: 5.18.1(react@18.2.0) + specifier: ^5.20.1 + version: 5.20.1(react@18.2.0) '@tanstack/react-query-devtools': - specifier: ^5.18.1 - version: 5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0) + specifier: ^5.20.1 + version: 5.20.1(@tanstack/react-query@5.20.1)(react@18.2.0) '@tanstack/react-query-next-experimental': - specifier: 5.18.1 - version: 5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0) + specifier: 5.20.1 + version: 5.20.1(@tanstack/react-query@5.20.1)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) @@ -118,10 +118,10 @@ importers: version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/next': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) '@trpc/react-query': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 @@ -2093,43 +2093,43 @@ packages: resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} dev: false - /@tanstack/query-core@5.18.1: - resolution: {integrity: sha512-fYhrG7bHgSNbnkIJF2R4VUXb4lF7EBiQjKkDc5wOlB7usdQOIN4LxxHpDxyE3qjqIst1WBGvDtL48T0sHJGKCw==} + /@tanstack/query-core@5.20.1: + resolution: {integrity: sha512-OONHHYG5vzjob4An+EfzbW7TRyb+sCA0AEgHzUIMlV9NYlF7wIwbla3PUfB3ocnaK1gZyROf0Lux/CBSu0exBQ==} dev: false - /@tanstack/query-devtools@5.18.1: - resolution: {integrity: sha512-U8bDnDGuwdVMT4ndegPTcjOHOmX/UOjjB7o7UalRIq3DMHLRf8Ufh4+xoAvk3LNK5GBmUBfFSw4osYe5l9n7Lw==} + /@tanstack/query-devtools@5.20.1: + resolution: {integrity: sha512-sSYo+GW7tx28M6FpcGqzo/zblbTEKrCG8THXOPoNy+EL1Z7kX4JXhRcihyKu3mY8MS/wsGghrZ/R0VTt6JXmBA==} dev: false - /@tanstack/react-query-devtools@5.18.1(@tanstack/react-query@5.18.1)(react@18.2.0): - resolution: {integrity: sha512-IrzAsodabSkEVBP0DHkuzcmqKFZ0EgG9ocuD/fRIrjYmbqqdHxzNmp2WmAZlkVo7hamA0ZdzvL5sjo1koFzjHA==} + /@tanstack/react-query-devtools@5.20.1(@tanstack/react-query@5.20.1)(react@18.2.0): + resolution: {integrity: sha512-VMjNjWLTu4+k0pGAhcsI8igtUI93ksrn4QDruaxbXdvLE3Yvfj8eaDVCemkmAySk7pCQJf4hhdByB/yOKSmIsg==} peerDependencies: - '@tanstack/react-query': ^5.18.1 + '@tanstack/react-query': ^5.20.1 react: ^18.0.0 dependencies: - '@tanstack/query-devtools': 5.18.1 - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/query-devtools': 5.20.1 + '@tanstack/react-query': 5.20.1(react@18.2.0) react: 18.2.0 dev: false - /@tanstack/react-query-next-experimental@5.18.1(@tanstack/react-query@5.18.1)(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-vQj0nKwt/3gaCOIgU3Nzo18L5HbvNX3LuNBq8PTwjrwx9wWdCthNZ1TbaB0uQk3lPs/Yt/7TJ8h6EnmZcgeEag==} + /@tanstack/react-query-next-experimental@5.20.1(@tanstack/react-query@5.20.1)(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-S3cfhxZOaf/l4H0Xgg5dZ8zTvZko0Z+rHrt6V81/mQHAzdMBklw8O7nxd46NQjKOjS5Mb4E1WxmjWipVrs2usw==} peerDependencies: - '@tanstack/react-query': ^5.18.1 + '@tanstack/react-query': ^5.20.1 next: ^13 || ^14 react: ^18.0.0 dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.20.1(react@18.2.0) next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false - /@tanstack/react-query@5.18.1(react@18.2.0): - resolution: {integrity: sha512-PdI07BbsahZ+04PxSuDQsQvBWe008eWFk/YYWzt8fvzt2sALUM0TpAJa/DFpqa7+SSo7j1EQR6Jx6znXNHyaXw==} + /@tanstack/react-query@5.20.1(react@18.2.0): + resolution: {integrity: sha512-KRkOtJ47tv9B3EXfjHkbPkiFzOzYCOid8BrYBozk0rm9JpDB2xSf71q8w1PRudlQW6QUQIEDI9E6NIMh6AlLUw==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.18.1 + '@tanstack/query-core': 5.20.1 react: 18.2.0 dev: false @@ -2405,7 +2405,7 @@ packages: '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false - /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): + /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2416,9 +2416,9 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.20.1(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 @@ -2426,7 +2426,7 @@ packages: react-ssr-prepass: 1.5.0(react@18.2.0) dev: false - /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.18.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): + /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2435,7 +2435,7 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.18.1(react@18.2.0) + '@tanstack/react-query': 5.20.1(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 From 34875dfd154f9e9e3a8ce5c5bc4d14e757b4b14d Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 10 Feb 2024 18:07:24 +0100 Subject: [PATCH 73/87] feat: add winston logger (#77) --- .gitignore | 5 +- package.json | 7 ++- pnpm-lock.yaml | 135 ++++++++++++++++++++++++++++++++++++++++++++++++- start.js | 32 ++++++++++++ 4 files changed, 175 insertions(+), 4 deletions(-) create mode 100644 start.js diff --git a/.gitignore b/.gitignore index 43091d08b..0bc0e63b9 100644 --- a/.gitignore +++ b/.gitignore @@ -45,4 +45,7 @@ yarn-error.log* .turbo # database -db.sqlite \ No newline at end of file +db.sqlite + +# logs +*.log \ No newline at end of file diff --git a/package.json b/package.json index 33368690a..8891b0530 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "clean:workspaces": "turbo clean", "db:push": "pnpm -F db push", "db:studio": "pnpm -F db studio", - "dev": "turbo dev --parallel", + "dev": "node start.js", "format": "turbo format --continue -- --cache --cache-location node_modules/.cache/.prettiercache", "format:fix": "turbo format --continue -- --write --cache --cache-location node_modules/.cache/.prettiercache", "lint": "turbo lint --continue -- --cache --cache-location node_modules/.cache/.eslintcache", @@ -35,5 +35,8 @@ "vite-tsconfig-paths": "^4.3.1", "vitest": "^1.2.2" }, - "prettier": "@homarr/prettier-config" + "prettier": "@homarr/prettier-config", + "dependencies": { + "winston": "^3.11.0" + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a386e4059..da8fc9bcc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,6 +7,10 @@ settings: importers: .: + dependencies: + winston: + specifier: ^3.11.0 + version: 3.11.0 devDependencies: '@homarr/prettier-config': specifier: workspace:^0.1.0 @@ -1030,6 +1034,11 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true + /@colors/colors@1.6.0: + resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} + engines: {node: '>=0.1.90'} + dev: false + /@cspotcode/source-map-support@0.8.1: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -1037,6 +1046,14 @@ packages: '@jridgewell/trace-mapping': 0.3.9 dev: true + /@dabh/diagnostics@2.0.3: + resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} + dependencies: + colorspace: 1.1.4 + enabled: 2.0.0 + kuler: 2.0.0 + dev: false + /@drizzle-team/studio@0.0.39: resolution: {integrity: sha512-c5Hkm7MmQC2n5qAsKShjQrHoqlfGslB8+qWzsGGZ+2dHMRTNG60UuzalF0h0rvBax5uzPXuGkYLGaQ+TUX3yMw==} dependencies: @@ -2724,6 +2741,10 @@ packages: resolution: {integrity: sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==} dev: true + /@types/triple-beam@1.3.5: + resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==} + dev: false + /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3): resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -3201,6 +3222,10 @@ packages: tslib: 2.5.0 dev: true + /async@3.2.5: + resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} + dev: false + /asynciterator.prototype@1.0.0: resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} dependencies: @@ -3539,10 +3564,31 @@ packages: /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + /color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + dev: false + /color-support@1.1.3: resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} dev: false + /color@3.2.1: + resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} + dependencies: + color-convert: 1.9.3 + color-string: 1.9.1 + dev: false + + /colorspace@1.1.4: + resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} + dependencies: + color: 3.2.1 + text-hex: 1.0.0 + dev: false + /commander@10.0.1: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} @@ -3971,6 +4017,10 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: false + /enabled@2.0.0: + resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} + dev: false + /end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: @@ -4561,6 +4611,10 @@ packages: dependencies: reusify: 1.0.4 + /fecha@4.2.3: + resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} + dev: false + /fflate@0.8.1: resolution: {integrity: sha512-/exOvEuc+/iaUm105QIiOt4LpBdMTWsXxqR0HDF35vx3fmaKzw7354gTilCh5rkzEt8WYyG//ku3h3nRmd7CHQ==} dev: true @@ -4609,6 +4663,10 @@ packages: resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true + /fn.name@1.1.0: + resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} + dev: false + /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: @@ -5116,6 +5174,10 @@ packages: is-typed-array: 1.1.10 dev: false + /is-arrayish@0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: false + /is-async-function@2.0.0: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} engines: {node: '>= 0.4'} @@ -5267,7 +5329,6 @@ packages: /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} - dev: true /is-stream@3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} @@ -5516,6 +5577,10 @@ packages: engines: {node: '>= 8'} dev: false + /kuler@2.0.0: + resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} + dev: false + /language-subtag-registry@0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} dev: false @@ -5588,6 +5653,18 @@ packages: is-unicode-supported: 0.1.0 dev: true + /logform@2.6.0: + resolution: {integrity: sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==} + engines: {node: '>= 12.0.0'} + dependencies: + '@colors/colors': 1.6.0 + '@types/triple-beam': 1.3.5 + fecha: 4.2.3 + ms: 2.1.3 + safe-stable-stringify: 2.4.3 + triple-beam: 1.4.1 + dev: false + /loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} dependencies: @@ -6131,6 +6208,12 @@ packages: dependencies: wrappy: 1.0.2 + /one-time@1.0.0: + resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} + dependencies: + fn.name: 1.1.0 + dev: false + /onetime@5.1.2: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} @@ -6981,6 +7064,11 @@ packages: is-regex: 1.1.4 dev: false + /safe-stable-stringify@2.4.3: + resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} + engines: {node: '>=10'} + dev: false + /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true @@ -7076,6 +7164,12 @@ packages: simple-concat: 1.0.1 dev: false + /simple-swizzle@0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + dependencies: + is-arrayish: 0.3.2 + dev: false + /sirv@2.0.4: resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} engines: {node: '>= 10'} @@ -7139,6 +7233,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /stack-trace@0.0.10: + resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} + dev: false + /stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true @@ -7355,6 +7453,10 @@ packages: minimatch: 3.1.2 dev: true + /text-hex@1.0.0: + resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} + dev: false + /text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -7438,6 +7540,11 @@ packages: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false + /triple-beam@1.4.1: + resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} + engines: {node: '>= 14.0.0'} + dev: false + /ts-api-utils@1.0.1(typescript@5.3.3): resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} engines: {node: '>=16.13.0'} @@ -8050,6 +8157,32 @@ packages: string-width: 4.2.3 dev: false + /winston-transport@4.7.0: + resolution: {integrity: sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==} + engines: {node: '>= 12.0.0'} + dependencies: + logform: 2.6.0 + readable-stream: 3.6.2 + triple-beam: 1.4.1 + dev: false + + /winston@3.11.0: + resolution: {integrity: sha512-L3yR6/MzZAOl0DsysUXHVjOwv8mKZ71TrA/41EIduGpOOV5LQVodqN+QdQ6BS6PJ/RdIshZhq84P/fStEZkk7g==} + engines: {node: '>= 12.0.0'} + dependencies: + '@colors/colors': 1.6.0 + '@dabh/diagnostics': 2.0.3 + async: 3.2.5 + is-stream: 2.0.1 + logform: 2.6.0 + one-time: 1.0.0 + readable-stream: 3.6.2 + safe-stable-stringify: 2.4.3 + stack-trace: 0.0.10 + triple-beam: 1.4.1 + winston-transport: 4.7.0 + dev: false + /wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} dev: true diff --git a/start.js b/start.js new file mode 100644 index 000000000..44549aa02 --- /dev/null +++ b/start.js @@ -0,0 +1,32 @@ +import childProcess from "child_process"; + +import winston from "winston"; + +const logMessageFormat = winston.format.printf( + ({ level, message, timestamp }) => { + return `${timestamp} ${level}: ${message}`; + }, +); + +const logger = winston.createLogger({ + format: winston.format.combine( + winston.format.colorize(), + winston.format.timestamp(), + logMessageFormat, + ), + transports: [new winston.transports.Console()], +}); + +const turboProcess = childProcess.exec("turbo dev --parallel"); + +turboProcess.stdout.on("data", (data) => { + if (["warn", "warning"].some((prefix) => data.includes(prefix))) { + logger.warn(data); + } else { + logger.info(data); + } +}); + +turboProcess.stderr.on("data", (error) => { + logger.error(error); +}); \ No newline at end of file From 13aae82790db52a1827da5c4b1b0b88ed3f768fe Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 10 Feb 2024 18:22:23 +0100 Subject: [PATCH 74/87] docs: add pull request template --- .../PULL_REQUEST_TEMPLATE/pull_request_template.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .github/PULL_REQUEST_TEMPLATE/pull_request_template.md diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md new file mode 100644 index 000000000..b551590ab --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -0,0 +1,13 @@ +
+
+ +

Homarr

+
+ +**Thank you for your contribution. Please ensure that your pull request meets the following pull request:** + +- [ ] Builds without warnings or errors (``pnpm buid``, autofix with ``pnpm format:fix``) +- [ ] Pull request targets ``dev`` branch +- [ ] Commits follow the [conventional commits guideline](https://www.conventionalcommits.org/en/v1.0.0/) +- [ ] No shorthand variable names are used (eg. ``x``, ``y``, ``i`` or any abbrevation) + From f070a0cb0aa0fcc82af1cd0e7fdb3005704c7cde Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sat, 10 Feb 2024 19:00:08 +0100 Subject: [PATCH 75/87] test: add initial unit tests (#56) * chore: add initial db migration * test: add unit tests for packages auth, common, widgets * fix: deep source issues * fix: format issues * wip: add unit tests for api routers * fix: deep source issues * test: add missing unit tests for integration router * wip: board tests * test: add unit tests for board router * fix: remove unnecessary null assertions * fix: deepsource issues * fix: formatting * fix: pnpm lock * fix: lint and typecheck issues * chore: address pull request feedback * fix: non-null assertions * fix: lockfile broken --- .../boards/[name]/@headeractions/page.tsx | 8 +- .../boards/[name]/settings/_general.tsx | 7 +- package.json | 3 + packages/api/src/router/board.ts | 53 +- packages/api/src/router/integration.ts | 74 +- packages/api/src/router/test/board.spec.ts | 648 ++++++++++++++++ .../api/src/router/test/integration.spec.ts | 503 +++++++++++++ packages/api/src/router/test/user.spec.ts | 94 +++ packages/auth/callbacks.ts | 61 ++ packages/auth/configuration.ts | 52 +- packages/auth/package.json | 6 + packages/auth/providers/credentials.ts | 85 ++- .../auth/providers/test/credentials.spec.ts | 66 ++ packages/auth/session.ts | 3 + packages/auth/test/callbacks.spec.ts | 153 ++++ packages/auth/test/security.spec.ts | 47 ++ packages/auth/test/session.spec.ts | 43 ++ packages/common/src/test/object.spec.ts | 24 +- packages/db/drizzle.config.ts | 1 + packages/db/index.ts | 2 +- packages/db/migrations/0000_true_red_wolf.sql | 112 +++ .../db/migrations/meta/0000_snapshot.json | 696 ++++++++++++++++++ packages/db/migrations/meta/_journal.json | 13 + packages/db/package.json | 4 +- packages/db/test/db-mock.ts | 14 + packages/db/test/index.ts | 1 + .../definitions/src/test/integration.spec.ts | 14 + packages/translation/src/index.ts | 1 + packages/validation/src/board.ts | 3 +- packages/widgets/src/test/translation.spec.ts | 42 ++ pnpm-lock.yaml | 297 +++++++- tooling/typescript/base.json | 8 +- vitest.config.ts | 2 + vitest.setup.ts | 3 + 34 files changed, 3014 insertions(+), 129 deletions(-) create mode 100644 packages/api/src/router/test/board.spec.ts create mode 100644 packages/api/src/router/test/integration.spec.ts create mode 100644 packages/api/src/router/test/user.spec.ts create mode 100644 packages/auth/callbacks.ts create mode 100644 packages/auth/providers/test/credentials.spec.ts create mode 100644 packages/auth/test/callbacks.spec.ts create mode 100644 packages/auth/test/security.spec.ts create mode 100644 packages/auth/test/session.spec.ts create mode 100644 packages/db/migrations/0000_true_red_wolf.sql create mode 100644 packages/db/migrations/meta/0000_snapshot.json create mode 100644 packages/db/migrations/meta/_journal.json create mode 100644 packages/db/test/db-mock.ts create mode 100644 packages/db/test/index.ts create mode 100644 packages/definitions/src/test/integration.spec.ts create mode 100644 packages/widgets/src/test/translation.spec.ts create mode 100644 vitest.setup.ts diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx index 4388f9c7a..ae4d5cfa1 100644 --- a/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx +++ b/apps/nextjs/src/app/[locale]/boards/[name]/@headeractions/page.tsx @@ -108,7 +108,7 @@ const EditModeMenu = () => { const [isEditMode, setEditMode] = useAtom(editModeAtom); const board = useRequiredBoard(); const t = useScopedI18n("board.action.edit"); - const { mutate, isPending } = clientApi.board.save.useMutation({ + const { mutate: saveBoard, isPending } = clientApi.board.save.useMutation({ onSuccess() { showSuccessNotification({ title: t("notification.success.title"), @@ -125,7 +125,11 @@ const EditModeMenu = () => { }); const toggle = () => { - if (isEditMode) return mutate(board); + if (isEditMode) + return saveBoard({ + boardId: board.id, + ...board, + }); setEditMode(true); }; diff --git a/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx b/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx index 57c589dcd..ae9b65e9d 100644 --- a/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx +++ b/apps/nextjs/src/app/[locale]/boards/[name]/settings/_general.tsx @@ -22,7 +22,7 @@ interface Props { export const GeneralSettingsContent = ({ board }: Props) => { const t = useI18n(); const { updateBoard } = useUpdateBoard(); - const { mutate, isPending } = + const { mutate: saveGeneralSettings, isPending } = clientApi.board.saveGeneralSettings.useMutation(); const form = useForm({ initialValues: { @@ -46,7 +46,10 @@ export const GeneralSettingsContent = ({ board }: Props) => { return ( { - mutate(values); + saveGeneralSettings({ + boardId: board.id, + ...values, + }); })} > diff --git a/package.json b/package.json index 8891b0530..99b4b20fd 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "clean:workspaces": "turbo clean", "db:push": "pnpm -F db push", "db:studio": "pnpm -F db studio", + "db:migration:generate": "pnpm -F db migration:generate", "dev": "node start.js", "format": "turbo format --continue -- --cache --cache-location node_modules/.cache/.prettiercache", "format:fix": "turbo format --continue -- --write --cache --cache-location node_modules/.cache/.prettiercache", @@ -24,11 +25,13 @@ }, "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", + "@testing-library/react-hooks": "^8.0.1", "@turbo/gen": "^1.12.3", "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^1.2.2", "@vitest/ui": "^1.2.2", "cross-env": "^7.0.3", + "jsdom": "^24.0.0", "prettier": "^3.2.5", "turbo": "^1.12.3", "typescript": "^5.3.3", diff --git a/packages/api/src/router/board.ts b/packages/api/src/router/board.ts index 246b78201..a0eeb6f59 100644 --- a/packages/api/src/router/board.ts +++ b/packages/api/src/router/board.ts @@ -1,8 +1,8 @@ import { TRPCError } from "@trpc/server"; import superjson from "superjson"; -import type { Database } from "@homarr/db"; -import { and, createId, db, eq, inArray } from "@homarr/db"; +import type { Database, SQL } from "@homarr/db"; +import { and, createId, eq, inArray } from "@homarr/db"; import { boards, integrationItems, @@ -47,8 +47,8 @@ const filterUpdatedItems = ( ); export const boardRouter = createTRPCRouter({ - getAll: publicProcedure.query(async () => { - return await db.query.boards.findMany({ + getAll: publicProcedure.query(async ({ ctx }) => { + return await ctx.db.query.boards.findMany({ columns: { id: true, name: true, @@ -85,23 +85,45 @@ export const boardRouter = createTRPCRouter({ await ctx.db.delete(boards).where(eq(boards.id, input.id)); }), default: publicProcedure.query(async ({ ctx }) => { - return await getFullBoardByName(ctx.db, "default"); + return await getFullBoardWithWhere(ctx.db, eq(boards.name, "default")); }), byName: publicProcedure .input(validation.board.byName) .query(async ({ input, ctx }) => { - return await getFullBoardByName(ctx.db, input.name); + return await getFullBoardWithWhere(ctx.db, eq(boards.name, input.name)); }), saveGeneralSettings: publicProcedure .input(validation.board.saveGeneralSettings) - .mutation(async ({ input }) => { - await db.update(boards).set(input).where(eq(boards.name, "default")); + .mutation(async ({ ctx, input }) => { + const board = await ctx.db.query.boards.findFirst({ + where: eq(boards.id, input.boardId), + }); + + if (!board) { + throw new TRPCError({ + code: "NOT_FOUND", + message: "Board not found", + }); + } + + await ctx.db + .update(boards) + .set({ + pageTitle: input.pageTitle, + metaTitle: input.metaTitle, + logoImageUrl: input.logoImageUrl, + faviconImageUrl: input.faviconImageUrl, + }) + .where(eq(boards.id, input.boardId)); }), save: publicProcedure .input(validation.board.save) .mutation(async ({ input, ctx }) => { await ctx.db.transaction(async (tx) => { - const dbBoard = await getFullBoardByName(tx, input.name); + const dbBoard = await getFullBoardWithWhere( + tx, + eq(boards.id, input.boardId), + ); const addedSections = filterAddedItems( input.sections, @@ -199,12 +221,17 @@ export const boardRouter = createTRPCRouter({ ); for (const section of updatedSections) { + const prev = dbBoard.sections.find( + (dbSection) => dbSection.id === section.id, + ); await tx .update(sections) .set({ - kind: section.kind, position: section.position, - name: "name" in section ? section.name : null, + name: + prev?.kind === "category" && "name" in section + ? section.name + : null, }) .where(eq(sections.id, section.id)); } @@ -249,9 +276,9 @@ export const boardRouter = createTRPCRouter({ }), }); -const getFullBoardByName = async (db: Database, name: string) => { +const getFullBoardWithWhere = async (db: Database, where: SQL) => { const board = await db.query.boards.findFirst({ - where: eq(boards.name, name), + where, with: { sections: { with: { diff --git a/packages/api/src/router/integration.ts b/packages/api/src/router/integration.ts index 16018aec3..1be00335a 100644 --- a/packages/api/src/router/integration.ts +++ b/packages/api/src/router/integration.ts @@ -1,6 +1,7 @@ import crypto from "crypto"; import { TRPCError } from "@trpc/server"; +import type { Database } from "@homarr/db"; import { and, createId, eq } from "@homarr/db"; import { integrations, integrationSecrets } from "@homarr/db/schema/sqlite"; import type { IntegrationSecretKind } from "@homarr/definitions"; @@ -128,18 +129,20 @@ export const integrationRouter = createTRPCRouter({ if (changedSecrets.length > 0) { for (const changedSecret of changedSecrets) { - await ctx.db - .update(integrationSecrets) - .set({ - value: encryptSecret(changedSecret.value), - updatedAt: new Date(), - }) - .where( - and( - eq(integrationSecrets.integrationId, input.id), - eq(integrationSecrets.kind, changedSecret.kind), - ), - ); + const secretInput = { + integrationId: input.id, + value: changedSecret.value, + kind: changedSecret.kind, + }; + if ( + !decryptedSecrets.some( + (secret) => secret.kind === changedSecret.kind, + ) + ) { + await addSecret(ctx.db, secretInput); + } else { + await updateSecret(ctx.db, secretInput); + } } } }), @@ -204,6 +207,17 @@ export const integrationRouter = createTRPCRouter({ }); } } + + const everySecretDefined = secretKinds.every((secretKind) => + secrets.some((secret) => secret.kind === secretKind), + ); + + if (!everySecretDefined) { + throw new TRPCError({ + code: "BAD_REQUEST", + message: "SECRETS_NOT_DEFINED", + }); + } } // TODO: actually test the connection @@ -223,7 +237,7 @@ const key = Buffer.from( ); // TODO: generate with const data = crypto.randomBytes(32).toString('hex') //Encrypting text -function encryptSecret(text: string): `${string}.${string}` { +export function encryptSecret(text: string): `${string}.${string}` { const iv = crypto.randomBytes(16); const cipher = crypto.createCipheriv(algorithm, Buffer.from(key), iv); let encrypted = cipher.update(text); @@ -241,3 +255,37 @@ function decryptSecret(value: `${string}.${string}`) { decrypted = Buffer.concat([decrypted, decipher.final()]); return decrypted.toString(); } + +interface UpdateSecretInput { + integrationId: string; + value: string; + kind: IntegrationSecretKind; +} +const updateSecret = async (db: Database, input: UpdateSecretInput) => { + await db + .update(integrationSecrets) + .set({ + value: encryptSecret(input.value), + updatedAt: new Date(), + }) + .where( + and( + eq(integrationSecrets.integrationId, input.integrationId), + eq(integrationSecrets.kind, input.kind), + ), + ); +}; + +interface AddSecretInput { + integrationId: string; + value: string; + kind: IntegrationSecretKind; +} +const addSecret = async (db: Database, input: AddSecretInput) => { + await db.insert(integrationSecrets).values({ + kind: input.kind, + value: encryptSecret(input.value), + updatedAt: new Date(), + integrationId: input.integrationId, + }); +}; diff --git a/packages/api/src/router/test/board.spec.ts b/packages/api/src/router/test/board.spec.ts new file mode 100644 index 000000000..079fb4ccc --- /dev/null +++ b/packages/api/src/router/test/board.spec.ts @@ -0,0 +1,648 @@ +import SuperJSON from "superjson"; +import { describe, expect, it, vi } from "vitest"; + +import type { Session } from "@homarr/auth"; +import type { Database } from "@homarr/db"; +import { createId, eq } from "@homarr/db"; +import { + boards, + integrationItems, + integrations, + items, + sections, +} from "@homarr/db/schema/sqlite"; +import { createDb } from "@homarr/db/test"; + +import type { RouterOutputs } from "../../.."; +import { boardRouter } from "../board"; + +// Mock the auth module to return an empty session +vi.mock("@homarr/auth", () => ({ auth: () => ({}) as Session })); + +export const expectToBeDefined = (value: T) => { + if (value === undefined) { + expect(value).toBeDefined(); + } + if (value === null) { + expect(value).not.toBeNull(); + } + return value as Exclude; +}; + +describe("default should return default board", () => { + it("should return default board", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const fullBoardProps = await createFullBoardAsync(db, "default"); + + const result = await caller.default(); + + expectInputToBeFullBoardWithName(result, { + name: "default", + ...fullBoardProps, + }); + }); +}); + +describe("byName should return board by name", () => { + it.each([["default"], ["something"]])( + "should return board by name %s when present", + async (name) => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const fullBoardProps = await createFullBoardAsync(db, name); + + const result = await caller.byName({ name }); + + expectInputToBeFullBoardWithName(result, { + name, + ...fullBoardProps, + }); + }, + ); + + it("should throw error when not present"); +}); + +describe("saveGeneralSettings should save general settings", () => { + it("should save general settings", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const newPageTitle = "newPageTitle"; + const newMetaTitle = "newMetaTitle"; + const newLogoImageUrl = "http://logo.image/url.png"; + const newFaviconImageUrl = "http://favicon.image/url.png"; + + const { boardId } = await createFullBoardAsync(db, "default"); + + await caller.saveGeneralSettings({ + pageTitle: newPageTitle, + metaTitle: newMetaTitle, + logoImageUrl: newLogoImageUrl, + faviconImageUrl: newFaviconImageUrl, + boardId, + }); + }); + + it("should throw error when board not found", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const act = async () => + await caller.saveGeneralSettings({ + pageTitle: "newPageTitle", + metaTitle: "newMetaTitle", + logoImageUrl: "http://logo.image/url.png", + faviconImageUrl: "http://favicon.image/url.png", + boardId: "nonExistentBoardId", + }); + + await expect(act()).rejects.toThrowError("Board not found"); + }); +}); + +describe("save should save full board", () => { + it("should remove section when not present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, sectionId } = await createFullBoardAsync(db, "default"); + + await caller.save({ + boardId, + sections: [ + { + id: createId(), + kind: "empty", + position: 0, + items: [], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: true, + }, + }); + + const section = await db.query.boards.findFirst({ + where: eq(sections.id, sectionId), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + expect(definedBoard.sections[0]?.id).not.toBe(sectionId); + expect(section).toBeUndefined(); + }); + it("should remove item when not present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, itemId, sectionId } = await createFullBoardAsync( + db, + "default", + ); + + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "empty", + position: 0, + items: [ + { + id: createId(), + kind: "clock", + options: { is24HourFormat: true }, + integrations: [], + height: 1, + width: 1, + xOffset: 0, + yOffset: 0, + }, + ], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: { + with: { + items: true, + }, + }, + }, + }); + + const item = await db.query.items.findFirst({ + where: eq(items.id, itemId), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + const firstSection = expectToBeDefined(definedBoard.sections[0]); + expect(firstSection.items.length).toBe(1); + expect(firstSection.items[0]?.id).not.toBe(itemId); + expect(item).toBeUndefined(); + }); + it("should remove integration reference when not present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + const anotherIntegration = { + id: createId(), + kind: "adGuardHome", + name: "AdGuard Home", + url: "http://localhost:3000", + } as const; + + const { boardId, itemId, integrationId, sectionId } = + await createFullBoardAsync(db, "default"); + await db.insert(integrations).values(anotherIntegration); + + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "empty", + position: 0, + items: [ + { + id: itemId, + kind: "clock", + options: { is24HourFormat: true }, + integrations: [anotherIntegration], + height: 1, + width: 1, + xOffset: 0, + yOffset: 0, + }, + ], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: { + with: { + items: { + with: { + integrations: true, + }, + }, + }, + }, + }, + }); + + const integration = await db.query.integrationItems.findFirst({ + where: eq(integrationItems.integrationId, integrationId), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + const firstSection = expectToBeDefined(definedBoard.sections[0]); + expect(firstSection.items.length).toBe(1); + const firstItem = expectToBeDefined(firstSection.items[0]); + expect(firstItem.integrations.length).toBe(1); + expect(firstItem.integrations[0]?.integrationId).not.toBe(integrationId); + expect(integration).toBeUndefined(); + }); + it.each([ + [{ kind: "empty" as const }], + [{ kind: "category" as const, name: "My first category" }], + ])("should add section when present in input", async (partialSection) => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, sectionId } = await createFullBoardAsync(db, "default"); + + const newSectionId = createId(); + await caller.save({ + boardId, + sections: [ + { + id: newSectionId, + position: 1, + items: [], + ...partialSection, + }, + { + id: sectionId, + kind: "empty", + position: 0, + items: [], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: true, + }, + }); + + const section = await db.query.sections.findFirst({ + where: eq(sections.id, newSectionId), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(2); + const addedSection = expectToBeDefined( + definedBoard.sections.find((section) => section.id === newSectionId), + ); + expect(addedSection).toBeDefined(); + expect(addedSection.id).toBe(newSectionId); + expect(addedSection.kind).toBe(partialSection.kind); + expect(addedSection.position).toBe(1); + if ("name" in partialSection) { + expect(addedSection.name).toBe(partialSection.name); + } + expect(section).toBeDefined(); + }); + it("should add item when present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, sectionId } = await createFullBoardAsync(db, "default"); + + const newItemId = createId(); + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "empty", + position: 0, + items: [ + { + id: newItemId, + kind: "clock", + options: { is24HourFormat: true }, + integrations: [], + height: 1, + width: 1, + xOffset: 3, + yOffset: 2, + }, + ], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: { + with: { + items: true, + }, + }, + }, + }); + + const item = await db.query.items.findFirst({ + where: eq(items.id, newItemId), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + const firstSection = expectToBeDefined(definedBoard.sections[0]); + expect(firstSection.items.length).toBe(1); + const addedItem = expectToBeDefined( + firstSection.items.find((item) => item.id === newItemId), + ); + expect(addedItem).toBeDefined(); + expect(addedItem.id).toBe(newItemId); + expect(addedItem.kind).toBe("clock"); + expect(addedItem.options).toBe( + SuperJSON.stringify({ is24HourFormat: true }), + ); + expect(addedItem.height).toBe(1); + expect(addedItem.width).toBe(1); + expect(addedItem.xOffset).toBe(3); + expect(addedItem.yOffset).toBe(2); + expect(item).toBeDefined(); + }); + it("should add integration reference when present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + const integration = { + id: createId(), + kind: "plex", + name: "Plex", + url: "http://plex.local", + } as const; + + const { boardId, itemId, sectionId } = await createFullBoardAsync( + db, + "default", + ); + await db.insert(integrations).values(integration); + + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "empty", + position: 0, + items: [ + { + id: itemId, + kind: "clock", + options: { is24HourFormat: true }, + integrations: [integration], + height: 1, + width: 1, + xOffset: 0, + yOffset: 0, + }, + ], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: { + with: { + items: { + with: { + integrations: true, + }, + }, + }, + }, + }, + }); + + const integrationItem = await db.query.integrationItems.findFirst({ + where: eq(integrationItems.integrationId, integration.id), + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + const firstSection = expectToBeDefined(definedBoard.sections[0]); + expect(firstSection.items.length).toBe(1); + const firstItem = expectToBeDefined( + firstSection.items.find((item) => item.id === itemId), + ); + expect(firstItem.integrations.length).toBe(1); + expect(firstItem.integrations[0]?.integrationId).toBe(integration.id); + expect(integrationItem).toBeDefined(); + }); + it("should update section when present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, sectionId } = await createFullBoardAsync(db, "default"); + const newSectionId = createId(); + await db.insert(sections).values({ + id: newSectionId, + kind: "category", + name: "Before", + position: 1, + boardId, + }); + + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "category", + position: 1, + name: "Test", + items: [], + }, + { + id: newSectionId, + kind: "category", + name: "After", + position: 0, + items: [], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: true, + }, + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(2); + const firstSection = expectToBeDefined( + definedBoard.sections.find((section) => section.id === sectionId), + ); + expect(firstSection.id).toBe(sectionId); + expect(firstSection.kind).toBe("empty"); + expect(firstSection.position).toBe(1); + expect(firstSection.name).toBe(null); + const secondSection = expectToBeDefined( + definedBoard.sections.find((section) => section.id === newSectionId), + ); + expect(secondSection.id).toBe(newSectionId); + expect(secondSection.kind).toBe("category"); + expect(secondSection.position).toBe(0); + expect(secondSection.name).toBe("After"); + }); + it("should update item when present in input", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const { boardId, itemId, sectionId } = await createFullBoardAsync( + db, + "default", + ); + + await caller.save({ + boardId, + sections: [ + { + id: sectionId, + kind: "empty", + position: 0, + items: [ + { + id: itemId, + kind: "clock", + options: { is24HourFormat: false }, + integrations: [], + height: 3, + width: 2, + xOffset: 7, + yOffset: 5, + }, + ], + }, + ], + }); + + const board = await db.query.boards.findFirst({ + where: eq(boards.id, boardId), + with: { + sections: { + with: { + items: true, + }, + }, + }, + }); + + const definedBoard = expectToBeDefined(board); + expect(definedBoard.sections.length).toBe(1); + const firstSection = expectToBeDefined(definedBoard.sections[0]); + expect(firstSection.items.length).toBe(1); + const firstItem = expectToBeDefined( + firstSection.items.find((item) => item.id === itemId), + ); + expect(firstItem.id).toBe(itemId); + expect(firstItem.kind).toBe("clock"); + expect( + SuperJSON.parse<{ is24HourFormat: boolean }>(firstItem.options) + .is24HourFormat, + ).toBe(false); + expect(firstItem.height).toBe(3); + expect(firstItem.width).toBe(2); + expect(firstItem.xOffset).toBe(7); + expect(firstItem.yOffset).toBe(5); + }); + it("should fail when board not found", async () => { + const db = createDb(); + const caller = boardRouter.createCaller({ db, session: null }); + + const act = async () => + await caller.save({ + boardId: "nonExistentBoardId", + sections: [], + }); + + await expect(act()).rejects.toThrowError("Board not found"); + }); +}); + +const expectInputToBeFullBoardWithName = ( + input: RouterOutputs["board"]["default"], + props: { name: string } & Awaited>, +) => { + expect(input.id).toBe(props.boardId); + expect(input.name).toBe(props.name); + expect(input.sections.length).toBe(1); + const firstSection = expectToBeDefined(input.sections[0]); + expect(firstSection.id).toBe(props.sectionId); + expect(firstSection.items.length).toBe(1); + const firstItem = expectToBeDefined(firstSection.items[0]); + expect(firstItem.id).toBe(props.itemId); + expect(firstItem.kind).toBe("clock"); + if (firstItem.kind === "clock") { + expect(firstItem.options.is24HourFormat).toBe(true); + } + expect(firstItem.integrations.length).toBe(1); + const firstIntegration = expectToBeDefined(firstItem.integrations[0]); + expect(firstIntegration.id).toBe(props.integrationId); + expect(firstIntegration.kind).toBe("adGuardHome"); +}; + +const createFullBoardAsync = async (db: Database, name: string) => { + const boardId = createId(); + await db.insert(boards).values({ + id: boardId, + name, + }); + + const sectionId = createId(); + await db.insert(sections).values({ + id: sectionId, + kind: "empty", + position: 0, + boardId, + }); + + const itemId = createId(); + await db.insert(items).values({ + id: itemId, + kind: "clock", + height: 1, + width: 1, + xOffset: 0, + yOffset: 0, + sectionId, + options: SuperJSON.stringify({ is24HourFormat: true }), + }); + + const integrationId = createId(); + await db.insert(integrations).values({ + id: integrationId, + kind: "adGuardHome", + name: "AdGuard Home", + url: "http://localhost:3000", + }); + + await db.insert(integrationItems).values({ + integrationId, + itemId, + }); + + return { + boardId, + sectionId, + itemId, + integrationId, + }; +}; diff --git a/packages/api/src/router/test/integration.spec.ts b/packages/api/src/router/test/integration.spec.ts new file mode 100644 index 000000000..11c14de18 --- /dev/null +++ b/packages/api/src/router/test/integration.spec.ts @@ -0,0 +1,503 @@ +import { describe, expect, it, vi } from "vitest"; + +import type { Session } from "@homarr/auth"; +import { createId } from "@homarr/db"; +import { integrations, integrationSecrets } from "@homarr/db/schema/sqlite"; +import { createDb } from "@homarr/db/test"; + +import type { RouterInputs } from "../../.."; +import { encryptSecret, integrationRouter } from "../integration"; +import { expectToBeDefined } from "./board.spec"; + +// Mock the auth module to return an empty session +vi.mock("@homarr/auth", () => ({ auth: () => ({}) as Session })); + +describe("all should return all integrations", () => { + it("should return all integrations", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + await db.insert(integrations).values([ + { + id: "1", + name: "Home assistant", + kind: "homeAssistant", + url: "http://homeassist.local", + }, + { + id: "2", + name: "Home plex server", + kind: "plex", + url: "http://plex.local", + }, + ]); + + const result = await caller.all(); + expect(result.length).toBe(2); + expect(result[0]!.kind).toBe("plex"); + expect(result[1]!.kind).toBe("homeAssistant"); + }); +}); + +describe("byId should return an integration by id", () => { + it("should return an integration by id", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + await db.insert(integrations).values([ + { + id: "1", + name: "Home assistant", + kind: "homeAssistant", + url: "http://homeassist.local", + }, + { + id: "2", + name: "Home plex server", + kind: "plex", + url: "http://plex.local", + }, + ]); + + const result = await caller.byId({ id: "2" }); + expect(result.kind).toBe("plex"); + }); + + it("should throw an error if the integration does not exist", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const act = async () => await caller.byId({ id: "2" }); + await expect(act()).rejects.toThrow("Integration not found"); + }); + + it("should only return the public secret values", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + await db.insert(integrations).values([ + { + id: "1", + name: "Home assistant", + kind: "homeAssistant", + url: "http://homeassist.local", + }, + ]); + await db.insert(integrationSecrets).values([ + { + kind: "username", + value: encryptSecret("musterUser"), + integrationId: "1", + updatedAt: new Date(), + }, + { + kind: "password", + value: encryptSecret("Password123!"), + integrationId: "1", + updatedAt: new Date(), + }, + { + kind: "apiKey", + value: encryptSecret("1234567890"), + integrationId: "1", + updatedAt: new Date(), + }, + ]); + + const result = await caller.byId({ id: "1" }); + expect(result.secrets.length).toBe(3); + const username = expectToBeDefined( + result.secrets.find((secret) => secret.kind === "username"), + ); + expect(username.value).not.toBeNull(); + const password = expectToBeDefined( + result.secrets.find((secret) => secret.kind === "password"), + ); + expect(password.value).toBeNull(); + const apiKey = expectToBeDefined( + result.secrets.find((secret) => secret.kind === "apiKey"), + ); + expect(apiKey.value).toBeNull(); + }); +}); + +describe("create should create a new integration", () => { + it("should create a new integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + const input = { + name: "Jellyfin", + kind: "jellyfin" as const, + url: "http://jellyfin.local", + secrets: [{ kind: "apiKey" as const, value: "1234567890" }], + }; + + const fakeNow = new Date("2023-07-01T00:00:00Z"); + vi.useFakeTimers(); + vi.setSystemTime(fakeNow); + await caller.create(input); + vi.useRealTimers(); + + const dbIntegration = await db.query.integrations.findFirst(); + const dbSecret = await db.query.integrationSecrets.findFirst(); + expect(dbIntegration).toBeDefined(); + expect(dbIntegration!.name).toBe(input.name); + expect(dbIntegration!.kind).toBe(input.kind); + expect(dbIntegration!.url).toBe(input.url); + + expect(dbSecret!.integrationId).toBe(dbIntegration!.id); + expect(dbSecret).toBeDefined(); + expect(dbSecret!.kind).toBe(input.secrets[0]!.kind); + expect(dbSecret!.value).toMatch(/^[a-f0-9]+.[a-f0-9]+$/); + expect(dbSecret!.updatedAt).toEqual(fakeNow); + }); +}); + +describe("update should update an integration", () => { + it("should update an integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const lastWeek = new Date("2023-06-24T00:00:00Z"); + const integrationId = createId(); + const toInsert = { + id: integrationId, + name: "Pi Hole", + kind: "piHole" as const, + url: "http://hole.local", + }; + + await db.insert(integrations).values(toInsert); + + const usernameToInsert = { + kind: "username" as const, + value: encryptSecret("musterUser"), + integrationId, + updatedAt: lastWeek, + }; + + const passwordToInsert = { + kind: "password" as const, + value: encryptSecret("Password123!"), + integrationId, + updatedAt: lastWeek, + }; + await db + .insert(integrationSecrets) + .values([usernameToInsert, passwordToInsert]); + + const input = { + id: integrationId, + name: "Milky Way Pi Hole", + kind: "piHole" as const, + url: "http://milkyway.local", + secrets: [ + { kind: "username" as const, value: "newUser" }, + { kind: "password" as const, value: null }, + { kind: "apiKey" as const, value: "1234567890" }, + ], + }; + + const fakeNow = new Date("2023-07-01T00:00:00Z"); + vi.useFakeTimers(); + vi.setSystemTime(fakeNow); + await caller.update(input); + vi.useRealTimers(); + + const dbIntegration = await db.query.integrations.findFirst(); + const dbSecrets = await db.query.integrationSecrets.findMany(); + + expect(dbIntegration).toBeDefined(); + expect(dbIntegration!.name).toBe(input.name); + expect(dbIntegration!.kind).toBe(input.kind); + expect(dbIntegration!.url).toBe(input.url); + + expect(dbSecrets.length).toBe(3); + const username = expectToBeDefined( + dbSecrets.find((secret) => secret.kind === "username"), + ); + const password = expectToBeDefined( + dbSecrets.find((secret) => secret.kind === "password"), + ); + const apiKey = expectToBeDefined( + dbSecrets.find((secret) => secret.kind === "apiKey"), + ); + expect(username.value).toMatch(/^[a-f0-9]+.[a-f0-9]+$/); + expect(password.value).toMatch(/^[a-f0-9]+.[a-f0-9]+$/); + expect(apiKey.value).toMatch(/^[a-f0-9]+.[a-f0-9]+$/); + expect(username.updatedAt).toEqual(fakeNow); + expect(password.updatedAt).toEqual(lastWeek); + expect(apiKey.updatedAt).toEqual(fakeNow); + expect(username.value).not.toEqual(usernameToInsert.value); + expect(password.value).toEqual(passwordToInsert.value); + expect(apiKey.value).not.toEqual(input.secrets[2]!.value); + }); + + it("should throw an error if the integration does not exist", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const act = async () => + await caller.update({ + id: createId(), + name: "Pi Hole", + url: "http://hole.local", + secrets: [], + }); + await expect(act()).rejects.toThrow("Integration not found"); + }); +}); + +describe("delete should delete an integration", () => { + it("should delete an integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const integrationId = createId(); + await db.insert(integrations).values({ + id: integrationId, + name: "Home assistant", + kind: "homeAssistant", + url: "http://homeassist.local", + }); + + await db.insert(integrationSecrets).values([ + { + kind: "username", + value: encryptSecret("example"), + integrationId, + updatedAt: new Date(), + }, + ]); + + await caller.delete({ id: integrationId }); + + const dbIntegration = await db.query.integrations.findFirst(); + expect(dbIntegration).toBeUndefined(); + const dbSecrets = await db.query.integrationSecrets.findMany(); + expect(dbSecrets.length).toBe(0); + }); +}); + +describe("testConnection should test the connection to an integration", () => { + it.each([ + [ + "nzbGet" as const, + [ + { kind: "username" as const, value: null }, + { kind: "password" as const, value: "Password123!" }, + ], + ], + [ + "nzbGet" as const, + [ + { kind: "username" as const, value: "exampleUser" }, + { kind: "password" as const, value: null }, + ], + ], + ["sabNzbd" as const, [{ kind: "apiKey" as const, value: null }]], + [ + "sabNzbd" as const, + [ + { kind: "username" as const, value: "exampleUser" }, + { kind: "password" as const, value: "Password123!" }, + ], + ], + ])( + "should fail when a required secret is missing when creating %s integration", + async (kind, secrets) => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const input: RouterInputs["integration"]["testConnection"] = { + id: null, + kind, + url: `http://${kind}.local`, + secrets, + }; + + const act = async () => await caller.testConnection(input); + await expect(act()).rejects.toThrow("SECRETS_NOT_DEFINED"); + }, + ); + + it.each([ + [ + "nzbGet" as const, + [ + { kind: "username" as const, value: "exampleUser" }, + { kind: "password" as const, value: "Password123!" }, + ], + ], + ["sabNzbd" as const, [{ kind: "apiKey" as const, value: "1234567890" }]], + ])( + "should be successful when all required secrets are defined for creation of %s integration", + async (kind, secrets) => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const input: RouterInputs["integration"]["testConnection"] = { + id: null, + kind, + url: `http://${kind}.local`, + secrets, + }; + + const act = async () => await caller.testConnection(input); + await expect(act()).resolves.toBeUndefined(); + }, + ); + + it("should be successful when all required secrets are defined for updating an nzbGet integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const input: RouterInputs["integration"]["testConnection"] = { + id: createId(), + kind: "nzbGet", + url: "http://nzbGet.local", + secrets: [ + { kind: "username", value: "exampleUser" }, + { kind: "password", value: "Password123!" }, + ], + }; + + const act = async () => await caller.testConnection(input); + await expect(act()).resolves.toBeUndefined(); + }); + + it("should be successful when overriding one of the secrets for an existing nzbGet integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const integrationId = createId(); + await db.insert(integrations).values({ + id: integrationId, + name: "NZBGet", + kind: "nzbGet", + url: "http://nzbGet.local", + }); + + await db.insert(integrationSecrets).values([ + { + kind: "username", + value: encryptSecret("exampleUser"), + integrationId, + updatedAt: new Date(), + }, + { + kind: "password", + value: encryptSecret("Password123!"), + integrationId, + updatedAt: new Date(), + }, + ]); + + const input: RouterInputs["integration"]["testConnection"] = { + id: integrationId, + kind: "nzbGet", + url: "http://nzbGet.local", + secrets: [ + { kind: "username", value: "newUser" }, + { kind: "password", value: null }, + ], + }; + + const act = async () => await caller.testConnection(input); + await expect(act()).resolves.toBeUndefined(); + }); + + it("should fail when a required secret is missing for an existing nzbGet integration", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const integrationId = createId(); + await db.insert(integrations).values({ + id: integrationId, + name: "NZBGet", + kind: "nzbGet", + url: "http://nzbGet.local", + }); + + await db.insert(integrationSecrets).values([ + { + kind: "username", + value: encryptSecret("exampleUser"), + integrationId, + updatedAt: new Date(), + }, + ]); + + const input: RouterInputs["integration"]["testConnection"] = { + id: integrationId, + kind: "nzbGet", + url: "http://nzbGet.local", + secrets: [ + { kind: "username", value: "newUser" }, + { kind: "apiKey", value: "1234567890" }, + ], + }; + + const act = async () => await caller.testConnection(input); + await expect(act()).rejects.toThrow("SECRETS_NOT_DEFINED"); + }); + + it("should fail when the updating integration does not exist", async () => { + const db = createDb(); + const caller = integrationRouter.createCaller({ + db, + session: null, + }); + + const act = async () => + await caller.testConnection({ + id: createId(), + kind: "nzbGet", + url: "http://nzbGet.local", + secrets: [ + { kind: "username", value: null }, + { kind: "password", value: "Password123!" }, + ], + }); + await expect(act()).rejects.toThrow("SECRETS_NOT_DEFINED"); + }); +}); diff --git a/packages/api/src/router/test/user.spec.ts b/packages/api/src/router/test/user.spec.ts new file mode 100644 index 000000000..29ce6e349 --- /dev/null +++ b/packages/api/src/router/test/user.spec.ts @@ -0,0 +1,94 @@ +import { describe, expect, it, vi } from "vitest"; + +import type { Session } from "@homarr/auth"; +import { schema } from "@homarr/db"; +import { createDb } from "@homarr/db/test"; + +import { userRouter } from "../user"; + +// Mock the auth module to return an empty session +vi.mock("@homarr/auth", async () => { + const mod = await import("@homarr/auth/security"); + return { ...mod, auth: () => ({}) as Session }; +}); + +describe("initUser should initialize the first user", () => { + it("should throw an error if a user already exists", async () => { + const db = createDb(); + const caller = userRouter.createCaller({ + db, + session: null, + }); + + await db.insert(schema.users).values({ + id: "test", + name: "test", + password: "test", + }); + + const act = async () => + await caller.initUser({ + username: "test", + password: "12345678", + confirmPassword: "12345678", + }); + + await expect(act()).rejects.toThrow("User already exists"); + }); + + it("should create a user if none exists", async () => { + const db = createDb(); + const caller = userRouter.createCaller({ + db, + session: null, + }); + + await caller.initUser({ + username: "test", + password: "12345678", + confirmPassword: "12345678", + }); + + const user = await db.query.users.findFirst({ + columns: { + id: true, + }, + }); + + expect(user).toBeDefined(); + }); + + it("should not create a user if the password and confirmPassword do not match", async () => { + const db = createDb(); + const caller = userRouter.createCaller({ + db, + session: null, + }); + + const act = async () => + await caller.initUser({ + username: "test", + password: "12345678", + confirmPassword: "12345679", + }); + + await expect(act()).rejects.toThrow("Passwords do not match"); + }); + + it("should not create a user if the password is too short", async () => { + const db = createDb(); + const caller = userRouter.createCaller({ + db, + session: null, + }); + + const act = async () => + await caller.initUser({ + username: "test", + password: "1234567", + confirmPassword: "1234567", + }); + + await expect(act()).rejects.toThrow("too_small"); + }); +}); diff --git a/packages/auth/callbacks.ts b/packages/auth/callbacks.ts new file mode 100644 index 000000000..05a298290 --- /dev/null +++ b/packages/auth/callbacks.ts @@ -0,0 +1,61 @@ +import { cookies } from "next/headers"; +import type { Adapter } from "@auth/core/adapters"; +import type { NextAuthConfig } from "next-auth"; + +import { + expireDateAfter, + generateSessionToken, + sessionMaxAgeInSeconds, + sessionTokenCookieName, +} from "./session"; + +export const sessionCallback: NextAuthCallbackOf<"session"> = ({ + session, + user, +}) => ({ + ...session, + user: { + ...session.user, + id: user.id, + name: user.name, + }, +}); + +export const createSignInCallback = + ( + adapter: Adapter, + isCredentialsRequest: boolean, + ): NextAuthCallbackOf<"signIn"> => + async ({ user }) => { + if (!isCredentialsRequest) return true; + + if (!user) return true; + + // https://github.com/nextauthjs/next-auth/issues/6106 + if (!adapter?.createSession) { + return false; + } + + const sessionToken = generateSessionToken(); + const sessionExpiry = expireDateAfter(sessionMaxAgeInSeconds); + + await adapter.createSession({ + sessionToken, + userId: user.id!, + expires: sessionExpiry, + }); + + cookies().set(sessionTokenCookieName, sessionToken, { + path: "/", + expires: sessionExpiry, + httpOnly: true, + sameSite: "lax", + secure: true, + }); + + return true; + }; + +type NextAuthCallbackRecord = Exclude; +export type NextAuthCallbackOf = + Exclude; diff --git a/packages/auth/configuration.ts b/packages/auth/configuration.ts index f1810df44..32289da46 100644 --- a/packages/auth/configuration.ts +++ b/packages/auth/configuration.ts @@ -5,55 +5,23 @@ import Credentials from "next-auth/providers/credentials"; import { db } from "@homarr/db"; -import { credentialsConfiguration } from "./providers/credentials"; +import { createSignInCallback, sessionCallback } from "./callbacks"; +import { createCredentialsConfiguration } from "./providers/credentials"; import { EmptyNextAuthProvider } from "./providers/empty"; -import { expireDateAfter, generateSessionToken } from "./session"; +import { sessionMaxAgeInSeconds, sessionTokenCookieName } from "./session"; const adapter = DrizzleAdapter(db); -const sessionMaxAgeInSeconds = 30 * 24 * 60 * 60; // 30 days export const createConfiguration = (isCredentialsRequest: boolean) => NextAuth({ adapter, - providers: [Credentials(credentialsConfiguration), EmptyNextAuthProvider()], + providers: [ + Credentials(createCredentialsConfiguration(db)), + EmptyNextAuthProvider(), + ], callbacks: { - session: ({ session, user }) => ({ - ...session, - user: { - ...session.user, - id: user.id, - name: user.name, - }, - }), - signIn: async ({ user }) => { - if (!isCredentialsRequest) return true; - - if (!user) return true; - - const sessionToken = generateSessionToken(); - const sessionExpiry = expireDateAfter(sessionMaxAgeInSeconds); - - // https://github.com/nextauthjs/next-auth/issues/6106 - if (!adapter?.createSession) { - return false; - } - - await adapter.createSession({ - sessionToken: sessionToken, - userId: user.id!, - expires: sessionExpiry, - }); - - cookies().set("next-auth.session-token", sessionToken, { - path: "/", - expires: sessionExpiry, - httpOnly: true, - sameSite: "lax", - secure: true, - }); - - return true; - }, + session: sessionCallback, + signIn: createSignInCallback(adapter, isCredentialsRequest), }, session: { strategy: "database", @@ -65,7 +33,7 @@ export const createConfiguration = (isCredentialsRequest: boolean) => }, jwt: { encode() { - const cookie = cookies().get("next-auth.session-token")?.value; + const cookie = cookies().get(sessionTokenCookieName)?.value; return cookie ?? ""; }, diff --git a/packages/auth/package.json b/packages/auth/package.json index 8ac6c5a3b..745f0c7c5 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,12 @@ { "name": "@homarr/auth", "version": "0.1.0", + "exports": { + ".": "./index.ts", + "./security": "./security.ts", + "./client": "./client.ts", + "./env.mjs": "./env.mjs" + }, "private": true, "main": "./index.ts", "types": "./index.ts", diff --git a/packages/auth/providers/credentials.ts b/packages/auth/providers/credentials.ts index 114c8ecba..04470dbfa 100644 --- a/packages/auth/providers/credentials.ts +++ b/packages/auth/providers/credentials.ts @@ -1,49 +1,56 @@ import type Credentials from "@auth/core/providers/credentials"; import bcrypt from "bcrypt"; -import { db, eq } from "@homarr/db"; +import type { Database } from "@homarr/db"; +import { eq } from "@homarr/db"; import { users } from "@homarr/db/schema/sqlite"; import { validation } from "@homarr/validation"; type CredentialsConfiguration = Parameters[0]; -export const credentialsConfiguration = { - type: "credentials", - name: "Credentials", - credentials: { - name: { - label: "Username", - type: "text", +export const createCredentialsConfiguration = (db: Database) => + ({ + type: "credentials", + name: "Credentials", + credentials: { + name: { + label: "Username", + type: "text", + }, + password: { + label: "Password", + type: "password", + }, }, - password: { - label: "Password", - type: "password", + async authorize(credentials) { + const data = await validation.user.signIn.parseAsync(credentials); + + const user = await db.query.users.findFirst({ + where: eq(users.name, data.name), + }); + + if (!user?.password) { + return null; + } + + console.log( + `user ${user.name} is trying to log in. checking password...`, + ); + const isValidPassword = await bcrypt.compare( + data.password, + user.password, + ); + + if (!isValidPassword) { + console.log(`password for user ${user.name} was incorrect`); + return null; + } + + console.log(`user ${user.name} successfully authorized`); + + return { + id: user.id, + name: user.name, + }; }, - }, - async authorize(credentials) { - const data = await validation.user.signIn.parseAsync(credentials); - - const user = await db.query.users.findFirst({ - where: eq(users.name, data.name), - }); - - if (!user?.password) { - return null; - } - - console.log(`user ${user.name} is trying to log in. checking password...`); - const isValidPassword = await bcrypt.compare(data.password, user.password); - - if (!isValidPassword) { - console.log(`password for user ${user.name} was incorrect`); - return null; - } - - console.log(`user ${user.name} successfully authorized`); - - return { - id: user.id, - name: user.name, - }; - }, -} satisfies CredentialsConfiguration; + }) satisfies CredentialsConfiguration; diff --git a/packages/auth/providers/test/credentials.spec.ts b/packages/auth/providers/test/credentials.spec.ts new file mode 100644 index 000000000..3feb4a919 --- /dev/null +++ b/packages/auth/providers/test/credentials.spec.ts @@ -0,0 +1,66 @@ +import { describe, expect, it } from "vitest"; + +import { createId } from "@homarr/db"; +import { users } from "@homarr/db/schema/sqlite"; +import { createDb } from "@homarr/db/test"; + +import { createSalt, hashPassword } from "../../security"; +import { createCredentialsConfiguration } from "../credentials"; + +describe("Credentials authorization", () => { + it("should authorize user with correct credentials", async () => { + const db = createDb(); + const userId = createId(); + const salt = await createSalt(); + await db.insert(users).values({ + id: userId, + name: "test", + password: await hashPassword("test", salt), + salt, + }); + const result = await createCredentialsConfiguration(db).authorize({ + name: "test", + password: "test", + }); + + expect(result).toEqual({ id: userId, name: "test" }); + }); + + const passwordsThatShouldNotAuthorize = [ + "wrong", + "Test", + "test ", + " test", + " test ", + ]; + + passwordsThatShouldNotAuthorize.forEach((password) => { + it(`should not authorize user with incorrect credentials (${password})`, async () => { + const db = createDb(); + const userId = createId(); + const salt = await createSalt(); + await db.insert(users).values({ + id: userId, + name: "test", + password: await hashPassword("test", salt), + salt, + }); + const result = await createCredentialsConfiguration(db).authorize({ + name: "test", + password, + }); + + expect(result).toBeNull(); + }); + }); + + it("should not authorize user for not existing user", async () => { + const db = createDb(); + const result = await createCredentialsConfiguration(db).authorize({ + name: "test", + password: "test", + }); + + expect(result).toBeNull(); + }); +}); diff --git a/packages/auth/session.ts b/packages/auth/session.ts index 3329a0ffa..356401439 100644 --- a/packages/auth/session.ts +++ b/packages/auth/session.ts @@ -1,5 +1,8 @@ import { randomUUID } from "crypto"; +export const sessionMaxAgeInSeconds = 30 * 24 * 60 * 60; // 30 days +export const sessionTokenCookieName = "next-auth.session-token"; + export const expireDateAfter = (seconds: number) => { return new Date(Date.now() + seconds * 1000); }; diff --git a/packages/auth/test/callbacks.spec.ts b/packages/auth/test/callbacks.spec.ts new file mode 100644 index 000000000..ab24e2c1b --- /dev/null +++ b/packages/auth/test/callbacks.spec.ts @@ -0,0 +1,153 @@ +import type { ResponseCookie } from "next/dist/compiled/@edge-runtime/cookies"; +import type { ReadonlyRequestCookies } from "next/dist/server/web/spec-extension/adapters/request-cookies"; +import { cookies } from "next/headers"; +import type { Adapter, AdapterUser } from "@auth/core/adapters"; +import type { Account, User } from "next-auth"; +import type { JWT } from "next-auth/jwt"; +import { describe, expect, it, vi } from "vitest"; + +import { createSignInCallback, sessionCallback } from "../callbacks"; + +describe("session callback", () => { + it("should add id and name to session user", async () => { + const user: AdapterUser = { + id: "id", + name: "name", + email: "email", + emailVerified: new Date("2023-01-13"), + }; + const token: JWT = {}; + const result = await sessionCallback({ + session: { + user: { + id: "no-id", + email: "no-email", + emailVerified: new Date("2023-01-13"), + }, + expires: "2023-01-13" as Date & string, + sessionToken: "token", + userId: "no-id", + }, + user, + token, + trigger: "update", + newSession: {}, + }); + expect(result.user).toBeDefined(); + expect(result.user!.id).toEqual(user.id); + expect(result.user!.name).toEqual(user.name); + }); +}); + +type AdapterSessionInput = Parameters< + Exclude +>[0]; + +const createAdapter = () => { + const result = { + createSession: (input: AdapterSessionInput) => input, + }; + + vi.spyOn(result, "createSession"); + return result; +}; + +// eslint-disable-next-line @typescript-eslint/consistent-type-imports +type SessionExport = typeof import("../session"); +const mockSessionToken = "e9ef3010-6981-4a81-b9d6-8495d09cf3b5" as const; +const mockSessionExpiry = new Date("2023-07-01"); +vi.mock("../session", async (importOriginal) => { + const mod = await importOriginal(); + + const generateSessionToken = () => mockSessionToken; + const expireDateAfter = (_seconds: number) => mockSessionExpiry; + + return { + ...mod, + generateSessionToken, + expireDateAfter, + } satisfies SessionExport; +}); +// eslint-disable-next-line @typescript-eslint/consistent-type-imports +type HeadersExport = typeof import("next/headers"); +vi.mock("next/headers", async (importOriginal) => { + const mod = await importOriginal(); + + const result = { + set: (name: string, value: string, options: Partial) => + options as ResponseCookie, + } as unknown as ReadonlyRequestCookies; + + vi.spyOn(result, "set"); + + const cookies = () => result; + + return { ...mod, cookies } satisfies HeadersExport; +}); + +describe("createSignInCallback", () => { + it("should return true if not credentials request", async () => { + const isCredentialsRequest = false; + const signInCallback = createSignInCallback( + createAdapter(), + isCredentialsRequest, + ); + const result = await signInCallback({ + user: { id: "1", emailVerified: new Date("2023-01-13") }, + account: {} as Account, + }); + expect(result).toBe(true); + }); + + it("should return true if no user", async () => { + const isCredentialsRequest = true; + const signInCallback = createSignInCallback( + createAdapter(), + isCredentialsRequest, + ); + const result = await signInCallback({ + user: undefined as unknown as User, + account: {} as Account, + }); + expect(result).toBe(true); + }); + + it("should return false if no adapter.createSession", async () => { + const isCredentialsRequest = true; + const signInCallback = createSignInCallback( + // https://github.com/nextauthjs/next-auth/issues/6106 + undefined as unknown as Adapter, + isCredentialsRequest, + ); + const result = await signInCallback({ + user: { id: "1", emailVerified: new Date("2023-01-13") }, + account: {} as Account, + }); + expect(result).toBe(false); + }); + + it("should call adapter.createSession with correct input", async () => { + const adapter = createAdapter(); + const isCredentialsRequest = true; + const signInCallback = createSignInCallback(adapter, isCredentialsRequest); + const user = { id: "1", emailVerified: new Date("2023-01-13") }; + const account = {} as Account; + await signInCallback({ user, account }); + expect(adapter.createSession).toHaveBeenCalledWith({ + sessionToken: mockSessionToken, + userId: user.id, + expires: mockSessionExpiry, + }); + expect(cookies().set).toHaveBeenCalledWith( + "next-auth.session-token", + mockSessionToken, + { + path: "/", + expires: mockSessionExpiry, + httpOnly: true, + sameSite: "lax", + secure: true, + }, + ); + }); +}); diff --git a/packages/auth/test/security.spec.ts b/packages/auth/test/security.spec.ts new file mode 100644 index 000000000..f0f186966 --- /dev/null +++ b/packages/auth/test/security.spec.ts @@ -0,0 +1,47 @@ +import { describe, expect, it } from "vitest"; + +import { createSalt, hashPassword } from "../security"; + +describe("createSalt should return a salt", () => { + it("should return a salt", async () => { + const result = await createSalt(); + expect(result).toBeDefined(); + expect(result.length).toBeGreaterThan(25); + }); + it("should return a different salt each time", async () => { + const result1 = await createSalt(); + const result2 = await createSalt(); + expect(result1).not.toEqual(result2); + }); +}); + +describe("hashPassword should return a hash", () => { + it("should return a hash", async () => { + const password = "password"; + const salt = await createSalt(); + const result = await hashPassword(password, salt); + expect(result).toBeDefined(); + expect(result.length).toBeGreaterThan(55); + expect(result).not.toEqual(password); + }); + it("should return a different hash each time", async () => { + const password = "password"; + const password2 = "another password"; + const salt = await createSalt(); + + const result1 = await hashPassword(password, salt); + const result2 = await hashPassword(password2, salt); + + expect(result1).not.toEqual(result2); + }); + it("should return a different hash for the same password with different salts", async () => { + const password = "password"; + const salt1 = await createSalt(); + const salt2 = await createSalt(); + + const result1 = await hashPassword(password, salt1); + const result2 = await hashPassword(password, salt2); + + expect(result1).not.toEqual(result2); + }); +}); diff --git a/packages/auth/test/session.spec.ts b/packages/auth/test/session.spec.ts new file mode 100644 index 000000000..2d2ced596 --- /dev/null +++ b/packages/auth/test/session.spec.ts @@ -0,0 +1,43 @@ +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; + +import { z } from "@homarr/validation"; + +import { expireDateAfter, generateSessionToken } from "../session"; + +describe("expireDateAfter should calculate date after specified seconds", () => { + beforeEach(() => { + vi.useFakeTimers(); + }); + + afterEach(() => { + vi.useRealTimers(); + }); + + it.each([ + ["2023-07-01T00:00:00Z", 60, "2023-07-01T00:01:00Z"], // 1 minute + ["2023-07-01T00:00:00Z", 60 * 60, "2023-07-01T01:00:00Z"], // 1 hour + ["2023-07-01T00:00:00Z", 60 * 60 * 24, "2023-07-02T00:00:00Z"], // 1 day + ["2023-07-01T00:00:00Z", 60 * 60 * 24 * 30, "2023-07-31T00:00:00Z"], // 30 days + ["2023-07-01T00:00:00Z", 60 * 60 * 24 * 365, "2024-06-30T00:00:00Z"], // 1 year + ["2023-07-01T00:00:00Z", 60 * 60 * 24 * 365 * 10, "2033-06-28T00:00:00Z"], // 10 years + ])( + "should calculate date %s and after %i seconds to equal %s", + (initialDate, seconds, expectedDate) => { + vi.setSystemTime(new Date(initialDate)); + const result = expireDateAfter(seconds); + expect(result).toEqual(new Date(expectedDate)); + }, + ); +}); + +describe("generateSessionToken should return a random UUID", () => { + it("should return a random UUID", () => { + const result = generateSessionToken(); + expect(z.string().uuid().safeParse(result).success).toBe(true); + }); + it("should return a different token each time", () => { + const result1 = generateSessionToken(); + const result2 = generateSessionToken(); + expect(result1).not.toEqual(result2); + }); +}); diff --git a/packages/common/src/test/object.spec.ts b/packages/common/src/test/object.spec.ts index 00cdfc02c..02a1ed241 100644 --- a/packages/common/src/test/object.spec.ts +++ b/packages/common/src/test/object.spec.ts @@ -1,10 +1,26 @@ import { describe, expect, it } from "vitest"; -import { objectKeys } from "../object"; +import { objectEntries, objectKeys } from "../object"; + +const testObjects = [ + { a: 1, c: 3, b: 2 }, + { a: 1, b: 2 }, + { a: 1 }, + {}, +] as const; describe("objectKeys should return all keys of an object", () => { - it("should return all keys of an object", () => { - const obj = { a: 1, b: 2, c: 3 }; - expect(objectKeys(obj)).toEqual(["a", "b", "c"]); + testObjects.forEach((obj) => { + it(`should return all keys of the object ${JSON.stringify(obj)}`, () => { + expect(objectKeys(obj)).toEqual(Object.keys(obj)); + }); + }); +}); + +describe("objectEntries should return all entries of an object", () => { + testObjects.forEach((obj) => { + it(`should return all entries of the object ${JSON.stringify(obj)}`, () => { + expect(objectEntries(obj)).toEqual(Object.entries(obj)); + }); }); }); diff --git a/packages/db/drizzle.config.ts b/packages/db/drizzle.config.ts index 61d448cde..65212ebd1 100644 --- a/packages/db/drizzle.config.ts +++ b/packages/db/drizzle.config.ts @@ -7,4 +7,5 @@ export default { schema: "./schema", driver: "better-sqlite", dbCredentials: { url: process.env.DB_URL! }, + out: "./migrations", } satisfies Config; diff --git a/packages/db/index.ts b/packages/db/index.ts index 7f1a29baf..54ce46b92 100644 --- a/packages/db/index.ts +++ b/packages/db/index.ts @@ -8,7 +8,7 @@ export const schema = sqliteSchema; export * from "drizzle-orm"; -const sqlite = new Database(process.env.DB_URL); +export const sqlite = new Database(process.env.DB_URL); export const db = drizzle(sqlite, { schema }); diff --git a/packages/db/migrations/0000_true_red_wolf.sql b/packages/db/migrations/0000_true_red_wolf.sql new file mode 100644 index 000000000..3a9c02707 --- /dev/null +++ b/packages/db/migrations/0000_true_red_wolf.sql @@ -0,0 +1,112 @@ +CREATE TABLE `account` ( + `userId` text NOT NULL, + `type` text NOT NULL, + `provider` text NOT NULL, + `providerAccountId` text NOT NULL, + `refresh_token` text, + `access_token` text, + `expires_at` integer, + `token_type` text, + `scope` text, + `id_token` text, + `session_state` text, + PRIMARY KEY(`provider`, `providerAccountId`), + FOREIGN KEY (`userId`) REFERENCES `user`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `board` ( + `id` text PRIMARY KEY NOT NULL, + `name` text NOT NULL, + `is_public` integer DEFAULT false NOT NULL, + `page_title` text, + `meta_title` text, + `logo_image_url` text, + `favicon_image_url` text, + `background_image_url` text, + `background_image_attachment` text DEFAULT 'fixed' NOT NULL, + `background_image_repeat` text DEFAULT 'no-repeat' NOT NULL, + `background_image_size` text DEFAULT 'cover' NOT NULL, + `primary_color` text DEFAULT 'red' NOT NULL, + `secondary_color` text DEFAULT 'orange' NOT NULL, + `primary_shade` integer DEFAULT 6 NOT NULL, + `app_opacity` integer DEFAULT 100 NOT NULL, + `custom_css` text, + `show_right_sidebar` integer DEFAULT false NOT NULL, + `show_left_sidebar` integer DEFAULT false NOT NULL, + `column_count` integer DEFAULT 10 NOT NULL +); +--> statement-breakpoint +CREATE TABLE `integration_item` ( + `item_id` text NOT NULL, + `integration_id` text NOT NULL, + PRIMARY KEY(`integration_id`, `item_id`), + FOREIGN KEY (`item_id`) REFERENCES `item`(`id`) ON UPDATE no action ON DELETE cascade, + FOREIGN KEY (`integration_id`) REFERENCES `integration`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `integrationSecret` ( + `kind` text NOT NULL, + `value` text NOT NULL, + `updated_at` integer NOT NULL, + `integration_id` text NOT NULL, + PRIMARY KEY(`integration_id`, `kind`), + FOREIGN KEY (`integration_id`) REFERENCES `integration`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `integration` ( + `id` text PRIMARY KEY NOT NULL, + `name` text NOT NULL, + `url` text NOT NULL, + `kind` text NOT NULL +); +--> statement-breakpoint +CREATE TABLE `item` ( + `id` text PRIMARY KEY NOT NULL, + `section_id` text NOT NULL, + `kind` text NOT NULL, + `x_offset` integer NOT NULL, + `y_offset` integer NOT NULL, + `width` integer NOT NULL, + `height` integer NOT NULL, + `options` text DEFAULT '{"json": {}}' NOT NULL, + FOREIGN KEY (`section_id`) REFERENCES `section`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `section` ( + `id` text PRIMARY KEY NOT NULL, + `board_id` text NOT NULL, + `kind` text NOT NULL, + `position` integer NOT NULL, + `name` text, + FOREIGN KEY (`board_id`) REFERENCES `board`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `session` ( + `sessionToken` text PRIMARY KEY NOT NULL, + `userId` text NOT NULL, + `expires` integer NOT NULL, + FOREIGN KEY (`userId`) REFERENCES `user`(`id`) ON UPDATE no action ON DELETE cascade +); +--> statement-breakpoint +CREATE TABLE `user` ( + `id` text PRIMARY KEY NOT NULL, + `name` text, + `email` text, + `emailVerified` integer, + `image` text, + `password` text, + `salt` text +); +--> statement-breakpoint +CREATE TABLE `verificationToken` ( + `identifier` text NOT NULL, + `token` text NOT NULL, + `expires` integer NOT NULL, + PRIMARY KEY(`identifier`, `token`) +); +--> statement-breakpoint +CREATE INDEX `userId_idx` ON `account` (`userId`);--> statement-breakpoint +CREATE INDEX `integration_secret__kind_idx` ON `integrationSecret` (`kind`);--> statement-breakpoint +CREATE INDEX `integration_secret__updated_at_idx` ON `integrationSecret` (`updated_at`);--> statement-breakpoint +CREATE INDEX `integration__kind_idx` ON `integration` (`kind`);--> statement-breakpoint +CREATE INDEX `user_id_idx` ON `session` (`userId`); \ No newline at end of file diff --git a/packages/db/migrations/meta/0000_snapshot.json b/packages/db/migrations/meta/0000_snapshot.json new file mode 100644 index 000000000..2a8c974ab --- /dev/null +++ b/packages/db/migrations/meta/0000_snapshot.json @@ -0,0 +1,696 @@ +{ + "version": "5", + "dialect": "sqlite", + "id": "c9ea435a-5bbf-4439-84a1-55d3e2581b13", + "prevId": "00000000-0000-0000-0000-000000000000", + "tables": { + "account": { + "name": "account", + "columns": { + "userId": { + "name": "userId", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "provider": { + "name": "provider", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "providerAccountId": { + "name": "providerAccountId", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "refresh_token": { + "name": "refresh_token", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "access_token": { + "name": "access_token", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "expires_at": { + "name": "expires_at", + "type": "integer", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "token_type": { + "name": "token_type", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "scope": { + "name": "scope", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "id_token": { + "name": "id_token", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "session_state": { + "name": "session_state", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + } + }, + "indexes": { + "userId_idx": { + "name": "userId_idx", + "columns": ["userId"], + "isUnique": false + } + }, + "foreignKeys": { + "account_userId_user_id_fk": { + "name": "account_userId_user_id_fk", + "tableFrom": "account", + "tableTo": "user", + "columnsFrom": ["userId"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "account_provider_providerAccountId_pk": { + "columns": ["provider", "providerAccountId"], + "name": "account_provider_providerAccountId_pk" + } + }, + "uniqueConstraints": {} + }, + "board": { + "name": "board", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "is_public": { + "name": "is_public", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": false + }, + "page_title": { + "name": "page_title", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "meta_title": { + "name": "meta_title", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "logo_image_url": { + "name": "logo_image_url", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "favicon_image_url": { + "name": "favicon_image_url", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "background_image_url": { + "name": "background_image_url", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "background_image_attachment": { + "name": "background_image_attachment", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'fixed'" + }, + "background_image_repeat": { + "name": "background_image_repeat", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'no-repeat'" + }, + "background_image_size": { + "name": "background_image_size", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'cover'" + }, + "primary_color": { + "name": "primary_color", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'red'" + }, + "secondary_color": { + "name": "secondary_color", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'orange'" + }, + "primary_shade": { + "name": "primary_shade", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": 6 + }, + "app_opacity": { + "name": "app_opacity", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": 100 + }, + "custom_css": { + "name": "custom_css", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "show_right_sidebar": { + "name": "show_right_sidebar", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": false + }, + "show_left_sidebar": { + "name": "show_left_sidebar", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": false + }, + "column_count": { + "name": "column_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": 10 + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "integration_item": { + "name": "integration_item", + "columns": { + "item_id": { + "name": "item_id", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "integration_id": { + "name": "integration_id", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": {}, + "foreignKeys": { + "integration_item_item_id_item_id_fk": { + "name": "integration_item_item_id_item_id_fk", + "tableFrom": "integration_item", + "tableTo": "item", + "columnsFrom": ["item_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "integration_item_integration_id_integration_id_fk": { + "name": "integration_item_integration_id_integration_id_fk", + "tableFrom": "integration_item", + "tableTo": "integration", + "columnsFrom": ["integration_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "integration_item_item_id_integration_id_pk": { + "columns": ["integration_id", "item_id"], + "name": "integration_item_item_id_integration_id_pk" + } + }, + "uniqueConstraints": {} + }, + "integrationSecret": { + "name": "integrationSecret", + "columns": { + "kind": { + "name": "kind", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "value": { + "name": "value", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "updated_at": { + "name": "updated_at", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "integration_id": { + "name": "integration_id", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": { + "integration_secret__kind_idx": { + "name": "integration_secret__kind_idx", + "columns": ["kind"], + "isUnique": false + }, + "integration_secret__updated_at_idx": { + "name": "integration_secret__updated_at_idx", + "columns": ["updated_at"], + "isUnique": false + } + }, + "foreignKeys": { + "integrationSecret_integration_id_integration_id_fk": { + "name": "integrationSecret_integration_id_integration_id_fk", + "tableFrom": "integrationSecret", + "tableTo": "integration", + "columnsFrom": ["integration_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "integrationSecret_integration_id_kind_pk": { + "columns": ["integration_id", "kind"], + "name": "integrationSecret_integration_id_kind_pk" + } + }, + "uniqueConstraints": {} + }, + "integration": { + "name": "integration", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "url": { + "name": "url", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "kind": { + "name": "kind", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": { + "integration__kind_idx": { + "name": "integration__kind_idx", + "columns": ["kind"], + "isUnique": false + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "item": { + "name": "item", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "section_id": { + "name": "section_id", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "kind": { + "name": "kind", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "x_offset": { + "name": "x_offset", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "y_offset": { + "name": "y_offset", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "width": { + "name": "width", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "height": { + "name": "height", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "options": { + "name": "options", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false, + "default": "'{\"json\": {}}'" + } + }, + "indexes": {}, + "foreignKeys": { + "item_section_id_section_id_fk": { + "name": "item_section_id_section_id_fk", + "tableFrom": "item", + "tableTo": "section", + "columnsFrom": ["section_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "section": { + "name": "section", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "board_id": { + "name": "board_id", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "kind": { + "name": "kind", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "position": { + "name": "position", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + } + }, + "indexes": {}, + "foreignKeys": { + "section_board_id_board_id_fk": { + "name": "section_board_id_board_id_fk", + "tableFrom": "section", + "tableTo": "board", + "columnsFrom": ["board_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "session": { + "name": "session", + "columns": { + "sessionToken": { + "name": "sessionToken", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "userId": { + "name": "userId", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "expires": { + "name": "expires", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": { + "user_id_idx": { + "name": "user_id_idx", + "columns": ["userId"], + "isUnique": false + } + }, + "foreignKeys": { + "session_userId_user_id_fk": { + "name": "session_userId_user_id_fk", + "tableFrom": "session", + "tableTo": "user", + "columnsFrom": ["userId"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "user": { + "name": "user", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true, + "autoincrement": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "email": { + "name": "email", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "emailVerified": { + "name": "emailVerified", + "type": "integer", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "image": { + "name": "image", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "password": { + "name": "password", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + }, + "salt": { + "name": "salt", + "type": "text", + "primaryKey": false, + "notNull": false, + "autoincrement": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "verificationToken": { + "name": "verificationToken", + "columns": { + "identifier": { + "name": "identifier", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "token": { + "name": "token", + "type": "text", + "primaryKey": false, + "notNull": true, + "autoincrement": false + }, + "expires": { + "name": "expires", + "type": "integer", + "primaryKey": false, + "notNull": true, + "autoincrement": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": { + "verificationToken_identifier_token_pk": { + "columns": ["identifier", "token"], + "name": "verificationToken_identifier_token_pk" + } + }, + "uniqueConstraints": {} + } + }, + "enums": {}, + "_meta": { + "schemas": {}, + "tables": {}, + "columns": {} + } +} diff --git a/packages/db/migrations/meta/_journal.json b/packages/db/migrations/meta/_journal.json new file mode 100644 index 000000000..843dad674 --- /dev/null +++ b/packages/db/migrations/meta/_journal.json @@ -0,0 +1,13 @@ +{ + "version": "5", + "dialect": "sqlite", + "entries": [ + { + "idx": 0, + "version": "5", + "when": 1707511343363, + "tag": "0000_true_red_wolf", + "breakpoints": true + } + ] +} diff --git a/packages/db/package.json b/packages/db/package.json index 2529991c8..84e74d777 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -4,7 +4,8 @@ "exports": { ".": "./index.ts", "./client": "./client.ts", - "./schema/sqlite": "./schema/sqlite.ts" + "./schema/sqlite": "./schema/sqlite.ts", + "./test": "./test/index.ts" }, "private": true, "main": "./index.ts", @@ -14,6 +15,7 @@ "clean": "rm -rf .turbo node_modules", "lint": "eslint .", "format": "prettier --check . --ignore-path ../../.gitignore", + "migration:generate": "drizzle-kit generate:sqlite", "push": "drizzle-kit push:sqlite", "studio": "drizzle-kit studio", "typecheck": "tsc --noEmit" diff --git a/packages/db/test/db-mock.ts b/packages/db/test/db-mock.ts new file mode 100644 index 000000000..659e1e21b --- /dev/null +++ b/packages/db/test/db-mock.ts @@ -0,0 +1,14 @@ +import Database from "better-sqlite3"; +import { drizzle } from "drizzle-orm/better-sqlite3"; +import { migrate } from "drizzle-orm/better-sqlite3/migrator"; + +import { schema } from ".."; + +export const createDb = () => { + const sqlite = new Database(":memory:"); + const db = drizzle(sqlite, { schema }); + migrate(db, { + migrationsFolder: "./packages/db/migrations", + }); + return db; +}; diff --git a/packages/db/test/index.ts b/packages/db/test/index.ts new file mode 100644 index 000000000..31046067d --- /dev/null +++ b/packages/db/test/index.ts @@ -0,0 +1 @@ +export * from "./db-mock"; diff --git a/packages/definitions/src/test/integration.spec.ts b/packages/definitions/src/test/integration.spec.ts new file mode 100644 index 000000000..bdb5194fd --- /dev/null +++ b/packages/definitions/src/test/integration.spec.ts @@ -0,0 +1,14 @@ +import { describe, expect, it } from "vitest"; + +import { objectEntries } from "@homarr/common"; + +import { integrationDefs } from "../integration"; + +describe("Icon url's of integrations should be valid and return 200", () => { + objectEntries(integrationDefs).forEach(([integration, { iconUrl }]) => { + it.concurrent(`should return 200 for ${integration}`, async () => { + const res = await fetch(iconUrl); + expect(res.status).toBe(200); + }); + }); +}); diff --git a/packages/translation/src/index.ts b/packages/translation/src/index.ts index c49f69163..9fb09f4f6 100644 --- a/packages/translation/src/index.ts +++ b/packages/translation/src/index.ts @@ -2,3 +2,4 @@ export const supportedLanguages = ["en", "de"] as const; export type SupportedLanguage = (typeof supportedLanguages)[number]; export const defaultLocale = "en"; +export { languageMapping } from "./lang"; diff --git a/packages/validation/src/board.ts b/packages/validation/src/board.ts index 6b56666fb..96d0e4f9e 100644 --- a/packages/validation/src/board.ts +++ b/packages/validation/src/board.ts @@ -29,10 +29,11 @@ const saveGeneralSettingsSchema = z.object({ .string() .nullable() .transform((value) => (value?.trim().length === 0 ? null : value)), + boardId: z.string(), }); const saveSchema = z.object({ - name: boardNameSchema, + boardId: z.string(), sections: z.array(createSectionSchema(commonItemSchema)), }); diff --git a/packages/widgets/src/test/translation.spec.ts b/packages/widgets/src/test/translation.spec.ts new file mode 100644 index 000000000..5415fefcc --- /dev/null +++ b/packages/widgets/src/test/translation.spec.ts @@ -0,0 +1,42 @@ +import { describe, expect, it } from "vitest"; + +import { objectEntries } from "@homarr/common"; +import { languageMapping } from "@homarr/translation"; + +import { widgetImports } from ".."; + +describe("Widget properties with description should have matching translations", async () => { + const enTranslation = await languageMapping().en(); + objectEntries(widgetImports).forEach(([key, value]) => { + Object.entries(value.definition.options).forEach( + ([optionKey, optionValue]: [string, { withDescription?: boolean }]) => { + it(`should have matching translations for ${optionKey} option description of ${key} widget`, () => { + const option = enTranslation.default.widget[key].option; + if (!(optionKey in option)) { + throw new Error(`Option ${optionKey} not found in translation`); + } + const value = option[optionKey as keyof typeof option]; + + expect("description" in value).toBe(optionValue.withDescription); + }); + }, + ); + }); +}); + +describe("Widget properties should have matching name translations", async () => { + const enTranslation = await languageMapping().en(); + objectEntries(widgetImports).forEach(([key, value]) => { + Object.keys(value.definition.options).forEach((optionKey) => { + it(`should have matching translations for ${optionKey} option name of ${key} widget`, () => { + const option = enTranslation.default.widget[key].option; + if (!(optionKey in option)) { + throw new Error(`Option ${optionKey} not found in translation`); + } + const value = option[optionKey as keyof typeof option]; + + expect("label" in value).toBe(true); + }); + }); + }); +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da8fc9bcc..872c56913 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,6 +15,9 @@ importers: '@homarr/prettier-config': specifier: workspace:^0.1.0 version: link:tooling/prettier + '@testing-library/react-hooks': + specifier: ^8.0.1 + version: 8.0.1(react@17.0.2) '@turbo/gen': specifier: ^1.12.3 version: 1.12.3(@types/node@20.11.17)(typescript@5.3.3) @@ -30,6 +33,9 @@ importers: cross-env: specifier: ^7.0.3 version: 7.0.3 + jsdom: + specifier: ^24.0.0 + version: 24.0.0 prettier: specifier: ^3.2.5 version: 3.2.5 @@ -44,7 +50,7 @@ importers: version: 4.3.1(typescript@5.3.3)(vite@5.0.12) vitest: specifier: ^1.2.2 - version: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) + version: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2)(jsdom@24.0.0) apps/nextjs: dependencies: @@ -326,7 +332,7 @@ importers: version: 9.4.0 drizzle-orm: specifier: ^0.29.3 - version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0) + version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0)(react@17.0.2) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -961,7 +967,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 - dev: false /@babel/template@7.22.15: resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} @@ -2150,6 +2155,27 @@ packages: react: 18.2.0 dev: false + /@testing-library/react-hooks@8.0.1(react@17.0.2): + resolution: {integrity: sha512-Aqhl2IVmLt8IovEVarNDFuJDVWVvhnr9/GCU6UUnrYXwgDFF9h2L2o2P9KBni1AST5sT6riAyoukFLyjQUgD/g==} + engines: {node: '>=12'} + peerDependencies: + '@types/react': ^16.9.0 || ^17.0.0 + react: ^16.9.0 || ^17.0.0 + react-dom: ^16.9.0 || ^17.0.0 + react-test-renderer: ^16.9.0 || ^17.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + react-dom: + optional: true + react-test-renderer: + optional: true + dependencies: + '@babel/runtime': 7.23.2 + react: 17.0.2 + react-error-boundary: 3.1.4(react@17.0.2) + dev: true + /@tiptap/core@2.2.2(@tiptap/pm@2.2.2): resolution: {integrity: sha512-fec26LtNgYFGhKzEA9+Of+qLKIKUxDL/XZQofoPcxP71NffcmpZ+ZjAx9NjnvuYtvylUSySZiPauY6WhN3aprw==} peerDependencies: @@ -2914,7 +2940,7 @@ packages: std-env: 3.7.0 test-exclude: 6.0.0 v8-to-istanbul: 9.2.0 - vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) + vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2)(jsdom@24.0.0) transitivePeerDependencies: - supports-color dev: true @@ -2961,7 +2987,7 @@ packages: pathe: 1.1.2 picocolors: 1.0.0 sirv: 2.0.4 - vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2) + vitest: 1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2)(jsdom@24.0.0) dev: true /@vitest/utils@1.2.2: @@ -3232,6 +3258,10 @@ packages: has-symbols: 1.0.3 dev: false + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: true + /available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} @@ -3589,6 +3619,13 @@ packages: text-hex: 1.0.0 dev: false + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: 1.0.0 + dev: true + /commander@10.0.1: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} @@ -3670,6 +3707,13 @@ packages: hasBin: true dev: false + /cssstyle@4.0.1: + resolution: {integrity: sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==} + engines: {node: '>=18'} + dependencies: + rrweb-cssom: 0.6.0 + dev: true + /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} @@ -3693,6 +3737,14 @@ packages: engines: {node: '>= 14'} dev: true + /data-urls@5.0.0: + resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} + engines: {node: '>=18'} + dependencies: + whatwg-mimetype: 4.0.0 + whatwg-url: 14.0.0 + dev: true + /dayjs@1.11.10: resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} dev: false @@ -3719,6 +3771,10 @@ packages: dependencies: ms: 2.1.2 + /decimal.js@10.4.3: + resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} + dev: true + /decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} @@ -3800,6 +3856,11 @@ packages: slash: 3.0.0 dev: true + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: true + /delegates@1.0.0: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} dev: false @@ -3924,7 +3985,7 @@ packages: - supports-color dev: true - /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0): + /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0)(react@17.0.2): resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' @@ -3997,6 +4058,7 @@ packages: dependencies: '@types/better-sqlite3': 7.6.9 better-sqlite3: 9.4.0 + react: 17.0.2 dev: false /eastasianwidth@0.2.0: @@ -4030,7 +4092,6 @@ packages: /entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - dev: false /env-paths@3.0.0: resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} @@ -4681,6 +4742,15 @@ packages: signal-exit: 4.1.0 dev: false + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: true + /fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} dev: false @@ -5009,6 +5079,13 @@ packages: resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} dev: true + /html-encoding-sniffer@4.0.0: + resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} + engines: {node: '>=18'} + dependencies: + whatwg-encoding: 3.1.1 + dev: true + /html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} dev: true @@ -5060,6 +5137,13 @@ packages: safer-buffer: 2.1.2 dev: true + /iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + dependencies: + safer-buffer: 2.1.2 + dev: true + /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} @@ -5304,6 +5388,10 @@ packages: isobject: 3.0.1 dev: false + /is-potential-custom-element-name@1.0.1: + resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + dev: true + /is-promise@2.2.2: resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} dev: true @@ -5499,6 +5587,42 @@ packages: dependencies: argparse: 2.0.1 + /jsdom@24.0.0: + resolution: {integrity: sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==} + engines: {node: '>=18'} + peerDependencies: + canvas: ^2.11.2 + peerDependenciesMeta: + canvas: + optional: true + dependencies: + cssstyle: 4.0.1 + data-urls: 5.0.0 + decimal.js: 10.4.3 + form-data: 4.0.0 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.0 + https-proxy-agent: 7.0.2 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.7 + parse5: 7.1.2 + rrweb-cssom: 0.6.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 4.1.3 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 14.0.0 + ws: 8.16.0 + xml-name-validator: 5.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} @@ -5669,7 +5793,6 @@ packages: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} dependencies: js-tokens: 4.0.0 - dev: false /loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} @@ -5804,6 +5927,18 @@ packages: braces: 3.0.2 picomatch: 2.3.1 + /mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + dev: true + + /mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + dependencies: + mime-db: 1.52.0 + dev: true + /mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -6091,6 +6226,10 @@ packages: set-blocking: 2.0.0 dev: false + /nwsapi@2.2.7: + resolution: {integrity: sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==} + dev: true + /oauth4webapi@2.10.3: resolution: {integrity: sha512-9FkXEXfzVKzH63GUOZz1zMr3wBaICSzk6DLXx+CGdrQ10ItNk2ePWzYYc1fdmKq1ayGFb2aX97sRCoZ2s0mkDw==} dev: false @@ -6098,7 +6237,6 @@ packages: /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - dev: false /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} @@ -6340,6 +6478,12 @@ packages: dependencies: callsites: 3.1.0 + /parse5@7.1.2: + resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + dependencies: + entities: 4.5.0 + dev: true + /pascal-case@2.0.1: resolution: {integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==} dependencies: @@ -6720,6 +6864,10 @@ packages: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: true + /psl@1.9.0: + resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} + dev: true + /pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} dependencies: @@ -6736,6 +6884,15 @@ packages: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true + + /querystringify@2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + dev: true + /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -6758,6 +6915,16 @@ packages: scheduler: 0.23.0 dev: false + /react-error-boundary@3.1.4(react@17.0.2): + resolution: {integrity: sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==} + engines: {node: '>=10', npm: '>=6'} + peerDependencies: + react: '>=16.13.1' + dependencies: + '@babel/runtime': 7.23.2 + react: 17.0.2 + dev: true + /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} dev: false @@ -6870,6 +7037,13 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false + /react@17.0.2: + resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} + engines: {node: '>=0.10.0'} + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + /react@18.2.0: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} @@ -6942,6 +7116,10 @@ packages: rc: 1.2.8 dev: true + /requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + dev: true + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -7010,6 +7188,10 @@ packages: resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} dev: false + /rrweb-cssom@0.6.0: + resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} + dev: true + /run-async@2.4.1: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} engines: {node: '>=0.12.0'} @@ -7083,6 +7265,13 @@ packages: source-map-js: 1.0.2 dev: false + /saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} + dependencies: + xmlchars: 2.2.0 + dev: true + /scheduler@0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: @@ -7408,6 +7597,10 @@ packages: upper-case: 1.1.3 dev: true + /symbol-tree@3.2.4: + resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + dev: true + /tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} dev: false @@ -7536,10 +7729,27 @@ packages: engines: {node: '>=6'} dev: true + /tough-cookie@4.1.3: + resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} + engines: {node: '>=6'} + dependencies: + psl: 1.9.0 + punycode: 2.3.0 + universalify: 0.2.0 + url-parse: 1.5.10 + dev: true + /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false + /tr46@5.0.0: + resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} + engines: {node: '>=18'} + dependencies: + punycode: 2.3.1 + dev: true + /triple-beam@1.4.1: resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} engines: {node: '>= 14.0.0'} @@ -7798,6 +8008,11 @@ packages: engines: {node: '>= 4.0.0'} dev: true + /universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} + dev: true + /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} @@ -7846,6 +8061,13 @@ packages: dependencies: punycode: 2.3.0 + /url-parse@1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + dependencies: + querystringify: 2.2.0 + requires-port: 1.0.0 + dev: true + /use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} @@ -8009,7 +8231,7 @@ packages: fsevents: 2.3.3 dev: true - /vitest@1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2): + /vitest@1.2.2(@types/node@20.11.17)(@vitest/ui@1.2.2)(jsdom@24.0.0): resolution: {integrity: sha512-d5Ouvrnms3GD9USIK36KG8OZ5bEvKEkITFtnGv56HFaSlbItJuYr7hv2Lkn903+AvRAgSixiamozUVfORUekjw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -8046,6 +8268,7 @@ packages: chai: 4.4.1 debug: 4.3.4 execa: 8.0.1 + jsdom: 24.0.0 local-pkg: 0.5.0 magic-string: 0.30.6 pathe: 1.1.2 @@ -8071,6 +8294,13 @@ packages: resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} dev: false + /w3c-xmlserializer@5.0.0: + resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} + engines: {node: '>=18'} + dependencies: + xml-name-validator: 5.0.0 + dev: true + /wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} dependencies: @@ -8081,6 +8311,31 @@ packages: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: false + /webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + dev: true + + /whatwg-encoding@3.1.1: + resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} + engines: {node: '>=18'} + dependencies: + iconv-lite: 0.6.3 + dev: true + + /whatwg-mimetype@4.0.0: + resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} + engines: {node: '>=18'} + dev: true + + /whatwg-url@14.0.0: + resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} + engines: {node: '>=18'} + dependencies: + tr46: 5.0.0 + webidl-conversions: 7.0.0 + dev: true + /whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: @@ -8217,6 +8472,28 @@ packages: /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + /ws@8.16.0: + resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: true + + /xml-name-validator@5.0.0: + resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} + engines: {node: '>=18'} + dev: true + + /xmlchars@2.2.0: + resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + dev: true + /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} diff --git a/tooling/typescript/base.json b/tooling/typescript/base.json index 8ab2a746f..944bb0a3c 100644 --- a/tooling/typescript/base.json +++ b/tooling/typescript/base.json @@ -15,7 +15,13 @@ "moduleDetection": "force", "jsx": "preserve", "incremental": true, - "noUncheckedIndexedAccess": true + "noUncheckedIndexedAccess": true, + "baseUrl": ".", + "paths": { + "*": [ + "node_modules/*" + ] + } }, "exclude": ["node_modules", "build", "dist", ".next"] } diff --git a/vitest.config.ts b/vitest.config.ts index 11cbd664b..9d5aec73d 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -5,6 +5,8 @@ import { configDefaults, defineConfig } from "vitest/config"; export default defineConfig({ plugins: [react(), tsconfigPaths()], test: { + setupFiles: ["./vitest.setup.ts"], + environment: "jsdom", include: ["**/*.spec.ts"], poolOptions: { threads: { diff --git a/vitest.setup.ts b/vitest.setup.ts new file mode 100644 index 000000000..9c01f0b66 --- /dev/null +++ b/vitest.setup.ts @@ -0,0 +1,3 @@ +import { vi } from "vitest"; + +vi.mock("server-only", () => ({ default: undefined })); From 16442bc379c1d418080947fbd86a4bb14639e90e Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sat, 10 Feb 2024 19:11:40 +0100 Subject: [PATCH 76/87] feat: add support for should hide option i widget edit modal (#78) --- packages/widgets/src/modals/widget-edit-modal.tsx | 7 ++++--- packages/widgets/src/options.ts | 3 +++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/widgets/src/modals/widget-edit-modal.tsx b/packages/widgets/src/modals/widget-edit-modal.tsx index 4e0459716..cedc75b28 100644 --- a/packages/widgets/src/modals/widget-edit-modal.tsx +++ b/packages/widgets/src/modals/widget-edit-modal.tsx @@ -9,7 +9,7 @@ import { Button, Group, Stack } from "@homarr/ui"; import { widgetImports } from ".."; import { getInputForType } from "../_inputs"; import { FormProvider, useForm } from "../_inputs/form"; -import type { WidgetOptionDefinition } from "../options"; +import type { OptionsBuilderResult } from "../options"; import type { IntegrationSelectOption } from "../widget-integration-select"; import { WidgetIntegrationSelect } from "../widget-integration-select"; @@ -54,10 +54,11 @@ export const WidgetEditModal: ManagedModal> = ({ /> )} {Object.entries(definition.options).map( - ([key, value]: [string, WidgetOptionDefinition]) => { + ([key, value]: [string, OptionsBuilderResult[string]]) => { + console.log(value); const Input = getInputForType(value.type); - if (!Input) { + if (!Input || value.shouldHide?.(form.values.options as never)) { return null; } diff --git a/packages/widgets/src/options.ts b/packages/widgets/src/options.ts index 31ed0305a..4fc3438e4 100644 --- a/packages/widgets/src/options.ts +++ b/packages/widgets/src/options.ts @@ -141,6 +141,9 @@ const createOptions = ( }; }; +type OptionsBuilder = typeof createOptions; +export type OptionsBuilderResult = ReturnType; + export const optionsBuilder = { from: createOptions, }; From 08fa338abbdff3bb3f7cfc96bc328ecb4a49c584 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Sat, 10 Feb 2024 23:14:02 +0100 Subject: [PATCH 77/87] feat: add user avatar menu (#80) --- .../src/components/layout/header/user.tsx | 9 ++- .../src/components/user-avatar-menu.tsx | 61 +++++++++++++++++++ packages/translation/src/lang/en.ts | 9 +++ 3 files changed, 76 insertions(+), 3 deletions(-) create mode 100644 apps/nextjs/src/components/user-avatar-menu.tsx diff --git a/apps/nextjs/src/components/layout/header/user.tsx b/apps/nextjs/src/components/layout/header/user.tsx index 376b31e3d..7bbc7fee1 100644 --- a/apps/nextjs/src/components/layout/header/user.tsx +++ b/apps/nextjs/src/components/layout/header/user.tsx @@ -1,11 +1,14 @@ import { UnstyledButton } from "@homarr/ui"; import { UserAvatar } from "~/components/user-avatar"; +import { UserAvatarMenu } from "~/components/user-avatar-menu"; export const UserButton = () => { return ( - - - + + + + + ); }; diff --git a/apps/nextjs/src/components/user-avatar-menu.tsx b/apps/nextjs/src/components/user-avatar-menu.tsx new file mode 100644 index 000000000..1745eb847 --- /dev/null +++ b/apps/nextjs/src/components/user-avatar-menu.tsx @@ -0,0 +1,61 @@ +"use client"; + +import type { ReactNode } from "react"; +import Link from "next/link"; + +import { useScopedI18n } from "@homarr/translation/client"; +import { + IconDashboard, + IconLogout, + IconMoon, + IconSun, + IconTool, + Menu, + useMantineColorScheme, +} from "@homarr/ui"; + +interface UserAvatarMenuProps { + children: ReactNode; +} + +export const UserAvatarMenu = ({ children }: UserAvatarMenuProps) => { + const t = useScopedI18n("common.userAvatar.menu"); + const { colorScheme, toggleColorScheme } = useMantineColorScheme(); + + const ColorSchemeIcon = colorScheme === "dark" ? IconSun : IconMoon; + + const colorSchemeText = + colorScheme === "dark" ? t("switchToLightMode") : t("switchToDarkMode"); + + return ( + + + } + > + {colorSchemeText} + + } + > + {t("navigateDefaultBoard")} + + } + > + {t("management")} + + + } color="red"> + {t("logout")} + + + {children} + + ); +}; diff --git a/packages/translation/src/lang/en.ts b/packages/translation/src/lang/en.ts index 62acddd59..ea712acad 100644 --- a/packages/translation/src/lang/en.ts +++ b/packages/translation/src/lang/en.ts @@ -155,6 +155,15 @@ export default { placeholder: "Search for anything...", nothingFound: "Nothing found", }, + userAvatar: { + menu: { + switchToDarkMode: "Switch to dark mode", + switchToLightMode: "Switch to light mode", + management: "Management", + logout: "Logout", + navigateDefaultBoard: "Navigate to default board", + }, + }, noResults: "No results found", }, section: { From 34f06e817db014e101e16543cdfc518485990a0d Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 11 Feb 2024 09:37:37 +0100 Subject: [PATCH 78/87] fix(deps): update dependency better-sqlite3 to ^9.4.1 (#83) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/db/package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/db/package.json b/packages/db/package.json index 84e74d777..1566f189d 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -24,7 +24,7 @@ "@homarr/common": "workspace:^0.1.0", "@homarr/definitions": "workspace:^0.1.0", "@paralleldrive/cuid2": "^2.2.2", - "better-sqlite3": "^9.4.0", + "better-sqlite3": "^9.4.1", "drizzle-orm": "^0.29.3" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 872c56913..892a68135 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -328,11 +328,11 @@ importers: specifier: ^2.2.2 version: 2.2.2 better-sqlite3: - specifier: ^9.4.0 - version: 9.4.0 + specifier: ^9.4.1 + version: 9.4.1 drizzle-orm: specifier: ^0.29.3 - version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0)(react@17.0.2) + version: 0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.1)(react@17.0.2) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -3301,8 +3301,8 @@ packages: - supports-color dev: false - /better-sqlite3@9.4.0: - resolution: {integrity: sha512-5kynxekMxSjCMiFyUBLHggFcJkCmiZi6fUkiGz/B5GZOvdRWQJD0klqCx5/Y+bm2AKP7I/DHbSFx26AxjruWNg==} + /better-sqlite3@9.4.1: + resolution: {integrity: sha512-QpqiQeMI4WkE+dQ68zTMX5OzlPGc7lXIDP1iKUt4Omt9PdaVgzKYxHIJRIzt1E+RUBQoFmkip/IbvzyrxehAIg==} requiresBuild: true dependencies: bindings: 1.5.0 @@ -3985,7 +3985,7 @@ packages: - supports-color dev: true - /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.0)(react@17.0.2): + /drizzle-orm@0.29.3(@types/better-sqlite3@7.6.9)(better-sqlite3@9.4.1)(react@17.0.2): resolution: {integrity: sha512-uSE027csliGSGYD0pqtM+SAQATMREb3eSM/U8s6r+Y0RFwTKwftnwwSkqx3oS65UBgqDOM0gMTl5UGNpt6lW0A==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' @@ -4057,7 +4057,7 @@ packages: optional: true dependencies: '@types/better-sqlite3': 7.6.9 - better-sqlite3: 9.4.0 + better-sqlite3: 9.4.1 react: 17.0.2 dev: false From 25693b10b1bd47c60f0589712e0ac706020b6b99 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sun, 11 Feb 2024 16:18:15 +0100 Subject: [PATCH 79/87] Fix issue where gridstack items can have a width of zero (#85) --- apps/nextjs/src/styles/gridstack.scss | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/nextjs/src/styles/gridstack.scss b/apps/nextjs/src/styles/gridstack.scss index ae572061a..a58e3e620 100644 --- a/apps/nextjs/src/styles/gridstack.scss +++ b/apps/nextjs/src/styles/gridstack.scss @@ -17,6 +17,12 @@ } } +// Define min size for gridstack items +.grid-stack > .grid-stack-item { + min-width: calc(100% / var(--gridstack-column-count)); + min-height: calc(1px * var(--gridstack-widget-width)); +} + // Styling for grid-stack main area @for $i from 1 to 96 { .grid-stack > .grid-stack-item[gs-w="#{$i}"] { @@ -54,10 +60,6 @@ } } -.grid-stack > .grid-stack-item { - min-width: #{var(--gridstack-widget-width)}; -} - // Styling for sidebar grid-stack elements @for $i from 1 to 96 { .grid-stack.grid-stack-sidebar > .grid-stack-item[gs-w="#{$i}"] { From c5fb8075ce30aaa3b2635dd7796de9d7c73fdf01 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 14 Feb 2024 22:54:32 +0100 Subject: [PATCH 80/87] chore(deps): update turbo monorepo to ^1.12.4 (#93) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- package.json | 4 +-- pnpm-lock.yaml | 72 ++++++++++++++++++------------------- tooling/eslint/package.json | 2 +- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/package.json b/package.json index 99b4b20fd..d0d0a1786 100644 --- a/package.json +++ b/package.json @@ -26,14 +26,14 @@ "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", "@testing-library/react-hooks": "^8.0.1", - "@turbo/gen": "^1.12.3", + "@turbo/gen": "^1.12.4", "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^1.2.2", "@vitest/ui": "^1.2.2", "cross-env": "^7.0.3", "jsdom": "^24.0.0", "prettier": "^3.2.5", - "turbo": "^1.12.3", + "turbo": "^1.12.4", "typescript": "^5.3.3", "vite-tsconfig-paths": "^4.3.1", "vitest": "^1.2.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 892a68135..4da1a9fe5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,8 +19,8 @@ importers: specifier: ^8.0.1 version: 8.0.1(react@17.0.2) '@turbo/gen': - specifier: ^1.12.3 - version: 1.12.3(@types/node@20.11.17)(typescript@5.3.3) + specifier: ^1.12.4 + version: 1.12.4(@types/node@20.11.17)(typescript@5.3.3) '@vitejs/plugin-react': specifier: ^4.2.1 version: 4.2.1(vite@5.0.12) @@ -40,8 +40,8 @@ importers: specifier: ^3.2.5 version: 3.2.5 turbo: - specifier: ^1.12.3 - version: 1.12.3 + specifier: ^1.12.4 + version: 1.12.4 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -589,8 +589,8 @@ importers: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) eslint-config-turbo: - specifier: ^1.12.3 - version: 1.12.3(eslint@8.56.0) + specifier: ^1.12.4 + version: 1.12.4(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0) @@ -2505,11 +2505,11 @@ packages: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@turbo/gen@1.12.3(@types/node@20.11.17)(typescript@5.3.3): - resolution: {integrity: sha512-BnGUqJMk42YGMVcl3PNE4+lGlbG6cQHDIdIbHnWdyd/Jym/KxSi1IX3xPN2Y1iU3aYfPrSyJtX4/hIWJnllu3w==} + /@turbo/gen@1.12.4(@types/node@20.11.17)(typescript@5.3.3): + resolution: {integrity: sha512-3Z8KZ6Vnc2x6rr8sNJ4QNYpkAttLBfb91uPzDlFDY7vgJg+vfXT8YWyZznVL+19ZixF2C/F4Ucp4/YjG2e1drg==} hasBin: true dependencies: - '@turbo/workspaces': 1.12.3 + '@turbo/workspaces': 1.12.4 chalk: 2.4.2 commander: 10.0.1 fs-extra: 10.1.0 @@ -2528,8 +2528,8 @@ packages: - typescript dev: true - /@turbo/workspaces@1.12.3: - resolution: {integrity: sha512-X5vGZyQeVEeuzJeQflF74nO+Viw6qCGEMEWqKmlNsz/zguimgkAoTFV3yZP0ASCvq2QvrIZdSPWQibLLtFnB9A==} + /@turbo/workspaces@1.12.4: + resolution: {integrity: sha512-a1hF8Nr6MOeCpvlLR569dGTlzgRLj2Rxo6dTb4jtL+jhHwCb94A9kDPgcRnYGFr45mgulICarVaNZxDjw4/riQ==} hasBin: true dependencies: chalk: 2.4.2 @@ -4343,13 +4343,13 @@ packages: eslint: 8.56.0 dev: false - /eslint-config-turbo@1.12.3(eslint@8.56.0): - resolution: {integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==} + /eslint-config-turbo@1.12.4(eslint@8.56.0): + resolution: {integrity: sha512-5hqEaV6PNmAYLL4RTmq74OcCt8pgzOLnfDVPG/7PUXpQ0Mpz0gr926oCSFukywKKXjdum3VHD84S7Z9A/DqTAw==} peerDependencies: eslint: '>6.6.0' dependencies: eslint: 8.56.0 - eslint-plugin-turbo: 1.12.3(eslint@8.56.0) + eslint-plugin-turbo: 1.12.4(eslint@8.56.0) dev: false /eslint-import-resolver-node@0.3.9: @@ -4485,8 +4485,8 @@ packages: string.prototype.matchall: 4.0.8 dev: false - /eslint-plugin-turbo@1.12.3(eslint@8.56.0): - resolution: {integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==} + /eslint-plugin-turbo@1.12.4(eslint@8.56.0): + resolution: {integrity: sha512-3AGmXvH7E4i/XTWqBrcgu+G7YKZJV/8FrEn79kTd50ilNsv+U3nS2IlcCrQB6Xm2m9avGD9cadLzKDR1/UF2+g==} peerDependencies: eslint: '>6.6.0' dependencies: @@ -7835,64 +7835,64 @@ packages: safe-buffer: 5.2.1 dev: false - /turbo-darwin-64@1.12.3: - resolution: {integrity: sha512-dDglIaux+A4jOnB9CDH69sujmrnuLJLrKw1t3J+if6ySlFuxSwC++gDq9TVuOZo2+S7lFkGh+x5ytn3wp+jE8Q==} + /turbo-darwin-64@1.12.4: + resolution: {integrity: sha512-dBwFxhp9isTa9RS/fz2gDVk5wWhKQsPQMozYhjM7TT4jTrnYn0ZJMzr7V3B/M/T8QF65TbniW7w1gtgxQgX5Zg==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-darwin-arm64@1.12.3: - resolution: {integrity: sha512-5TqqeujEyHMoVUWGzSzUl5ERSg7HDCdbU3gBs5ziWTpFRpeJ/+Y15kYyZJcMQcubRIH3Y1hL/yA5IhlGdgXOMA==} + /turbo-darwin-arm64@1.12.4: + resolution: {integrity: sha512-1Uo5iI6xsJ1j9ObsqxYRsa3W26mEbUe6fnj4rQYV6kDaqYD54oAMJ6hM53q9rB8JvFxwdrUXGp3PwTw9A0qqkA==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /turbo-linux-64@1.12.3: - resolution: {integrity: sha512-yUreU+/gq4vlBtcdyfjz7slwz4zM1RG8sSXvyHmAS+QXqSrGkegg4qLl2fRbv/c3EyA/XbfcZuD6tcrXkejr6g==} + /turbo-linux-64@1.12.4: + resolution: {integrity: sha512-ONg2aSqKP7LAQOg7ysmU5WpEQp4DGNxSlAiR7um+LKtbmC/UxogbR5+T+Uuq6zGuQ5kJyKjWJ4NhtvUswOqBsA==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-linux-arm64@1.12.3: - resolution: {integrity: sha512-XRwAsp2eRSqZmaMVNrmHoKqofeJMuD87zmefZLTRAObh38hIwKgyl2QRsJIbteob5RN77yFbv3lAJ36UIY5h7w==} + /turbo-linux-arm64@1.12.4: + resolution: {integrity: sha512-9FPufkwdgfIKg/9jj87Cdtftw8o36y27/S2vLN7FTR2pp9c0MQiTBOLVYadUr1FlShupddmaMbTkXEhyt9SdrA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /turbo-windows-64@1.12.3: - resolution: {integrity: sha512-CPnRfnUCtmFeShOtUdMCthySjmyHaoTyh9JueiYFvtCNeO3WfDMj63dpOQstQWHdJFYmIrIGfhAclcds9ePQYA==} + /turbo-windows-64@1.12.4: + resolution: {integrity: sha512-2mOtxHW5Vjh/5rDVu/aFwsMzI+chs8XcEuJHlY1sYOpEymYTz+u6AXbnzRvwZFMrLKr7J7fQOGl+v96sLKbNdA==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /turbo-windows-arm64@1.12.3: - resolution: {integrity: sha512-cYA/wlzvp4vlCNHYJ2AjNS3FLXWwUC/5CJompBkTeKFFB6AviE/iLkbIhFikCVSNXZk/3AGanpMUXIkt3bdlwg==} + /turbo-windows-arm64@1.12.4: + resolution: {integrity: sha512-nOY5wae9qnxPOpT1fRuYO0ks6dTwpKMPV6++VkDkamFDLFHUDVM/9kmD2UTeh1yyrKnrZksbb9zmShhmfj1wog==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /turbo@1.12.3: - resolution: {integrity: sha512-a6q8I0TK9ohACYbkmxzG/JYPuDC4VCvfmXLTlf321qQ4BIAhoyaOj/O2g+zJ6L1vNYnZ82G4LrbMfgLLngbLsg==} + /turbo@1.12.4: + resolution: {integrity: sha512-yUJ7elEUSToiGwFZogXpYKJpQ0BvaMbkEuQECIWtkBLcmWzlMOt6bActsIm29oN83mRU0WbzGt4e8H1KHWedhg==} hasBin: true optionalDependencies: - turbo-darwin-64: 1.12.3 - turbo-darwin-arm64: 1.12.3 - turbo-linux-64: 1.12.3 - turbo-linux-arm64: 1.12.3 - turbo-windows-64: 1.12.3 - turbo-windows-arm64: 1.12.3 + turbo-darwin-64: 1.12.4 + turbo-darwin-arm64: 1.12.4 + turbo-linux-64: 1.12.4 + turbo-linux-arm64: 1.12.4 + turbo-windows-64: 1.12.4 + turbo-windows-arm64: 1.12.4 dev: true /type-check@0.4.0: diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index bac91c340..76f76c6df 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -19,7 +19,7 @@ "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", "eslint-config-prettier": "^9.1.0", - "eslint-config-turbo": "^1.12.3", + "eslint-config-turbo": "^1.12.4", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-react": "^7.33.2", From 966425c11986c3927ec2d0af97cefcae42278f36 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Wed, 14 Feb 2024 22:55:18 +0100 Subject: [PATCH 81/87] chore(deps): update pnpm to v8.15.2 (#88) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d0d0a1786..5dc6d4c29 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "node": ">=20.11.0" }, "type": "module", - "packageManager": "pnpm@8.15.1", + "packageManager": "pnpm@8.15.2", "scripts": { "build": "turbo build", "clean": "git clean -xdf node_modules", From b77e6528225a54839c5b09ad2464c6ab266259c6 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 20:22:00 +0100 Subject: [PATCH 82/87] fix(deps): update tanstack-query monorepo to ^5.20.5 (#86) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 6 ++--- pnpm-lock.yaml | 58 ++++++++++++++++++++-------------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 139aa3533..5b850972c 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -29,9 +29,9 @@ "@mantine/modals": "^7.5.2", "@mantine/tiptap": "^7.5.2", "@t3-oss/env-nextjs": "^0.9.2", - "@tanstack/react-query": "^5.20.1", - "@tanstack/react-query-devtools": "^5.20.1", - "@tanstack/react-query-next-experimental": "5.20.1", + "@tanstack/react-query": "^5.20.5", + "@tanstack/react-query-devtools": "^5.20.5", + "@tanstack/react-query-next-experimental": "5.20.5", "@tiptap/extension-link": "^2.2.2", "@tiptap/react": "^2.2.2", "@tiptap/starter-kit": "^2.2.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4da1a9fe5..be0c49206 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -106,14 +106,14 @@ importers: specifier: ^0.9.2 version: 0.9.2(typescript@5.3.3)(zod@3.22.4) '@tanstack/react-query': - specifier: ^5.20.1 - version: 5.20.1(react@18.2.0) + specifier: ^5.20.5 + version: 5.20.5(react@18.2.0) '@tanstack/react-query-devtools': - specifier: ^5.20.1 - version: 5.20.1(@tanstack/react-query@5.20.1)(react@18.2.0) + specifier: ^5.20.5 + version: 5.20.5(@tanstack/react-query@5.20.5)(react@18.2.0) '@tanstack/react-query-next-experimental': - specifier: 5.20.1 - version: 5.20.1(@tanstack/react-query@5.20.1)(next@14.1.0)(react@18.2.0) + specifier: 5.20.5 + version: 5.20.5(@tanstack/react-query@5.20.5)(next@14.1.0)(react@18.2.0) '@tiptap/extension-link': specifier: ^2.2.2 version: 2.2.2(@tiptap/core@2.2.2)(@tiptap/pm@2.2.2) @@ -128,10 +128,10 @@ importers: version: 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/next': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.20.5)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0) '@trpc/react-query': specifier: next - version: 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + version: 11.0.0-next.92(@tanstack/react-query@5.20.5)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': specifier: next version: 11.0.0-alpha-next-2023-10-26-15-15-56.93 @@ -2115,43 +2115,43 @@ packages: resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} dev: false - /@tanstack/query-core@5.20.1: - resolution: {integrity: sha512-OONHHYG5vzjob4An+EfzbW7TRyb+sCA0AEgHzUIMlV9NYlF7wIwbla3PUfB3ocnaK1gZyROf0Lux/CBSu0exBQ==} + /@tanstack/query-core@5.20.5: + resolution: {integrity: sha512-T1W28gGgWn0A++tH3lxj3ZuUVZZorsiKcv+R50RwmPYz62YoDEkG4/aXHZELGkRp4DfrW07dyq2K5dvJ4Wl1aA==} dev: false - /@tanstack/query-devtools@5.20.1: - resolution: {integrity: sha512-sSYo+GW7tx28M6FpcGqzo/zblbTEKrCG8THXOPoNy+EL1Z7kX4JXhRcihyKu3mY8MS/wsGghrZ/R0VTt6JXmBA==} + /@tanstack/query-devtools@5.20.2: + resolution: {integrity: sha512-BZfSjhk/NGPbqte5E3Vc1Zbj28uWt///4I0DgzAdWrOtMVvdl0WlUXK23K2daLsbcyfoDR4jRI4f2Z5z/mMzuw==} dev: false - /@tanstack/react-query-devtools@5.20.1(@tanstack/react-query@5.20.1)(react@18.2.0): - resolution: {integrity: sha512-VMjNjWLTu4+k0pGAhcsI8igtUI93ksrn4QDruaxbXdvLE3Yvfj8eaDVCemkmAySk7pCQJf4hhdByB/yOKSmIsg==} + /@tanstack/react-query-devtools@5.20.5(@tanstack/react-query@5.20.5)(react@18.2.0): + resolution: {integrity: sha512-Wl7IzNuKCb4h41a5iH/YXNwalHItqJPCAr4r8+0iUYOLHNOf3E9P0G4kzZ9sqDoWKxY04qst6Vrij9bwPzLQRQ==} peerDependencies: - '@tanstack/react-query': ^5.20.1 + '@tanstack/react-query': ^5.20.5 react: ^18.0.0 dependencies: - '@tanstack/query-devtools': 5.20.1 - '@tanstack/react-query': 5.20.1(react@18.2.0) + '@tanstack/query-devtools': 5.20.2 + '@tanstack/react-query': 5.20.5(react@18.2.0) react: 18.2.0 dev: false - /@tanstack/react-query-next-experimental@5.20.1(@tanstack/react-query@5.20.1)(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-S3cfhxZOaf/l4H0Xgg5dZ8zTvZko0Z+rHrt6V81/mQHAzdMBklw8O7nxd46NQjKOjS5Mb4E1WxmjWipVrs2usw==} + /@tanstack/react-query-next-experimental@5.20.5(@tanstack/react-query@5.20.5)(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-P4r357MckowLGUAeQJ9UWTBK4i/JS/G4alBuXkNNyDp8md/pzk/VXG4y+c6/kJWOoi/Qtawz122l4oMJFp3MHA==} peerDependencies: - '@tanstack/react-query': ^5.20.1 + '@tanstack/react-query': ^5.20.5 next: ^13 || ^14 react: ^18.0.0 dependencies: - '@tanstack/react-query': 5.20.1(react@18.2.0) + '@tanstack/react-query': 5.20.5(react@18.2.0) next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false - /@tanstack/react-query@5.20.1(react@18.2.0): - resolution: {integrity: sha512-KRkOtJ47tv9B3EXfjHkbPkiFzOzYCOid8BrYBozk0rm9JpDB2xSf71q8w1PRudlQW6QUQIEDI9E6NIMh6AlLUw==} + /@tanstack/react-query@5.20.5(react@18.2.0): + resolution: {integrity: sha512-6MHwJ8G9cnOC/XKrwt56QMc91vN7hLlAQNUA0ubP7h9Jj3a/CmkUwT6ALdFbnVP+PsYdhW3WONa8WQ4VcTaSLQ==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.20.1 + '@tanstack/query-core': 5.20.5 react: 18.2.0 dev: false @@ -2448,7 +2448,7 @@ packages: '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 dev: false - /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): + /@trpc/next@11.0.0-next.92(@tanstack/react-query@5.20.5)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/react-query@11.0.0-next.92)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(next@14.1.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-H3o5BhtAzuf3nR92eLJlMPi4jD8OOFdxWqxP+RDLyu0gYcEYn4pXh4nEPgrzGt1djLvlljtEnMEvjuoFrQQQQw==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2459,9 +2459,9 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.20.1(react@18.2.0) + '@tanstack/react-query': 5.20.5(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) - '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) + '@trpc/react-query': 11.0.0-next.92(@tanstack/react-query@5.20.5)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 @@ -2469,7 +2469,7 @@ packages: react-ssr-prepass: 1.5.0(react@18.2.0) dev: false - /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.20.1)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): + /@trpc/react-query@11.0.0-next.92(@tanstack/react-query@5.20.5)(@trpc/client@11.0.0-alpha-next-2023-10-26-15-15-56.93)(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-W6/AnO68p3MCQ7QnujYOnYnygHzwmmSW57rl4DcQqkLVrcADMdsKz7ZdrULFBasVi2azXMw2rj9kYvs8W2mwQg==} peerDependencies: '@tanstack/react-query': ^5.0.0 @@ -2478,7 +2478,7 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@tanstack/react-query': 5.20.1(react@18.2.0) + '@tanstack/react-query': 5.20.5(react@18.2.0) '@trpc/client': 11.0.0-alpha-next-2023-10-26-15-15-56.93(@trpc/server@11.0.0-alpha-next-2023-10-26-15-15-56.93) '@trpc/server': 11.0.0-alpha-next-2023-10-26-15-15-56.93 react: 18.2.0 From 336dc38b2d0f6932eaacee354640ffa5ec92729e Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 20:23:57 +0100 Subject: [PATCH 83/87] fix(deps): update dependency next-auth to v5.0.0-beta.11 (#91) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 35 +++++++++++++++++++++++++++++------ 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 745f0c7c5..3eb27e985 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -25,7 +25,7 @@ "bcrypt": "^5.1.1", "cookies": "^0.9.1", "next": "^14.1.0", - "next-auth": "5.0.0-beta.9", + "next-auth": "5.0.0-beta.11", "react": "18.2.0", "react-dom": "18.2.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index be0c49206..57f7281e1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -261,8 +261,8 @@ importers: specifier: ^14.1.0 version: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) next-auth: - specifier: 5.0.0-beta.9 - version: 5.0.0-beta.9(next@14.1.0)(react@18.2.0) + specifier: 5.0.0-beta.11 + version: 5.0.0-beta.11(next@14.1.0)(react@18.2.0) react: specifier: 18.2.0 version: 18.2.0 @@ -678,6 +678,29 @@ packages: preact-render-to-string: 5.2.3(preact@10.11.3) dev: false + /@auth/core@0.27.0: + resolution: {integrity: sha512-3bydnRJIM/Al6mkYmb53MsC+6G8ojw3lLPzwgVnX4dCo6N2lrib6Wq6r0vxZIhuHGjLObqqtUfpeaEj5aeTHFg==} + peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.2 + nodemailer: ^6.8.0 + peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true + nodemailer: + optional: true + dependencies: + '@panva/hkdf': 1.1.1 + '@types/cookie': 0.6.0 + cookie: 0.6.0 + jose: 5.2.1 + oauth4webapi: 2.10.3 + preact: 10.11.3 + preact-render-to-string: 5.2.3(preact@10.11.3) + dev: false + /@auth/drizzle-adapter@0.6.3: resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} dependencies: @@ -6065,11 +6088,11 @@ packages: engines: {node: '>= 0.4.0'} dev: true - /next-auth@5.0.0-beta.9(next@14.1.0)(react@18.2.0): - resolution: {integrity: sha512-BWFiwJ/wzfxWpHnGpAoFsXHSlVofWgFns6tjtIGeDrXfEf3D+afnBpmzCNyek2RNYDVgMHi8Q5uXzFoNBd2l5g==} + /next-auth@5.0.0-beta.11(next@14.1.0)(react@18.2.0): + resolution: {integrity: sha512-OrfOVyXBGC69O8lEe81ZwFzQuWnY3Bsqee7kawr1iBycgSD64oNCtoFvRXiOWe7R0jOaafqQQlpsOS0mARhT3Q==} peerDependencies: '@simplewebauthn/browser': ^9.0.1 - '@simplewebauthn/server': ^9.0.1 + '@simplewebauthn/server': ^9.0.2 next: ^14 nodemailer: ^6.6.5 react: ^18.2.0 @@ -6081,7 +6104,7 @@ packages: nodemailer: optional: true dependencies: - '@auth/core': 0.26.3 + '@auth/core': 0.27.0 next: 14.1.0(@babel/core@7.23.9)(react-dom@18.2.0)(react@18.2.0)(sass@1.70.0) react: 18.2.0 dev: false From 11393525d9bfc192818c1ef2d80c3d41f56fcca3 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 20:28:21 +0100 Subject: [PATCH 84/87] fix(deps): update dependency @auth/drizzle-adapter to ^0.7.0 (#90) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 3eb27e985..839d4c06f 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -20,7 +20,7 @@ "dependencies": { "@homarr/db": "workspace:^0.1.0", "@auth/core": "^0.26.3", - "@auth/drizzle-adapter": "^0.6.3", + "@auth/drizzle-adapter": "^0.7.0", "@t3-oss/env-nextjs": "^0.9.2", "bcrypt": "^5.1.1", "cookies": "^0.9.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 57f7281e1..0e0edaef0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -243,8 +243,8 @@ importers: specifier: ^0.26.3 version: 0.26.3 '@auth/drizzle-adapter': - specifier: ^0.6.3 - version: 0.6.3 + specifier: ^0.7.0 + version: 0.7.0 '@homarr/db': specifier: workspace:^0.1.0 version: link:../db @@ -701,10 +701,10 @@ packages: preact-render-to-string: 5.2.3(preact@10.11.3) dev: false - /@auth/drizzle-adapter@0.6.3: - resolution: {integrity: sha512-iQPNRgNXiQYMDxd2KtXIp+h/jEdoC73HhkY1S5pCMEPLfxhnqdK6TUGTrDKufmZtebbD7a+jyoLAex/xJBvVxw==} + /@auth/drizzle-adapter@0.7.0: + resolution: {integrity: sha512-p/8cjrREiPPns78CT/a7VGl2TD78BNXtJ9TAXrw80bUInHd2xkEtk4CzXajWS/5r7qXE9n3r4BV9sISrf6Yqnw==} dependencies: - '@auth/core': 0.26.3 + '@auth/core': 0.27.0 transitivePeerDependencies: - '@simplewebauthn/browser' - '@simplewebauthn/server' From 6c5e4752eaf7a07f9e80951541108643efb0faae Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 20:39:55 +0100 Subject: [PATCH 85/87] fix(deps): update dependency @auth/core to ^0.27.0 (#89) * fix(deps): update dependency @auth/core to ^0.27.0 * fix: lockfile broken --------- Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- packages/auth/package.json | 2 +- pnpm-lock.yaml | 27 ++------------------------- 2 files changed, 3 insertions(+), 26 deletions(-) diff --git a/packages/auth/package.json b/packages/auth/package.json index 839d4c06f..23bd81cea 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -19,7 +19,7 @@ }, "dependencies": { "@homarr/db": "workspace:^0.1.0", - "@auth/core": "^0.26.3", + "@auth/core": "^0.27.0", "@auth/drizzle-adapter": "^0.7.0", "@t3-oss/env-nextjs": "^0.9.2", "bcrypt": "^5.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e0edaef0..64c37d5c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -240,8 +240,8 @@ importers: packages/auth: dependencies: '@auth/core': - specifier: ^0.26.3 - version: 0.26.3 + specifier: ^0.27.0 + version: 0.27.0 '@auth/drizzle-adapter': specifier: ^0.7.0 version: 0.7.0 @@ -655,29 +655,6 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - /@auth/core@0.26.3: - resolution: {integrity: sha512-Ka6rMjWMdiQCvLW/CnYZxj4Rq2bhQ/ZtU32NLxmtyAaixGb0mRXQ9MxJUBZA7GHovbghdzu55p2Cb54qNlVFzw==} - peerDependencies: - '@simplewebauthn/browser': ^9.0.1 - '@simplewebauthn/server': ^9.0.1 - nodemailer: ^6.8.0 - peerDependenciesMeta: - '@simplewebauthn/browser': - optional: true - '@simplewebauthn/server': - optional: true - nodemailer: - optional: true - dependencies: - '@panva/hkdf': 1.1.1 - '@types/cookie': 0.6.0 - cookie: 0.6.0 - jose: 5.2.1 - oauth4webapi: 2.10.3 - preact: 10.11.3 - preact-render-to-string: 5.2.3(preact@10.11.3) - dev: false - /@auth/core@0.27.0: resolution: {integrity: sha512-3bydnRJIM/Al6mkYmb53MsC+6G8ojw3lLPzwgVnX4dCo6N2lrib6Wq6r0vxZIhuHGjLObqqtUfpeaEj5aeTHFg==} peerDependencies: From f91338446df1eafce92842fa0ce9ebdabea7f629 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Thu, 15 Feb 2024 20:40:50 +0100 Subject: [PATCH 86/87] fix(deps): update typescript-eslint monorepo to v7 (#87) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 100 ++++++++++++++++++------------------ tooling/eslint/package.json | 4 +- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 64c37d5c4..480c79011 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -580,11 +580,11 @@ importers: specifier: ^14.1.0 version: 14.1.0 '@typescript-eslint/eslint-plugin': - specifier: ^6.21.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3) + specifier: ^7.0.1 + version: 7.0.1(@typescript-eslint/parser@7.0.1)(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: ^6.21.0 - version: 6.21.0(eslint@8.56.0)(typescript@5.3.3) + specifier: ^7.0.1 + version: 7.0.1(eslint@8.56.0)(typescript@5.3.3) eslint-config-prettier: specifier: ^9.1.0 version: 9.1.0(eslint@8.56.0) @@ -593,7 +593,7 @@ importers: version: 1.12.4(eslint@8.56.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@7.0.1)(eslint@8.56.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 version: 6.8.0(eslint@8.56.0) @@ -2771,23 +2771,23 @@ packages: resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==} dev: false - /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} + /@typescript-eslint/eslint-plugin@7.0.1(@typescript-eslint/parser@7.0.1)(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-OLvgeBv3vXlnnJGIAgCLYKjgMEU+wBGj07MQ/nxAaON+3mLzX7mJbhRYrVGiVvFiXtwFlkcBa/TtmglHy0UbzQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/parser': 7.0.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 7.0.1 + '@typescript-eslint/type-utils': 7.0.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/utils': 7.0.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 7.0.1 debug: 4.3.4 eslint: 8.56.0 graphemer: 1.4.0 @@ -2800,20 +2800,20 @@ packages: - supports-color dev: false - /@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} + /@typescript-eslint/parser@7.0.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-8GcRRZNzaHxKzBPU3tKtFNing571/GwPBeCvmAUw0yBtfE2XVd0zFKJIMSWkHJcPQi0ekxjIts6L/rrZq5cxGQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/scope-manager': 7.0.1 + '@typescript-eslint/types': 7.0.1 + '@typescript-eslint/typescript-estree': 7.0.1(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 7.0.1 debug: 4.3.4 eslint: 8.56.0 typescript: 5.3.3 @@ -2821,26 +2821,26 @@ packages: - supports-color dev: false - /@typescript-eslint/scope-manager@6.21.0: - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + /@typescript-eslint/scope-manager@7.0.1: + resolution: {integrity: sha512-v7/T7As10g3bcWOOPAcbnMDuvctHzCFYCG/8R4bK4iYzdFqsZTbXGln0cZNVcwQcwewsYU2BJLay8j0/4zOk4w==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/types': 7.0.1 + '@typescript-eslint/visitor-keys': 7.0.1 dev: false - /@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} + /@typescript-eslint/type-utils@7.0.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-YtT9UcstTG5Yqy4xtLiClm1ZpM/pWVGFnkAa90UfdkkZsR1eP2mR/1jbHeYp8Ay1l1JHPyGvoUYR6o3On5Nhmw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 7.0.1(typescript@5.3.3) + '@typescript-eslint/utils': 7.0.1(eslint@8.56.0)(typescript@5.3.3) debug: 4.3.4 eslint: 8.56.0 ts-api-utils: 1.0.1(typescript@5.3.3) @@ -2849,13 +2849,13 @@ packages: - supports-color dev: false - /@typescript-eslint/types@6.21.0: - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + /@typescript-eslint/types@7.0.1: + resolution: {integrity: sha512-uJDfmirz4FHib6ENju/7cz9SdMSkeVvJDK3VcMFvf/hAShg8C74FW+06MaQPODHfDJp/z/zHfgawIJRjlu0RLg==} engines: {node: ^16.0.0 || >=18.0.0} dev: false - /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3): - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + /@typescript-eslint/typescript-estree@7.0.1(typescript@5.3.3): + resolution: {integrity: sha512-SO9wHb6ph0/FN5OJxH4MiPscGah5wjOd0RRpaLvuBv9g8565Fgu0uMySFEPqwPHiQU90yzJ2FjRYKGrAhS1xig==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -2863,8 +2863,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/types': 7.0.1 + '@typescript-eslint/visitor-keys': 7.0.1 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2876,18 +2876,18 @@ packages: - supports-color dev: false - /@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} + /@typescript-eslint/utils@7.0.1(eslint@8.56.0)(typescript@5.3.3): + resolution: {integrity: sha512-oe4his30JgPbnv+9Vef1h48jm0S6ft4mNwi9wj7bX10joGn07QRfqIqFHoMiajrtoU88cIhXf8ahwgrcbNLgPA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/scope-manager': 7.0.1 + '@typescript-eslint/types': 7.0.1 + '@typescript-eslint/typescript-estree': 7.0.1(typescript@5.3.3) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -2895,11 +2895,11 @@ packages: - typescript dev: false - /@typescript-eslint/visitor-keys@6.21.0: - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + /@typescript-eslint/visitor-keys@7.0.1: + resolution: {integrity: sha512-hwAgrOyk++RTXrP4KzCg7zB2U0xt7RUU0ZdMSCsqF3eKUwkdXUMyTb0qdCuji7VIbcpG62kKTU9M1J1c9UpFBw==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/types': 7.0.1 eslint-visitor-keys: 3.4.3 dev: false @@ -4362,7 +4362,7 @@ packages: - supports-color dev: false - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@7.0.1)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -4383,7 +4383,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 7.0.1(eslint@8.56.0)(typescript@5.3.3) debug: 3.2.7 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -4391,7 +4391,7 @@ packages: - supports-color dev: false - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0): + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.0.1)(eslint@8.56.0): resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: @@ -4401,7 +4401,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 7.0.1(eslint@8.56.0)(typescript@5.3.3) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -4410,7 +4410,7 @@ packages: doctrine: 2.1.0 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.0.1)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0) hasown: 2.0.0 is-core-module: 2.13.1 is-glob: 4.0.3 diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index 76f76c6df..873dd8b89 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -16,8 +16,8 @@ }, "dependencies": { "@next/eslint-plugin-next": "^14.1.0", - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", + "@typescript-eslint/eslint-plugin": "^7.0.1", + "@typescript-eslint/parser": "^7.0.1", "eslint-config-prettier": "^9.1.0", "eslint-config-turbo": "^1.12.4", "eslint-plugin-import": "^2.29.1", From 144e1512f78d5a6b11e617bd1ce7921f21dfa635 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Fri, 16 Feb 2024 20:26:48 +0100 Subject: [PATCH 87/87] ci: update node version to 20 --- tooling/github/setup/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tooling/github/setup/action.yml b/tooling/github/setup/action.yml index 9ef92c443..5685a1d88 100644 --- a/tooling/github/setup/action.yml +++ b/tooling/github/setup/action.yml @@ -7,7 +7,7 @@ runs: - uses: pnpm/action-setup@v2 - uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: "pnpm" - shell: bash