From e290cd5781d376f13af2010e742b3c21656e2969 Mon Sep 17 00:00:00 2001 From: Sean Marcia Date: Mon, 11 Sep 2023 23:07:40 -0400 Subject: [PATCH] First --- .eslintrc.json | 17 + .github/PULL_REQUEST_TEMPLATE.md | 12 + .github/dependabot.yml | 11 + .github/workflows/deploy.yml | 91 + .github/workflows/pr.yml | 47 + .gitignore | 40 + .husky/pre-commit | 4 + .prettierrc | 9 + LICENSE | 9 + README.md | 53 + components/AddYourProjectLinkButton.tsx | 14 + components/IssueItem.tsx | 41 + components/IssueList.tsx | 16 + components/Layout.tsx | 20 + components/Navbar.tsx | 26 + components/RepositoryDescription.tsx | 13 + components/RepositoryIssueNumberIndicator.tsx | 21 + components/RepositoryItem.tsx | 55 + components/RepositoryItemTopBar.tsx | 39 + components/RepositoryLinkTitle.tsx | 27 + components/RepositoryList.tsx | 45 + components/RepositoryMetadata.tsx | 36 + components/ShowMoreTopicsButton.tsx | 15 + components/Sidebar.tsx | 43 + components/SidebarAboutSection.tsx | 35 + components/SidebarItemHeader.tsx | 7 + components/SidebarLanguagePicker.tsx | 38 + components/SidebarPickerItemLink.tsx | 26 + components/SidebarRepositorySortPicker.tsx | 37 + components/SidebarTopicPicker.tsx | 51 + constants.ts | 7 + context/AppDataContext.tsx | 70 + firstissue.json | 124 + generate.ts | 355 + generated.json | 1 + hooks/useAppData.tsx | 13 + next.config.js | 9 + package-lock.json | 9055 +++++++++++++++++ package.json | 54 + pages/_app.tsx | 34 + pages/_document.tsx | 61 + pages/index.tsx | 17 + pages/language/[tag].tsx | 50 + pages/search/[tag].tsx | 42 + pages/topic/[tag].tsx | 52 + postcss.config.js | 6 + public/favicon.png | Bin 0 -> 7824 bytes public/firstissue.png | Bin 0 -> 66329 bytes public/meta.png | Bin 0 -> 152114 bytes public/robots.txt | 3 + styles/globals.css | 10 + tailwind.config.js | 74 + tsconfig.json | 20 + types.ts | 62 + 54 files changed, 11017 insertions(+) create mode 100644 .eslintrc.json create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/deploy.yml create mode 100644 .github/workflows/pr.yml create mode 100644 .gitignore create mode 100755 .husky/pre-commit create mode 100644 .prettierrc create mode 100644 LICENSE create mode 100644 README.md create mode 100644 components/AddYourProjectLinkButton.tsx create mode 100644 components/IssueItem.tsx create mode 100644 components/IssueList.tsx create mode 100644 components/Layout.tsx create mode 100644 components/Navbar.tsx create mode 100644 components/RepositoryDescription.tsx create mode 100644 components/RepositoryIssueNumberIndicator.tsx create mode 100644 components/RepositoryItem.tsx create mode 100644 components/RepositoryItemTopBar.tsx create mode 100644 components/RepositoryLinkTitle.tsx create mode 100644 components/RepositoryList.tsx create mode 100644 components/RepositoryMetadata.tsx create mode 100644 components/ShowMoreTopicsButton.tsx create mode 100644 components/Sidebar.tsx create mode 100644 components/SidebarAboutSection.tsx create mode 100644 components/SidebarItemHeader.tsx create mode 100644 components/SidebarLanguagePicker.tsx create mode 100644 components/SidebarPickerItemLink.tsx create mode 100644 components/SidebarRepositorySortPicker.tsx create mode 100644 components/SidebarTopicPicker.tsx create mode 100644 constants.ts create mode 100644 context/AppDataContext.tsx create mode 100644 firstissue.json create mode 100644 generate.ts create mode 100644 generated.json create mode 100644 hooks/useAppData.tsx create mode 100644 next.config.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 pages/_app.tsx create mode 100644 pages/_document.tsx create mode 100644 pages/index.tsx create mode 100644 pages/language/[tag].tsx create mode 100644 pages/search/[tag].tsx create mode 100644 pages/topic/[tag].tsx create mode 100644 postcss.config.js create mode 100644 public/favicon.png create mode 100644 public/firstissue.png create mode 100644 public/meta.png create mode 100644 public/robots.txt create mode 100644 styles/globals.css create mode 100644 tailwind.config.js create mode 100644 tsconfig.json create mode 100644 types.ts diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 00000000..fb243737 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,17 @@ +{ + "extends": [ + "plugin:@typescript-eslint/recommended", + "next", + "next/core-web-vitals", + "prettier" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "jsx": true + }, + "ecmaVersion": 12, + "sourceType": "module" + }, + "plugins": ["@typescript-eslint"] +} diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..3b3bb939 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,12 @@ +#### ℹī¸ Repository information + +**The repository has**: + +- [ ] At least three issues with the `good first issue`, or other labels specified in `firstissue.json` (see `labels` and the end). + - Link: +- [ ] At least 10 contributors. +- [ ] At least 1000 stars. +- [ ] Detailed setup instructions for the project. + - Link: +- [ ] CONTRIBUTING.md +- [ ] Actively maintained (last updated less than 1 months ago). diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..3a3cce57 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "npm" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..60449659 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,91 @@ +name: Deploy to happycommits.dev + +on: + # Runs on pushes targeting the default branch + push: + branches: ["main"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + + # Allows you to trigger this workflow from another workflow + workflow_call: + + # Cron schedule, everyday at midnight + schedule: + - cron: '0 0 * * *' + + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: write + pages: write + id-token: write + +# Allow one concurrent deployment +concurrency: + group: "pages" + cancel-in-progress: true + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: "18" + cache: ${{ steps.detect-package-manager.outputs.manager }} + - name: Setup Pages + uses: actions/configure-pages@v2 + with: + # Automatically inject basePath in your Next.js configuration file and disable + # server side image optimization (https://nextjs.org/docs/api-reference/next/image#unoptimized). + # + # You may remove this line if you want to manage the configuration yourself. + static_site_generator: next + - name: Restore cache + uses: actions/cache@v3 + with: + path: | + .next/cache + # Generate a new cache whenever packages or source files change. + key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }} + # If source files changed but packages didn't, rebuild from a prior cache. + restore-keys: | + ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}- + - name: Install dependencies + run: npm install + - name: Build with Next.js + run: npm run build + env: + GH_PERSONAL_ACCESS_TOKEN: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }} + - name: Update firstissue.json + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: update firstissue.json [skip actions] + branch: json-updates + file_pattern: 'firstissue.json' + skip_checkout: true + push_options: '--force' + - name: Static HTML export with Next.js + run: npm run export + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + path: ./out + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 00000000..9a72c1af --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,47 @@ +name: Check pull request + +on: [push, pull_request] + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: "18" + cache: ${{ steps.detect-package-manager.outputs.manager }} + - name: Setup Pages + uses: actions/configure-pages@v2 + with: + # Automatically inject basePath in your Next.js configuration file and disable + # server side image optimization (https://nextjs.org/docs/api-reference/next/image#unoptimized). + # + # You may remove this line if you want to manage the configuration yourself. + static_site_generator: next + - name: Restore cache + uses: actions/cache@v3 + with: + path: | + .next/cache + # Generate a new cache whenever packages or source files change. + key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }} + # If source files changed but packages didn't, rebuild from a prior cache. + restore-keys: | + ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}- + - name: Install dependencies + run: npm install + - name: Build with Next.js + run: npm run build + env: + GH_PERSONAL_ACCESS_TOKEN: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }} + NODE_ENV: "development" + - name: Static HTML export with Next.js + run: npm run export + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + path: ./out diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..a675b227 --- /dev/null +++ b/.gitignore @@ -0,0 +1,40 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. +/.history + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts +.vscode +.todo +public/sitemap.xml diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 00000000..75fac8e1 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +npm run lint diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..ffd377f2 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,9 @@ +{ + "printWidth": 100, + "tabWidth": 2, + "trailingComma": "none", + "bracketSpacing": true, + "importOrder": ["^@core/(.*)$", "^@server/(.*)$", "^@ui/(.*)$", "^[./]"], + "importOrderSeparation": true, + "importOrderSortSpecifiers": true +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..afdd2d1a --- /dev/null +++ b/LICENSE @@ -0,0 +1,9 @@ +Copyright 2020 DeepSource Corp. +Copyright 2022 Luca Cavallin +Copyright 2023 GitHub Social Impact and Ruby for Good + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 00000000..7eafeb0e --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +Welcome! 👋đŸŧ + +**Happy Commits** curates social impact and civic tech open source projects that are looking for contributors and lists issues on thost projects that are tagged with Help Wanted or Good First Issue. + +Open-source maintainers are always looking to get more people involved, but it can be challenging to become a contributor. Happy Commits lowers the barrier for future contributions to social and civic good projects - and this is why it exists. + +## Adding a new project + +You're welcome to add a new project in First Issue, just follow these steps: + +- To maintain the quality of projects in First Issue, please make sure the GitHub repository you want to add meets the following criteria: + + - It has at least three issues with the `good first issue` label or other labels defined in `firstissue.json` (see `labels` and the end). + + - It has at least 10 contributors. + + - It has at least 1000 stars. + + - It contains a README.md with detailed setup instructions for the project, and a CONTRIBUTING.md with guidelines for new contributors. + + - It is actively maintained (last update less than 1 month ago). + +- Add your repository's path (in the format `owner/name` and lexicographic order) to [firstissue.json](firstissue.json). + +- Create a new pull-request. Please add the link to the issues page of the repository in the PR description. Once the pull request is merged, the changes will be live on the site. + +## How does it work? + +First Issue is a static website that uses Next.js, React and Typescript. The data shown on the website is loaded from the [generated.json](generated.json) file, which is generated by [generate.ts](generate.ts) by querying the GitHub API to fetch issues from the repositories listed in [firstissue.json](firstissue.json). The labels defined in [firstissue.json](firstissue.json) are used to filter issues for the repositories. + +To contribute new features and changes to the website, you would want to run the app locally. Please follow these steps: + + +## How to setup the project locally +1. Fork the repository, clone it locally, create a new branch to work on a specific feature or bug fix without affecting the main branch of the repository. Make sure you have a recent version of Node.js installed on your computer. +1. You can use the included [generated.json](generated.json) as dummy data or you can run `npm run prebuild` to fetch the latest data from GitHub yourself: for this, you will need to set the `GH_PERSONAL_ACCESS_TOKEN` environment variable to a valid GitHub Personal Access Token (PAT). Notice: repositories not maching the criteria listed above (see rules in [generated.json](generated.json)) are automatically removed from [firstissue.json](firstissue.json) when the [generated.json](generated.json) script runs. +1. Start the development server and open the app in your browser. + +```bash +# install the dependencies +$ npm install +# start the development server +$ npm run dev +``` + +Good to know when you commit: the project contains a `pre-commit` hook that runs linters automatically to ensure code quality! + +#### Credits + +This project is based on [good-first-issue](https://github.com/deepsourcelabs/good-first-issue) and [first-issue](https://github.com/lucavallin/first-issue). + + + diff --git a/components/AddYourProjectLinkButton.tsx b/components/AddYourProjectLinkButton.tsx new file mode 100644 index 00000000..a652d26e --- /dev/null +++ b/components/AddYourProjectLinkButton.tsx @@ -0,0 +1,14 @@ +export const AddYourProjectLinkButton = () => { + return ( +
+ + Add your project + +
+ ); +}; diff --git a/components/IssueItem.tsx b/components/IssueItem.tsx new file mode 100644 index 00000000..0f6ad2f6 --- /dev/null +++ b/components/IssueItem.tsx @@ -0,0 +1,41 @@ +import { faComment } from "@fortawesome/free-regular-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import { Issue } from "../types"; + +type IssueItemProps = { + issue: Issue; +}; + +type IssueCommentNumProps = { + numIssues: number; +}; + +const IssueCommentNum = ({ numIssues }: IssueCommentNumProps) => { + return ( +
+ {numIssues} + +
+ ); +}; + +export const IssueItem = ({ issue }: IssueItemProps) => { + return ( +
  • + #{issue.number} +
    + + {issue.title} + + {issue.comments_count > 0 && } +
    +
  • + ); +}; diff --git a/components/IssueList.tsx b/components/IssueList.tsx new file mode 100644 index 00000000..f6f59fbd --- /dev/null +++ b/components/IssueList.tsx @@ -0,0 +1,16 @@ +import { Issue } from "../types"; +import { IssueItem } from "./IssueItem"; + +type IssueListProps = { + issues: Issue[]; +}; + +export const IssuesList = ({ issues }: IssueListProps) => { + return ( +
      + {issues.map((issue) => ( + + ))} +
    + ); +}; diff --git a/components/Layout.tsx b/components/Layout.tsx new file mode 100644 index 00000000..632681de --- /dev/null +++ b/components/Layout.tsx @@ -0,0 +1,20 @@ +import React from "react"; + +import { Navbar } from "./Navbar"; +import { Sidebar } from "./Sidebar"; + +type LayoutProps = { + children: React.ReactNode; +}; + +export const Layout = ({ children }: LayoutProps) => ( +
    + +
    +
    + + {children} +
    +
    +
    +); diff --git a/components/Navbar.tsx b/components/Navbar.tsx new file mode 100644 index 00000000..5d237dfc --- /dev/null +++ b/components/Navbar.tsx @@ -0,0 +1,26 @@ +import { useRouter } from "next/router"; +import React from "react"; + +import { useAppData } from "../hooks/useAppData"; +import { Tag } from "../types"; + +export const Navbar = () => { + const router = useRouter(); + const { tag: path } = router.query; + const { languages, topics } = useAppData(); + const tag = [...languages, ...topics].find((tag: Tag) => tag.id === path); + + return ( +
    + +
    + ); +}; diff --git a/components/RepositoryDescription.tsx b/components/RepositoryDescription.tsx new file mode 100644 index 00000000..018f844e --- /dev/null +++ b/components/RepositoryDescription.tsx @@ -0,0 +1,13 @@ +import { Repository } from "../types"; + +type RepositoryDescriptionProps = { + repositoryDescription: Repository["description"]; +}; + +export const RepositoryDescription = ({ repositoryDescription }: RepositoryDescriptionProps) => { + return ( +
    + {repositoryDescription} +
    + ); +}; diff --git a/components/RepositoryIssueNumberIndicator.tsx b/components/RepositoryIssueNumberIndicator.tsx new file mode 100644 index 00000000..59a6c010 --- /dev/null +++ b/components/RepositoryIssueNumberIndicator.tsx @@ -0,0 +1,21 @@ +type RepositoryIssueNumberIndicatorProps = { + isIssueOpen: boolean; + numberOfIssues: number; +}; + +export const RepositoryIssueNumberIndicator = ({ + isIssueOpen, + numberOfIssues +}: RepositoryIssueNumberIndicatorProps) => { + return ( + + {numberOfIssues} + {numberOfIssues >= 10 ? "+" : ""} issue + {numberOfIssues > 1 ? "s" : ""} + + ); +}; diff --git a/components/RepositoryItem.tsx b/components/RepositoryItem.tsx new file mode 100644 index 00000000..99abe476 --- /dev/null +++ b/components/RepositoryItem.tsx @@ -0,0 +1,55 @@ +import dayjs from "dayjs"; +import relativeTime from "dayjs/plugin/relativeTime"; +import React, { useEffect, useState } from "react"; + +import { Repository } from "../types"; +import { IssuesList } from "./IssueList"; +import { RepositoryDescription } from "./RepositoryDescription"; +import { RepositoryItemTopBar } from "./RepositoryItemTopBar"; +import { RepositoryMetadata } from "./RepositoryMetadata"; + +type RepositoryItemProps = { + repository: Repository; +}; + +export const RepositoryItem = ({ repository }: RepositoryItemProps) => { + const [isIssueOpen, setIsIssueOpen] = useState(false); + + dayjs.extend(relativeTime); + const useLastModified = (date: string) => { + const [lastModified, setLastModified] = useState(""); + + useEffect(() => setLastModified(dayjs(date).fromNow()), [date]); + + return lastModified; + }; + const lastModified = useLastModified(repository.last_modified); + + return ( +
    +
    setIsIssueOpen(!isIssueOpen)}> + + + +
    + {isIssueOpen && } +
    + ); +}; diff --git a/components/RepositoryItemTopBar.tsx b/components/RepositoryItemTopBar.tsx new file mode 100644 index 00000000..c12a71b8 --- /dev/null +++ b/components/RepositoryItemTopBar.tsx @@ -0,0 +1,39 @@ +import { Repository } from "../types"; +import { RepositoryIssueNumberIndicator } from "./RepositoryIssueNumberIndicator"; +import { RepositoryLinkTitle } from "./RepositoryLinkTitle"; + +type RepositoryItemTopBarProps = { + isIssueOpen: boolean; + repositoryHasNewIssues: boolean; + repositoryName: Repository["name"]; + repositoryNumIssues: number; + repositoryOwner: Repository["owner"]; + repositoryUrl: Repository["url"]; +}; + +export const RepositoryItemTopBar = ({ + isIssueOpen, + repositoryHasNewIssues, + repositoryName, + repositoryNumIssues, + repositoryOwner, + repositoryUrl +}: RepositoryItemTopBarProps) => { + return ( +
    + +
    +
    +
    + +
    + ); +}; diff --git a/components/RepositoryLinkTitle.tsx b/components/RepositoryLinkTitle.tsx new file mode 100644 index 00000000..af37aa7b --- /dev/null +++ b/components/RepositoryLinkTitle.tsx @@ -0,0 +1,27 @@ +import { Repository } from "../types"; + +type RepositoryLinkTitleProps = { + isIssueOpen: boolean; + repositoryName: Repository["name"]; + repositoryOwner: Repository["owner"]; + repositoryUrl: Repository["url"]; +}; + +export const RepositoryLinkTitle = ({ + isIssueOpen, + repositoryName, + repositoryOwner, + repositoryUrl +}: RepositoryLinkTitleProps) => { + return ( + + {repositoryOwner} / {repositoryName} + + ); +}; diff --git a/components/RepositoryList.tsx b/components/RepositoryList.tsx new file mode 100644 index 00000000..441fc73c --- /dev/null +++ b/components/RepositoryList.tsx @@ -0,0 +1,45 @@ +import { faCircleNotch } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import React, { useState } from "react"; +import InfiniteScroll from "react-infinite-scroll-component"; + +import { Repository } from "../types"; +import { RepositoryItem } from "./RepositoryItem"; + +type RepositoryListProps = { + repositories: Repository[]; +}; + +const Loader = () => ( +
    +
    + +
    +
    +); + +export const RepositoryList = ({ repositories }: RepositoryListProps) => { + const itemsPerScroll = 15; + const [items, setItems] = useState(itemsPerScroll); + + return ( +
    +
    + setItems(items + itemsPerScroll)} + hasMore={items < repositories.length} + loader={} + > + {repositories.slice(0, items).map((repository) => { + // NOTE - We sometimes get duplicate values back from GitHub API + // meaning we can't simply rely on the id as the key + const key = `${repository.id}_${new Date().getTime()}_${Math.random()}`; + + return ; + })} + +
    +
    + ); +}; diff --git a/components/RepositoryMetadata.tsx b/components/RepositoryMetadata.tsx new file mode 100644 index 00000000..e3331c08 --- /dev/null +++ b/components/RepositoryMetadata.tsx @@ -0,0 +1,36 @@ +import { Repository } from "../types"; + +type RepositoryMetadataProps = { + isIssueOpen: boolean; + lastModified: Repository["last_modified"]; + repositoryLang: Repository["language"]["display"]; + repositoryStars: Repository["stars_display"]; +}; + +export const RepositoryMetadata = ({ + isIssueOpen, + lastModified, + repositoryLang, + repositoryStars +}: RepositoryMetadataProps) => { + return ( +
    +
    + lang: + {repositoryLang} +
    +
    + stars: + {repositoryStars} +
    +
    + last activity: + {lastModified} +
    +
    + ); +}; diff --git a/components/ShowMoreTopicsButton.tsx b/components/ShowMoreTopicsButton.tsx new file mode 100644 index 00000000..e3d0233b --- /dev/null +++ b/components/ShowMoreTopicsButton.tsx @@ -0,0 +1,15 @@ +type ShowMoreTopicsButtonProps = { + hasMoreTopics: boolean; + onClick: () => void; +}; + +export const ShowMoreTopicsButton = ({ hasMoreTopics, onClick }: ShowMoreTopicsButtonProps) => { + return ( +
    + Show {hasMoreTopics ? "more..." : "less"} +
    + ); +}; diff --git a/components/Sidebar.tsx b/components/Sidebar.tsx new file mode 100644 index 00000000..b1947ab9 --- /dev/null +++ b/components/Sidebar.tsx @@ -0,0 +1,43 @@ +import { useRouter } from "next/router"; +import React from "react"; + +import { useAppData } from "../hooks/useAppData"; +import { AddYourProjectLinkButton } from "./AddYourProjectLinkButton"; +import { SidebarAboutSection } from "./SidebarAboutSection"; +import { SidebarLanguagePicker } from "./SidebarLanguagePicker"; +import { SidebarTopicPicker } from "./SidebarTopicPicker"; + +const DEFAULT_TOPICS_LIMIT = 15; + +export const Sidebar = () => { + const router = useRouter(); + const { languages, topics } = useAppData(); + const [showMoreTopics, setShowMoreTopics] = React.useState(false); + const { tag: activeTagId } = router.query; + + // NOTE: This is used to highlight the active language or topic + const pageName = router.pathname.split("/")[1]; + + const updateShowMoreTopics = () => { + if (!showMoreTopics) { + window.scrollTo(0, 0); + } + setShowMoreTopics(!showMoreTopics); + }; + + return ( +
    + + + + +
    + ); +}; diff --git a/components/SidebarAboutSection.tsx b/components/SidebarAboutSection.tsx new file mode 100644 index 00000000..048b632c --- /dev/null +++ b/components/SidebarAboutSection.tsx @@ -0,0 +1,35 @@ +import { faHeart } from "@fortawesome/free-regular-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +const ByLine = () => ( +
    + + + + A{" "} + + @github Social Impact + {" "} + initiative + + +
    +); + +export const SidebarAboutSection = () => { + return ( +
    +

    About

    +

    + Happy Commits curates social impact and civic tech open source projects that are looking for + contributors and lists issues on thost projects that are tagged with Help Wanted or Good First Issue. +

    + +
    + ); +}; diff --git a/components/SidebarItemHeader.tsx b/components/SidebarItemHeader.tsx new file mode 100644 index 00000000..b2e64f99 --- /dev/null +++ b/components/SidebarItemHeader.tsx @@ -0,0 +1,7 @@ +type SidebarItemHeaderProps = { + text: string; +}; + +export const SidebarItemHeader = ({ text }: SidebarItemHeaderProps) => ( +

    {text}

    +); diff --git a/components/SidebarLanguagePicker.tsx b/components/SidebarLanguagePicker.tsx new file mode 100644 index 00000000..086d25ea --- /dev/null +++ b/components/SidebarLanguagePicker.tsx @@ -0,0 +1,38 @@ +import { CountableTag } from "../types"; +import { SidebarItemHeader } from "./SidebarItemHeader"; +import { SidebarPickerItemLink } from "./SidebarPickerItemLink"; + +type SidebarLanguagePickerProps = { + activeTagId: string | string[] | undefined; + languages: CountableTag[]; + pageName: string; +}; + +export const SidebarLanguagePicker = ({ + activeTagId, + languages, + pageName +}: SidebarLanguagePickerProps) => { + return ( +
    + +
    + {languages.map((language) => { + return ( + + ); + })} +
    +
    + ); +}; diff --git a/components/SidebarPickerItemLink.tsx b/components/SidebarPickerItemLink.tsx new file mode 100644 index 00000000..06163ecb --- /dev/null +++ b/components/SidebarPickerItemLink.tsx @@ -0,0 +1,26 @@ +import Link from "next/link"; + +import { Tag } from "../types"; + +type SidebarPickerItemLinkProps = { + className: string; + totalOccurrences: number; + href: string; + text: Tag["display"]; +}; + +export const SidebarPickerItemLink = ({ + className, + totalOccurrences, + href, + text +}: SidebarPickerItemLinkProps) => { + return ( + + {text} + +  ×{totalOccurrences} + + + ); +}; diff --git a/components/SidebarRepositorySortPicker.tsx b/components/SidebarRepositorySortPicker.tsx new file mode 100644 index 00000000..84612b86 --- /dev/null +++ b/components/SidebarRepositorySortPicker.tsx @@ -0,0 +1,37 @@ +import { RepositorySortOrder } from "../types"; +import { SidebarItemHeader } from "./SidebarItemHeader"; + +type SidebarRepositorySortPickerProps = { + activeSort: RepositorySortOrder; + sortOptions: RepositorySortOrder[]; + onSortOrderSelect: (sortOrder: RepositorySortOrder) => void; +}; + +export const SidebarRepositorySortPicker = ({ + activeSort, + sortOptions, + onSortOrderSelect +}: SidebarRepositorySortPickerProps) => { + return ( +
    + +
    + {sortOptions.map((sortOption) => { + return ( + + ); + })} +
    +
    + ); +}; diff --git a/components/SidebarTopicPicker.tsx b/components/SidebarTopicPicker.tsx new file mode 100644 index 00000000..335707a9 --- /dev/null +++ b/components/SidebarTopicPicker.tsx @@ -0,0 +1,51 @@ +import { CountableTag } from "../types"; +import { ShowMoreTopicsButton } from "./ShowMoreTopicsButton"; +import { SidebarItemHeader } from "./SidebarItemHeader"; +import { SidebarPickerItemLink } from "./SidebarPickerItemLink"; + +type SidebarTopicPickerProps = { + activeTagId: string | string[] | undefined; + handleShowMoreTopics: () => void; + pageName: string; + showMoreTopics: boolean; + topics: CountableTag[]; + topicsLimit: number; +}; + +export const SidebarTopicPicker = ({ + activeTagId, + handleShowMoreTopics, + pageName, + showMoreTopics, + topics, + topicsLimit +}: SidebarTopicPickerProps) => { + const hasMoreTopics = topics.length > topicsLimit; + const sliceEndNum = showMoreTopics ? topics.length : topicsLimit; + + return ( +
    + +
    + {topics.slice(0, sliceEndNum).map((topic) => { + return ( + + ); + })} + {hasMoreTopics && ( + + )} +
    +
    + ); +}; diff --git a/constants.ts b/constants.ts new file mode 100644 index 00000000..8bba773d --- /dev/null +++ b/constants.ts @@ -0,0 +1,7 @@ +import { RepositorySortOrder } from "./types"; + +export const REPOSITORY_SORT_OPTIONS = [ + RepositorySortOrder.LEAST_STARS, + RepositorySortOrder.MOST_STARS, + RepositorySortOrder.NONE +]; diff --git a/context/AppDataContext.tsx b/context/AppDataContext.tsx new file mode 100644 index 00000000..325d7340 --- /dev/null +++ b/context/AppDataContext.tsx @@ -0,0 +1,70 @@ +import React, { createContext, useState } from "react"; + +import data from "../generated.json"; +import { AppData, CountableTag, Repository, RepositorySortOrder } from "../types"; + +const DEFAULT_VALUE: AppData = { + languages: [], + repositories: [], + repositorySortOrder: RepositorySortOrder.NONE, + topics: [], + updateRepositorySortOrder: () => {} +}; + +const AppDataContext = createContext(DEFAULT_VALUE); + +const AppDataProvider = ({ children }: { children: React.ReactNode }) => { + const { + repositories: allRepositories, + languages, + topics + }: { repositories: Repository[]; languages: CountableTag[]; topics: CountableTag[] } = data; + const [repositories, setRepositories] = useState(allRepositories); + const [repositorySortOrder, setRepositorySortOrder] = useState( + RepositorySortOrder.NONE + ); + + const updateRepositorySortOrder = (sortOrder: RepositorySortOrder) => { + const isSetToDefaultSort = sortOrder === RepositorySortOrder.NONE; + const shouldDeselect = !isSetToDefaultSort && sortOrder === repositorySortOrder; + + const finalSortOrder = shouldDeselect ? RepositorySortOrder.NONE : sortOrder; + + setRepositorySortOrder(finalSortOrder); + updateRepositoriesOnSortChange(finalSortOrder); + }; + + const updateRepositoriesOnSortChange = (sortOrder: RepositorySortOrder) => { + let updatedRepositories: Repository[] = []; + + if (sortOrder === RepositorySortOrder.MOST_STARS) { + updatedRepositories = [...allRepositories].sort((currentRepository, nextRepository) => { + return nextRepository.stars - currentRepository.stars; + }); + } + + if (sortOrder === RepositorySortOrder.LEAST_STARS) { + updatedRepositories = [...allRepositories].sort((currentRepository, nextRepository) => { + return currentRepository.stars - nextRepository.stars; + }); + } + + if (sortOrder === RepositorySortOrder.NONE) { + updatedRepositories = allRepositories; + } + + setRepositories(updatedRepositories); + }; + + const value = { + languages, + repositories, + repositorySortOrder, + topics, + updateRepositorySortOrder + }; + + return {children}; +}; + +export { AppDataProvider, AppDataContext }; diff --git a/firstissue.json b/firstissue.json new file mode 100644 index 00000000..fbac32df --- /dev/null +++ b/firstissue.json @@ -0,0 +1,124 @@ +{ + "repositories": [ + "rubyforgood/casa", + "qlt2020/doskaz", +"Altinn/altinn-studio", +"apache/fineract", +"decentralised-dataexchange/acapy-mydata-did-protocol", +"Bahmni/bahmni-core", +"medic/cht-core", +"coronasafe/care", +"Sunbird-cQube/cQube_Base", +"egovernments/DIGIT-OSS", +"egovernments/DIVOC", +"healthsites/healthsites", +"intrahealth/gofr", +"Zenysis/Harmony", +"undp/iVerify-Apps", +"unicef/kindly", +"kimetrica/MERON_api", +"openMF/community-app ", +"mosip/commons", +"mojaloop/central-ledger", +"opencrvs/opencrvs-core", +"I-TECH-UW/OpenELIS-Global-2", +"OpenLMIS/openlmis-ref-distro", +"openmrs/openmrs-contrib-android-client", +"opensrp/opensrp-server-core", +"WFP-VAM/prism-app", +"Bioverse-Labs/forest-map-app", +"rapidpro/rapidpro", +"akrosinc/reveal-client", +"santedb/santedb-server", +"simpledotorg/simple-server", +"statisticsnorway/statbus", +"Sunbird-RC/sunbird-rc-core", +"project-sunbird/sunbird-learning-platform", +"hzi-braunschweig/SORMAS-Project", +"vrapeutic/Rodja-webXR", +"drivendataorg/zamba", +"frappe/erpnext", +"glific/glific", +"Cirrolytix/aedes_dpg", +"kvklrao/Avyantra2023", +"getodk/central", +"dhis2/dhis2-core", +"RentadroneCL/Precision_Agriculture", +"Aam-Digital/ndb-core", +"Global-Policy-Lab/cider", +"dimagi/commcare-hq", +"OpenFn/core", +"globaleaks/GlobaLeaks", +"commitglobal/website-factory", +"commitglobal/housing-platform", +"commitglobal/hiv-support", +"nordic-institute/X-Road", +"Amref-Health-Africa-in-Uganda/sanidigslive03", +"cdsframework/ice", +"google/android-fhir", +"IntelliSOFT-Consulting/pvers", +"Scribble-Works/screenshot", +"CodeYourFuture/syllabus", +"MSH/Pharmadex2", +"BLSQ/openhexa-pipelines", +"openspp-project/openspp-docker", +"OpenTeleRehab/patient-service", +"datakind/Data-Observation-Toolkit", +"decentralised-dataexchange/dexa-smartcontracts", +"TIP-Global-Health/eheza-app", +"cboard-org/cboard", +"johnsonandjohnson/vxnaid", +"terraframe/geoprism-registry", +"consul/consul", +"BLSQ/iaso", +"kobotoolbox/kobo-install", +"OTTAA-Project/ottaa_project_flutter", +"global-asp/global-asp", +"primeroIMS/primero", +"Oky-period-tracker/period-tracker-app-whitelabelled-code", +"reconverse/trendeval/", +"IntelliSOFT-Consulting/Newborn-Nutrition-Reference-App", +"drivendataorg/deon", +"AppertaFoundation/openeyes", +"MochCare-Gh/service-provider-portal", +"iHRIS/iHRIS", +"decidim/decidim", +"google/fhir-gateway", +"intelligent-environments-lab/CityLearn", +"devgateway/amp", +"undp/carbon-registry", +"johnsonandjohnson/openmrs-distro-cfl", +"ifmeorg/ifme-languagetools", +"JanssenProject/jans", +"policyengine/policyengine-app", +"learningequality/ricecooker", +"synthetichealth/synthea-international", +"safeyou-space/safeyou", +"a2i-dpg/ekShop", +"epiverse-trace/finalsize", +"ckan/ckan", +"esatya/rahat-aid-connect ", +"moodle/moodle", +"rubyforgood/human-essentials", +"openforis/collect", +"Sunbird-Obsrv", +"undpindia/data4policy", +"Intelehealth/intelehealth-openmrs-ui", +"Ozim-Platform", +"NMF-earth/nmf-app/", +"Sunbird-Serve/serve-beta", +"eco-index/ecoindex-stack", +"unige-geohealth/accessmod", +"ushahidi/platform-client-mzima", +"Open-Attestation/open-attestation", +"govdirectory/website", +"openkfw/TruBudget", + "rubyforgood/human-essentials", + "rubyforgood/pet-rescue" + ], + "labels": [ + "good first issue", + "Help Wanted", + "help wanted" + ] +} diff --git a/generate.ts b/generate.ts new file mode 100644 index 00000000..b113bd02 --- /dev/null +++ b/generate.ts @@ -0,0 +1,355 @@ +import { Octokit } from "@octokit/core"; +import { + Issue, + IssueEdge, + Label, + LabelEdge, + Language, + Query, + Repository, + RepositoryTopic, + RepositoryTopicEdge, + SearchResultItemEdge, + validate +} from "@octokit/graphql-schema"; +import { retry } from "@octokit/plugin-retry"; +import { throttling } from "@octokit/plugin-throttling"; +import { RequestOptions } from "@octokit/types"; +import dayjs from "dayjs"; +import fs from "fs"; +import millify from "millify"; +import slugify from "slugify"; + +import firstissue from "./firstissue.json"; +import { + CountableTag as CountableTagModel, + Issue as IssueModel, + Repository as RepositoryModel, + Tag as TagModel +} from "./types"; + +/** Number of repositories to query per request (max 100, but set to a smaller number to prevent timeouts) */ +const REPOS_PER_REQUEST = 25; +/** Maximum number of issues to retrieve per repository */ +const MAX_ISSUES = 10; + +// symbols to replace with slugify +slugify.extend({ + "#": "sharp", + "+": "plus" +}); +if (process.env.GH_PERSONAL_ACCESS_TOKEN) { + // The environment variable is set + console.log('MY_ENV_VARIABLE is set:', process.env.GH_PERSONAL_ACCESS_TOKEN); +} else { + // The environment variable is not set + console.log('MY_ENV_VARIABLE is not set'); +} +// Setup Octokit (GitHub API client) +const MyOctokit = Octokit.plugin(throttling, retry); +const octokit = new MyOctokit({ + auth: process.env.GH_PERSONAL_ACCESS_TOKEN, + throttle: { + onRateLimit: (retryAfter: number, options: object, octokit: Octokit, retryCount: number) => { + const { method, url } = options as RequestOptions; + octokit.log.warn(`Request quota exhausted for request ${method} ${url}`); + + if (retryCount < 1) { + // only retries once + octokit.log.info(`Retrying after ${retryAfter} seconds!`); + return true; + } + }, + onSecondaryRateLimit: ( + retryAfter: number, + options: object, + octokit: Octokit, + retryCount: number + ) => { + const { method, url } = options as RequestOptions; + octokit.log.warn(`SecondaryRateLimit detected for request ${method} ${url}`); + + if (retryCount < 2) { + // retries twice + octokit.log.warn(`Retrying after ${retryAfter} seconds!`); + return true; + } + } + } +}); + +/** + * Retrieve a list of repositories by calling GitHub GraphQL API. + * + * Use {@link https://docs.github.com/en/graphql/overview/explorer GitHub's GraphQL API explorer} to + * build and test the search query. + */ +const getRepositories = async ( + repositories: string[], + labels: string[] +): Promise => { + // Filter results with search qualifiers + // See https://docs.github.com/en/search-github/searching-on-github/searching-for-repositories + const searchQuery = [ + ...repositories.map((repo) => `repo:${repo}`), + "archived:false", + "is:public", + "stars:>=1", + `pushed:>=${dayjs().add(-1, "month").format("YYYY-MM-DD")}` + ].join(" "); + + const gqlQuery = ` + query { + search( + query: "${searchQuery}" + type: REPOSITORY + first: 100 + ) { + repositoryCount + edges { + node { + ... on Repository { + id + name + owner { + login + } + isArchived + isDisabled + isPrivate + primaryLanguage { + id + name + } + stargazerCount + # return first 10 open issues with one or more of the labels we want + issues( + states: OPEN + filterBy: {labels: [${labels.map((label) => `"${label}"`).join(",")}]} + orderBy: {field: CREATED_AT, direction: DESC} + first: ${MAX_ISSUES} + ) { + totalCount + edges { + node { + id + title + number + url + comments { + totalCount + } + createdAt + } + } + } + pushedAt + licenseInfo { + name + } + description + url + repositoryTopics(first: 10) { + edges { + node { + topic { + name + id + } + } + } + } + } + } + } + } + } + `; + + const gqlQueryErrors = validate(gqlQuery); + if (gqlQueryErrors.length > 0) { + // if query is invalid, gqlQueryErrors will contain errors + throw new Error( + `GraphQL query is invalid:\n\t${gqlQueryErrors.map((error) => error.message).join("\n\t")}` + ); + } + + const searchResults = await octokit.graphql>({ query: gqlQuery }); + + // map response data to our Repository model + const repoData = + searchResults.search.edges + ?.filter((edge) => edge !== undefined) + .map((edge) => (edge as SearchResultItemEdge).node as Repository) + // skip repos where language is null + .filter((repo) => !!(repo.primaryLanguage as Language)) + .map( + (repo): RepositoryModel => ({ + id: repo.id, + owner: repo.owner.login, + name: repo.name, + description: repo.description === undefined ? null : repo.description, + url: repo.url, + stars: repo.stargazerCount, + stars_display: millify(repo.stargazerCount), + license: repo.licenseInfo?.name, + last_modified: repo.pushedAt, + language: { + id: slugify((repo.primaryLanguage as Language).name, { lower: true }), + display: (repo.primaryLanguage as Language).name + }, + topics: repo.repositoryTopics.edges + ?.filter((edge) => edge !== undefined) + .map((edge) => (edge as RepositoryTopicEdge).node as RepositoryTopic) + .map((topic) => ({ + id: slugify(topic.topic.name, { lower: true }), + display: topic.topic.name + })), + issues: + repo.issues.edges + ?.filter((edge) => edge !== undefined) + .map((edge) => (edge as IssueEdge).node as Issue) + .map( + (issue): IssueModel => ({ + id: issue.id, + number: issue.number, + title: issue.title, + url: issue.url, + comments_count: issue.comments.totalCount, + created_at: issue.createdAt, + labels: + issue.labels?.edges + ?.filter((edge) => edge !== undefined) + .map((edge) => (edge as LabelEdge).node as Label) + .map((label) => ({ + id: slugify(label.name, { lower: true }), + display: label.name + })) ?? [] + }) + ) + // sort issues by issue number + .sort((a, b) => a.number - b.number) ?? [], + has_new_issues: + repo.issues.edges + ?.filter((edge) => edge !== undefined) + .map((edge) => (edge as IssueEdge).node as Issue) + .some( + // Repository has "new" issues if there are any issues created in the last week + (issue) => dayjs().diff(dayjs(issue.createdAt), "day") <= 7 + ) ?? false + }) + ) ?? []; + + // unfortunately, there's no way to filter repositories by number of issues in the search query + // filter out repos with less than 3 open issues + return repoData.filter((repo) => repo.issues.length >= 3); +}; + +[...new Set(firstissue.repositories)] + .slice(0, process.env.NODE_ENV === "development" ? 200 : firstissue.repositories.length) + .reduce((repoChunks: string[][], repo: string, index) => { + // Split repositories into smaller chunks, this helps prevent request timeouts + const chunkIndex = Math.floor(index / REPOS_PER_REQUEST); + if (!repoChunks[chunkIndex]) { + repoChunks[chunkIndex] = []; + } + repoChunks[chunkIndex].push(repo); + return repoChunks; + }, []) + .reduce>(async (repoData, chunk, index, arr) => { + return repoData.then(async (repos) => { + console.log( + `Getting repositories - chunk ${index + 1} of ${arr.length} (size: ${chunk.length})` + ); + const repositories = await getRepositories(chunk, firstissue.labels); + + // wait 1s between requests + await new Promise((resolve) => setTimeout(resolve, 1000)); + + return [...repos, ...repositories]; + }); + }, Promise.resolve([])) + .then((repoData) => { + // Get a list of distinct languages with counts for use with filtering in the UI + const filterLanguages = Object.values( + repoData.reduce((arr: { [key: string]: CountableTagModel }, repo: RepositoryModel) => { + // group languages by id and count them + const { id, display } = repo.language; + if (arr[id] === undefined) arr[id] = { id, display, count: 1 }; + else arr[id].count++; + return arr; + }, {} as { [key: string]: CountableTagModel }) + ) + // Ignore language with less than 3 repositories + .filter((language) => language.count >= 1) + // Sort alphabetically + .sort((a, b) => a.display.localeCompare(b.display)); + + // Get a list of distinct topics with counts for use with filtering in the UI + const filterTopics = Object.values( + repoData + .filter((repo) => repo.topics !== undefined) + .flatMap((repo) => repo.topics as TagModel[]) + .reduce((arr: { [key: string]: CountableTagModel }, topic: TagModel) => { + // group topics by id and count them + const { id, display } = topic; + if (arr[id] === undefined) arr[id] = { id, display, count: 1 }; + else arr[id].count++; + return arr; + }, {} as { [key: string]: CountableTagModel }) + ) + // Ignore topics with less than 3 repositories + .filter((topic) => topic.count >= 1) + // Sort by count desc + .sort((a, b) => b.count - a.count); + + return { + // Sort the repositories randomly so that the list isn't always the same + repositories: repoData.sort(() => Math.random() - 0.5), + languages: filterLanguages, + topics: filterTopics + }; + }) + .then((data) => { + // Write generated data to file for use in the app + fs.writeFileSync("./generated.json", JSON.stringify(data)); + console.log("Generated generated.json"); + + // Update firstissue.json with new list of repositories + firstissue.repositories = data.repositories + .map((repo) => `${repo.owner}/${repo.name}`) + // Sort alphabetically + .sort((a, b) => a.localeCompare(b)); + fs.writeFileSync("./firstissue.json", JSON.stringify(firstissue, null, 2)); + console.log("Generated firstissue.json"); + + // Build sitemap + const sitemap = ` + + + https://happycommits.dev + + ${data.languages + .map( + (language: CountableTagModel) => + `https://happycommits.dev/language/${language.id}` + ) + .join("")} + ${data.topics + .map( + (topic: CountableTagModel) => + `https://happycommits.dev/topic/${topic.id}` + ) + .join("")} + + `; + + fs.writeFileSync("./public/sitemap.xml", sitemap); + console.log("Generated sitemap.xml"); + }) + .finally(() => { + console.log("Data generation complete."); + }) + .catch((error: any) => { + console.error(error); + }); diff --git a/generated.json b/generated.json new file mode 100644 index 00000000..2f4506a0 --- /dev/null +++ b/generated.json @@ -0,0 +1 @@ +{"repositories":[{"id":"MDEwOlJlcG9zaXRvcnk4MTU3NTc1OQ==","owner":"cboard-org","name":"cboard","description":"Augmentative and Alternative Communication (AAC) system with text-to-speech for the browser","url":"https://github.com/cboard-org/cboard","stars":603,"stars_display":"603","license":"GNU General Public License v3.0","last_modified":"2023-09-04T19:06:24Z","language":{"id":"javascript","display":"JavaScript"},"topics":[{"id":"aac","display":"aac"},{"id":"autism","display":"autism"},{"id":"cerebral-palsy","display":"cerebral-palsy"},{"id":"progressive-web-app","display":"progressive-web-app"},{"id":"communication-board","display":"communication-board"},{"id":"speech","display":"speech"},{"id":"tts","display":"tts"},{"id":"text-to-speech","display":"text-to-speech"},{"id":"disabilities","display":"disabilities"},{"id":"symbols","display":"symbols"}],"issues":[{"id":"MDU6SXNzdWU1NjEzMDY2ODI=","number":627,"title":"Support iOS using the Cordova repository ","url":"https://github.com/cboard-org/cboard/issues/627","comments_count":5,"created_at":"2020-02-06T22:26:05Z","labels":[]},{"id":"MDU6SXNzdWU1NjE3MTQ2MTI=","number":628,"title":"Add filtering to the board lists on the communicator builder ","url":"https://github.com/cboard-org/cboard/issues/628","comments_count":3,"created_at":"2020-02-07T15:41:31Z","labels":[]},{"id":"MDU6SXNzdWU1ODkyNTY1NTQ=","number":665,"title":"Check boards exported from Cboard are successfully import on coughdrop ","url":"https://github.com/cboard-org/cboard/issues/665","comments_count":4,"created_at":"2020-03-27T16:35:17Z","labels":[]},{"id":"MDU6SXNzdWU4NjE0ODM2NDQ=","number":890,"title":"Feature: reordering elements in the output box","url":"https://github.com/cboard-org/cboard/issues/890","comments_count":3,"created_at":"2021-04-19T16:12:21Z","labels":[]},{"id":"MDU6SXNzdWU4NjE3ODg5NTY=","number":893,"title":"Feature: locked (always visible) row/column with basic phrases and emergency signals","url":"https://github.com/cboard-org/cboard/issues/893","comments_count":2,"created_at":"2021-04-19T19:46:49Z","labels":[]},{"id":"I_kwDOBNy_T85WUWo5","number":1294,"title":"Support hawkeye access application - IOS","url":"https://github.com/cboard-org/cboard/issues/1294","comments_count":1,"created_at":"2022-11-14T14:29:09Z","labels":[]},{"id":"I_kwDOBNy_T85eWedL","number":1354,"title":"Toggle password visibility","url":"https://github.com/cboard-org/cboard/issues/1354","comments_count":2,"created_at":"2023-02-13T19:44:00Z","labels":[]},{"id":"I_kwDOBNy_T85ohjHY","number":1508,"title":"Find a way to define Enviromental variables for Cordova builds","url":"https://github.com/cboard-org/cboard/issues/1508","comments_count":0,"created_at":"2023-06-12T21:29:41Z","labels":[]},{"id":"I_kwDOBNy_T85p_ubR","number":1515,"title":"\"Edit Tile\" dialog (modal window)","url":"https://github.com/cboard-org/cboard/issues/1515","comments_count":2,"created_at":"2023-06-28T06:42:53Z","labels":[]},{"id":"I_kwDOBNy_T85v5Vlr","number":1575,"title":"Add font size selector on PDF export","url":"https://github.com/cboard-org/cboard/issues/1575","comments_count":0,"created_at":"2023-09-01T12:04:30Z","labels":[]}],"has_new_issues":false},{"id":"R_kgDOIS8n6g","owner":"PolicyEngine","name":"policyengine-app","description":"PolicyEngine's free web app for computing the impact of public policy.","url":"https://github.com/PolicyEngine/policyengine-app","stars":25,"stars_display":"25","license":"GNU Affero General Public License v3.0","last_modified":"2023-09-05T23:32:26Z","language":{"id":"javascript","display":"JavaScript"},"topics":[],"issues":[{"id":"I_kwDOIS8n6s5k4Aqj","number":511,"title":"Add walkthrough video","url":"https://github.com/PolicyEngine/policyengine-app/issues/511","comments_count":0,"created_at":"2023-05-02T13:14:20Z","labels":[]},{"id":"I_kwDOIS8n6s5k4BL9","number":512,"title":"Train embeddings for the PolicyEngine-[country] repo codebases to allow users to ask it questions","url":"https://github.com/PolicyEngine/policyengine-app/issues/512","comments_count":0,"created_at":"2023-05-02T13:15:31Z","labels":[]},{"id":"I_kwDOIS8n6s5l2hUw","number":541,"title":"Move logo further right on earnings variation charts","url":"https://github.com/PolicyEngine/policyengine-app/issues/541","comments_count":3,"created_at":"2023-05-14T02:03:47Z","labels":[]},{"id":"I_kwDOIS8n6s5mahuW","number":544,"title":"Embedded charts in Analysis page are too wide","url":"https://github.com/PolicyEngine/policyengine-app/issues/544","comments_count":1,"created_at":"2023-05-20T17:07:42Z","labels":[]},{"id":"I_kwDOIS8n6s5nMkfx","number":561,"title":"Update logo for policyengine.org social share preview","url":"https://github.com/PolicyEngine/policyengine-app/issues/561","comments_count":1,"created_at":"2023-05-30T00:28:52Z","labels":[]},{"id":"I_kwDOIS8n6s5nMkx6","number":562,"title":"Add Pinterest Rich Pin Data for homepage preview","url":"https://github.com/PolicyEngine/policyengine-app/issues/562","comments_count":0,"created_at":"2023-05-30T00:31:34Z","labels":[]},{"id":"I_kwDOIS8n6s5ozcQL","number":581,"title":"Add legend to intra-decile chart ","url":"https://github.com/PolicyEngine/policyengine-app/issues/581","comments_count":0,"created_at":"2023-06-15T08:29:32Z","labels":[]},{"id":"I_kwDOIS8n6s5qrqVM","number":598,"title":"Subscribe button on homepage","url":"https://github.com/PolicyEngine/policyengine-app/issues/598","comments_count":2,"created_at":"2023-07-05T15:43:30Z","labels":[]},{"id":"I_kwDOIS8n6s5uwqNU","number":704,"title":"Respect capitalization of parameter labels","url":"https://github.com/PolicyEngine/policyengine-app/issues/704","comments_count":0,"created_at":"2023-08-20T20:00:44Z","labels":[]},{"id":"I_kwDOIS8n6s5vute4","number":713,"title":"The anchor on the homepage Twitter button extends all the way to the flag dropdown arrow, making it easy to accidentally click on the Twitter link by mistake","url":"https://github.com/PolicyEngine/policyengine-app/issues/713","comments_count":0,"created_at":"2023-08-30T23:31:26Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkyNDc5OTU2NzE=","owner":"coronasafe","name":"care","description":"Care is a Digital Public Good enabling TeleICU & Decentralised Administration of Healthcare Capacity across States.","url":"https://github.com/coronasafe/care","stars":186,"stars_display":"186","license":"MIT License","last_modified":"2023-09-09T20:16:58Z","language":{"id":"python","display":"Python"},"topics":[{"id":"covid-19","display":"covid-19"},{"id":"sustainable-development-goals","display":"sustainable-development-goals"},{"id":"public-goods","display":"public-goods"},{"id":"digital-public-goods","display":"digital-public-goods"},{"id":"hacktoberfest","display":"hacktoberfest"}],"issues":[{"id":"I_kwDODsgdF85d8xOO","number":1184,"title":"Patient filter: Add `None` option for Last admitted to Bed filter to filter patients that are admitted but has no bed assigned","url":"https://github.com/coronasafe/care/issues/1184","comments_count":7,"created_at":"2022-08-18T15:00:02Z","labels":[]},{"id":"I_kwDODsgdF85nNrGQ","number":1327,"title":"Add CSV support for the asset import/export","url":"https://github.com/coronasafe/care/issues/1327","comments_count":8,"created_at":"2023-05-30T06:59:37Z","labels":[]},{"id":"I_kwDODsgdF85nmGEF","number":1335,"title":"Fix N+1 queries in `/api/v1/getallfacilities/`","url":"https://github.com/coronasafe/care/issues/1335","comments_count":0,"created_at":"2023-06-02T11:39:41Z","labels":[]},{"id":"I_kwDODsgdF85nmGFj","number":1336,"title":"Fix N+1 queries in `/api/v1/resource/`","url":"https://github.com/coronasafe/care/issues/1336","comments_count":0,"created_at":"2023-06-02T11:39:44Z","labels":[]},{"id":"I_kwDODsgdF85nmGG0","number":1337,"title":"Fix N+1 queries in `/api/v1/patient/`","url":"https://github.com/coronasafe/care/issues/1337","comments_count":1,"created_at":"2023-06-02T11:39:48Z","labels":[]},{"id":"I_kwDODsgdF85nmGIM","number":1338,"title":"Fix N+1 queries in `/api/v1/bed/`","url":"https://github.com/coronasafe/care/issues/1338","comments_count":1,"created_at":"2023-06-02T11:39:52Z","labels":[]},{"id":"I_kwDODsgdF85nmGJa","number":1339,"title":"Fix N+1 queries in `/api/v1/consultationbed/`","url":"https://github.com/coronasafe/care/issues/1339","comments_count":7,"created_at":"2023-06-02T11:39:55Z","labels":[]},{"id":"I_kwDODsgdF85n45_r","number":1347,"title":"TypeError: unhashable type: 'list' at `/api/v1/patient/{patient_external_id}/test_sample/{external_id}/icmr_sample/`","url":"https://github.com/coronasafe/care/issues/1347","comments_count":0,"created_at":"2023-06-06T02:43:37Z","labels":[]},{"id":"I_kwDODsgdF85psWM-","number":1411,"title":"Update the heroku deployment config","url":"https://github.com/coronasafe/care/issues/1411","comments_count":1,"created_at":"2023-06-25T11:34:55Z","labels":[]},{"id":"I_kwDODsgdF85qppBY","number":1434,"title":"Update api schema for password reset endpoints","url":"https://github.com/coronasafe/care/issues/1434","comments_count":2,"created_at":"2023-07-05T10:53:30Z","labels":[]}],"has_new_issues":false},{"id":"R_kgDOJ-5jJA","owner":"rubyforgood","name":"pet-rescue","description":null,"url":"https://github.com/rubyforgood/pet-rescue","stars":11,"stars_display":"11","license":"MIT License","last_modified":"2023-09-02T22:04:39Z","language":{"id":"html","display":"HTML"},"topics":[],"issues":[{"id":"I_kwDOJ-5jJM5shDqP","number":11,"title":"Add dependabot","url":"https://github.com/rubyforgood/pet-rescue/issues/11","comments_count":3,"created_at":"2023-07-25T15:32:52Z","labels":[]},{"id":"I_kwDOJ-5jJM5shzee","number":13,"title":"Remove active admin","url":"https://github.com/rubyforgood/pet-rescue/issues/13","comments_count":5,"created_at":"2023-07-25T17:28:49Z","labels":[]},{"id":"I_kwDOJ-5jJM5sjClg","number":15,"title":"Add pundit gem","url":"https://github.com/rubyforgood/pet-rescue/issues/15","comments_count":1,"created_at":"2023-07-25T20:48:11Z","labels":[]},{"id":"I_kwDOJ-5jJM5skUVO","number":20,"title":"Complete your first issue!","url":"https://github.com/rubyforgood/pet-rescue/issues/20","comments_count":4,"created_at":"2023-07-26T02:18:19Z","labels":[]},{"id":"I_kwDOJ-5jJM5szlB_","number":32,"title":"Update email to include hyperlink to dog","url":"https://github.com/rubyforgood/pet-rescue/issues/32","comments_count":1,"created_at":"2023-07-28T00:36:48Z","labels":[]},{"id":"I_kwDOJ-5jJM5szlIz","number":33,"title":"Ad asterisks to the required fields","url":"https://github.com/rubyforgood/pet-rescue/issues/33","comments_count":1,"created_at":"2023-07-28T00:37:05Z","labels":[]},{"id":"I_kwDOJ-5jJM5s7XY3","number":88,"title":"Boolean error state on form is ugly","url":"https://github.com/rubyforgood/pet-rescue/issues/88","comments_count":1,"created_at":"2023-07-29T14:21:01Z","labels":[]},{"id":"I_kwDOJ-5jJM5s7Xt7","number":95,"title":"Change week day to weekday","url":"https://github.com/rubyforgood/pet-rescue/issues/95","comments_count":2,"created_at":"2023-07-29T14:25:58Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnk1NjE4Nzkz","owner":"globaleaks","name":"GlobaLeaks","description":"GlobaLeaks is free, open source software enabling anyone to easily set up and maintain a secure whistleblowing platform.","url":"https://github.com/globaleaks/GlobaLeaks","stars":1077,"stars_display":"1.1K","license":"Other","last_modified":"2023-09-09T21:39:30Z","language":{"id":"python","display":"Python"},"topics":[{"id":"digital-human-rights","display":"digital-human-rights"},{"id":"whistleblowing","display":"whistleblowing"},{"id":"anonymity","display":"anonymity"},{"id":"security","display":"security"},{"id":"python","display":"python"},{"id":"angularjs","display":"angularjs"},{"id":"twisted","display":"twisted"},{"id":"sqlalchemy","display":"sqlalchemy"},{"id":"letsencrypt","display":"letsencrypt"},{"id":"https","display":"https"}],"issues":[{"id":"MDU6SXNzdWUxODUzNTM4Mjk=","number":1799,"title":"Ensure privacy of users is respected with exception notifications","url":"https://github.com/globaleaks/GlobaLeaks/issues/1799","comments_count":6,"created_at":"2016-10-26T10:25:05Z","labels":[]},{"id":"MDU6SXNzdWUxOTEwNDg1NDg=","number":1818,"title":"Context allow switches should disable API POSTs","url":"https://github.com/globaleaks/GlobaLeaks/issues/1818","comments_count":0,"created_at":"2016-11-22T16:05:49Z","labels":[]},{"id":"MDU6SXNzdWUyNDYzMzk3ODY=","number":2038,"title":"Properly handle display of OpenPGP keys with users but empty userids","url":"https://github.com/globaleaks/GlobaLeaks/issues/2038","comments_count":2,"created_at":"2017-07-28T12:56:54Z","labels":[]},{"id":"MDU6SXNzdWUyNTg3MzE2NjM=","number":2085,"title":"Accept DER encoded SSL material in admin/network/https API","url":"https://github.com/globaleaks/GlobaLeaks/issues/2085","comments_count":10,"created_at":"2017-09-19T08:09:07Z","labels":[]},{"id":"MDU6SXNzdWUzMDE5ODMwMzA=","number":2191,"title":"Error Message: Cannot read property 'steps' of undefined","url":"https://github.com/globaleaks/GlobaLeaks/issues/2191","comments_count":2,"created_at":"2018-03-03T09:15:46Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkxMDk4NjcyMTI=","owner":"getodk","name":"central","description":"ODK Central is a server that is easy to use, very fast, and stuffed with features that make data collection easier. Contribute and make the world a better place! ✨🗄✨","url":"https://github.com/getodk/central","stars":99,"stars_display":"99","license":"Apache License 2.0","last_modified":"2023-09-06T18:26:04Z","language":{"id":"shell","display":"Shell"},"topics":[],"issues":[{"id":"I_kwDOBoxwzM4-51IL","number":260,"title":"Additional XForm validation","url":"https://github.com/getodk/central/issues/260","comments_count":2,"created_at":"2021-11-16T21:23:02Z","labels":[]},{"id":"I_kwDOBoxwzM5Kkz2i","number":285,"title":"nginx healthcheck fails for HTTPS port other than 443","url":"https://github.com/getodk/central/issues/285","comments_count":2,"created_at":"2022-05-27T19:01:42Z","labels":[]},{"id":"I_kwDOBoxwzM5aylMC","number":376,"title":"Don't log service logs to ~/.pm2/logs/","url":"https://github.com/getodk/central/issues/376","comments_count":1,"created_at":"2023-01-06T21:43:47Z","labels":[]},{"id":"I_kwDOBoxwzM5vqQ4N","number":472,"title":"On the homepage \"Show x total” isn’t highlighted by the tab key navigation","url":"https://github.com/getodk/central/issues/472","comments_count":0,"created_at":"2023-08-30T10:01:18Z","labels":[]},{"id":"I_kwDOBoxwzM5v31En","number":474,"title":"Not only CSV extensions are linked to Entity lists.","url":"https://github.com/getodk/central/issues/474","comments_count":0,"created_at":"2023-09-01T07:33:08Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkzNjY0MTI5NTU=","owner":"govdirectory","name":"website","description":"Website repository for Govdirectory - a crowdsourced and fact-checked directory of official governmental online accounts and services.","url":"https://github.com/govdirectory/website","stars":31,"stars_display":"31","license":"Creative Commons Zero v1.0 Universal","last_modified":"2023-09-08T19:55:51Z","language":{"id":"html","display":"HTML"},"topics":[{"id":"wikidata","display":"wikidata"},{"id":"civictech","display":"civictech"},{"id":"government-data","display":"government-data"},{"id":"social-media","display":"social-media"},{"id":"opengov","display":"opengov"},{"id":"hacktoberfest","display":"hacktoberfest"}],"issues":[{"id":"MDU6SXNzdWU5NDA1MzEwMzA=","number":31,"title":"Investigate what social media the wikidata bots runs for ","url":"https://github.com/govdirectory/website/issues/31","comments_count":5,"created_at":"2021-07-09T08:13:28Z","labels":[]},{"id":"MDU6SXNzdWU5NDEyMDY1MTc=","number":33,"title":"Investigating hosting govdirectory.org on Wikimedia Cloud","url":"https://github.com/govdirectory/website/issues/33","comments_count":1,"created_at":"2021-07-10T08:50:13Z","labels":[]},{"id":"MDU6SXNzdWU5NDEyMzY3ODY=","number":37,"title":"Get complete coverage of Swedish agencies","url":"https://github.com/govdirectory/website/issues/37","comments_count":9,"created_at":"2021-07-10T12:02:58Z","labels":[]},{"id":"MDU6SXNzdWU5NzY0Njk3NzI=","number":96,"title":"All images should have explicite height and width to reduce cumulative layout shift","url":"https://github.com/govdirectory/website/issues/96","comments_count":7,"created_at":"2021-08-22T21:02:23Z","labels":[]},{"id":"MDU6SXNzdWU5ODE4MDY4NjY=","number":98,"title":"Add fallback for head of an institution","url":"https://github.com/govdirectory/website/issues/98","comments_count":0,"created_at":"2021-08-28T11:03:14Z","labels":[]},{"id":"I_kwDOFdcEm848ZD16","number":134,"title":"\"Led by\" should take \"office held by head of government\" into account","url":"https://github.com/govdirectory/website/issues/134","comments_count":6,"created_at":"2021-10-01T10:55:53Z","labels":[]},{"id":"I_kwDOFdcEm848Zd0l","number":136,"title":"Add a maskable icon","url":"https://github.com/govdirectory/website/issues/136","comments_count":2,"created_at":"2021-10-01T12:52:34Z","labels":[]},{"id":"I_kwDOFdcEm849m3Sr","number":147,"title":"Optimize/compress static images","url":"https://github.com/govdirectory/website/issues/147","comments_count":2,"created_at":"2021-10-22T13:42:30Z","labels":[]},{"id":"I_kwDOFdcEm85ThS66","number":249,"title":"Add a read more on Wikipedia button to country pages","url":"https://github.com/govdirectory/website/issues/249","comments_count":5,"created_at":"2022-10-07T14:07:02Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkyNDc5Nzc2MzM=","owner":"google","name":"android-fhir","description":"The Android FHIR SDK is a set of Kotlin libraries for building offline-capable, mobile-first healthcare applications using the HL7® FHIR® standard on Android.","url":"https://github.com/google/android-fhir","stars":364,"stars_display":"364","license":"Apache License 2.0","last_modified":"2023-09-08T20:07:30Z","language":{"id":"kotlin","display":"Kotlin"},"topics":[{"id":"android-fhir-sdk","display":"android-fhir-sdk"},{"id":"fhir","display":"fhir"},{"id":"fhir-client","display":"fhir-client"},{"id":"kotlin","display":"kotlin"},{"id":"kotlin-android","display":"kotlin-android"},{"id":"kotlin-library","display":"kotlin-library"},{"id":"structured-data-capture","display":"structured-data-capture"},{"id":"sqlite","display":"sqlite"},{"id":"sqlite-database","display":"sqlite-database"},{"id":"sqlite-android","display":"sqlite-android"}],"issues":[{"id":"MDU6SXNzdWU5MjgwMDA0ODk=","number":577,"title":"Refactor the UI validation code in the SDC library","url":"https://github.com/google/android-fhir/issues/577","comments_count":4,"created_at":"2021-06-23T08:33:16Z","labels":[]},{"id":"MDU6SXNzdWU5MzQ0Njc3ODI=","number":608,"title":"Fuzzy search on Patient name","url":"https://github.com/google/android-fhir/issues/608","comments_count":31,"created_at":"2021-07-01T06:40:27Z","labels":[]},{"id":"MDU6SXNzdWU5MzQ0NzkzODU=","number":609,"title":"Enable ValueSet expansion in the Search API so developers can search by ValueSet rather than disjunction of codes","url":"https://github.com/google/android-fhir/issues/609","comments_count":4,"created_at":"2021-07-01T06:55:48Z","labels":[]},{"id":"I_kwDODsfWoc49wTf1","number":872,"title":"Handle Sync work that may go on for time longer than permitted by regular workmanager.","url":"https://github.com/google/android-fhir/issues/872","comments_count":1,"created_at":"2021-10-26T09:43:57Z","labels":[]},{"id":"I_kwDODsfWoc5WNWaD","number":1712,"title":"No \"other\" category in gender section in \"Add Patient\"","url":"https://github.com/google/android-fhir/issues/1712","comments_count":6,"created_at":"2022-11-12T08:51:28Z","labels":[]},{"id":"I_kwDODsfWoc5bLkJQ","number":1803,"title":"Create a new date widget with dropdowns (SDC)","url":"https://github.com/google/android-fhir/issues/1803","comments_count":3,"created_at":"2023-01-11T21:57:57Z","labels":[]},{"id":"I_kwDODsfWoc5bLsrb","number":1805,"title":"Date picker: Add a different date picker with “spinners” ","url":"https://github.com/google/android-fhir/issues/1805","comments_count":1,"created_at":"2023-01-11T22:22:46Z","labels":[]},{"id":"I_kwDODsfWoc5hOEj8","number":1920,"title":"[IgManager] PlanDefinitionProcessor doesn't resolve the PlanDefinition from IgManager ","url":"https://github.com/google/android-fhir/issues/1920","comments_count":1,"created_at":"2023-03-19T19:11:15Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkyNDg0MDc5NTM=","owner":"rubyforgood","name":"casa","description":"Volunteer management system for nonprofit CASA, which serves foster youth in counties across America.","url":"https://github.com/rubyforgood/casa","stars":242,"stars_display":"242","license":"MIT License","last_modified":"2023-09-10T03:51:07Z","language":{"id":"ruby","display":"Ruby"},"topics":[{"id":"rubyforgood","display":"rubyforgood"},{"id":"casa","display":"casa"},{"id":"pg-casa","display":"pg-casa"},{"id":"casa-volunteers","display":"casa-volunteers"},{"id":"foster-youth","display":"foster-youth"},{"id":"casa-chapters","display":"casa-chapters"},{"id":"volunteer-management","display":"volunteer-management"},{"id":"rails","display":"rails"},{"id":"non-profit","display":"non-profit"},{"id":"open-source","display":"open-source"}],"issues":[{"id":"I_kwDODs5nkc5uaCxv","number":5123,"title":"Bug: Flaky Test Did not Recieve Confirmation Text After Re-Sending an invitation to an Admin","url":"https://github.com/rubyforgood/casa/issues/5123","comments_count":0,"created_at":"2023-08-16T00:26:21Z","labels":[]},{"id":"I_kwDODs5nkc5uaEiD","number":5124,"title":"Bug: Flaky Test Massive System Test Failure","url":"https://github.com/rubyforgood/casa/issues/5124","comments_count":0,"created_at":"2023-08-16T00:37:54Z","labels":[]},{"id":"I_kwDODs5nkc5uaFgd","number":5125,"title":"Bug: Flaky Test Expected to Find Case Contact Count in Organization Table but found 0 instead","url":"https://github.com/rubyforgood/casa/issues/5125","comments_count":0,"created_at":"2023-08-16T00:44:19Z","labels":[]},{"id":"I_kwDODs5nkc5uaGH7","number":5126,"title":"Bug: Flaky Test Unable to Find Warning Modal Before Attempting to Deactivate a Volunteer","url":"https://github.com/rubyforgood/casa/issues/5126","comments_count":0,"created_at":"2023-08-16T00:48:28Z","labels":[]},{"id":"I_kwDODs5nkc5uaGw3","number":5127,"title":"Bug: Flaky Test Unable to Find Warning Modal Before Attempting to Deactivate a Supervisor","url":"https://github.com/rubyforgood/casa/issues/5127","comments_count":0,"created_at":"2023-08-16T00:52:48Z","labels":[]},{"id":"I_kwDODs5nkc5uaHol","number":5129,"title":"Bug: Flaky Test Did not Recieve Confirmation Text After Changing Supervisor to Admin","url":"https://github.com/rubyforgood/casa/issues/5129","comments_count":0,"created_at":"2023-08-16T00:58:23Z","labels":[]},{"id":"I_kwDODs5nkc5uaHvd","number":5130,"title":"Bug: Flaky Test Did not Receive Confirmation Text After Changing Admin to Supervisor","url":"https://github.com/rubyforgood/casa/issues/5130","comments_count":0,"created_at":"2023-08-16T00:59:02Z","labels":[]},{"id":"I_kwDODs5nkc5uaIqG","number":5131,"title":"Bug: Flaky Test Failed to click on new case button as admin","url":"https://github.com/rubyforgood/casa/issues/5131","comments_count":0,"created_at":"2023-08-16T01:04:53Z","labels":[]},{"id":"I_kwDODs5nkc5ufwg2","number":5133,"title":"Bug: Flaky Test Add Language to User Does Not Respect Organization Boundaries","url":"https://github.com/rubyforgood/casa/issues/5133","comments_count":1,"created_at":"2023-08-16T19:51:36Z","labels":[]},{"id":"I_kwDODs5nkc5v_DqR","number":5178,"title":"Make Double Language Add Error Message Full Width of Parent","url":"https://github.com/rubyforgood/casa/issues/5178","comments_count":2,"created_at":"2023-09-02T18:38:49Z","labels":[]}],"has_new_issues":true},{"id":"MDEwOlJlcG9zaXRvcnkxODY0MjMz","owner":"frappe","name":"erpnext","description":"Free and Open Source Enterprise Resource Planning (ERP)","url":"https://github.com/frappe/erpnext","stars":14720,"stars_display":"14.7K","license":"GNU General Public License v3.0","last_modified":"2023-09-10T04:57:49Z","language":{"id":"python","display":"Python"},"topics":[{"id":"manufacturing","display":"manufacturing"},{"id":"integrations","display":"integrations"},{"id":"erpnext","display":"erpnext"},{"id":"python","display":"python"},{"id":"localization","display":"localization"},{"id":"healthcare","display":"healthcare"},{"id":"support","display":"support"},{"id":"asset-management","display":"asset-management"},{"id":"accounting","display":"accounting"},{"id":"distribution","display":"distribution"}],"issues":[{"id":"MDU6SXNzdWU5MjY1MDk3OTc=","number":26136,"title":"erpnext.stock.get_item_details.get_item_tax_info this method always returns 404 error Version 13.5.1","url":"https://github.com/frappe/erpnext/issues/26136","comments_count":3,"created_at":"2021-06-21T19:06:51Z","labels":[]},{"id":"I_kwDOABxyKc5Pozda","number":31831,"title":"Wrong breadcrumb module for selling DocTypes","url":"https://github.com/frappe/erpnext/issues/31831","comments_count":4,"created_at":"2022-08-11T15:04:27Z","labels":[]},{"id":"I_kwDOABxyKc5eeshM","number":34067,"title":"Wrong Breadcrumb for Customer Doctype","url":"https://github.com/frappe/erpnext/issues/34067","comments_count":7,"created_at":"2023-02-15T02:24:08Z","labels":[]},{"id":"I_kwDOABxyKc5e1I8V","number":34136,"title":"No custom dimension in budget variance and profitability report","url":"https://github.com/frappe/erpnext/issues/34136","comments_count":2,"created_at":"2023-02-20T02:10:14Z","labels":[]},{"id":"I_kwDOABxyKc5i8bjN","number":34794,"title":"Auto populate Party information in Payment Entry when creating PE from Supplier/Customer Dashboard","url":"https://github.com/frappe/erpnext/issues/34794","comments_count":0,"created_at":"2023-04-09T21:26:36Z","labels":[]},{"id":"I_kwDOABxyKc5jNBm7","number":34834,"title":"Error while submitting internal sales invoice","url":"https://github.com/frappe/erpnext/issues/34834","comments_count":1,"created_at":"2023-04-12T11:14:52Z","labels":[]},{"id":"I_kwDOABxyKc5jR3qe","number":34837,"title":"Multi Company - Wrong company address in documents","url":"https://github.com/frappe/erpnext/issues/34837","comments_count":0,"created_at":"2023-04-13T03:31:24Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnk1NDYzMTc0NA==","owner":"Aam-Digital","name":"ndb-core","description":"Easy-to-use case management web app for NGOs anywhere in the world.","url":"https://github.com/Aam-Digital/ndb-core","stars":35,"stars_display":"35","license":"GNU General Public License v3.0","last_modified":"2023-09-08T12:58:28Z","language":{"id":"typescript","display":"TypeScript"},"topics":[{"id":"ngo","display":"ngo"},{"id":"case-management","display":"case-management"},{"id":"offline-first","display":"offline-first"},{"id":"docker","display":"docker"},{"id":"pwa","display":"pwa"}],"issues":[{"id":"I_kwDOA0GdQM5JC-Ib","number":1246,"title":"pin notes to top of list","url":"https://github.com/Aam-Digital/ndb-core/issues/1246","comments_count":0,"created_at":"2022-05-04T15:07:06Z","labels":[]},{"id":"I_kwDOA0GdQM5N3Fok","number":1373,"title":"UI should indicate that list only shows filtered results","url":"https://github.com/Aam-Digital/ndb-core/issues/1373","comments_count":0,"created_at":"2022-07-15T17:03:39Z","labels":[]},{"id":"I_kwDOA0GdQM5Q4iB_","number":1415,"title":"Add screen to add more authors and notes at end of \"record attendance\"","url":"https://github.com/Aam-Digital/ndb-core/issues/1415","comments_count":1,"created_at":"2022-08-31T08:34:22Z","labels":[]},{"id":"I_kwDOA0GdQM5Q58rj","number":1416,"title":"global search in toolbar for mobile screens","url":"https://github.com/Aam-Digital/ndb-core/issues/1416","comments_count":0,"created_at":"2022-08-31T13:48:21Z","labels":[]},{"id":"I_kwDOA0GdQM5ZaMT2","number":1595,"title":"Remove country icons and only show language abbreviation","url":"https://github.com/Aam-Digital/ndb-core/issues/1595","comments_count":0,"created_at":"2022-12-16T11:19:44Z","labels":[]},{"id":"I_kwDOA0GdQM5arSMz","number":1632,"title":"refactor dashboard widgets to build upon the generic dashboard-list-widget","url":"https://github.com/Aam-Digital/ndb-core/issues/1632","comments_count":0,"created_at":"2023-01-05T19:43:12Z","labels":[]},{"id":"I_kwDOA0GdQM5geo0P","number":1762,"title":"Click on Entity in disabled form should open details page","url":"https://github.com/Aam-Digital/ndb-core/issues/1762","comments_count":0,"created_at":"2023-03-10T09:31:11Z","labels":[]},{"id":"I_kwDOA0GdQM5lFwL-","number":1872,"title":"add new option from enum popup window","url":"https://github.com/Aam-Digital/ndb-core/issues/1872","comments_count":1,"created_at":"2023-05-04T13:23:18Z","labels":[]},{"id":"I_kwDOA0GdQM5qeLfi","number":1917,"title":"Cancel button should not be transparent","url":"https://github.com/Aam-Digital/ndb-core/issues/1917","comments_count":6,"created_at":"2023-07-03T14:29:22Z","labels":[]},{"id":"I_kwDOA0GdQM5sZ2mI","number":1942,"title":"Import Module: infer column mapping from column header names","url":"https://github.com/Aam-Digital/ndb-core/issues/1942","comments_count":0,"created_at":"2023-07-24T16:03:52Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkyNjk4ODIx","owner":"medic","name":"cht-core","description":"The CHT Core Framework makes it faster to build responsive, offline-first digital health apps that equip health workers to provide better care in their communities. It is a central resource of the Community Health Toolkit.","url":"https://github.com/medic/cht-core","stars":413,"stars_display":"413","license":"GNU Affero General Public License v3.0","last_modified":"2023-09-09T09:35:21Z","language":{"id":"javascript","display":"JavaScript"},"topics":[{"id":"medical","display":"medical"},{"id":"couchdb","display":"couchdb"},{"id":"javascript","display":"javascript"},{"id":"phone","display":"phone"},{"id":"mobile","display":"mobile"},{"id":"health","display":"health"},{"id":"mhealth","display":"mhealth"},{"id":"ehealth","display":"ehealth"},{"id":"pouchdb","display":"pouchdb"},{"id":"hacktoberfest","display":"hacktoberfest"}],"issues":[{"id":"I_kwDOACkuRc5bfaVH","number":8027,"title":"Admin app fails to update `partners` if existing document is malformed","url":"https://github.com/medic/cht-core/issues/8027","comments_count":0,"created_at":"2023-01-16T13:41:05Z","labels":[]},{"id":"I_kwDOACkuRc5eUC1T","number":8072,"title":"Error when saving form with repeated upload inputs","url":"https://github.com/medic/cht-core/issues/8072","comments_count":0,"created_at":"2023-02-13T13:02:07Z","labels":[]},{"id":"I_kwDOACkuRc5eyudB","number":8085,"title":"Race condition: Tasks list briefly shows \"No more tasks\" before displaying available tasks. ","url":"https://github.com/medic/cht-core/issues/8085","comments_count":0,"created_at":"2023-02-18T14:06:31Z","labels":[]},{"id":"I_kwDOACkuRc5gInGr","number":8117,"title":"Check for `can_view_message_action` permission to display \"Send Message\" action","url":"https://github.com/medic/cht-core/issues/8117","comments_count":0,"created_at":"2023-03-07T07:12:57Z","labels":[]},{"id":"I_kwDOACkuRc5gIrbb","number":8118,"title":"\"Send Message\" action shouldn't send message to user that is logged in","url":"https://github.com/medic/cht-core/issues/8118","comments_count":0,"created_at":"2023-03-07T07:29:02Z","labels":[]},{"id":"I_kwDOACkuRc5hB3Ca","number":8131,"title":"Training cards are appearing on top of privacy policies","url":"https://github.com/medic/cht-core/issues/8131","comments_count":12,"created_at":"2023-03-16T16:39:13Z","labels":[]},{"id":"I_kwDOACkuRc5hz8nZ","number":8147,"title":"Training cards display loading error when user does not have contact","url":"https://github.com/medic/cht-core/issues/8147","comments_count":2,"created_at":"2023-03-26T17:48:40Z","labels":[]},{"id":"I_kwDOACkuRc5jx_3n","number":8189,"title":"Convert app management add/edit user modal to a page","url":"https://github.com/medic/cht-core/issues/8189","comments_count":7,"created_at":"2023-04-19T01:52:37Z","labels":[]},{"id":"I_kwDOACkuRc5qAyYj","number":8348,"title":"Adding error object to logger in sentinel/server.js","url":"https://github.com/medic/cht-core/issues/8348","comments_count":1,"created_at":"2023-06-28T09:46:12Z","labels":[]},{"id":"I_kwDOACkuRc5rkPoK","number":8395,"title":"Upgrade page - Increase the delay before displaying the \"interrupted\" warning","url":"https://github.com/medic/cht-core/issues/8395","comments_count":1,"created_at":"2023-07-14T10:51:43Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkxMzQxNDMxODQ=","owner":"nordic-institute","name":"X-Road","description":"Source code of the X-Road® data exchange layer software","url":"https://github.com/nordic-institute/X-Road","stars":534,"stars_display":"534","license":"Other","last_modified":"2023-09-08T16:41:45Z","language":{"id":"java","display":"Java"},"topics":[{"id":"x-road","display":"x-road"},{"id":"integration","display":"integration"},{"id":"data-exchange","display":"data-exchange"},{"id":"open-source","display":"open-source"},{"id":"hacktoberfest","display":"hacktoberfest"}],"issues":[{"id":"I_kwDOB_7c0M5SX4NJ","number":1356,"title":"As a Security Specialist I want to study what open source tools could be used for automating X-Road security testing so that I know which tools are best suited for X-Road","url":"https://github.com/nordic-institute/X-Road/issues/1356","comments_count":0,"created_at":"2022-09-22T07:48:38Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4OJ","number":1357,"title":"As a Product Owner I want that the memory allocated for Proxy component will be automatically adjusted at init phase of Security Server to correlate the amount of RAM memory to optimize the performance","url":"https://github.com/nordic-institute/X-Road/issues/1357","comments_count":0,"created_at":"2022-09-22T07:48:42Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4RT","number":1359,"title":"As a Developer I want to change the Security Server installation so that the JNA library is installed to /usr/share/xroad/lib so that it wouldn't cause problems for users","url":"https://github.com/nordic-institute/X-Road/issues/1359","comments_count":0,"created_at":"2022-09-22T07:48:51Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4SS","number":1360,"title":"As a Developer I want to analyse the Security Server proxy performance to find bottlenecks in the current code","url":"https://github.com/nordic-institute/X-Road/issues/1360","comments_count":0,"created_at":"2022-09-22T07:48:54Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4TU","number":1361,"title":"As a product owner I want that message timestamping is refactored, so that it is more robust","url":"https://github.com/nordic-institute/X-Road/issues/1361","comments_count":0,"created_at":"2022-09-22T07:48:58Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4Us","number":1362,"title":"As a Security Server Administrator I want the SO_LINGER timeout properties to work as they're documented so that I can configure socket closing behaviour based on my needs","url":"https://github.com/nordic-institute/X-Road/issues/1362","comments_count":0,"created_at":"2022-09-22T07:49:02Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4WF","number":1363,"title":"As a Security Server user I want that X-Road metaservice codes are reserved so that the user can't overload them","url":"https://github.com/nordic-institute/X-Road/issues/1363","comments_count":0,"created_at":"2022-09-22T07:49:05Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4Xi","number":1364,"title":"As a Developer I want that Ansible scripts support deployment of Icelandic Security Server so that it's automatized","url":"https://github.com/nordic-institute/X-Road/issues/1364","comments_count":0,"created_at":"2022-09-22T07:49:10Z","labels":[]},{"id":"I_kwDOB_7c0M5SX4Y0","number":1365,"title":"As a X-Road user I want that xroad-signer is profiled and possible bottlenecks are documented","url":"https://github.com/nordic-institute/X-Road/issues/1365","comments_count":0,"created_at":"2022-09-22T07:49:14Z","labels":[]},{"id":"I_kwDOB_7c0M5ab1YK","number":1477,"title":"As a Security Server Administrator I would like the Security Server to not return the Jetty version that is used so that automated scanners can't use it to discover a vulnerable version","url":"https://github.com/nordic-institute/X-Road/issues/1477","comments_count":0,"created_at":"2023-01-03T11:13:20Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkxMjQxNTA2Mzk=","owner":"drivendataorg","name":"zamba","description":"A Python package for identifying 42 kinds of animals, training custom models, and estimating distance from camera trap videos","url":"https://github.com/drivendataorg/zamba","stars":74,"stars_display":"74","license":"MIT License","last_modified":"2023-09-08T18:17:42Z","language":{"id":"python","display":"Python"},"topics":[{"id":"machine-learning","display":"machine-learning"},{"id":"gpu","display":"gpu"},{"id":"videos","display":"videos"},{"id":"jungle","display":"jungle"},{"id":"chimps","display":"chimps"},{"id":"animals","display":"animals"},{"id":"conservation","display":"conservation"},{"id":"ecology","display":"ecology"},{"id":"video-processing","display":"video-processing"},{"id":"cli","display":"cli"}],"issues":[{"id":"I_kwDOB2Zjb848idrw","number":122,"title":"Add tests for splits and bad video data","url":"https://github.com/drivendataorg/zamba/issues/122","comments_count":2,"created_at":"2021-10-04T21:50:26Z","labels":[]},{"id":"I_kwDOB2Zjb849uw2-","number":154,"title":"Add hardware_dependent_fields to ZambaBaseModel's Config","url":"https://github.com/drivendataorg/zamba/issues/154","comments_count":0,"created_at":"2021-10-25T23:42:48Z","labels":[]},{"id":"I_kwDOB2Zjb85HO5nz","number":183,"title":"Standardize default for model_cache_dir across repo","url":"https://github.com/drivendataorg/zamba/issues/183","comments_count":0,"created_at":"2022-04-06T19:38:49Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkxNzcxNTg0NDc=","owner":"openkfw","name":"TruBudget","description":"A blockchain-based workflow tool for efficient and transparent project management","url":"https://github.com/openkfw/TruBudget","stars":73,"stars_display":"73","license":"GNU General Public License v3.0","last_modified":"2023-09-07T09:07:00Z","language":{"id":"typescript","display":"TypeScript"},"topics":[{"id":"blockchain","display":"blockchain"},{"id":"collaboration","display":"collaboration"},{"id":"transparency","display":"transparency"},{"id":"multichain","display":"multichain"}],"issues":[{"id":"MDU6SXNzdWU5MzcwOTY2Mzc=","number":878,"title":"Adding a link \"forgot your passeword?\" on the login screen","url":"https://github.com/openkfw/TruBudget/issues/878","comments_count":0,"created_at":"2021-07-05T13:30:13Z","labels":[]},{"id":"MDU6SXNzdWU5MzcxMDQ0NjI=","number":879,"title":"Add avatars to users","url":"https://github.com/openkfw/TruBudget/issues/879","comments_count":0,"created_at":"2021-07-05T13:39:54Z","labels":[]},{"id":"MDU6SXNzdWU5Mzk3MTYyNDQ=","number":887,"title":"Increase the size of User.ID field (currently 32-char) to 64-char","url":"https://github.com/openkfw/TruBudget/issues/887","comments_count":0,"created_at":"2021-07-08T10:32:46Z","labels":[]},{"id":"I_kwDOCo85L85GEKHm","number":1055,"title":"Provide Tag and Filter for Sub-Projects and Workflow-Items","url":"https://github.com/openkfw/TruBudget/issues/1055","comments_count":2,"created_at":"2022-03-21T14:47:18Z","labels":[]},{"id":"I_kwDOCo85L85Hu_8k","number":1103,"title":"api: The RPC-Client logs expected error streamalreadyexists SP 1","url":"https://github.com/openkfw/TruBudget/issues/1103","comments_count":0,"created_at":"2022-04-13T16:03:53Z","labels":[]},{"id":"I_kwDOCo85L85IALal","number":1106,"title":"API custom errors in domain layer contain wrong type (intend/event mixing) SP 1","url":"https://github.com/openkfw/TruBudget/issues/1106","comments_count":1,"created_at":"2022-04-19T08:50:32Z","labels":[]},{"id":"I_kwDOCo85L85Li4z3","number":1190,"title":"Update project issue","url":"https://github.com/openkfw/TruBudget/issues/1190","comments_count":1,"created_at":"2022-06-10T11:47:18Z","labels":[]},{"id":"I_kwDOCo85L85NId0n","number":1217,"title":"Update Minio image","url":"https://github.com/openkfw/TruBudget/issues/1217","comments_count":0,"created_at":"2022-07-05T09:52:09Z","labels":[]},{"id":"I_kwDOCo85L85Nr5RH","number":1228,"title":"Default currency in dashboard view","url":"https://github.com/openkfw/TruBudget/issues/1228","comments_count":0,"created_at":"2022-07-13T12:16:32Z","labels":[]},{"id":"I_kwDOCo85L85OeHS8","number":1243,"title":"Improve eslint","url":"https://github.com/openkfw/TruBudget/issues/1243","comments_count":0,"created_at":"2022-07-25T09:17:14Z","labels":[]}],"has_new_issues":false},{"id":"R_kgDOHR-jTg","owner":"epiverse-trace","name":"finalsize","description":"R package to calculate the final size of an SIR epidemic in populations with heterogeneity in social contacts and disease susceptibility","url":"https://github.com/epiverse-trace/finalsize","stars":8,"stars_display":"8","license":"Other","last_modified":"2023-08-25T11:30:45Z","language":{"id":"r","display":"R"},"topics":[{"id":"r","display":"r"},{"id":"r-package","display":"r-package"},{"id":"epiverse","display":"epiverse"},{"id":"epidemiology","display":"epidemiology"},{"id":"epidemic-modelling","display":"epidemic-modelling"},{"id":"outbreak-analysis","display":"outbreak-analysis"}],"issues":[{"id":"I_kwDOHR-jTs5TtXVW","number":68,"title":"Move finalsize specific element from solver function to main finalsize() function","url":"https://github.com/epiverse-trace/finalsize/issues/68","comments_count":14,"created_at":"2022-10-11T10:29:29Z","labels":[]},{"id":"I_kwDOHR-jTs5bXXt4","number":126,"title":"Add brief explaination about the matrix operations","url":"https://github.com/epiverse-trace/finalsize/issues/126","comments_count":5,"created_at":"2023-01-13T20:11:56Z","labels":[]},{"id":"I_kwDOHR-jTs5sGEm5","number":176,"title":"Describe the underlying maths and numerical implementations in vignette","url":"https://github.com/epiverse-trace/finalsize/issues/176","comments_count":6,"created_at":"2023-07-20T09:12:34Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnkyNzI3MjM3OTY=","owner":"CodeYourFuture","name":"syllabus","description":"Syllabus Website for CodeYourFuture","url":"https://github.com/CodeYourFuture/syllabus","stars":145,"stars_display":"145","last_modified":"2023-09-09T10:13:42Z","language":{"id":"javascript","display":"JavaScript"},"topics":[{"id":"education","display":"education"},{"id":"javascript","display":"javascript"},{"id":"curriculum","display":"curriculum"},{"id":"syllabus","display":"syllabus"},{"id":"refugees","display":"refugees"},{"id":"charity","display":"charity"},{"id":"ngo","display":"ngo"},{"id":"react","display":"react"},{"id":"node","display":"node"},{"id":"sql","display":"sql"}],"issues":[{"id":"I_kwDOEEFvVM5LmOJV","number":445,"title":"Note that Git is out-of-scope for Fundamentals course in mentor notes","url":"https://github.com/CodeYourFuture/syllabus/issues/445","comments_count":0,"created_at":"2022-06-11T15:56:18Z","labels":[]},{"id":"I_kwDOEEFvVM5PNuM5","number":471,"title":"JS 1 Week 4 Solutions Bug report","url":"https://github.com/CodeYourFuture/syllabus/issues/471","comments_count":1,"created_at":"2022-08-04T17:53:19Z","labels":[]},{"id":"I_kwDOEEFvVM5V-01o","number":529,"title":"Lighthouse CI Github Action to run on HTML repos","url":"https://github.com/CodeYourFuture/syllabus/issues/529","comments_count":2,"created_at":"2022-11-09T18:07:55Z","labels":[]},{"id":"I_kwDOEEFvVM5XzGfQ","number":547,"title":"Move technical guides from docs to Syllabus","url":"https://github.com/CodeYourFuture/syllabus/issues/547","comments_count":1,"created_at":"2022-12-02T15:07:26Z","labels":[]},{"id":"I_kwDOEEFvVM5YVYc1","number":550,"title":"Create offline version for use in prisons and other offline environments","url":"https://github.com/CodeYourFuture/syllabus/issues/550","comments_count":10,"created_at":"2022-12-07T14:01:46Z","labels":[]},{"id":"I_kwDOEEFvVM5bYmWm","number":568,"title":"Style Guide violation, to update","url":"https://github.com/CodeYourFuture/syllabus/issues/568","comments_count":3,"created_at":"2023-01-14T07:53:33Z","labels":[]},{"id":"I_kwDOEEFvVM5bYmjf","number":569,"title":"Style guide violation, please update","url":"https://github.com/CodeYourFuture/syllabus/issues/569","comments_count":4,"created_at":"2023-01-14T07:58:02Z","labels":[]},{"id":"I_kwDOEEFvVM5bYm3j","number":570,"title":"Style guide violation, please update","url":"https://github.com/CodeYourFuture/syllabus/issues/570","comments_count":7,"created_at":"2023-01-14T08:02:26Z","labels":[]},{"id":"I_kwDOEEFvVM5ba-KE","number":573,"title":"Possibly install first timers bot","url":"https://github.com/CodeYourFuture/syllabus/issues/573","comments_count":3,"created_at":"2023-01-15T12:46:53Z","labels":[]},{"id":"I_kwDOEEFvVM5bbTBm","number":574,"title":"Broken video link in - JS 2 III (Study these DOM materials (1 hour))","url":"https://github.com/CodeYourFuture/syllabus/issues/574","comments_count":2,"created_at":"2023-01-15T16:02:00Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnk2NTkxNDA4Ng==","owner":"decidim","name":"decidim","description":"The participatory democracy framework. A generator and multiple gems made with Ruby on Rails","url":"https://github.com/decidim/decidim","stars":1317,"stars_display":"1.3K","license":"GNU Affero General Public License v3.0","last_modified":"2023-09-09T08:24:44Z","language":{"id":"ruby","display":"Ruby"},"topics":[{"id":"decidim","display":"decidim"},{"id":"democracy","display":"democracy"},{"id":"community","display":"community"},{"id":"government","display":"government"},{"id":"civic-tech","display":"civic-tech"},{"id":"civictech","display":"civictech"},{"id":"ideation","display":"ideation"},{"id":"collective-intelligence","display":"collective-intelligence"},{"id":"participation","display":"participation"},{"id":"citizen-participation","display":"citizen-participation"}],"issues":[{"id":"MDU6SXNzdWU3NjkxMTAxNzU=","number":7034,"title":"NOT \"Enable rich text editor for participants\" + Proposal with template = text full of HTML tags","url":"https://github.com/decidim/decidim/issues/7034","comments_count":5,"created_at":"2020-12-16T17:06:41Z","labels":[]},{"id":"MDU6SXNzdWU3OTYwOTgxODU=","number":7246,"title":"Tooltip cards for user profiles not shown with sorting options","url":"https://github.com/decidim/decidim/issues/7246","comments_count":4,"created_at":"2021-01-28T15:16:37Z","labels":[]},{"id":"MDU6SXNzdWU4MTMzNDY4NTU=","number":7432,"title":"Add default order by ID on admin indexs","url":"https://github.com/decidim/decidim/issues/7432","comments_count":6,"created_at":"2021-02-22T10:07:04Z","labels":[]},{"id":"I_kwDOA-3E5s5SfMqi","number":9854,"title":"Private participants in public spaces ","url":"https://github.com/decidim/decidim/issues/9854","comments_count":4,"created_at":"2022-09-23T14:41:53Z","labels":[]},{"id":"I_kwDOA-3E5s5SsNg-","number":9859,"title":"Ask for old password when changing password ","url":"https://github.com/decidim/decidim/issues/9859","comments_count":6,"created_at":"2022-09-27T08:13:29Z","labels":[]},{"id":"I_kwDOA-3E5s5gxfvL","number":10552,"title":"Scope filter not working in Decidim 0.27.2","url":"https://github.com/decidim/decidim/issues/10552","comments_count":1,"created_at":"2023-03-14T14:21:17Z","labels":[]},{"id":"I_kwDOA-3E5s5nU2Gs","number":10933,"title":"404 after hiding a proposal from frontend","url":"https://github.com/decidim/decidim/issues/10933","comments_count":2,"created_at":"2023-05-31T07:00:24Z","labels":[]},{"id":"I_kwDOA-3E5s5ozzfY","number":11043,"title":"Prefer the usage of Duplicate instead of Copy in the Conference's copy feature","url":"https://github.com/decidim/decidim/issues/11043","comments_count":1,"created_at":"2023-06-15T09:22:18Z","labels":[]},{"id":"I_kwDOA-3E5s5qAlvB","number":11103,"title":"Request too large on initiative exports","url":"https://github.com/decidim/decidim/issues/11103","comments_count":1,"created_at":"2023-06-28T09:16:13Z","labels":[]},{"id":"I_kwDOA-3E5s5umVpQ","number":11489,"title":"Invalid chars in the name when login using OAuth","url":"https://github.com/decidim/decidim/issues/11489","comments_count":1,"created_at":"2023-08-17T18:58:59Z","labels":[]}],"has_new_issues":false},{"id":"MDEwOlJlcG9zaXRvcnk4OTAzNTQ2MQ==","owner":"rubyforgood","name":"human-essentials","description":"Human Essentials is an inventory management system for diaper, incontinence, and period-supply banks. It supports them in distributing to partners, tracking inventory, and reporting stats and analytics.","url":"https://github.com/rubyforgood/human-essentials","stars":371,"stars_display":"371","license":"MIT License","last_modified":"2023-09-09T03:14:23Z","language":{"id":"ruby","display":"Ruby"},"topics":[{"id":"rails","display":"rails"},{"id":"non-profit","display":"non-profit"},{"id":"rubyforgood","display":"rubyforgood"},{"id":"open-source","display":"open-source"},{"id":"hacktoberfest","display":"hacktoberfest"},{"id":"help-wanted","display":"help-wanted"}],"issues":[{"id":"I_kwDOBU6Sxc5pst8p","number":3689,"title":"Check *All* the possible cases of double-clicks on submit-ish buttons","url":"https://github.com/rubyforgood/human-essentials/issues/3689","comments_count":4,"created_at":"2023-06-25T14:55:16Z","labels":[]},{"id":"I_kwDOBU6Sxc5q8TQK","number":3719,"title":"Remove bootstrap-select","url":"https://github.com/rubyforgood/human-essentials/issues/3719","comments_count":5,"created_at":"2023-07-07T20:08:09Z","labels":[]},{"id":"I_kwDOBU6Sxc5rBA44","number":3726,"title":"Thank everyone when the release goes out automagically.","url":"https://github.com/rubyforgood/human-essentials/issues/3726","comments_count":7,"created_at":"2023-07-09T14:34:45Z","labels":[]},{"id":"I_kwDOBU6Sxc5rBCug","number":3729,"title":"Wider spread of dates on requests, distributions, purchases, donations in the seed, including some more than 1 week ago.","url":"https://github.com/rubyforgood/human-essentials/issues/3729","comments_count":0,"created_at":"2023-07-09T14:53:57Z","labels":[]},{"id":"I_kwDOBU6Sxc5sT6Nj","number":3764,"title":"[BUG] Attachments not saving in partner profile","url":"https://github.com/rubyforgood/human-essentials/issues/3764","comments_count":2,"created_at":"2023-07-23T14:51:24Z","labels":[]},{"id":"I_kwDOBU6Sxc5sT6jY","number":3765,"title":"[BUG] Organization update doesn't handle case where partner would have no request type set gracefully","url":"https://github.com/rubyforgood/human-essentials/issues/3765","comments_count":4,"created_at":"2023-07-23T14:55:47Z","labels":[]},{"id":"I_kwDOBU6Sxc5s9ULU","number":3803,"title":"[Discovery] Alternate units in requests","url":"https://github.com/rubyforgood/human-essentials/issues/3803","comments_count":0,"created_at":"2023-07-30T17:39:22Z","labels":[]},{"id":"I_kwDOBU6Sxc5tkViN","number":3813,"title":"Each tab on Items and Inventory should show only the content for that tab","url":"https://github.com/rubyforgood/human-essentials/issues/3813","comments_count":0,"created_at":"2023-08-06T15:05:07Z","labels":[]},{"id":"I_kwDOBU6Sxc5uwXMx","number":3846,"title":"Seed data for distributions with shipping should also have shipping cost","url":"https://github.com/rubyforgood/human-essentials/issues/3846","comments_count":2,"created_at":"2023-08-20T15:57:20Z","labels":[]},{"id":"I_kwDOBU6Sxc5uwXYv","number":3847,"title":"Add announcement to seed","url":"https://github.com/rubyforgood/human-essentials/issues/3847","comments_count":2,"created_at":"2023-08-20T16:00:04Z","labels":[]}],"has_new_issues":false}],"languages":[{"id":"html","display":"HTML","count":2},{"id":"java","display":"Java","count":1},{"id":"javascript","display":"JavaScript","count":4},{"id":"kotlin","display":"Kotlin","count":1},{"id":"python","display":"Python","count":4},{"id":"r","display":"R","count":1},{"id":"ruby","display":"Ruby","count":3},{"id":"shell","display":"Shell","count":1},{"id":"typescript","display":"TypeScript","count":2}],"topics":[{"id":"hacktoberfest","display":"hacktoberfest","count":5},{"id":"open-source","display":"open-source","count":3},{"id":"javascript","display":"javascript","count":2},{"id":"rubyforgood","display":"rubyforgood","count":2},{"id":"rails","display":"rails","count":2},{"id":"non-profit","display":"non-profit","count":2},{"id":"python","display":"python","count":2},{"id":"ngo","display":"ngo","count":2},{"id":"civictech","display":"civictech","count":2},{"id":"medical","display":"medical","count":1},{"id":"couchdb","display":"couchdb","count":1},{"id":"phone","display":"phone","count":1},{"id":"mobile","display":"mobile","count":1},{"id":"health","display":"health","count":1},{"id":"mhealth","display":"mhealth","count":1},{"id":"ehealth","display":"ehealth","count":1},{"id":"pouchdb","display":"pouchdb","count":1},{"id":"casa","display":"casa","count":1},{"id":"pg-casa","display":"pg-casa","count":1},{"id":"casa-volunteers","display":"casa-volunteers","count":1},{"id":"foster-youth","display":"foster-youth","count":1},{"id":"casa-chapters","display":"casa-chapters","count":1},{"id":"volunteer-management","display":"volunteer-management","count":1},{"id":"covid-19","display":"covid-19","count":1},{"id":"sustainable-development-goals","display":"sustainable-development-goals","count":1},{"id":"public-goods","display":"public-goods","count":1},{"id":"digital-public-goods","display":"digital-public-goods","count":1},{"id":"manufacturing","display":"manufacturing","count":1},{"id":"integrations","display":"integrations","count":1},{"id":"erpnext","display":"erpnext","count":1},{"id":"localization","display":"localization","count":1},{"id":"healthcare","display":"healthcare","count":1},{"id":"support","display":"support","count":1},{"id":"asset-management","display":"asset-management","count":1},{"id":"accounting","display":"accounting","count":1},{"id":"distribution","display":"distribution","count":1},{"id":"digital-human-rights","display":"digital-human-rights","count":1},{"id":"whistleblowing","display":"whistleblowing","count":1},{"id":"anonymity","display":"anonymity","count":1},{"id":"security","display":"security","count":1},{"id":"angularjs","display":"angularjs","count":1},{"id":"twisted","display":"twisted","count":1},{"id":"sqlalchemy","display":"sqlalchemy","count":1},{"id":"letsencrypt","display":"letsencrypt","count":1},{"id":"https","display":"https","count":1},{"id":"machine-learning","display":"machine-learning","count":1},{"id":"gpu","display":"gpu","count":1},{"id":"videos","display":"videos","count":1},{"id":"jungle","display":"jungle","count":1},{"id":"chimps","display":"chimps","count":1},{"id":"animals","display":"animals","count":1},{"id":"conservation","display":"conservation","count":1},{"id":"ecology","display":"ecology","count":1},{"id":"video-processing","display":"video-processing","count":1},{"id":"cli","display":"cli","count":1},{"id":"case-management","display":"case-management","count":1},{"id":"offline-first","display":"offline-first","count":1},{"id":"docker","display":"docker","count":1},{"id":"pwa","display":"pwa","count":1},{"id":"aac","display":"aac","count":1},{"id":"autism","display":"autism","count":1},{"id":"cerebral-palsy","display":"cerebral-palsy","count":1},{"id":"progressive-web-app","display":"progressive-web-app","count":1},{"id":"communication-board","display":"communication-board","count":1},{"id":"speech","display":"speech","count":1},{"id":"tts","display":"tts","count":1},{"id":"text-to-speech","display":"text-to-speech","count":1},{"id":"disabilities","display":"disabilities","count":1},{"id":"symbols","display":"symbols","count":1},{"id":"x-road","display":"x-road","count":1},{"id":"integration","display":"integration","count":1},{"id":"data-exchange","display":"data-exchange","count":1},{"id":"android-fhir-sdk","display":"android-fhir-sdk","count":1},{"id":"fhir","display":"fhir","count":1},{"id":"fhir-client","display":"fhir-client","count":1},{"id":"kotlin","display":"kotlin","count":1},{"id":"kotlin-android","display":"kotlin-android","count":1},{"id":"kotlin-library","display":"kotlin-library","count":1},{"id":"structured-data-capture","display":"structured-data-capture","count":1},{"id":"sqlite","display":"sqlite","count":1},{"id":"sqlite-database","display":"sqlite-database","count":1},{"id":"sqlite-android","display":"sqlite-android","count":1},{"id":"education","display":"education","count":1},{"id":"curriculum","display":"curriculum","count":1},{"id":"syllabus","display":"syllabus","count":1},{"id":"refugees","display":"refugees","count":1},{"id":"charity","display":"charity","count":1},{"id":"react","display":"react","count":1},{"id":"node","display":"node","count":1},{"id":"sql","display":"sql","count":1},{"id":"decidim","display":"decidim","count":1},{"id":"democracy","display":"democracy","count":1},{"id":"community","display":"community","count":1},{"id":"government","display":"government","count":1},{"id":"civic-tech","display":"civic-tech","count":1},{"id":"ideation","display":"ideation","count":1},{"id":"collective-intelligence","display":"collective-intelligence","count":1},{"id":"participation","display":"participation","count":1},{"id":"citizen-participation","display":"citizen-participation","count":1},{"id":"help-wanted","display":"help-wanted","count":1},{"id":"r","display":"r","count":1},{"id":"r-package","display":"r-package","count":1},{"id":"epiverse","display":"epiverse","count":1},{"id":"epidemiology","display":"epidemiology","count":1},{"id":"epidemic-modelling","display":"epidemic-modelling","count":1},{"id":"outbreak-analysis","display":"outbreak-analysis","count":1},{"id":"blockchain","display":"blockchain","count":1},{"id":"collaboration","display":"collaboration","count":1},{"id":"transparency","display":"transparency","count":1},{"id":"multichain","display":"multichain","count":1},{"id":"wikidata","display":"wikidata","count":1},{"id":"government-data","display":"government-data","count":1},{"id":"social-media","display":"social-media","count":1},{"id":"opengov","display":"opengov","count":1}]} \ No newline at end of file diff --git a/hooks/useAppData.tsx b/hooks/useAppData.tsx new file mode 100644 index 00000000..c9fc3302 --- /dev/null +++ b/hooks/useAppData.tsx @@ -0,0 +1,13 @@ +import { useContext } from "react"; + +import { AppDataContext } from "../context/AppDataContext"; + +export const useAppData = () => { + const context = useContext(AppDataContext); + + if (!context) { + throw new Error("useAppData must be used within an AppDataProvider"); + } + + return context; +}; diff --git a/next.config.js b/next.config.js new file mode 100644 index 00000000..6d338d07 --- /dev/null +++ b/next.config.js @@ -0,0 +1,9 @@ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/** @type {import('next').NextConfig} */ +const nextConfig = { + reactStrictMode: true, + productionBrowserSourceMaps: true, + trailingSlash: true, +} + +module.exports = nextConfig diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..d05845cb --- /dev/null +++ b/package-lock.json @@ -0,0 +1,9055 @@ +{ + "name": "first-issue", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "first-issue", + "version": "1.0.0", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.3.0", + "@fortawesome/free-regular-svg-icons": "^6.3.0", + "@fortawesome/free-solid-svg-icons": "^6.3.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "@next/font": "^13.2.4", + "@types/node": "18.11.18", + "@types/react": "18.0.26", + "@types/react-dom": "18.0.10", + "dayjs": "^1.11.7", + "millify": "^5.0.1", + "next": "13.4.9", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-infinite-scroll-component": "^6.1.0", + "slugify": "^1.6.6", + "typescript": "5.0.3" + }, + "devDependencies": { + "@next/eslint-plugin-next": "^13.1.6", + "@octokit/core": "^5.0.0", + "@octokit/graphql-schema": "^14.25.0", + "@octokit/plugin-retry": "^6.0.0", + "@octokit/plugin-throttling": "^7.0.0", + "@octokit/types": "^11.1.0", + "@trivago/prettier-plugin-sort-imports": "^4.1.1", + "@types/react-infinite-scroller": "^1.2.3", + "@typescript-eslint/eslint-plugin": "^5.59.1", + "@typescript-eslint/parser": "^5.56.0", + "autoprefixer": "^10.4.14", + "eslint": "^8.36.0", + "eslint-config-next": "13.2.4", + "eslint-config-prettier": "^8.5.0", + "eslint-import-resolver-typescript": "^3.5.3", + "eslint-plugin-prettier": "^4.2.1", + "husky": "^8.0.3", + "postcss": "^8.4.25", + "prettier": "^2.8.1", + "tailwindcss": "^3.2.7", + "ts-node": "^10.9.1" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables/node_modules/@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration/node_modules/@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", + "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", + "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.6.tgz", + "integrity": "sha512-tqeujPiuEfcH067mx+7otTQWROVMKHXEaOQcAeNV5dDdbPWvPcFA8/W9LXw2NfjNmOetqLl03dfnG2WALPlsRQ==", + "dev": true, + "dependencies": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.3.0.tgz", + "integrity": "sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.0.tgz", + "integrity": "sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz", + "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.5.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz", + "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.3.0.tgz", + "integrity": "sha512-4BC1NMoacEBzSXRwKjZ/X/gmnbp/HU5Qqat7E8xqorUtBFZS+bwfGH5/wqOC2K6GV0rgEobp3OjGRMa5fK9pFg==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.3.0.tgz", + "integrity": "sha512-uz9YifyKlixV6AcKlOX8WNdtF7l6nakGyLYxYaCa823bEBqyj/U2ssqtctO38itNEwXb8/lMzjdoJ+aaJuOdrw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-regular-svg-icons": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.3.0.tgz", + "integrity": "sha512-cZnwiVHZ51SVzWHOaNCIA+u9wevZjCuAGSvSYpNlm6A4H4Vhwh8481Bf/5rwheIC3fFKlgXxLKaw8Xeroz8Ntg==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.3.0.tgz", + "integrity": "sha512-x5tMwzF2lTH8pyv8yeZRodItP2IVlzzmBuD1M7BjawWgg9XAvktqJJ91Qjgoaf8qJpHQ8FEU9VxRfOkLhh86QA==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "dependencies": { + "prop-types": "^15.8.1" + }, + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "~1 || ~6", + "react": ">=16.3" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@next/env": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.9.tgz", + "integrity": "sha512-vuDRK05BOKfmoBYLNi2cujG2jrYbEod/ubSSyqgmEx9n/W3eZaJQdRNhTfumO+qmq/QTzLurW487n/PM/fHOkw==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.2.4.tgz", + "integrity": "sha512-ck1lI+7r1mMJpqLNa3LJ5pxCfOB1lfJncKmRJeJxcJqcngaFwylreLP7da6Rrjr6u2gVRTfmnkSkjc80IiQCwQ==", + "dev": true, + "dependencies": { + "glob": "7.1.7" + } + }, + "node_modules/@next/font": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/@next/font/-/font-13.2.4.tgz", + "integrity": "sha512-lMAnuOYjv5g22WhD00u0DQ9u2rTMJH0S64PKE4Sy8Y2q+FJTYs6ZHT2z3VRoI8+AOWSLK4FirpnygcjOienQ9A==" + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.9.tgz", + "integrity": "sha512-TVzGHpZoVBk3iDsTOQA/R6MGmFp0+17SWXMEWd6zG30AfuELmSSMe2SdPqxwXU0gbpWkJL1KgfLzy5ReN0crqQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.9.tgz", + "integrity": "sha512-aSfF1fhv28N2e7vrDZ6zOQ+IIthocfaxuMWGReB5GDriF0caTqtHttAvzOMgJgXQtQx6XhyaJMozLTSEXeNN+A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.9.tgz", + "integrity": "sha512-JhKoX5ECzYoTVyIy/7KykeO4Z2lVKq7HGQqvAH+Ip9UFn1MOJkOnkPRB7v4nmzqAoY+Je05Aj5wNABR1N18DMg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.9.tgz", + "integrity": "sha512-OOn6zZBIVkm/4j5gkPdGn4yqQt+gmXaLaSjRSO434WplV8vo2YaBNbSHaTM9wJpZTHVDYyjzuIYVEzy9/5RVZw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.9.tgz", + "integrity": "sha512-iA+fJXFPpW0SwGmx/pivVU+2t4zQHNOOAr5T378PfxPHY6JtjV6/0s1vlAJUdIHeVpX98CLp9k5VuKgxiRHUpg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.9.tgz", + "integrity": "sha512-rlNf2WUtMM+GAQrZ9gMNdSapkVi3koSW3a+dmBVp42lfugWVvnyzca/xJlN48/7AGx8qu62WyO0ya1ikgOxh6A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.9.tgz", + "integrity": "sha512-5T9ybSugXP77nw03vlgKZxD99AFTHaX8eT1ayKYYnGO9nmYhJjRPxcjU5FyYI+TdkQgEpIcH7p/guPLPR0EbKA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.9.tgz", + "integrity": "sha512-ojZTCt1lP2ucgpoiFgrFj07uq4CZsq4crVXpLGgQfoFq00jPKRPgesuGPaz8lg1yLfvafkU3Jd1i8snKwYR3LA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.9.tgz", + "integrity": "sha512-QbT03FXRNdpuL+e9pLnu+XajZdm/TtIXVYY4lA9t+9l0fLZbHXDYEKitAqxrOj37o3Vx5ufxiRAniaIebYDCgw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@octokit/auth-token": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", + "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.0.0.tgz", + "integrity": "sha512-YbAtMWIrbZ9FCXbLwT9wWB8TyLjq9mxpKdgB3dUNxQcIVTf9hJ70gRPwAcqGZdY6WdJPZ0I7jLaaNDCiloGN2A==", + "dev": true, + "dependencies": { + "@octokit/auth-token": "^4.0.0", + "@octokit/graphql": "^7.0.0", + "@octokit/request": "^8.0.2", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/endpoint": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.0.tgz", + "integrity": "sha512-szrQhiqJ88gghWY2Htt8MqUDO6++E/EIXqJ2ZEp5ma3uGS46o7LZAzSLt49myB7rT+Hfw5Y6gO3LmOxGzHijAQ==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/graphql": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.0.1.tgz", + "integrity": "sha512-T5S3oZ1JOE58gom6MIcrgwZXzTaxRnxBso58xhozxHpOqSTgDS6YNeEUvZ/kRvXgPrRz/KHnZhtb7jUMRi9E6w==", + "dev": true, + "dependencies": { + "@octokit/request": "^8.0.1", + "@octokit/types": "^11.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/graphql-schema": { + "version": "14.25.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql-schema/-/graphql-schema-14.25.0.tgz", + "integrity": "sha512-wVkHTxDozsxAjP5UwyndKlCGiPTnBGd3TuG283uTluugq7RAHzZiWo0OjDEfr3793L1Al7W5oPgwedFgDNTaLQ==", + "dev": true, + "dependencies": { + "graphql": "^16.0.0", + "graphql-tag": "^2.10.3" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", + "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", + "dev": true + }, + "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz", + "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==", + "extraneous": true, + "dependencies": { + "@octokit/openapi-types": "^18.0.0" + } + }, + "node_modules/@octokit/plugin-retry": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.0.tgz", + "integrity": "sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==", + "dev": true, + "dependencies": { + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "@octokit/core": ">=5" + } + }, + "node_modules/@octokit/plugin-throttling": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-7.0.0.tgz", + "integrity": "sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "@octokit/core": "^5.0.0" + } + }, + "node_modules/@octokit/request": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.1.1.tgz", + "integrity": "sha512-8N+tdUz4aCqQmXl8FpHYfKG9GelDFd7XGVzyN8rc6WxVlYcfpHECnuRkgquzz+WzvHTK62co5di8gSXnzASZPQ==", + "dev": true, + "dependencies": { + "@octokit/endpoint": "^9.0.0", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.1.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/request-error": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.0.0.tgz", + "integrity": "sha512-1ue0DH0Lif5iEqT52+Rf/hf0RmGO9NWFjrzmrkArpG9trFfDM/efx00BJHdLGuro4BR/gECxCU2Twf5OKrRFsQ==", + "dev": true, + "dependencies": { + "@octokit/types": "^11.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@octokit/types": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-11.1.0.tgz", + "integrity": "sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==", + "dev": true, + "dependencies": { + "@octokit/openapi-types": "^18.0.0" + } + }, + "node_modules/@pkgr/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "is-glob": "^4.0.3", + "open": "^8.4.0", + "picocolors": "^1.0.0", + "tiny-glob": "^0.2.9", + "tslib": "^2.4.0" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", + "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==", + "dev": true + }, + "node_modules/@swc/helpers": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", + "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@trivago/prettier-plugin-sort-imports": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-4.1.1.tgz", + "integrity": "sha512-dQ2r2uzNr1x6pJsuh/8x0IRA3CBUB+pWEW3J/7N98axqt7SQSm+2fy0FLNXvXGg77xEDC7KHxJlHfLYyi7PDcw==", + "dev": true, + "dependencies": { + "@babel/generator": "7.17.7", + "@babel/parser": "^7.20.5", + "@babel/traverse": "7.17.3", + "@babel/types": "7.17.0", + "javascript-natural-sort": "0.7.1", + "lodash": "^4.17.21" + }, + "peerDependencies": { + "@vue/compiler-sfc": "3.x", + "prettier": "2.x" + }, + "peerDependenciesMeta": { + "@vue/compiler-sfc": { + "optional": true + } + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.11.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz", + "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "node_modules/@types/react": { + "version": "18.0.26", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz", + "integrity": "sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.0.10", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", + "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-infinite-scroller": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/react-infinite-scroller/-/react-infinite-scroller-1.2.3.tgz", + "integrity": "sha512-l60JckVoO+dxmKW2eEG7jbliEpITsTJvRPTe97GazjF5+ylagAuyYdXl8YY9DQsTP9QjhqGKZROknzgscGJy0A==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz", + "integrity": "sha512-AVi0uazY5quFB9hlp2Xv+ogpfpk77xzsgsIEWyVS7uK/c7MZ5tw7ZPbapa0SbfkqE0fsAMkz5UwtgMLVk2BQAg==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.59.1", + "@typescript-eslint/type-utils": "5.59.1", + "@typescript-eslint/utils": "5.59.1", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", + "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.56.0.tgz", + "integrity": "sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.56.0", + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/typescript-estree": "5.56.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.56.0.tgz", + "integrity": "sha512-jGYKyt+iBakD0SA5Ww8vFqGpoV2asSjwt60Gl6YcO8ksQ8s2HlUEyHBMSa38bdLopYqGf7EYQMUIGdT/Luw+sw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/visitor-keys": "5.56.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.1.tgz", + "integrity": "sha512-ZMWQ+Oh82jWqWzvM3xU+9y5U7MEMVv6GLioM3R5NJk6uvP47kZ7YvlgSHJ7ERD6bOY7Q4uxWm25c76HKEwIjZw==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.59.1", + "@typescript-eslint/utils": "5.59.1", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", + "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.56.0.tgz", + "integrity": "sha512-JyAzbTJcIyhuUhogmiu+t79AkdnqgPUEsxMTMc/dCZczGMJQh1MK2wgrju++yMN6AWroVAy2jxyPcPr3SWCq5w==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.56.0.tgz", + "integrity": "sha512-41CH/GncsLXOJi0jb74SnC7jVPWeVJ0pxQj8bOjH1h2O26jXN3YHKDT1ejkVz5YeTEQPeLCCRY0U2r68tfNOcg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/visitor-keys": "5.56.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.1.tgz", + "integrity": "sha512-MkTe7FE+K1/GxZkP5gRj3rCztg45bEhsd8HYjczBuYm+qFHP5vtZmjx3B0yUCDotceQ4sHgTyz60Ycl225njmA==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.59.1", + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/typescript-estree": "5.59.1", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", + "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", + "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.56.0.tgz", + "integrity": "sha512-1mFdED7u5bZpX6Xxf5N9U2c18sb+8EvU3tyOIj6LQZ5OOvnmj8BVeNNP603OFPm5KkS1a7IvCIcwrdHXaEMG/Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.56.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", + "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-core/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", + "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", + "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-ssr": "3.2.47", + "@vue/reactivity-transform": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7", + "postcss": "^8.1.10", + "source-map": "^0.6.1" + } + }, + "node_modules/@vue/compiler-sfc/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", + "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@vue/compiler-dom": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "node_modules/@vue/reactivity-transform": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", + "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" + } + }, + "node_modules/@vue/shared": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", + "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", + "dev": true, + "optional": true, + "peer": true + }, + "node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz", + "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/axe-core": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.1.tgz", + "integrity": "sha512-lCZN5XRuOnpG4bpMq8v0khrWtUOn+i8lZSb6wHZH56ZfbIEv6XwJV84AAueh9/zi7qPVJ/E4yz6fmsiyOmXR4w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001516", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001516.tgz", + "integrity": "sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/core-js-pure": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.1.tgz", + "integrity": "sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==", + "dev": true, + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "node_modules/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dev": true, + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.461", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.461.tgz", + "integrity": "sha512-1JkvV2sgEGTDXjdsaQCeSwYYuhLRphRpc+g6EHTFELJXEiznLt3/0pZ9JuAOQ5p2rI3YxKTbivtvajirIfhrEQ==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/es-abstract": { + "version": "1.20.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.5.tgz", + "integrity": "sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz", + "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.4.0", + "@eslint/eslintrc": "^2.0.1", + "@eslint/js": "8.36.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.5.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-next": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.2.4.tgz", + "integrity": "sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "13.2.4", + "@rushstack/eslint-patch": "^1.1.3", + "@typescript-eslint/parser": "^5.42.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.31.7", + "eslint-plugin-react-hooks": "^4.5.0" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.3.tgz", + "integrity": "sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "enhanced-resolve": "^5.10.0", + "get-tsconfig": "^4.2.0", + "globby": "^13.1.2", + "is-core-module": "^2.10.0", + "is-glob": "^4.0.3", + "synckit": "^0.8.4" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-import-resolver-typescript/node_modules/globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-import-resolver-typescript/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.31.11", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz", + "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.8" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/espree": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz", + "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==", + "dev": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", + "integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "optional": true, + "peer": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.2.0.tgz", + "integrity": "sha512-X8u8fREiYOE6S8hLbq99PeykTDoLVnxvF4DjWKJmz9xy2nNRdUcV8ZN9tniJFeKyTU3qnC9lL8n4Chd6LmVKHg==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalyzer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", + "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", + "dev": true + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/graphql": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.7.1.tgz", + "integrity": "sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" + } + }, + "node_modules/graphql-tag": { + "version": "2.12.6", + "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", + "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", + "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/javascript-natural-sort": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", + "integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", + "dev": true + }, + "node_modules/js-sdsl": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true + }, + "node_modules/language-tags": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.7.tgz", + "integrity": "sha512-bSytju1/657hFjgUzPAPqszxH62ouE8nQFoFaVlIQfne4wO/wXC9A4+m8jYve7YBBvi59eq0SUpcshvG8h5Usw==", + "dev": true, + "dependencies": { + "language-subtag-registry": "^0.3.20" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/millify": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/millify/-/millify-5.0.1.tgz", + "integrity": "sha512-1IacXjRDMbRevt2++mBnrI2iFxljWlQapMUT9Bs+uAF3o/TrYdE46Uf6CqlmoOWMX1JDAlMorXPv4/hM1eE/kw==", + "dependencies": { + "yargs": "^17.0.1" + }, + "bin": { + "millify": "bin/millify" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/next": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/next/-/next-13.4.9.tgz", + "integrity": "sha512-vtefFm/BWIi/eWOqf1GsmKG3cjKw1k3LjuefKRcL3iiLl3zWzFdPG3as6xtxrGO6gwTzzaO1ktL4oiHt/uvTjA==", + "dependencies": { + "@next/env": "13.4.9", + "@swc/helpers": "0.5.1", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.14", + "styled-jsx": "5.1.1", + "watchpack": "2.4.0", + "zod": "3.21.4" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=16.8.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "13.4.9", + "@next/swc-darwin-x64": "13.4.9", + "@next/swc-linux-arm64-gnu": "13.4.9", + "@next/swc-linux-arm64-musl": "13.4.9", + "@next/swc-linux-x64-gnu": "13.4.9", + "@next/swc-linux-x64-musl": "13.4.9", + "@next/swc-win32-arm64-msvc": "13.4.9", + "@next/swc-win32-ia32-msvc": "13.4.9", + "@next/swc-win32-x64-msvc": "13.4.9" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "fibers": ">= 3.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "fibers": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "8.4.25", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.25.tgz", + "integrity": "sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-infinite-scroll-component": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/react-infinite-scroll-component/-/react-infinite-scroll-component-6.1.0.tgz", + "integrity": "sha512-SQu5nCqy8DxQWpnUVLx7V7b7LcA37aM7tvoWjTLZp1dk6EJibM5/4EJKzOnl07/BsM1Y40sKLuqjCwwH/xV0TQ==", + "dependencies": { + "throttle-debounce": "^2.1.0" + }, + "peerDependencies": { + "react": ">=16.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slugify": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", + "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead", + "dev": true, + "optional": true, + "peer": true + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/synckit": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.4.tgz", + "integrity": "sha512-Dn2ZkzMdSX827QbowGbU/4yjWuvNaCoScLLoMo/yKbu+P4GBR6cRGKZH27k6a9bRzdqcyd1DE96pQtQ6uNkmyw==", + "dev": true, + "dependencies": { + "@pkgr/utils": "^2.3.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, + "node_modules/tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "dev": true, + "dependencies": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=12.13.0" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/throttle-debounce": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz", + "integrity": "sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "dev": true, + "dependencies": { + "globalyzer": "0.1.0", + "globrex": "^0.1.2" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.3.tgz", + "integrity": "sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=12.20" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "dev": true + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/generator": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "requires": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "dependencies": { + "@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + }, + "dependencies": { + "@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + }, + "dependencies": { + "@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", + "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "dev": true + }, + "@babel/runtime": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", + "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/runtime-corejs3": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.6.tgz", + "integrity": "sha512-tqeujPiuEfcH067mx+7otTQWROVMKHXEaOQcAeNV5dDdbPWvPcFA8/W9LXw2NfjNmOetqLl03dfnG2WALPlsRQ==", + "dev": true, + "requires": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.11" + } + }, + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "dependencies": { + "@babel/types": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", + "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/traverse": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + } + }, + "@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } + } + }, + "@eslint-community/eslint-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.3.0.tgz", + "integrity": "sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.3.0" + } + }, + "@eslint-community/regexpp": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.0.tgz", + "integrity": "sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==", + "dev": true + }, + "@eslint/eslintrc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz", + "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.5.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + } + }, + "@eslint/js": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz", + "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==", + "dev": true + }, + "@fortawesome/fontawesome-common-types": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.3.0.tgz", + "integrity": "sha512-4BC1NMoacEBzSXRwKjZ/X/gmnbp/HU5Qqat7E8xqorUtBFZS+bwfGH5/wqOC2K6GV0rgEobp3OjGRMa5fK9pFg==" + }, + "@fortawesome/fontawesome-svg-core": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.3.0.tgz", + "integrity": "sha512-uz9YifyKlixV6AcKlOX8WNdtF7l6nakGyLYxYaCa823bEBqyj/U2ssqtctO38itNEwXb8/lMzjdoJ+aaJuOdrw==", + "requires": { + "@fortawesome/fontawesome-common-types": "6.3.0" + } + }, + "@fortawesome/free-regular-svg-icons": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.3.0.tgz", + "integrity": "sha512-cZnwiVHZ51SVzWHOaNCIA+u9wevZjCuAGSvSYpNlm6A4H4Vhwh8481Bf/5rwheIC3fFKlgXxLKaw8Xeroz8Ntg==", + "requires": { + "@fortawesome/fontawesome-common-types": "6.3.0" + } + }, + "@fortawesome/free-solid-svg-icons": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.3.0.tgz", + "integrity": "sha512-x5tMwzF2lTH8pyv8yeZRodItP2IVlzzmBuD1M7BjawWgg9XAvktqJJ91Qjgoaf8qJpHQ8FEU9VxRfOkLhh86QA==", + "requires": { + "@fortawesome/fontawesome-common-types": "6.3.0" + } + }, + "@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "requires": { + "prop-types": "^15.8.1" + } + }, + "@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@next/env": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.9.tgz", + "integrity": "sha512-vuDRK05BOKfmoBYLNi2cujG2jrYbEod/ubSSyqgmEx9n/W3eZaJQdRNhTfumO+qmq/QTzLurW487n/PM/fHOkw==" + }, + "@next/eslint-plugin-next": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.2.4.tgz", + "integrity": "sha512-ck1lI+7r1mMJpqLNa3LJ5pxCfOB1lfJncKmRJeJxcJqcngaFwylreLP7da6Rrjr6u2gVRTfmnkSkjc80IiQCwQ==", + "dev": true, + "requires": { + "glob": "7.1.7" + } + }, + "@next/font": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/@next/font/-/font-13.2.4.tgz", + "integrity": "sha512-lMAnuOYjv5g22WhD00u0DQ9u2rTMJH0S64PKE4Sy8Y2q+FJTYs6ZHT2z3VRoI8+AOWSLK4FirpnygcjOienQ9A==" + }, + "@next/swc-darwin-arm64": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.9.tgz", + "integrity": "sha512-TVzGHpZoVBk3iDsTOQA/R6MGmFp0+17SWXMEWd6zG30AfuELmSSMe2SdPqxwXU0gbpWkJL1KgfLzy5ReN0crqQ==", + "optional": true + }, + "@next/swc-darwin-x64": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.9.tgz", + "integrity": "sha512-aSfF1fhv28N2e7vrDZ6zOQ+IIthocfaxuMWGReB5GDriF0caTqtHttAvzOMgJgXQtQx6XhyaJMozLTSEXeNN+A==", + "optional": true + }, + "@next/swc-linux-arm64-gnu": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.9.tgz", + "integrity": "sha512-JhKoX5ECzYoTVyIy/7KykeO4Z2lVKq7HGQqvAH+Ip9UFn1MOJkOnkPRB7v4nmzqAoY+Je05Aj5wNABR1N18DMg==", + "optional": true + }, + "@next/swc-linux-arm64-musl": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.9.tgz", + "integrity": "sha512-OOn6zZBIVkm/4j5gkPdGn4yqQt+gmXaLaSjRSO434WplV8vo2YaBNbSHaTM9wJpZTHVDYyjzuIYVEzy9/5RVZw==", + "optional": true + }, + "@next/swc-linux-x64-gnu": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.9.tgz", + "integrity": "sha512-iA+fJXFPpW0SwGmx/pivVU+2t4zQHNOOAr5T378PfxPHY6JtjV6/0s1vlAJUdIHeVpX98CLp9k5VuKgxiRHUpg==", + "optional": true + }, + "@next/swc-linux-x64-musl": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.9.tgz", + "integrity": "sha512-rlNf2WUtMM+GAQrZ9gMNdSapkVi3koSW3a+dmBVp42lfugWVvnyzca/xJlN48/7AGx8qu62WyO0ya1ikgOxh6A==", + "optional": true + }, + "@next/swc-win32-arm64-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.9.tgz", + "integrity": "sha512-5T9ybSugXP77nw03vlgKZxD99AFTHaX8eT1ayKYYnGO9nmYhJjRPxcjU5FyYI+TdkQgEpIcH7p/guPLPR0EbKA==", + "optional": true + }, + "@next/swc-win32-ia32-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.9.tgz", + "integrity": "sha512-ojZTCt1lP2ucgpoiFgrFj07uq4CZsq4crVXpLGgQfoFq00jPKRPgesuGPaz8lg1yLfvafkU3Jd1i8snKwYR3LA==", + "optional": true + }, + "@next/swc-win32-x64-msvc": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.9.tgz", + "integrity": "sha512-QbT03FXRNdpuL+e9pLnu+XajZdm/TtIXVYY4lA9t+9l0fLZbHXDYEKitAqxrOj37o3Vx5ufxiRAniaIebYDCgw==", + "optional": true + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@octokit/auth-token": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", + "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", + "dev": true + }, + "@octokit/core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.0.0.tgz", + "integrity": "sha512-YbAtMWIrbZ9FCXbLwT9wWB8TyLjq9mxpKdgB3dUNxQcIVTf9hJ70gRPwAcqGZdY6WdJPZ0I7jLaaNDCiloGN2A==", + "dev": true, + "requires": { + "@octokit/auth-token": "^4.0.0", + "@octokit/graphql": "^7.0.0", + "@octokit/request": "^8.0.2", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/endpoint": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.0.tgz", + "integrity": "sha512-szrQhiqJ88gghWY2Htt8MqUDO6++E/EIXqJ2ZEp5ma3uGS46o7LZAzSLt49myB7rT+Hfw5Y6gO3LmOxGzHijAQ==", + "dev": true, + "requires": { + "@octokit/types": "^11.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/graphql": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.0.1.tgz", + "integrity": "sha512-T5S3oZ1JOE58gom6MIcrgwZXzTaxRnxBso58xhozxHpOqSTgDS6YNeEUvZ/kRvXgPrRz/KHnZhtb7jUMRi9E6w==", + "dev": true, + "requires": { + "@octokit/request": "^8.0.1", + "@octokit/types": "^11.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/graphql-schema": { + "version": "14.25.0", + "resolved": "https://registry.npmjs.org/@octokit/graphql-schema/-/graphql-schema-14.25.0.tgz", + "integrity": "sha512-wVkHTxDozsxAjP5UwyndKlCGiPTnBGd3TuG283uTluugq7RAHzZiWo0OjDEfr3793L1Al7W5oPgwedFgDNTaLQ==", + "dev": true, + "requires": { + "graphql": "^16.0.0", + "graphql-tag": "^2.10.3" + } + }, + "@octokit/openapi-types": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.0.0.tgz", + "integrity": "sha512-V8GImKs3TeQRxRtXFpG2wl19V7444NIOTDF24AWuIbmNaNYOQMWRbjcGDXV5B+0n887fgDcuMNOmlul+k+oJtw==", + "dev": true + }, + "@octokit/plugin-retry": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.0.tgz", + "integrity": "sha512-a1/A4A+PB1QoAHQfLJxGHhLfSAT03bR1jJz3GgQJZvty2ozawFWs93MiBQXO7SL2YbO7CIq0Goj4qLOBj8JeMQ==", + "dev": true, + "requires": { + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + } + }, + "@octokit/plugin-throttling": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-7.0.0.tgz", + "integrity": "sha512-KL2k/d0uANc8XqP5S64YcNFCudR3F5AaKO39XWdUtlJIjT9Ni79ekWJ6Kj5xvAw87udkOMEPcVf9xEge2+ahew==", + "dev": true, + "requires": { + "@octokit/types": "^11.0.0", + "bottleneck": "^2.15.3" + } + }, + "@octokit/request": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.1.1.tgz", + "integrity": "sha512-8N+tdUz4aCqQmXl8FpHYfKG9GelDFd7XGVzyN8rc6WxVlYcfpHECnuRkgquzz+WzvHTK62co5di8gSXnzASZPQ==", + "dev": true, + "requires": { + "@octokit/endpoint": "^9.0.0", + "@octokit/request-error": "^5.0.0", + "@octokit/types": "^11.1.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/request-error": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.0.0.tgz", + "integrity": "sha512-1ue0DH0Lif5iEqT52+Rf/hf0RmGO9NWFjrzmrkArpG9trFfDM/efx00BJHdLGuro4BR/gECxCU2Twf5OKrRFsQ==", + "dev": true, + "requires": { + "@octokit/types": "^11.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "@octokit/types": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-11.1.0.tgz", + "integrity": "sha512-Fz0+7GyLm/bHt8fwEqgvRBWwIV1S6wRRyq+V6exRKLVWaKGsuy6H9QFYeBVDV7rK6fO3XwHgQOPxv+cLj2zpXQ==", + "dev": true, + "requires": { + "@octokit/openapi-types": "^18.0.0" + } + }, + "@pkgr/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "is-glob": "^4.0.3", + "open": "^8.4.0", + "picocolors": "^1.0.0", + "tiny-glob": "^0.2.9", + "tslib": "^2.4.0" + } + }, + "@rushstack/eslint-patch": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", + "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==", + "dev": true + }, + "@swc/helpers": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", + "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", + "requires": { + "tslib": "^2.4.0" + } + }, + "@trivago/prettier-plugin-sort-imports": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@trivago/prettier-plugin-sort-imports/-/prettier-plugin-sort-imports-4.1.1.tgz", + "integrity": "sha512-dQ2r2uzNr1x6pJsuh/8x0IRA3CBUB+pWEW3J/7N98axqt7SQSm+2fy0FLNXvXGg77xEDC7KHxJlHfLYyi7PDcw==", + "dev": true, + "requires": { + "@babel/generator": "7.17.7", + "@babel/parser": "^7.20.5", + "@babel/traverse": "7.17.3", + "@babel/types": "7.17.0", + "javascript-natural-sort": "0.7.1", + "lodash": "^4.17.21" + } + }, + "@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "@types/node": { + "version": "18.11.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz", + "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==" + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "@types/react": { + "version": "18.0.26", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz", + "integrity": "sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "18.0.10", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", + "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", + "requires": { + "@types/react": "*" + } + }, + "@types/react-infinite-scroller": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/react-infinite-scroller/-/react-infinite-scroller-1.2.3.tgz", + "integrity": "sha512-l60JckVoO+dxmKW2eEG7jbliEpITsTJvRPTe97GazjF5+ylagAuyYdXl8YY9DQsTP9QjhqGKZROknzgscGJy0A==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, + "@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz", + "integrity": "sha512-AVi0uazY5quFB9hlp2Xv+ogpfpk77xzsgsIEWyVS7uK/c7MZ5tw7ZPbapa0SbfkqE0fsAMkz5UwtgMLVk2BQAg==", + "dev": true, + "requires": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.59.1", + "@typescript-eslint/type-utils": "5.59.1", + "@typescript-eslint/utils": "5.59.1", + "debug": "^4.3.4", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", + "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1" + } + }, + "@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true + }, + "@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + } + } + } + }, + "@typescript-eslint/parser": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.56.0.tgz", + "integrity": "sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.56.0", + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/typescript-estree": "5.56.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.56.0.tgz", + "integrity": "sha512-jGYKyt+iBakD0SA5Ww8vFqGpoV2asSjwt60Gl6YcO8ksQ8s2HlUEyHBMSa38bdLopYqGf7EYQMUIGdT/Luw+sw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/visitor-keys": "5.56.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.1.tgz", + "integrity": "sha512-ZMWQ+Oh82jWqWzvM3xU+9y5U7MEMVv6GLioM3R5NJk6uvP47kZ7YvlgSHJ7ERD6bOY7Q4uxWm25c76HKEwIjZw==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.59.1", + "@typescript-eslint/utils": "5.59.1", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "dependencies": { + "@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", + "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + } + } + } + }, + "@typescript-eslint/types": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.56.0.tgz", + "integrity": "sha512-JyAzbTJcIyhuUhogmiu+t79AkdnqgPUEsxMTMc/dCZczGMJQh1MK2wgrju++yMN6AWroVAy2jxyPcPr3SWCq5w==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.56.0.tgz", + "integrity": "sha512-41CH/GncsLXOJi0jb74SnC7jVPWeVJ0pxQj8bOjH1h2O26jXN3YHKDT1ejkVz5YeTEQPeLCCRY0U2r68tfNOcg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.56.0", + "@typescript-eslint/visitor-keys": "5.56.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.1.tgz", + "integrity": "sha512-MkTe7FE+K1/GxZkP5gRj3rCztg45bEhsd8HYjczBuYm+qFHP5vtZmjx3B0yUCDotceQ4sHgTyz60Ycl225njmA==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.59.1", + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/typescript-estree": "5.59.1", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", + "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1" + } + }, + "@typescript-eslint/types": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", + "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", + "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "@typescript-eslint/visitor-keys": "5.59.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.59.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", + "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.59.1", + "eslint-visitor-keys": "^3.3.0" + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.56.0.tgz", + "integrity": "sha512-1mFdED7u5bZpX6Xxf5N9U2c18sb+8EvU3tyOIj6LQZ5OOvnmj8BVeNNP603OFPm5KkS1a7IvCIcwrdHXaEMG/Q==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.56.0", + "eslint-visitor-keys": "^3.3.0" + } + }, + "@vue/compiler-core": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.47.tgz", + "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@babel/parser": "^7.16.4", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "peer": true + } + } + }, + "@vue/compiler-dom": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz", + "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "@vue/compiler-sfc": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz", + "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/compiler-dom": "3.2.47", + "@vue/compiler-ssr": "3.2.47", + "@vue/reactivity-transform": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7", + "postcss": "^8.1.10", + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "peer": true + } + } + }, + "@vue/compiler-ssr": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz", + "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@vue/compiler-dom": "3.2.47", + "@vue/shared": "3.2.47" + } + }, + "@vue/reactivity-transform": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz", + "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@babel/parser": "^7.16.4", + "@vue/compiler-core": "3.2.47", + "@vue/shared": "3.2.47", + "estree-walker": "^2.0.2", + "magic-string": "^0.25.7" + } + }, + "@vue/shared": { + "version": "3.2.47", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz", + "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==", + "dev": true, + "optional": true, + "peer": true + }, + "acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, + "requires": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + } + }, + "array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.tosorted": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz", + "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + } + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", + "dev": true + }, + "autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "requires": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + } + }, + "axe-core": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.1.tgz", + "integrity": "sha512-lCZN5XRuOnpG4bpMq8v0khrWtUOn+i8lZSb6wHZH56ZfbIEv6XwJV84AAueh9/zi7qPVJ/E4yz6fmsiyOmXR4w==", + "dev": true + }, + "axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + } + }, + "busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "requires": { + "streamsearch": "^1.1.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001516", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001516.tgz", + "integrity": "sha512-Wmec9pCBY8CWbmI4HsjBeQLqDTqV91nFVR83DnZpYyRnPI1wePDsTg0bGLPC5VU/3OIZV1fmxEea1b+tFKe86g==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "core-js-pure": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.1.tgz", + "integrity": "sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==", + "dev": true + }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "dev": true + }, + "deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dev": true, + "requires": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + } + }, + "didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "electron-to-chromium": { + "version": "1.4.461", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.461.tgz", + "integrity": "sha512-1JkvV2sgEGTDXjdsaQCeSwYYuhLRphRpc+g6EHTFELJXEiznLt3/0pZ9JuAOQ5p2rI3YxKTbivtvajirIfhrEQ==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "es-abstract": { + "version": "1.20.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.5.tgz", + "integrity": "sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "unbox-primitive": "^1.0.2" + } + }, + "es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz", + "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.4.0", + "@eslint/eslintrc": "^2.0.1", + "@eslint/js": "8.36.0", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.5.0", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + } + }, + "eslint-config-next": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.2.4.tgz", + "integrity": "sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==", + "dev": true, + "requires": { + "@next/eslint-plugin-next": "13.2.4", + "@rushstack/eslint-patch": "^1.1.3", + "@typescript-eslint/parser": "^5.42.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.31.7", + "eslint-plugin-react-hooks": "^4.5.0" + } + }, + "eslint-config-prettier": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz", + "integrity": "sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==", + "dev": true, + "requires": {} + }, + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-import-resolver-typescript": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.3.tgz", + "integrity": "sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==", + "dev": true, + "requires": { + "debug": "^4.3.4", + "enhanced-resolve": "^5.10.0", + "get-tsconfig": "^4.2.0", + "globby": "^13.1.2", + "is-core-module": "^2.10.0", + "is-glob": "^4.0.3", + "synckit": "^0.8.4" + }, + "dependencies": { + "globby": { + "version": "13.1.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.3.tgz", + "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", + "dev": true, + "requires": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" + } + }, + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true + } + } + }, + "eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "dev": true, + "requires": { + "debug": "^3.2.7" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dev": true, + "requires": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "dev": true, + "requires": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "eslint-plugin-react": { + "version": "7.31.11", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz", + "integrity": "sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==", + "dev": true, + "requires": { + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.8" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true, + "requires": {} + }, + "eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true + }, + "espree": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz", + "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==", + "dev": true, + "requires": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + } + }, + "esquery": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.2.tgz", + "integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "optional": true, + "peer": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fastq": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "get-tsconfig": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.2.0.tgz", + "integrity": "sha512-X8u8fREiYOE6S8hLbq99PeykTDoLVnxvF4DjWKJmz9xy2nNRdUcV8ZN9tniJFeKyTU3qnC9lL8n4Chd6LmVKHg==", + "dev": true + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "globalyzer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", + "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", + "dev": true + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3" + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "graphql": { + "version": "16.7.1", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.7.1.tgz", + "integrity": "sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg==", + "dev": true + }, + "graphql-tag": { + "version": "2.12.6", + "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", + "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "internal-slot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz", + "integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "javascript-natural-sort": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz", + "integrity": "sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==", + "dev": true + }, + "js-sdsl": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "dev": true, + "requires": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + } + }, + "language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true + }, + "language-tags": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.7.tgz", + "integrity": "sha512-bSytju1/657hFjgUzPAPqszxH62ouE8nQFoFaVlIQfne4wO/wXC9A4+m8jYve7YBBvi59eq0SUpcshvG8h5Usw==", + "dev": true, + "requires": { + "language-subtag-registry": "^0.3.20" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lilconfig": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", + "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "dev": true + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "millify": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/millify/-/millify-5.0.1.tgz", + "integrity": "sha512-1IacXjRDMbRevt2++mBnrI2iFxljWlQapMUT9Bs+uAF3o/TrYdE46Uf6CqlmoOWMX1JDAlMorXPv4/hM1eE/kw==", + "requires": { + "yargs": "^17.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "next": { + "version": "13.4.9", + "resolved": "https://registry.npmjs.org/next/-/next-13.4.9.tgz", + "integrity": "sha512-vtefFm/BWIi/eWOqf1GsmKG3cjKw1k3LjuefKRcL3iiLl3zWzFdPG3as6xtxrGO6gwTzzaO1ktL4oiHt/uvTjA==", + "requires": { + "@next/env": "13.4.9", + "@next/swc-darwin-arm64": "13.4.9", + "@next/swc-darwin-x64": "13.4.9", + "@next/swc-linux-arm64-gnu": "13.4.9", + "@next/swc-linux-arm64-musl": "13.4.9", + "@next/swc-linux-x64-gnu": "13.4.9", + "@next/swc-linux-x64-musl": "13.4.9", + "@next/swc-win32-arm64-msvc": "13.4.9", + "@next/swc-win32-ia32-msvc": "13.4.9", + "@next/swc-win32-x64-msvc": "13.4.9", + "@swc/helpers": "0.5.1", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.14", + "styled-jsx": "5.1.1", + "watchpack": "2.4.0", + "zod": "3.21.4" + }, + "dependencies": { + "postcss": { + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + } + } + }, + "node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "dev": true, + "requires": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "postcss": { + "version": "8.4.25", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.25.tgz", + "integrity": "sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw==", + "dev": true, + "requires": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "dev": true, + "requires": { + "camelcase-css": "^2.0.1" + } + }, + "postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + } + }, + "postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "prettier": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true + }, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "requires": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + } + }, + "react-infinite-scroll-component": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/react-infinite-scroll-component/-/react-infinite-scroll-component-6.1.0.tgz", + "integrity": "sha512-SQu5nCqy8DxQWpnUVLx7V7b7LcA37aM7tvoWjTLZp1dk6EJibM5/4EJKzOnl07/BsM1Y40sKLuqjCwwH/xV0TQ==", + "requires": { + "throttle-debounce": "^2.1.0" + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slugify": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", + "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true, + "optional": true, + "peer": true + }, + "streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + } + } + }, + "string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "requires": { + "client-only": "0.0.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, + "synckit": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.4.tgz", + "integrity": "sha512-Dn2ZkzMdSX827QbowGbU/4yjWuvNaCoScLLoMo/yKbu+P4GBR6cRGKZH27k6a9bRzdqcyd1DE96pQtQ6uNkmyw==", + "dev": true, + "requires": { + "@pkgr/utils": "^2.3.1", + "tslib": "^2.4.0" + } + }, + "tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "dev": true, + "requires": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + } + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "throttle-debounce": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz", + "integrity": "sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==" + }, + "tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "dev": true, + "requires": { + "globalyzer": "0.1.0", + "globrex": "^0.1.2" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "requires": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "dependencies": { + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true + }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + } + } + }, + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "typescript": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.3.tgz", + "integrity": "sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA==" + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "word-wrap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", + "dev": true + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, + "zod": { + "version": "3.21.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..8cc88e13 --- /dev/null +++ b/package.json @@ -0,0 +1,54 @@ +{ + "name": "first-issue", + "version": "1.0.0", + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint", + "export": "next export", + "prepare": "husky install", + "prebuild": "ts-node generate.ts" + }, + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.3.0", + "@fortawesome/free-regular-svg-icons": "^6.3.0", + "@fortawesome/free-solid-svg-icons": "^6.3.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "@next/font": "^13.2.4", + "@types/node": "18.11.18", + "@types/react": "18.0.26", + "@types/react-dom": "18.0.10", + "dayjs": "^1.11.7", + "millify": "^5.0.1", + "next": "13.4.9", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-infinite-scroll-component": "^6.1.0", + "slugify": "^1.6.6", + "typescript": "5.0.3" + }, + "devDependencies": { + "@next/eslint-plugin-next": "^13.1.6", + "@octokit/core": "^5.0.0", + "@octokit/plugin-retry": "^6.0.0", + "@octokit/plugin-throttling": "^7.0.0", + "@octokit/types": "^11.1.0", + "@octokit/graphql-schema": "^14.25.0", + "@trivago/prettier-plugin-sort-imports": "^4.1.1", + "@types/react-infinite-scroller": "^1.2.3", + "@typescript-eslint/eslint-plugin": "^5.59.1", + "@typescript-eslint/parser": "^5.56.0", + "autoprefixer": "^10.4.14", + "eslint": "^8.36.0", + "eslint-config-next": "13.2.4", + "eslint-config-prettier": "^8.5.0", + "eslint-import-resolver-typescript": "^3.5.3", + "eslint-plugin-prettier": "^4.2.1", + "husky": "^8.0.3", + "postcss": "^8.4.25", + "prettier": "^2.8.1", + "tailwindcss": "^3.2.7", + "ts-node": "^10.9.1" + } +} diff --git a/pages/_app.tsx b/pages/_app.tsx new file mode 100644 index 00000000..6b53beba --- /dev/null +++ b/pages/_app.tsx @@ -0,0 +1,34 @@ +import { config } from "@fortawesome/fontawesome-svg-core"; +import "@fortawesome/fontawesome-svg-core/styles.css"; +import { Inter } from "@next/font/google"; +import type { AppProps } from "next/app"; +import Head from "next/head"; + +import { Layout } from "../components/Layout"; +import { AppDataProvider } from "../context/AppDataContext"; +import "../styles/globals.css"; + +// Fontawesome and TailwindCSS related settings +config.autoAddCss = false; +const inter = Inter({ + subsets: ["latin"], + variable: "--font-inter" +}); + +// Entry point for the app +export default function App({ Component, pageProps }: AppProps) { + return ( + <> + + + + +
    + + + +
    +
    + + ); +} diff --git a/pages/_document.tsx b/pages/_document.tsx new file mode 100644 index 00000000..4f92ad2e --- /dev/null +++ b/pages/_document.tsx @@ -0,0 +1,61 @@ +import { Head, Html, Main, NextScript } from "next/document"; +import Script from "next/script"; + +export default function Document() { + return ( + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + ); +} diff --git a/pages/index.tsx b/pages/index.tsx new file mode 100644 index 00000000..17b71f43 --- /dev/null +++ b/pages/index.tsx @@ -0,0 +1,17 @@ +import Head from "next/head"; + +import { RepositoryList } from "../components/RepositoryList"; +import { useAppData } from "../hooks/useAppData"; + +export default function Home() { + const { repositories } = useAppData(); + + return ( + <> + + First Issue | Issues for your next open-source contribution + + + + ); +} diff --git a/pages/language/[tag].tsx b/pages/language/[tag].tsx new file mode 100644 index 00000000..b5446f1b --- /dev/null +++ b/pages/language/[tag].tsx @@ -0,0 +1,50 @@ +import { GetStaticPaths, GetStaticProps } from "next"; +import Head from "next/head"; +import { ParsedUrlQuery } from "querystring"; + +import { RepositoryList } from "../../components/RepositoryList"; +import data from "../../generated.json"; +import { useAppData } from "../../hooks/useAppData"; + +interface Params extends ParsedUrlQuery { + tag: string; +} + +type LanguageProps = { + tag: Params["tag"]; +}; + +export const getStaticPaths: GetStaticPaths = async () => { + return { + paths: data.languages.map((language) => ({ + params: { tag: language.id } + })), + fallback: false + }; +}; + +export const getStaticProps: GetStaticProps = async ({ + params = {} as Params +}) => { + return { + props: { tag: params.tag } + }; +}; + +export default function Language({ tag }: LanguageProps) { + const { repositories, languages } = useAppData(); + + const language = languages.find((language) => language.id === tag); + const pageTitle = `First Issue | ${language?.display} Language`; + + return ( + <> + + {pageTitle} + + repository.language.id === tag)} + /> + + ); +} diff --git a/pages/search/[tag].tsx b/pages/search/[tag].tsx new file mode 100644 index 00000000..13d7e097 --- /dev/null +++ b/pages/search/[tag].tsx @@ -0,0 +1,42 @@ +import Head from "next/head"; +import { useRouter } from "next/router"; + +import { RepositoryList } from "../../components/RepositoryList"; +import { useAppData } from "../../hooks/useAppData"; +import { CountableTag } from "../../types"; + +export default function Language() { + const { repositories, languages, topics } = useAppData(); + + const router = useRouter(); + const { query } = router.query; + + const pageTitle = `First Issue | Search ${query}`; + + const queriedLanguages = languages.filter((language: CountableTag) => + language.display?.toLowerCase().includes(query as string) + ); + const queriedTopics = topics.filter((topic: CountableTag) => + topic.display?.toLowerCase().includes(query as string) + ); + const queriedRepositories = repositories.filter( + (repository) => + repository.owner.toLowerCase().includes(query as string) || + repository.name.toLowerCase().includes(query as string) || + repository.language.display?.toLowerCase().includes(query as string) || + repository.topics?.some((topic) => topic.display?.toLowerCase().includes(query as string)) || + repository.issues?.some((issue) => issue.title.toLowerCase().includes(query as string)) + ); + + // show repositories that have the tag in either title, description, language or topics or issues + return ( + <> + + {pageTitle} + + + {queriedLanguages} + {queriedTopics} + + ); +} diff --git a/pages/topic/[tag].tsx b/pages/topic/[tag].tsx new file mode 100644 index 00000000..75b69596 --- /dev/null +++ b/pages/topic/[tag].tsx @@ -0,0 +1,52 @@ +import { GetStaticPaths, GetStaticProps } from "next"; +import Head from "next/head"; +import { ParsedUrlQuery } from "querystring"; + +import { RepositoryList } from "../../components/RepositoryList"; +import data from "../../generated.json"; +import { useAppData } from "../../hooks/useAppData"; + +interface Params extends ParsedUrlQuery { + tag: string; +} + +type TopicProps = { + tag: Params["tag"]; +}; + +export const getStaticPaths: GetStaticPaths = async () => { + return { + paths: data.topics.map((topic) => ({ + params: { tag: topic.id } + })), + fallback: false + }; +}; + +export const getStaticProps: GetStaticProps = async ({ + params = {} as Params +}) => { + return { + props: { tag: params.tag } + }; +}; + +export default function Topic({ tag }: TopicProps) { + const { repositories, topics } = useAppData(); + + const topic = topics.find((topic) => topic.id === tag); + const pageTitle = `First Issue | Topic ${topic?.display}`; + + return ( + <> + + {pageTitle} + + + repository.topics?.some((topic) => topic.id === tag) + )} + /> + + ); +} diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 00000000..33ad091d --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/public/favicon.png b/public/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..ad0b13b0f59a5af062389af8ee3dd421abc36a67 GIT binary patch literal 7824 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 P0QlQ)Zf%xt;(Yl(_0IT* literal 0 HcmV?d00001 diff --git a/public/firstissue.png b/public/firstissue.png new file mode 100644 index 0000000000000000000000000000000000000000..af0c62bd9484d519b032e5f063646608dc0d4a49 GIT binary patch literal 66329 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

    92k>-pJ!B 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 MrG2wN**x%n0EJKRJpcdz literal 0 HcmV?d00001 diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 00000000..f30ce23d --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,3 @@ +# Allow all crawlers +User-agent: * +Allow: / diff --git a/styles/globals.css b/styles/globals.css new file mode 100644 index 00000000..7b3068fc --- /dev/null +++ b/styles/globals.css @@ -0,0 +1,10 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +.active-pill { + @apply text-juniper font-semibold border-juniper; +} +.active-pill > span { + @apply text-juniper; +} diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 00000000..987efa21 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,74 @@ +// eslint-disable-next-line @typescript-eslint/no-var-requires +const { fontFamily } = require('tailwindcss/defaultTheme') + + +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: [ + "./pages/**/*.{js,ts,jsx,tsx}", + "./components/**/*.{js,ts,jsx,tsx}", + ], + prefix: '', + important: false, + separator: ':', + theme: { + extend: { + fontFamily: { + sans: ['var(--font-inter)', ...fontFamily.sans], + }, + }, + colors: { + transparent: 'transparent', + primary: '#52575c', + secondary: '#67bd41', + juniper: '#67bd41', + light_juniper: '#83f251', + slate: '#52575c', + honey: '#f6d87c', + vanilla: { + 100: '#ffffff', + 200: '#f5f5f5', + 300: '#eeeeee', + 400: '#c0c1c3' + }, + ink: { + 100: '#373c49', + 200: '#2c303a', + 300: '#21242c', + 400: '#16181d' + } + }, + borderRadius: { + none: '0', + sm: '0.125rem', + md: '0.25rem', + lg: '0.375rem', + full: '9999px' + }, + borderWidth: { + DEFAULT: '1px', + }, + fontFamily: { + sans: ['Inter'], + serif: ['Georgia', 'serif'], + mono: ['Menlo', 'monospace'] + }, + fontSize: { + xs: '0.75rem', + sm: '0.875rem', + base: '1rem', + lg: '1.25rem', + xl: '1.375rem', + '2xl': '1.75rem', + '3xl': '2.75rem', + '4xl': '4rem' + }, + fontWeight: { + normal: '400', + medium: '500', + semibold: '600', + bold: '700' + } + }, + corePlugins: {} +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..f6631261 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "es2021", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "commonjs", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "add.ts"], + "exclude": ["node_modules"] +} diff --git a/types.ts b/types.ts new file mode 100644 index 00000000..b76054bf --- /dev/null +++ b/types.ts @@ -0,0 +1,62 @@ +// Nullable generic for nullable fields +type Nullable = T | null; + +// Describes a Tag, which is a programming language or a topic +export interface Tag { + display: string; + id: string; +} + +// Describes a CountableTag, which is a Tag with a count +export interface CountableTag extends Tag { + count: number; +} + +// Describes a Repository, which is a GitHub repository +export interface Repository { + description: Nullable; + has_new_issues: boolean; + id: string; + issues: Issue[]; + language: Tag; + last_modified: string; + license?: string; + name: string; + owner: string; + stars: number; + stars_display: string; + url: string; + topics?: Tag[]; +} + +// Describes an Issue, which is a GitHub issue linked to a repository +export interface Issue { + comments_count: number; + created_at: string; + id: string; + labels: Label[]; + number: number; + title: string; + url: string; +} + +// Describes a Label, which is a GitHub label +export interface Label { + id: string; + display: string; +} + +export enum RepositorySortOrder { + LEAST_STARS = "By Least Stars", + MOST_STARS = "By Most Stars", + NONE = "None" +} + +// Describes the data that is retrieved from the GitHub API and used by the app +export interface AppData { + languages: CountableTag[]; + repositories: Repository[]; + repositorySortOrder: RepositorySortOrder; + topics: CountableTag[]; + updateRepositorySortOrder: (sortOrder: RepositorySortOrder) => void; +}