The most fly commit
This commit is contained in:
parent
1db921a7bd
commit
a0895f0cd8
6 changed files with 320 additions and 2 deletions
45
.dockerignore
Normal file
45
.dockerignore
Normal file
|
@ -0,0 +1,45 @@
|
|||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
/.pnp
|
||||
.pnp.js
|
||||
|
||||
# testing
|
||||
/coverage
|
||||
|
||||
# database
|
||||
/prisma/db.sqlite
|
||||
/prisma/db.sqlite-journal
|
||||
|
||||
# next.js
|
||||
/.next/
|
||||
/out/
|
||||
next-env.d.ts
|
||||
|
||||
# production
|
||||
/build
|
||||
|
||||
# misc
|
||||
.DS_Store
|
||||
*.pem
|
||||
|
||||
# debug
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# local env files
|
||||
# do not commit any .env files to git, except for the .env.example file. https://create.t3.gg/en/usage/env-variables#using-environment-variables
|
||||
.env
|
||||
.env*.local
|
||||
|
||||
# vercel
|
||||
.vercel
|
||||
|
||||
# typescript
|
||||
*.tsbuildinfo
|
||||
|
||||
.vercel
|
||||
.env*.local
|
33
.github/workflows/fly.yml
vendored
Normal file
33
.github/workflows/fly.yml
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
name: Fly Deploy
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- dev
|
||||
jobs:
|
||||
deploy:
|
||||
name: Deploy app
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: superfly/flyctl-actions/setup-flyctl@master
|
||||
- run: |
|
||||
flyctl deploy --remote-only \
|
||||
--build-secret NEXT_PUBLIC_APP_ENV=${{ secrets.NEXT_PUBLIC_APP_ENV }} \
|
||||
--build-secret APP_ENV=${{ secrets.APP_ENV }} \
|
||||
--build-secret UPSTASH_RATELIMIT_SECONDS=${{ secrets.UPSTASH_RATELIMIT_SECONDS }} \
|
||||
--build-secret UPSTASH_RATELIMIT_REQUESTS=${{ secrets.UPSTASH_RATELIMIT_REQUESTS }} \
|
||||
--build-secret UPSTASH_REDIS_EXPIRY_SECONDS=${{ secrets.UPSTASH_REDIS_EXPIRY_SECONDS }} \
|
||||
--build-secret UNKEY_ROOT_KEY=${{ secrets.UNKEY_ROOT_KEY }} \
|
||||
--build-secret CLERK_SECRET_KEY=${{ secrets.CLERK_SECRET_KEY }} \
|
||||
--build-secret NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY }} \
|
||||
--build-secret CLERK_WEBHOOK_SIGNING_SECRET=${{ secrets.CLERK_WEBHOOK_SIGNING_SECRET }} \
|
||||
--build-secret NEXT_PUBLIC_CLERK_SIGN_IN_URL=${{ secrets.NEXT_PUBLIC_CLERK_SIGN_IN_URL }} \
|
||||
--build-secret NEXT_PUBLIC_CLERK_SIGN_UP_URL=${{ secrets.NEXT_PUBLIC_CLERK_SIGN_UP_URL }} \
|
||||
--build-secret ABLY_API_KEY=${{ secrets.ABLY_API_KEY }} \
|
||||
--build-secret DATABASE_AUTH_TOKEN=${{ secrets.DATABASE_AUTH_TOKEN }} \
|
||||
--build-secret DATABASE_URL=${{ secrets.DATABASE_URL }} \
|
||||
--build-secret UPSTASH_REDIS_REST_URL=${{ secrets.UPSTASH_REDIS_REST_URL }} \
|
||||
--build-secret UPSTASH_REDIS_REST_TOKEN=${{ secrets.UPSTASH_REDIS_REST_TOKEN }} \
|
||||
|
||||
env:
|
||||
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
|
81
Dockerfile
Normal file
81
Dockerfile
Normal file
|
@ -0,0 +1,81 @@
|
|||
# syntax = docker/dockerfile:1
|
||||
|
||||
# Adjust NODE_VERSION as desired
|
||||
ARG NODE_VERSION=18.14.2
|
||||
FROM node:${NODE_VERSION}-slim as base
|
||||
|
||||
LABEL fly_launch_runtime="Next.js"
|
||||
|
||||
# Next.js app lives here
|
||||
WORKDIR /app
|
||||
|
||||
# Set production environment
|
||||
ENV NODE_ENV="production"
|
||||
|
||||
# Install pnpm
|
||||
ARG PNPM_VERSION=8.9.2
|
||||
RUN npm install -g pnpm@$PNPM_VERSION
|
||||
|
||||
|
||||
# Throw-away build stage to reduce size of final image
|
||||
FROM base as build
|
||||
|
||||
# Install packages needed to build node modules
|
||||
RUN apt-get update -qq && \
|
||||
apt-get install -y build-essential pkg-config python-is-python3
|
||||
|
||||
# Install node modules
|
||||
COPY --link .npmrc package.json pnpm-lock.yaml ./
|
||||
RUN pnpm install --frozen-lockfile --prod=false
|
||||
|
||||
# Copy application code
|
||||
COPY --link . .
|
||||
|
||||
# Build application
|
||||
RUN --mount=type=secret,id=NEXT_PUBLIC_APP_ENV \
|
||||
--mount=type=secret,id=APP_ENV \
|
||||
--mount=type=secret,id=UPSTASH_RATELIMIT_SECONDS \
|
||||
--mount=type=secret,id=UPSTASH_RATELIMIT_REQUESTS \
|
||||
--mount=type=secret,id=UPSTASH_REDIS_EXPIRY_SECONDS \
|
||||
--mount=type=secret,id=UNKEY_ROOT_KEY \
|
||||
--mount=type=secret,id=CLERK_SECRET_KEY \
|
||||
--mount=type=secret,id=NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY \
|
||||
--mount=type=secret,id=CLERK_WEBHOOK_SIGNING_SECRET \
|
||||
--mount=type=secret,id=NEXT_PUBLIC_CLERK_SIGN_IN_URL \
|
||||
--mount=type=secret,id=NEXT_PUBLIC_CLERK_SIGN_UP_URL \
|
||||
--mount=type=secret,id=ABLY_API_KEY \
|
||||
--mount=type=secret,id=DATABASE_AUTH_TOKEN \
|
||||
--mount=type=secret,id=DATABASE_URL \
|
||||
--mount=type=secret,id=UPSTASH_REDIS_REST_URL \
|
||||
--mount=type=secret,id=UPSTASH_REDIS_REST_TOKEN \
|
||||
NEXT_PUBLIC_APP_ENV="$(cat /run/secrets/NEXT_PUBLIC_APP_ENV)" \
|
||||
APP_ENV="$(cat /run/secrets/APP_ENV)" \
|
||||
UPSTASH_RATELIMIT_SECONDS="$(cat /run/secrets/UPSTASH_RATELIMIT_SECONDS)" \
|
||||
UPSTASH_RATELIMIT_REQUESTS="$(cat /run/secrets/UPSTASH_RATELIMIT_REQUESTS)" \
|
||||
UPSTASH_REDIS_EXPIRY_SECONDS="$(cat /run/secrets/UPSTASH_REDIS_EXPIRY_SECONDS)" \
|
||||
UNKEY_ROOT_KEY="$(cat /run/secrets/UNKEY_ROOT_KEY)" \
|
||||
CLERK_SECRET_KEY="$(cat /run/secrets/CLERK_SECRET_KEY)" \
|
||||
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="$(cat /run/secrets/NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY)" \
|
||||
CLERK_WEBHOOK_SIGNING_SECRET="$(cat /run/secrets/CLERK_WEBHOOK_SIGNING_SECRET)" \
|
||||
NEXT_PUBLIC_CLERK_SIGN_IN_URL="$(cat /run/secrets/NEXT_PUBLIC_CLERK_SIGN_IN_URL)" \
|
||||
NEXT_PUBLIC_CLERK_SIGN_UP_URL="$(cat /run/secrets/NEXT_PUBLIC_CLERK_SIGN_UP_URL)" \
|
||||
ABLY_API_KEY="$(cat /run/secrets/ABLY_API_KEY)" \
|
||||
DATABASE_AUTH_TOKEN="$(cat /run/secrets/DATABASE_AUTH_TOKEN)" \
|
||||
DATABASE_URL="$(cat /run/secrets/DATABASE_URL)" \
|
||||
UPSTASH_REDIS_REST_URL="$(cat /run/secrets/UPSTASH_REDIS_REST_URL)" \
|
||||
UPSTASH_REDIS_REST_TOKEN="$(cat /run/secrets/UPSTASH_REDIS_REST_TOKEN)" \
|
||||
pnpm run build
|
||||
|
||||
# Remove development dependencies
|
||||
RUN pnpm prune --prod
|
||||
|
||||
|
||||
# Final stage for app image
|
||||
FROM base
|
||||
|
||||
# Copy built application
|
||||
COPY --from=build /app /app
|
||||
|
||||
# Start the server by default, this can be overwritten at runtime
|
||||
EXPOSE 3000
|
||||
CMD [ "pnpm", "run", "start" ]
|
17
fly.toml
Normal file
17
fly.toml
Normal file
|
@ -0,0 +1,17 @@
|
|||
# fly.toml app configuration file generated for sprintpadawan on 2023-11-17T00:05:08-07:00
|
||||
#
|
||||
# See https://fly.io/docs/reference/configuration/ for information about how to use this file.
|
||||
#
|
||||
|
||||
app = "sprintpadawan"
|
||||
primary_region = "sea"
|
||||
|
||||
[build]
|
||||
|
||||
[http_service]
|
||||
internal_port = 3000
|
||||
force_https = true
|
||||
auto_stop_machines = true
|
||||
auto_start_machines = true
|
||||
min_machines_running = 0
|
||||
processes = ["app"]
|
21
package.json
21
package.json
|
@ -40,6 +40,7 @@
|
|||
"zod": "3.22.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@flydotio/dockerfile": "^0.4.10",
|
||||
"@tanstack/eslint-plugin-query": "5.6.0",
|
||||
"@types/eslint": "8.44.7",
|
||||
"@types/node": "20.9.0",
|
||||
|
@ -55,5 +56,25 @@
|
|||
"tailwindcss": "3.3.5",
|
||||
"typescript": "5.2.2",
|
||||
"utf-8-validate": "6.0.3"
|
||||
},
|
||||
"dockerfile": {
|
||||
"secrets": [
|
||||
"NEXT_PUBLIC_APP_ENV",
|
||||
"APP_ENV",
|
||||
"UPSTASH_RATELIMIT_SECONDS",
|
||||
"UPSTASH_RATELIMIT_REQUESTS",
|
||||
"UPSTASH_REDIS_EXPIRY_SECONDS",
|
||||
"UNKEY_ROOT_KEY",
|
||||
"CLERK_SECRET_KEY",
|
||||
"NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY",
|
||||
"CLERK_WEBHOOK_SIGNING_SECRET",
|
||||
"NEXT_PUBLIC_CLERK_SIGN_IN_URL",
|
||||
"NEXT_PUBLIC_CLERK_SIGN_UP_URL",
|
||||
"ABLY_API_KEY",
|
||||
"DATABASE_AUTH_TOKEN",
|
||||
"DATABASE_URL",
|
||||
"UPSTASH_REDIS_REST_URL",
|
||||
"UPSTASH_REDIS_REST_TOKEN"
|
||||
]
|
||||
}
|
||||
}
|
123
pnpm-lock.yaml
generated
123
pnpm-lock.yaml
generated
|
@ -79,6 +79,9 @@ dependencies:
|
|||
version: 3.22.4
|
||||
|
||||
devDependencies:
|
||||
'@flydotio/dockerfile':
|
||||
specifier: ^0.4.10
|
||||
version: 0.4.10
|
||||
'@tanstack/eslint-plugin-query':
|
||||
specifier: 5.6.0
|
||||
version: 5.6.0(eslint@8.53.0)(typescript@5.2.2)
|
||||
|
@ -771,6 +774,18 @@ packages:
|
|||
engines: {node: '>=14'}
|
||||
dev: true
|
||||
|
||||
/@flydotio/dockerfile@0.4.10:
|
||||
resolution: {integrity: sha512-cyxxVTzPX7qRD3/yq24eiIsSKlUFPcBjbIQmWeuXn3qS2rSdYMioUmDISchfGE7S75cEdL/baK0AJP2q7+aw6w==}
|
||||
engines: {node: '>=16.0.0'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
chalk: 5.3.0
|
||||
diff: 5.1.0
|
||||
ejs: 3.1.9
|
||||
shell-quote: 1.8.1
|
||||
yargs: 17.7.2
|
||||
dev: true
|
||||
|
||||
/@humanwhocodes/config-array@0.11.13:
|
||||
resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==}
|
||||
engines: {node: '>=10.10.0'}
|
||||
|
@ -1748,6 +1763,10 @@ packages:
|
|||
resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
|
||||
dev: true
|
||||
|
||||
/async@3.2.5:
|
||||
resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==}
|
||||
dev: true
|
||||
|
||||
/asynciterator.prototype@1.0.0:
|
||||
resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==}
|
||||
dependencies:
|
||||
|
@ -2010,6 +2029,15 @@ packages:
|
|||
resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
|
||||
dev: false
|
||||
|
||||
/cliui@8.0.1:
|
||||
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
|
||||
engines: {node: '>=12'}
|
||||
dependencies:
|
||||
string-width: 4.2.3
|
||||
strip-ansi: 6.0.1
|
||||
wrap-ansi: 7.0.0
|
||||
dev: true
|
||||
|
||||
/clone-response@1.0.3:
|
||||
resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==}
|
||||
dependencies:
|
||||
|
@ -2231,6 +2259,11 @@ packages:
|
|||
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
|
||||
dev: true
|
||||
|
||||
/diff@5.1.0:
|
||||
resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==}
|
||||
engines: {node: '>=0.3.1'}
|
||||
dev: true
|
||||
|
||||
/difflib@0.2.4:
|
||||
resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==}
|
||||
dependencies:
|
||||
|
@ -2370,10 +2403,22 @@ packages:
|
|||
better-sqlite3: 9.1.1
|
||||
dev: false
|
||||
|
||||
/ejs@3.1.9:
|
||||
resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
jake: 10.8.7
|
||||
dev: true
|
||||
|
||||
/electron-to-chromium@1.4.581:
|
||||
resolution: {integrity: sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==}
|
||||
dev: false
|
||||
|
||||
/emoji-regex@8.0.0:
|
||||
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
|
||||
dev: true
|
||||
|
||||
/emoji-regex@9.2.2:
|
||||
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
|
||||
dev: true
|
||||
|
@ -2591,7 +2636,6 @@ packages:
|
|||
/escalade@3.1.1:
|
||||
resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
|
||||
engines: {node: '>=6'}
|
||||
dev: false
|
||||
|
||||
/escape-string-regexp@4.0.0:
|
||||
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
|
||||
|
@ -2971,6 +3015,12 @@ packages:
|
|||
/file-uri-to-path@1.0.0:
|
||||
resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
|
||||
|
||||
/filelist@1.0.4:
|
||||
resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==}
|
||||
dependencies:
|
||||
minimatch: 5.1.6
|
||||
dev: true
|
||||
|
||||
/fill-range@7.0.1:
|
||||
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
|
||||
engines: {node: '>=8'}
|
||||
|
@ -3067,6 +3117,11 @@ packages:
|
|||
resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
|
||||
dev: true
|
||||
|
||||
/get-caller-file@2.0.5:
|
||||
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
|
||||
engines: {node: 6.* || 8.* || >= 10.*}
|
||||
dev: true
|
||||
|
||||
/get-intrinsic@1.2.2:
|
||||
resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==}
|
||||
dependencies:
|
||||
|
@ -3398,6 +3453,11 @@ packages:
|
|||
call-bind: 1.0.5
|
||||
dev: true
|
||||
|
||||
/is-fullwidth-code-point@3.0.0:
|
||||
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/is-generator-function@1.0.10:
|
||||
resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
@ -3516,6 +3576,17 @@ packages:
|
|||
set-function-name: 2.0.1
|
||||
dev: true
|
||||
|
||||
/jake@10.8.7:
|
||||
resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==}
|
||||
engines: {node: '>=10'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
async: 3.2.5
|
||||
chalk: 4.1.2
|
||||
filelist: 1.0.4
|
||||
minimatch: 3.1.2
|
||||
dev: true
|
||||
|
||||
/jiti@1.21.0:
|
||||
resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
|
||||
hasBin: true
|
||||
|
@ -4333,6 +4404,11 @@ packages:
|
|||
set-function-name: 2.0.1
|
||||
dev: true
|
||||
|
||||
/require-directory@2.1.1:
|
||||
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/requires-port@1.0.0:
|
||||
resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
|
||||
dev: false
|
||||
|
@ -4515,6 +4591,10 @@ packages:
|
|||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/shell-quote@1.8.1:
|
||||
resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
|
||||
dev: true
|
||||
|
||||
/side-channel@1.0.4:
|
||||
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
|
||||
dependencies:
|
||||
|
@ -4617,6 +4697,15 @@ packages:
|
|||
queue-tick: 1.0.1
|
||||
dev: false
|
||||
|
||||
/string-width@4.2.3:
|
||||
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
|
||||
engines: {node: '>=8'}
|
||||
dependencies:
|
||||
emoji-regex: 8.0.0
|
||||
is-fullwidth-code-point: 3.0.0
|
||||
strip-ansi: 6.0.1
|
||||
dev: true
|
||||
|
||||
/string.prototype.matchall@4.0.10:
|
||||
resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==}
|
||||
dependencies:
|
||||
|
@ -5200,6 +5289,15 @@ packages:
|
|||
- utf-8-validate
|
||||
dev: true
|
||||
|
||||
/wrap-ansi@7.0.0:
|
||||
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
|
||||
engines: {node: '>=10'}
|
||||
dependencies:
|
||||
ansi-styles: 4.3.0
|
||||
string-width: 4.2.3
|
||||
strip-ansi: 6.0.1
|
||||
dev: true
|
||||
|
||||
/wrappy@1.0.2:
|
||||
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
|
||||
|
||||
|
@ -5222,6 +5320,11 @@ packages:
|
|||
resolution: {integrity: sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==}
|
||||
dev: true
|
||||
|
||||
/y18n@5.0.8:
|
||||
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
|
||||
engines: {node: '>=10'}
|
||||
dev: true
|
||||
|
||||
/yallist@4.0.0:
|
||||
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
|
||||
|
||||
|
@ -5230,6 +5333,24 @@ packages:
|
|||
engines: {node: '>= 14'}
|
||||
dev: true
|
||||
|
||||
/yargs-parser@21.1.1:
|
||||
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
|
||||
engines: {node: '>=12'}
|
||||
dev: true
|
||||
|
||||
/yargs@17.7.2:
|
||||
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
|
||||
engines: {node: '>=12'}
|
||||
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.8
|
||||
yargs-parser: 21.1.1
|
||||
dev: true
|
||||
|
||||
/yocto-queue@0.1.0:
|
||||
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
||||
engines: {node: '>=10'}
|
||||
|
|
Loading…
Add table
Reference in a new issue