diff --git a/next.config.js b/next.config.js index e8e6935..927ff5c 100644 --- a/next.config.js +++ b/next.config.js @@ -3,14 +3,14 @@ import { withPayload } from '@payloadcms/next/withPayload' import redirects from './redirects.js' const NEXT_PUBLIC_SERVER_URL = process.env.NEXT_PUBLIC_SERVER_URL || 'http://localhost:3000' +const CDN_DOMAIN = process.env.CDN_DOMAIN || 'http://localhost:3000' /** @type {import('next').NextConfig} */ const nextConfig = { images: { remotePatterns: [ - ...[NEXT_PUBLIC_SERVER_URL /* 'https://example.com' */].map((item) => { + ...[CDN_DOMAIN /* 'https://example.com' */].map((item) => { const url = new URL(item) - return { hostname: url.hostname, protocol: url.protocol.replace(':', ''), diff --git a/package.json b/package.json index 70d7925..ce59f50 100644 --- a/package.json +++ b/package.json @@ -31,10 +31,12 @@ "@lexical/selection": "0.18.0", "@lexical/table": "0.18.0", "@lexical/utils": "0.18.0", + "@octokit/rest": "^21.0.2", "@payloadcms/db-mongodb": "beta", "@payloadcms/live-preview-react": "beta", "@payloadcms/next": "beta", "@payloadcms/plugin-cloud": "beta", + "@payloadcms/plugin-cloud-storage": "3.0.0-beta.111", "@payloadcms/plugin-form-builder": "beta", "@payloadcms/plugin-nested-docs": "beta", "@payloadcms/plugin-redirects": "beta", diff --git a/public/media/ardian-lumi-6Woj_wozqmA-unsplash (1).jpg b/public/media/ardian-lumi-6Woj_wozqmA-unsplash (1).jpg deleted file mode 100644 index e69de29..0000000 diff --git a/public/media/john-doe.jpg b/public/media/john-doe.jpg deleted file mode 100644 index e69de29..0000000 diff --git a/public/media/nightfall-future-bass-music-228100.mp3 b/public/media/nightfall-future-bass-music-228100.mp3 deleted file mode 100644 index e69de29..0000000 diff --git a/public/media/nightfall-future-bass-music-228101.mp3 b/public/media/nightfall-future-bass-music-228101.mp3 deleted file mode 100644 index e69de29..0000000 diff --git a/public/media/subscribe-card-image.png b/public/media/subscribe-card-image.png deleted file mode 100644 index 5af35bc..0000000 Binary files a/public/media/subscribe-card-image.png and /dev/null differ diff --git a/src/app/(pages)/page.tsx b/src/app/(pages)/page.tsx index 5984c34..f9710d2 100644 --- a/src/app/(pages)/page.tsx +++ b/src/app/(pages)/page.tsx @@ -4,5 +4,3 @@ export const dynamic = 'auto' export const revalidate = 10 export default PageTemplate - -// export { generateMetadata } diff --git a/src/app/_blocks/BlogpostContent/index.tsx b/src/app/_blocks/BlogpostContent/index.tsx index 8e3c59c..781f056 100644 --- a/src/app/_blocks/BlogpostContent/index.tsx +++ b/src/app/_blocks/BlogpostContent/index.tsx @@ -1,6 +1,5 @@ "use client"; -import { Blogpost } from "@/payload-types"; import FeaturedImage from "../../_components/FeaturedImage"; import styles from "./styles.module.css"; import RichText from "@/components/RichText"; @@ -10,7 +9,7 @@ export default function BlogpostContent({ blogpost }) { return (
- {featuredImage && } + {featuredImage && }
{summary}
diff --git a/src/app/_blocks/EpisodeHead/index.tsx b/src/app/_blocks/EpisodeHead/index.tsx index f870422..56421af 100644 --- a/src/app/_blocks/EpisodeHead/index.tsx +++ b/src/app/_blocks/EpisodeHead/index.tsx @@ -17,10 +17,11 @@ export default function EpisodeHead({ episode }) { // TODO: convert into conditional logic based on ContentType // Initial undefined state - const { audioFileSource, audioFileType } = getAudio(episodeFile) + // const { audioFileSource, audioFileType } = getAudio(episodeFile) return (
+ {/*{
{JSON.stringify(episode.episodeFile, null, 2)}
}*/}
@@ -40,12 +41,12 @@ export default function EpisodeHead({ episode }) { {/* TODO Add conditionals later on: render only if it's a podcast episode */}
{/*// @ts-ignore*/} - +
{/* TODO: Second Column displays EpisodeFeaturedImage if ContentType is podcast */} -
- {featuredImage && } +
+ {featuredImage && }
diff --git a/src/app/_blocks/EpisodeHead/styles.module.css b/src/app/_blocks/EpisodeHead/styles.module.css index a651b8c..e1b4109 100644 --- a/src/app/_blocks/EpisodeHead/styles.module.css +++ b/src/app/_blocks/EpisodeHead/styles.module.css @@ -61,6 +61,7 @@ } .featuredImage { + position: relative; width: max(120px, 294px); aspect-ratio: 1 / 1; border-radius: 10px; diff --git a/src/app/_components/AuthorPill/index.tsx b/src/app/_components/AuthorPill/index.tsx index 5ef3887..f35fa29 100644 --- a/src/app/_components/AuthorPill/index.tsx +++ b/src/app/_components/AuthorPill/index.tsx @@ -25,7 +25,7 @@ const dynamicVars = { <>
- {featuredImage && } + {featuredImage && }
{name}
diff --git a/src/app/_components/AuthorSummary/index.tsx b/src/app/_components/AuthorSummary/index.tsx index 25d0764..9e0f6e6 100644 --- a/src/app/_components/AuthorSummary/index.tsx +++ b/src/app/_components/AuthorSummary/index.tsx @@ -14,7 +14,7 @@ export default function AuthorSummary({ author }) { return (
- {featuredImage && } + {featuredImage && }
{name}

{role}

diff --git a/src/app/_components/ContentCard/index.tsx b/src/app/_components/ContentCard/index.tsx index 88638ed..1abd4dd 100644 --- a/src/app/_components/ContentCard/index.tsx +++ b/src/app/_components/ContentCard/index.tsx @@ -43,7 +43,7 @@ export default function ContentCard({ contentType, content }: ContentSummaryProp
{/* @ts-ignore */} - {featuredImage && } + {featuredImage && }
{/**/}
{title}
diff --git a/src/app/_components/FeaturedImage/index.tsx b/src/app/_components/FeaturedImage/index.tsx index 6a81aec..1001ded 100644 --- a/src/app/_components/FeaturedImage/index.tsx +++ b/src/app/_components/FeaturedImage/index.tsx @@ -1,22 +1,16 @@ import Image from "next/image"; - -import { getImage } from "../../_utilities/getImage"; import styles from "./styles.module.css"; - import { Media } from "@/payload-types"; -import { fetchMediaByID } from "@/app/_utilities/contentFetchers"; export default function FeaturedImage({ src, className }: { className?: string; src: Media }) { - - const imageSource = getImage(src); - - return ( {"alt diff --git a/src/collections/Media/Media.ts b/src/collections/Media/Media.ts index 2d6ff51..b63dbaa 100644 --- a/src/collections/Media/Media.ts +++ b/src/collections/Media/Media.ts @@ -38,8 +38,5 @@ export const Media: CollectionConfig = { }), }, ], - upload: { - // Upload to the public/media directory in Next.js making them publicly accessible even outside of Payload - staticDir: path.resolve(dirname, '../../public/media'), - }, + upload: true, } diff --git a/src/collections/Media/storageAdapter.ts b/src/collections/Media/storageAdapter.ts new file mode 100644 index 0000000..bb64458 --- /dev/null +++ b/src/collections/Media/storageAdapter.ts @@ -0,0 +1,69 @@ +import { GeneratedAdapter } from "@payloadcms/plugin-cloud-storage/types"; +import { Octokit } from "@octokit/rest"; + +const octokit = new Octokit({ + auth: process.env.GITHUB_TOKEN, +}); + +const owner = process.env.GITHUB_REPO_OWNER; +const repo = process.env.GITHUB_REPO; +const comitter = { + name: "payload admin dashboard", + email: "payload@admin.dashboard", +}; + + +export const testAdapt = ({ collection, prefix }): GeneratedAdapter => { + return { + name: "Test", + handleUpload: async (args) => { + // @ts-ignore + const buffer = Buffer.from(args.file.buffer, "base64"); + const base64Buffer = buffer.toString("base64"); + await octokit.repos.createOrUpdateFileContents({ + // @ts-ignore + owner: owner, + // @ts-ignore + repo: repo, + path: `public/media/${args.file.filename}`, + message: "Uploaded a new file via Octokit", + content: base64Buffer, + committer: comitter, + author: comitter, + }); + + + }, + // @ts-ignore + handleDelete: async (args) => { + + + const { data: fileData } = await octokit.rest.repos.getContent({ + // @ts-ignore + owner: owner, + // @ts-ignore + repo: repo, + path: `public/media/${args.filename}`, + }); + + + await octokit.rest.repos.deleteFile({ + // @ts-ignore + owner: owner, + // @ts-ignore + repo: repo, + // @ts-ignore + path: `public/media/${args.filename}`, + // @ts-ignore + message: `Deleted file via Octokit`, + // @ts-ignore + sha: fileData.sha, + }); + }, + // @ts-ignore + staticHandler: async (req) => { + }, + + }; + +}; diff --git a/src/endpoints/seed/index.ts b/src/endpoints/seed/index.ts index fb23573..4880c27 100644 --- a/src/endpoints/seed/index.ts +++ b/src/endpoints/seed/index.ts @@ -85,8 +85,6 @@ export const seed = async ({ req, }) - console.log({ pages }) - payload.logger.info(`— Seeding demo author and user...`) await payload.delete({ diff --git a/src/payload.config.ts b/src/payload.config.ts index 8c82e99..98f4879 100644 --- a/src/payload.config.ts +++ b/src/payload.config.ts @@ -41,6 +41,8 @@ import { CaseStudies } from "@/collections/CaseStudies"; import { Podcasts } from "@/collections/Podcasts/Podcasts"; import { TalksAndRoundtables } from "@/collections/TalksAndRoundtables"; import { HomePageSettings } from "@/Globals/HubHighlights/config"; +import { cloudStoragePlugin } from "@payloadcms/plugin-cloud-storage"; +import { testAdapt } from "@/collections/Media/storageAdapter"; const filename = fileURLToPath(import.meta.url) const dirname = path.dirname(filename) @@ -205,7 +207,20 @@ export default buildConfig({ }, }, }), - payloadCloudPlugin(), // storage-adapter-placeholder + cloudStoragePlugin({ + enabled: true, + collections: { + media: { + disableLocalStorage: true, + adapter: testAdapt, + generateFileURL: (args) => { + const url = `${process.env.CDN_DOMAIN}/${args.filename}` + return url + } + } + } + + }),// storage-adapter-placeholder ], secret: process.env.PAYLOAD_SECRET!, sharp, diff --git a/yarn.lock b/yarn.lock index 7f3a925..a12b1ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2506,6 +2506,99 @@ proc-log "^5.0.0" which "^5.0.0" +"@octokit/auth-token@^5.0.0": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-5.1.1.tgz#3bbfe905111332a17f72d80bd0b51a3e2fa2cf07" + integrity sha512-rh3G3wDO8J9wSjfI436JUKzHIxq8NaiL0tVeB2aXmG6p/9859aUOAjA9pmSPNGGZxfwmaJ9ozOJImuNVJdpvbA== + +"@octokit/core@^6.1.2": + version "6.1.2" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-6.1.2.tgz#20442d0a97c411612da206411e356014d1d1bd17" + integrity sha512-hEb7Ma4cGJGEUNOAVmyfdB/3WirWMg5hDuNFVejGEDFqupeOysLc2sG6HJxY2etBp5YQu5Wtxwi020jS9xlUwg== + dependencies: + "@octokit/auth-token" "^5.0.0" + "@octokit/graphql" "^8.0.0" + "@octokit/request" "^9.0.0" + "@octokit/request-error" "^6.0.1" + "@octokit/types" "^13.0.0" + before-after-hook "^3.0.2" + universal-user-agent "^7.0.0" + +"@octokit/endpoint@^10.0.0": + version "10.1.1" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-10.1.1.tgz#1a9694e7aef6aa9d854dc78dd062945945869bcc" + integrity sha512-JYjh5rMOwXMJyUpj028cu0Gbp7qe/ihxfJMLc8VZBMMqSwLgOxDI1911gV4Enl1QSavAQNJcwmwBF9M0VvLh6Q== + dependencies: + "@octokit/types" "^13.0.0" + universal-user-agent "^7.0.2" + +"@octokit/graphql@^8.0.0": + version "8.1.1" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-8.1.1.tgz#3cacab5f2e55d91c733e3bf481d3a3f8a5f639c4" + integrity sha512-ukiRmuHTi6ebQx/HFRCXKbDlOh/7xEV6QUXaE7MJEKGNAncGI/STSbOkl12qVXZrfZdpXctx5O9X1AIaebiDBg== + dependencies: + "@octokit/request" "^9.0.0" + "@octokit/types" "^13.0.0" + universal-user-agent "^7.0.0" + +"@octokit/openapi-types@^22.2.0": + version "22.2.0" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-22.2.0.tgz#75aa7dcd440821d99def6a60b5f014207ae4968e" + integrity sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg== + +"@octokit/plugin-paginate-rest@^11.0.0": + version "11.3.5" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.3.5.tgz#a1929b3ba3dc7b63bc73bb6d3c7a3faf2a9c7649" + integrity sha512-cgwIRtKrpwhLoBi0CUNuY83DPGRMaWVjqVI/bGKsLJ4PzyWZNaEmhHroI2xlrVXkk6nFv0IsZpOp+ZWSWUS2AQ== + dependencies: + "@octokit/types" "^13.6.0" + +"@octokit/plugin-request-log@^5.3.1": + version "5.3.1" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-5.3.1.tgz#ccb75d9705de769b2aa82bcd105cc96eb0c00f69" + integrity sha512-n/lNeCtq+9ofhC15xzmJCNKP2BWTv8Ih2TTy+jatNCCq/gQP/V7rK3fjIfuz0pDWDALO/o/4QY4hyOF6TQQFUw== + +"@octokit/plugin-rest-endpoint-methods@^13.0.0": + version "13.2.6" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-13.2.6.tgz#b9d343dbe88a6cb70cc7fa16faa98f0a29ffe654" + integrity sha512-wMsdyHMjSfKjGINkdGKki06VEkgdEldIGstIEyGX0wbYHGByOwN/KiM+hAAlUwAtPkP3gvXtVQA9L3ITdV2tVw== + dependencies: + "@octokit/types" "^13.6.1" + +"@octokit/request-error@^6.0.1": + version "6.1.5" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-6.1.5.tgz#907099e341c4e6179db623a0328d678024f54653" + integrity sha512-IlBTfGX8Yn/oFPMwSfvugfncK2EwRLjzbrpifNaMY8o/HTEAFqCA1FZxjD9cWvSKBHgrIhc4CSBIzMxiLsbzFQ== + dependencies: + "@octokit/types" "^13.0.0" + +"@octokit/request@^9.0.0": + version "9.1.3" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-9.1.3.tgz#42b693bc06238f43af3c037ebfd35621c6457838" + integrity sha512-V+TFhu5fdF3K58rs1pGUJIDH5RZLbZm5BI+MNF+6o/ssFNT4vWlCh/tVpF3NxGtP15HUxTTMUbsG5llAuU2CZA== + dependencies: + "@octokit/endpoint" "^10.0.0" + "@octokit/request-error" "^6.0.1" + "@octokit/types" "^13.1.0" + universal-user-agent "^7.0.2" + +"@octokit/rest@^21.0.2": + version "21.0.2" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-21.0.2.tgz#9b767dbc1098daea8310fd8b76bf7a97215d5972" + integrity sha512-+CiLisCoyWmYicH25y1cDfCrv41kRSvTq6pPWtRroRJzhsCZWZyCqGyI8foJT5LmScADSwRAnr/xo+eewL04wQ== + dependencies: + "@octokit/core" "^6.1.2" + "@octokit/plugin-paginate-rest" "^11.0.0" + "@octokit/plugin-request-log" "^5.3.1" + "@octokit/plugin-rest-endpoint-methods" "^13.0.0" + +"@octokit/types@^13.0.0", "@octokit/types@^13.1.0", "@octokit/types@^13.6.0", "@octokit/types@^13.6.1": + version "13.6.1" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-13.6.1.tgz#432fc6c0aaae54318e5b2d3e15c22ac97fc9b15f" + integrity sha512-PHZE9Z+kWXb23Ndik8MKPirBPziOc0D2/3KH1P+6jK5nGWe96kadZuE4jev2/Jq7FvIfTlT2Ltg8Fv2x1v0a5g== + dependencies: + "@octokit/openapi-types" "^22.2.0" + "@one-ini/wasm@0.1.1": version "0.1.1" resolved "https://registry.yarnpkg.com/@one-ini/wasm/-/wasm-0.1.1.tgz#6013659736c9dbfccc96e8a9c2b3de317df39323" @@ -2596,6 +2689,14 @@ uuid "10.0.0" ws "^8.16.0" +"@payloadcms/plugin-cloud-storage@3.0.0-beta.111": + version "3.0.0-beta.111" + resolved "https://registry.yarnpkg.com/@payloadcms/plugin-cloud-storage/-/plugin-cloud-storage-3.0.0-beta.111.tgz#08efe59f0c63fc100ea48fb9f368542e5959b465" + integrity sha512-rzLcAHJyQf2KNJS1uQslwMH1eKgf5M+TCWojjjRas049p1g5RizlH4mlLXVTXrDr71h1jtOzSl7ek1Ih8Ougew== + dependencies: + find-node-modules "^2.1.3" + range-parser "^1.2.1" + "@payloadcms/plugin-cloud@beta": version "3.0.0-beta.111" resolved "https://registry.yarnpkg.com/@payloadcms/plugin-cloud/-/plugin-cloud-3.0.0-beta.111.tgz#1080788fa258e7ac242d64dedb40da6a9723ef86" @@ -4607,6 +4708,11 @@ base64-js@^1.0.2, base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +before-after-hook@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-3.0.2.tgz#d5665a5fa8b62294a5aa0a499f933f4a1016195d" + integrity sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A== + bin-links@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-5.0.0.tgz#2b0605b62dd5e1ddab3b92a3c4e24221cae06cca" @@ -5264,6 +5370,11 @@ dequal@2.0.3: resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== +detect-file@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" + integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== + detect-libc@^2.0.0, detect-libc@^2.0.2, detect-libc@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" @@ -6050,6 +6161,13 @@ expand-template@^2.0.3: resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== + dependencies: + homedir-polyfill "^1.0.1" + exponential-backoff@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" @@ -6171,6 +6289,14 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" +find-node-modules@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/find-node-modules/-/find-node-modules-2.1.3.tgz#3c976cff2ca29ee94b4f9eafc613987fc4c0ee44" + integrity sha512-UC2I2+nx1ZuOBclWVNdcnbDR5dlrOdVb7xNjmT/lHE+LsgztWks3dG7boJ37yTS/venXw84B/mAW9uHVoC5QRg== + dependencies: + findup-sync "^4.0.0" + merge "^2.1.1" + find-root@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" @@ -6184,6 +6310,16 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" +findup-sync@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-4.0.0.tgz#956c9cdde804052b881b428512905c4a5f2cdef0" + integrity sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ== + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.0" + micromatch "^4.0.2" + resolve-dir "^1.0.1" + flat-cache@^3.0.4: version "3.2.0" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" @@ -6385,6 +6521,26 @@ glob@^7.0.5, glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" +global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -6526,6 +6682,13 @@ hoist-non-react-statics@^3.3.1: dependencies: react-is "^16.7.0" +homedir-polyfill@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" + integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== + dependencies: + parse-passwd "^1.0.0" + hosted-git-info@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-8.0.0.tgz#b20f1d55d492eb18d70a252d456a2158aab9f244" @@ -6950,6 +7113,11 @@ is-whitespace@^0.3.0: resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" integrity sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg== +is-windows@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -7550,7 +7718,12 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4, micromatch@^4.0.5: +merge@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/merge/-/merge-2.1.1.tgz#59ef4bf7e0b3e879186436e8481c06a6c162ca98" + integrity sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w== + +micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -8275,6 +8448,11 @@ parse-json@^5.0.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== + parse5@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -8706,6 +8884,11 @@ quick-format-unescaped@^4.0.3: resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== +range-parser@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + rc@^1.2.7: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -9022,6 +9205,14 @@ resend@^0.17.2: axios "1.4.0" type-fest "3.13.0" +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" @@ -10118,6 +10309,11 @@ unique-slug@^5.0.0: dependencies: imurmurhash "^0.1.4" +universal-user-agent@^7.0.0, universal-user-agent@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-7.0.2.tgz#52e7d0e9b3dc4df06cc33cb2b9fd79041a54827e" + integrity sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q== + untildify@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" @@ -10304,6 +10500,13 @@ which-typed-array@^1.1.13, which-typed-array@^1.1.14, which-typed-array@^1.1.15: gopd "^1.0.1" has-tostringtag "^1.0.2" +which@^1.2.14: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"