Merge pull request #485 from Irev-Dev/kurt/484-rebase
Remove s3
This commit was merged in pull request #485.
This commit is contained in:
@@ -3,13 +3,21 @@
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@redwoodjs/api": "^0.36.2",
|
||||
"@redwoodjs/api": "^0.36.3",
|
||||
"@sentry/node": "^6.5.1",
|
||||
"axios": "^0.21.1",
|
||||
"cloudinary": "^1.23.0",
|
||||
"cors": "^2.8.5",
|
||||
"express": "^4.17.1",
|
||||
"human-id": "^2.0.1",
|
||||
"nodemailer": "^6.6.2"
|
||||
"middy": "^0.36.0",
|
||||
"nanoid": "^3.1.20",
|
||||
"nodemailer": "^6.6.2",
|
||||
"serverless-binary-cors": "^0.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/nodemailer": "^6.4.2"
|
||||
"@types/nodemailer": "^6.4.2",
|
||||
"concurrently": "^6.0.0",
|
||||
"nodemon": "^2.0.7"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
# Serverless
|
||||
|
||||
We're using the serverless from work for deployment
|
||||
We're using the serverless framework for deployment
|
||||
|
||||
```
|
||||
sls deploy --stage stagename
|
||||
yarn rw build api && sls deploy --stage <stagename>
|
||||
```
|
||||
But [Kurt Hutten](https://github.com/Irev-Dev) is the only one with credentials for deployment atm, though if you wanted to set your own account you could deploy to that if you wanted to test.
|
||||
Deploying has `yarn rw build` first because the image uses built js files
|
||||
|
||||
## Testing changes locally
|
||||
|
||||
@@ -18,17 +19,16 @@ The docker build relies on a git ignored file, the aws-lambda-rie. [Download it]
|
||||
|
||||
you will also need to create a .env in `app/api/src/docker/.env` for the following env-vars `DEV_AWS_SECRET_ACCESS_KEY, DEV_AWS_ACCESS_KEY_ID and DEV_BUCKET`. Ask @irev-dev for credentials and he can sort you out.
|
||||
|
||||
Then cd into this folder `cd api/src/docker` and:
|
||||
Run
|
||||
|
||||
```bash
|
||||
docker-compose up --build
|
||||
yarn cad
|
||||
```
|
||||
The first time you run this, it has to build the main image it will take some time, but launching again will be quicker.
|
||||
|
||||
After which we'll also spin up a light express server to act as an emulator to transform some the request from the front end into how the lambda's expect them (This emulates the aws-api-gateway which changes tranforms the inbound requests somewhat).
|
||||
```
|
||||
yarn install
|
||||
yarn emulate
|
||||
yarn aws-emulate
|
||||
```
|
||||
You can now add CAD_LAMBDA_BASE_URL="http://localhost:8080" to you .env file and restart your main dev process (`yarn rw dev`) comment that line out if you want to go back to using the aws endpoint (and restart the dev process).
|
||||
|
||||
|
||||
@@ -16,10 +16,12 @@ const makeRequest = (route, port) => [
|
||||
console.log(`making post request to ${port}, ${route}`)
|
||||
try {
|
||||
const { data } = await axios.post(invocationURL(port), {
|
||||
body: JSON.stringify(req.body),
|
||||
body: Buffer.from(JSON.stringify(req.body)).toString('base64'),
|
||||
})
|
||||
res.status(data.statusCode)
|
||||
res.send(data.body)
|
||||
res.setHeader('Content-Type', 'application/javascript')
|
||||
res.setHeader('Content-Encoding', 'gzip')
|
||||
res.send(Buffer.from(data.body, 'base64'))
|
||||
} catch (e) {
|
||||
res.status(500)
|
||||
res.send()
|
||||
|
||||
@@ -8,7 +8,7 @@ RUN apt-get update -qq
|
||||
RUN apt-get install -y wget
|
||||
|
||||
# install node14, see comment at the to of node14source_setup.sh
|
||||
ADD common/node14source_setup.sh /nodesource_setup.sh
|
||||
ADD src/docker/common/node14source_setup.sh /nodesource_setup.sh
|
||||
RUN ["chmod", "+x", "/nodesource_setup.sh"]
|
||||
RUN bash nodesource_setup.sh
|
||||
RUN apt-get install -y nodejs
|
||||
@@ -26,13 +26,14 @@ RUN apt-get update && \
|
||||
# Add the lambda emulator for local dev, (see entrypoint.sh for where it's used),
|
||||
# I have the file locally (gitignored) to speed up build times (as it downloads everytime),
|
||||
# but you can use the http version of the below ADD command or download it yourself from that url.
|
||||
ADD common/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
ADD src/docker/common/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
# ADD https://github.com/aws/aws-lambda-runtime-interface-emulator/releases/download/v1.0/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
RUN ["chmod", "+x", "/usr/local/bin/aws-lambda-rie"]
|
||||
|
||||
WORKDIR /var/task/
|
||||
COPY cadquery/package*.json /var/task/
|
||||
COPY package*.json /var/task/
|
||||
RUN npm install
|
||||
RUN npm install aws-lambda-ric@1.0.0
|
||||
|
||||
|
||||
# Get the distribution copy of cq-cli
|
||||
@@ -45,9 +46,11 @@ RUN unzip cq-cli-Linux-x86_64.zip
|
||||
RUN chmod +x cq-cli/cq-cli
|
||||
RUN echo "cadhub-concat-split" > /var/task/cadhub-concat-split
|
||||
|
||||
COPY cadquery/*.js /var/task/
|
||||
COPY common/*.js /var/common/
|
||||
COPY common/entrypoint.sh /entrypoint.sh
|
||||
# using built javascript from dist
|
||||
# run `yarn rw build` before bulding this image
|
||||
COPY dist/docker/cadquery/*.js /var/task/js/
|
||||
COPY dist/docker/common/*.js /var/task/common/
|
||||
COPY src/docker/common/entrypoint.sh /entrypoint.sh
|
||||
RUN ["chmod", "+x", "/entrypoint.sh"]
|
||||
ENTRYPOINT ["sh", "/entrypoint.sh"]
|
||||
CMD [ "cadquery.stl" ]
|
||||
CMD [ "js/cadquery.stl" ]
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
const { runCQ } = require('./runCQ')
|
||||
const middy = require('middy')
|
||||
const { cors } = require('middy/middlewares')
|
||||
const AWS = require('aws-sdk')
|
||||
const tk = require('timekeeper')
|
||||
const {
|
||||
makeHash,
|
||||
checkIfAlreadyExists,
|
||||
getObjectUrl,
|
||||
loggerWrap,
|
||||
storeAssetAndReturnUrl,
|
||||
} = require('../common/utils')
|
||||
|
||||
const s3 = new AWS.S3()
|
||||
|
||||
const stl = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = req.body
|
||||
console.log('eventBody', eventBody)
|
||||
const key = `${makeHash(eventBody)}.stl`
|
||||
console.log('key', key)
|
||||
|
||||
const params = {
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: key,
|
||||
}
|
||||
const previousAsset = await checkIfAlreadyExists(params, s3)
|
||||
if (previousAsset.isAlreadyInBucket) {
|
||||
console.log('already in bucket')
|
||||
const response = {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({
|
||||
url: getObjectUrl(params, s3, tk),
|
||||
}),
|
||||
}
|
||||
callback(null, response)
|
||||
return
|
||||
}
|
||||
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath } = await runCQ({ file, settings })
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
key,
|
||||
s3,
|
||||
params,
|
||||
tk,
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
stl: middy(loggerWrap(stl)).use(cors()),
|
||||
}
|
||||
23
app/api/src/docker/cadquery/cadquery.ts
Normal file
23
app/api/src/docker/cadquery/cadquery.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { runCQ } from './runCQ'
|
||||
import middy from 'middy'
|
||||
import { cors } from 'middy/middlewares'
|
||||
import { loggerWrap, storeAssetAndReturnUrl } from '../common/utils'
|
||||
|
||||
const stl = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = Buffer.from(req.body, 'base64').toString('ascii')
|
||||
console.log('eventBody', eventBody)
|
||||
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath } = await runCQ({ file, settings })
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
stl: middy(loggerWrap(stl)).use(cors()),
|
||||
}
|
||||
1156
app/api/src/docker/cadquery/package-lock.json
generated
1156
app/api/src/docker/cadquery/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"name": "openscad-endpoint",
|
||||
"version": "0.0.1",
|
||||
"description": "endpoint for openscad",
|
||||
"main": "index.js",
|
||||
"author": "Kurt Hutten <kurt@kurthutten.com>",
|
||||
"license": "",
|
||||
"dependencies": {
|
||||
"aws-sdk": "^2.907.0",
|
||||
"cors": "^2.8.5",
|
||||
"middy": "^0.36.0",
|
||||
"nanoid": "^3.1.20",
|
||||
"timekeeper": "2.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"aws-lambda-ric": "^1.0.0"
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
const { writeFiles, runCommand } = require('../common/utils')
|
||||
const { nanoid } = require('nanoid')
|
||||
import { writeFiles, runCommand } from '../common/utils'
|
||||
import { nanoid } from 'nanoid'
|
||||
|
||||
module.exports.runCQ = async ({
|
||||
export const runCQ = async ({
|
||||
file,
|
||||
settings: { deflection = 0.3 } = {},
|
||||
} = {}) => {
|
||||
@@ -27,6 +27,7 @@ module.exports.runCQ = async ({
|
||||
{
|
||||
file: JSON.stringify({
|
||||
consoleMessage,
|
||||
type: 'stl',
|
||||
}),
|
||||
fileName: 'metadata.json',
|
||||
},
|
||||
@@ -2,8 +2,12 @@ const { exec } = require('child_process')
|
||||
const { promises } = require('fs')
|
||||
const { writeFile } = promises
|
||||
const { createHash } = require('crypto')
|
||||
import { readFile } from 'fs/promises'
|
||||
|
||||
async function writeFiles(files = [], tempFile) {
|
||||
export async function writeFiles(
|
||||
files: { file: string; fileName: string }[] = [],
|
||||
tempFile: string
|
||||
): Promise<string> {
|
||||
console.log(`file to write: ${files.length}`)
|
||||
|
||||
try {
|
||||
@@ -19,7 +23,7 @@ async function writeFiles(files = [], tempFile) {
|
||||
return tempFile
|
||||
}
|
||||
|
||||
async function runCommand(command, timeout = 5000) {
|
||||
export async function runCommand(command, timeout = 5000): Promise<string> {
|
||||
return new Promise((resolve, reject) => {
|
||||
exec(command, (error, stdout, stderr) => {
|
||||
if (error) {
|
||||
@@ -77,7 +81,7 @@ function getObjectUrl(params, s3, tk) {
|
||||
)
|
||||
}
|
||||
|
||||
function loggerWrap(handler) {
|
||||
export function loggerWrap(handler) {
|
||||
return (req, _context, callback) => {
|
||||
try {
|
||||
return handler(req, _context, callback)
|
||||
@@ -87,15 +91,16 @@ function loggerWrap(handler) {
|
||||
}
|
||||
}
|
||||
|
||||
async function storeAssetAndReturnUrl({
|
||||
export async function storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
key,
|
||||
s3,
|
||||
params,
|
||||
tk,
|
||||
}: {
|
||||
error: string
|
||||
callback: Function
|
||||
fullPath: string
|
||||
consoleMessage: string
|
||||
}) {
|
||||
if (error) {
|
||||
const response = {
|
||||
@@ -106,11 +111,10 @@ async function storeAssetAndReturnUrl({
|
||||
return
|
||||
} else {
|
||||
console.log(`got result in route: ${consoleMessage}, file is: ${fullPath}`)
|
||||
const { readFile } = require('fs/promises')
|
||||
let buffer
|
||||
let buffer = ''
|
||||
|
||||
try {
|
||||
buffer = await readFile(fullPath)
|
||||
buffer = await readFile(fullPath, { encoding: 'base64' })
|
||||
} catch (e) {
|
||||
console.log('read file error', e)
|
||||
const response = {
|
||||
@@ -120,37 +124,16 @@ async function storeAssetAndReturnUrl({
|
||||
callback(null, response)
|
||||
return
|
||||
}
|
||||
const FiveDays = 432000
|
||||
const storedRender = await s3
|
||||
.putObject({
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: key,
|
||||
Body: buffer,
|
||||
CacheControl: `max-age=${FiveDays}`, // browser caching to stop downloads of the same part
|
||||
ContentType: 'text/stl',
|
||||
ContentEncoding: 'gzip',
|
||||
})
|
||||
.promise()
|
||||
console.log('stored object', storedRender)
|
||||
const url = getObjectUrl(params, s3, tk)
|
||||
console.log('url', url)
|
||||
const response = {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({
|
||||
url,
|
||||
}),
|
||||
body: buffer,
|
||||
isBase64Encoded: true,
|
||||
headers: {
|
||||
'Content-Type': 'application/javascript',
|
||||
'Content-Encoding': 'gzip',
|
||||
},
|
||||
}
|
||||
callback(null, response)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
runCommand,
|
||||
writeFiles,
|
||||
makeHash,
|
||||
checkIfAlreadyExists,
|
||||
getObjectUrl,
|
||||
loggerWrap,
|
||||
storeAssetAndReturnUrl,
|
||||
}
|
||||
@@ -2,10 +2,14 @@ services:
|
||||
|
||||
openscad-preview:
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: ./openscad/Dockerfile
|
||||
context: ../../
|
||||
dockerfile: ./src/docker/openscad/Dockerfile
|
||||
image: openscad
|
||||
command: openscad.preview
|
||||
command: js/openscad.preview
|
||||
# Adding volumes so that the containers can be restarted for js only changes in local dev
|
||||
volumes:
|
||||
- ../../dist/docker/openscad:/var/task/js/
|
||||
- ../../dist/docker/common:/var/task/common/
|
||||
ports:
|
||||
- "5052:8080"
|
||||
environment:
|
||||
@@ -15,7 +19,10 @@ services:
|
||||
|
||||
openscad-stl:
|
||||
image: openscad
|
||||
command: openscad.stl
|
||||
volumes:
|
||||
- ../../dist/docker/openscad:/var/task/js/
|
||||
- ../../dist/docker/common:/var/task/common/
|
||||
command: js/openscad.stl
|
||||
ports:
|
||||
- "5053:8080"
|
||||
environment:
|
||||
@@ -25,9 +32,12 @@ services:
|
||||
|
||||
cadquery-stl:
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: ./cadquery/Dockerfile
|
||||
command: cadquery.stl
|
||||
context: ../../
|
||||
dockerfile: ./src/docker/cadquery/Dockerfile
|
||||
volumes:
|
||||
- ../../dist/docker/cadquery:/var/task/js/
|
||||
- ../../dist/docker/common:/var/task/common/
|
||||
command: js/cadquery.stl
|
||||
ports:
|
||||
- 5060:8080
|
||||
environment:
|
||||
|
||||
@@ -14,7 +14,7 @@ RUN apt-get update -qq
|
||||
RUN apt-get install -y openscad-nightly
|
||||
|
||||
# install node14, see comment at the to of node14source_setup.sh
|
||||
ADD common/node14source_setup.sh /nodesource_setup.sh
|
||||
ADD src/docker/common/node14source_setup.sh /nodesource_setup.sh
|
||||
RUN ["chmod", "+x", "/nodesource_setup.sh"]
|
||||
RUN bash nodesource_setup.sh
|
||||
RUN apt-get install -y nodejs
|
||||
@@ -32,13 +32,14 @@ RUN apt-get update && \
|
||||
# Add the lambda emulator for local dev, (see entrypoint.sh for where it's used),
|
||||
# I have the file locally (gitignored) to speed up build times (as it downloads everytime),
|
||||
# but you can use the http version of the below ADD command or download it yourself from that url.
|
||||
ADD common/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
ADD src/docker/common/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
# ADD https://github.com/aws/aws-lambda-runtime-interface-emulator/releases/download/v1.0/aws-lambda-rie /usr/local/bin/aws-lambda-rie
|
||||
RUN ["chmod", "+x", "/usr/local/bin/aws-lambda-rie"]
|
||||
|
||||
WORKDIR /var/task/
|
||||
COPY openscad/package*.json /var/task/
|
||||
COPY package*.json /var/task/
|
||||
RUN npm install
|
||||
RUN npm install aws-lambda-ric@1.0.0
|
||||
|
||||
# Install OpenSCAD libraries
|
||||
# It's experimental, so only adding latest Round-Anything for now
|
||||
@@ -46,14 +47,16 @@ RUN echo "OPENSCADPATH=/var/task/openscad" >>/etc/profile && \
|
||||
wget -P /var/task/openscad/ https://github.com/Irev-Dev/Round-Anything/archive/refs/tags/1.0.4.zip && \
|
||||
unzip /var/task/openscad/1.0.4
|
||||
# Add our own theming (based on DeepOcean with a different "background" and "opencsg-face-back")
|
||||
COPY openscad/cadhubtheme.json /usr/share/openscad-nightly/color-schemes/render/
|
||||
COPY src/docker/openscad/cadhubtheme.json /usr/share/openscad-nightly/color-schemes/render/
|
||||
|
||||
RUN echo "cadhub-concat-split" > /var/task/cadhub-concat-split
|
||||
|
||||
COPY openscad/*.js /var/task/
|
||||
COPY common/*.js /var/common/
|
||||
COPY common/entrypoint.sh /entrypoint.sh
|
||||
# using built javascript from dist
|
||||
# run `yarn rw build` before bulding this image
|
||||
COPY dist/docker/openscad/* /var/task/js/
|
||||
COPY dist/docker/common/* /var/task/common/
|
||||
COPY src/docker/common/entrypoint.sh /entrypoint.sh
|
||||
RUN ["chmod", "+x", "/entrypoint.sh"]
|
||||
|
||||
ENTRYPOINT ["sh", "/entrypoint.sh"]
|
||||
CMD [ "openscad.render" ]
|
||||
CMD [ "js/openscad.render" ]
|
||||
|
||||
@@ -1,129 +0,0 @@
|
||||
const { runScad, stlExport } = require('./runScad')
|
||||
const middy = require('middy')
|
||||
const { cors } = require('middy/middlewares')
|
||||
const AWS = require('aws-sdk')
|
||||
const tk = require('timekeeper')
|
||||
const {
|
||||
makeHash,
|
||||
checkIfAlreadyExists,
|
||||
getObjectUrl,
|
||||
loggerWrap,
|
||||
storeAssetAndReturnUrl,
|
||||
} = require('../common/utils')
|
||||
|
||||
const s3 = new AWS.S3()
|
||||
|
||||
const openScadStlKey = (eventBody) => {
|
||||
const { file } = JSON.parse(eventBody)
|
||||
return `${makeHash(JSON.stringify(file))}.stl`
|
||||
}
|
||||
|
||||
const preview = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = req.body
|
||||
console.log('eventBody', eventBody)
|
||||
const key = `${makeHash(eventBody)}.png`
|
||||
const stlKey = openScadStlKey(eventBody)
|
||||
|
||||
console.log('key', key)
|
||||
|
||||
const stlParams = {
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: stlKey,
|
||||
}
|
||||
|
||||
const params = {
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: key,
|
||||
}
|
||||
const [previousAssetStl, previousAssetPng] = await Promise.all([
|
||||
checkIfAlreadyExists(stlParams, s3),
|
||||
checkIfAlreadyExists(params, s3),
|
||||
])
|
||||
const type = previousAssetStl.isAlreadyInBucket ? 'stl' : 'png'
|
||||
const previousAsset = previousAssetStl.isAlreadyInBucket
|
||||
? previousAssetStl
|
||||
: previousAssetPng
|
||||
if (previousAsset.isAlreadyInBucket) {
|
||||
console.log('already in bucket')
|
||||
const response = {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({
|
||||
url: getObjectUrl(
|
||||
{
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: previousAssetStl.isAlreadyInBucket ? stlKey : key,
|
||||
},
|
||||
s3,
|
||||
tk
|
||||
),
|
||||
type,
|
||||
}),
|
||||
}
|
||||
callback(null, response)
|
||||
return
|
||||
}
|
||||
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath, customizerPath } = await runScad({
|
||||
file,
|
||||
settings,
|
||||
})
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
key,
|
||||
s3,
|
||||
params,
|
||||
tk,
|
||||
})
|
||||
}
|
||||
|
||||
const stl = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = req.body
|
||||
console.log(eventBody, 'eventBody')
|
||||
const stlKey = openScadStlKey(eventBody)
|
||||
|
||||
console.log('key', stlKey)
|
||||
|
||||
const params = {
|
||||
Bucket: process.env.BUCKET,
|
||||
Key: stlKey,
|
||||
}
|
||||
console.log('original params', params)
|
||||
const previousAsset = await checkIfAlreadyExists(params, s3)
|
||||
if (previousAsset.isAlreadyInBucket) {
|
||||
console.log('already in bucket')
|
||||
const response = {
|
||||
statusCode: 200,
|
||||
body: JSON.stringify({
|
||||
url: getObjectUrl({ ...params }, s3, tk),
|
||||
}),
|
||||
}
|
||||
callback(null, response)
|
||||
return
|
||||
}
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath, customizerPath } = await stlExport({
|
||||
file,
|
||||
settings,
|
||||
})
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
key: stlKey,
|
||||
s3,
|
||||
params,
|
||||
tk,
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
stl: middy(loggerWrap(stl)).use(cors()),
|
||||
preview: middy(loggerWrap(preview)).use(cors()),
|
||||
}
|
||||
46
app/api/src/docker/openscad/openscad.ts
Normal file
46
app/api/src/docker/openscad/openscad.ts
Normal file
@@ -0,0 +1,46 @@
|
||||
import { runScad, stlExport } from './runScad'
|
||||
import middy from 'middy'
|
||||
import { cors } from 'middy/middlewares'
|
||||
import { loggerWrap, storeAssetAndReturnUrl } from '../common/utils'
|
||||
|
||||
const preview = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = Buffer.from(req.body, 'base64').toString('ascii')
|
||||
console.log('eventBody', eventBody)
|
||||
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath } = await runScad({
|
||||
file,
|
||||
settings,
|
||||
})
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
})
|
||||
}
|
||||
|
||||
const stl = async (req, _context, callback) => {
|
||||
_context.callbackWaitsForEmptyEventLoop = false
|
||||
const eventBody = Buffer.from(req.body, 'base64').toString('ascii')
|
||||
|
||||
console.log(eventBody, 'eventBody')
|
||||
|
||||
const { file, settings } = JSON.parse(eventBody)
|
||||
const { error, consoleMessage, fullPath } = await stlExport({
|
||||
file,
|
||||
settings,
|
||||
})
|
||||
await storeAssetAndReturnUrl({
|
||||
error,
|
||||
callback,
|
||||
fullPath,
|
||||
consoleMessage,
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
stl: middy(loggerWrap(stl)).use(cors()),
|
||||
preview: middy(loggerWrap(preview)).use(cors()),
|
||||
}
|
||||
1156
app/api/src/docker/openscad/package-lock.json
generated
1156
app/api/src/docker/openscad/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"name": "openscad-endpoint",
|
||||
"version": "0.0.1",
|
||||
"description": "endpoint for openscad",
|
||||
"main": "index.js",
|
||||
"author": "Kurt Hutten <kurt@kurthutten.com>",
|
||||
"license": "",
|
||||
"dependencies": {
|
||||
"aws-sdk": "^2.907.0",
|
||||
"cors": "^2.8.5",
|
||||
"middy": "^0.36.0",
|
||||
"nanoid": "^3.1.20",
|
||||
"timekeeper": "2.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"aws-lambda-ric": "^1.0.0"
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
const { writeFiles, runCommand } = require('../common/utils')
|
||||
const { nanoid } = require('nanoid')
|
||||
import { writeFiles, runCommand } from '../common/utils'
|
||||
import { nanoid } from 'nanoid'
|
||||
const { readFile } = require('fs/promises')
|
||||
|
||||
const OPENSCAD_COMMON = `xvfb-run --auto-servernum --server-args "-screen 0 1024x768x24" openscad-nightly`
|
||||
@@ -8,7 +8,7 @@ const OPENSCAD_COMMON = `xvfb-run --auto-servernum --server-args "-screen 0 1024
|
||||
const cleanOpenScadError = (error) =>
|
||||
error.replace(/["|']\/tmp\/.+\/main.scad["|']/g, "'main.scad'")
|
||||
|
||||
module.exports.runScad = async ({
|
||||
export const runScad = async ({
|
||||
file,
|
||||
settings: {
|
||||
size: { x = 500, y = 500 } = {},
|
||||
@@ -19,7 +19,12 @@ module.exports.runScad = async ({
|
||||
dist = 200,
|
||||
} = {},
|
||||
} = {}, // TODO add view settings
|
||||
} = {}) => {
|
||||
} = {}): Promise<{
|
||||
error?: string
|
||||
consoleMessage?: string
|
||||
fullPath?: string
|
||||
customizerPath?: string
|
||||
}> => {
|
||||
const tempFile = await writeFiles(
|
||||
[
|
||||
{ file, fileName: 'main.scad' },
|
||||
@@ -62,6 +67,7 @@ module.exports.runScad = async ({
|
||||
file: JSON.stringify({
|
||||
customizerParams: params,
|
||||
consoleMessage,
|
||||
type: 'png',
|
||||
}),
|
||||
fileName: 'metadata.json',
|
||||
},
|
||||
@@ -78,7 +84,7 @@ module.exports.runScad = async ({
|
||||
}
|
||||
}
|
||||
|
||||
module.exports.stlExport = async ({ file, settings: { parameters } } = {}) => {
|
||||
export const stlExport = async ({ file, settings: { parameters } } = {}) => {
|
||||
const tempFile = await writeFiles(
|
||||
[
|
||||
{ file, fileName: 'main.scad' },
|
||||
@@ -116,6 +122,7 @@ module.exports.stlExport = async ({ file, settings: { parameters } } = {}) => {
|
||||
file: JSON.stringify({
|
||||
customizerParams: params,
|
||||
consoleMessage,
|
||||
type: 'stl',
|
||||
}),
|
||||
fileName: 'metadata.json',
|
||||
},
|
||||
1799
app/api/src/docker/package-lock.json
generated
1799
app/api/src/docker/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,20 +0,0 @@
|
||||
{
|
||||
"name": "aws-emulator",
|
||||
"version": "1.0.0",
|
||||
"description": "thin layer so that we can use docker lambdas locally",
|
||||
"scripts": {
|
||||
"lambdas": "docker-compose up --build",
|
||||
"emulate": "nodemon ./aws-emulator.js",
|
||||
"watch": "concurrently \"yarn lambdas\" \"yarn emulate\""
|
||||
},
|
||||
"main": "aws-emulator.js",
|
||||
"dependencies": {
|
||||
"axios": "^0.21.1",
|
||||
"cors": "^2.8.5",
|
||||
"express": "^4.17.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"concurrently": "^6.0.0",
|
||||
"nodemon": "^2.0.7"
|
||||
}
|
||||
}
|
||||
@@ -3,7 +3,8 @@ service: cad-lambdas
|
||||
#app: your-app-name
|
||||
#org: your-org-name
|
||||
|
||||
# plugins:
|
||||
plugins:
|
||||
- serverless-binary-cors
|
||||
# - serverless-offline
|
||||
|
||||
# You can pin your service to only deploy with a specific Serverless version
|
||||
@@ -17,13 +18,18 @@ provider:
|
||||
images:
|
||||
# this image is built locally and push to ECR
|
||||
openscadimage:
|
||||
path: ./
|
||||
file: ./openscad/Dockerfile
|
||||
path: ../../
|
||||
file: ./src/docker/openscad/Dockerfile
|
||||
cadqueryimage:
|
||||
path: ./
|
||||
file: ./cadquery/Dockerfile
|
||||
path: ../../
|
||||
file: ./src/docker/cadquery/Dockerfile
|
||||
apiGateway:
|
||||
metrics: true
|
||||
binaryMediaTypes:
|
||||
# we need to allow binary types to be able to send back images and stls, but it would be better to be more specific
|
||||
# ie image/png etc. as */* treats everything as binary including the json body as the input the lambdas
|
||||
# which mean we need to decode the input bode from base64, but the images break with anything other than */* :(
|
||||
- '*/*'
|
||||
|
||||
# you can overwrite defaults here
|
||||
# stage: dev
|
||||
@@ -52,7 +58,7 @@ functions:
|
||||
image:
|
||||
name: openscadimage
|
||||
command:
|
||||
- openscad.preview
|
||||
- js/openscad.preview
|
||||
entryPoint:
|
||||
- '/entrypoint.sh'
|
||||
events:
|
||||
@@ -67,7 +73,7 @@ functions:
|
||||
image:
|
||||
name: openscadimage
|
||||
command:
|
||||
- openscad.stl
|
||||
- js/openscad.stl
|
||||
entryPoint:
|
||||
- '/entrypoint.sh'
|
||||
events:
|
||||
@@ -82,7 +88,7 @@ functions:
|
||||
image:
|
||||
name: cadqueryimage
|
||||
command:
|
||||
- cadquery.stl
|
||||
- js/cadquery.stl
|
||||
entryPoint:
|
||||
- '/entrypoint.sh'
|
||||
events:
|
||||
|
||||
@@ -6,9 +6,13 @@
|
||||
"web"
|
||||
]
|
||||
},
|
||||
"scripts": {},
|
||||
"scripts": {
|
||||
"cad": "yarn rw build api && docker-compose --file ./api/src/docker/docker-compose.yml up --build",
|
||||
"cad-r": "yarn rw build api && docker-compose --file ./api/src/docker/docker-compose.yml restart",
|
||||
"aws-emulate": "nodemon ./api/src/docker/aws-emulator.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@redwoodjs/core": "^0.36.2"
|
||||
"@redwoodjs/core": "^0.36.3"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": "@redwoodjs/eslint-config",
|
||||
@@ -29,4 +33,4 @@
|
||||
"node": ">=14",
|
||||
"yarn": ">=1.15"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
"@monaco-editor/react": "^4.0.11",
|
||||
"@react-three/drei": "^7.3.1",
|
||||
"@react-three/fiber": "^7.0.5",
|
||||
"@redwoodjs/auth": "^0.36.2",
|
||||
"@redwoodjs/forms": "^0.36.2",
|
||||
"@redwoodjs/router": "^0.36.2",
|
||||
"@redwoodjs/web": "^0.36.2",
|
||||
"@redwoodjs/auth": "^0.36.3",
|
||||
"@redwoodjs/forms": "^0.36.3",
|
||||
"@redwoodjs/router": "^0.36.3",
|
||||
"@redwoodjs/web": "^0.36.3",
|
||||
"@sentry/browser": "^6.5.1",
|
||||
"@tailwindcss/aspect-ratio": "0.2.1",
|
||||
"axios": "^0.21.1",
|
||||
@@ -56,4 +56,4 @@
|
||||
"postcss-loader": "^6.1.1",
|
||||
"tailwindcss": "^2.2.7"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,8 +11,9 @@ const ExternalScript = () => {
|
||||
const handleRender = useRender()
|
||||
const [rawUrl, setRawUrl] = useState('')
|
||||
const [script, setScript] = useState('')
|
||||
const [asyncState, setAsyncState] =
|
||||
useState<'INIT' | 'SUCCESS' | 'ERROR' | 'LOADING'>('INIT')
|
||||
const [asyncState, setAsyncState] = useState<
|
||||
'INIT' | 'SUCCESS' | 'ERROR' | 'LOADING'
|
||||
>('INIT')
|
||||
|
||||
const cadName = ideTypeNameMap[state.ideType]
|
||||
|
||||
|
||||
@@ -3,7 +3,9 @@ import { TextField, FieldError } from '@redwoodjs/forms'
|
||||
import { useFormContext } from 'react-hook-form'
|
||||
|
||||
const InputText = ({ type = 'text', className, name, validation }) => {
|
||||
const { formState: { errors } } = useFormContext()
|
||||
const {
|
||||
formState: { errors },
|
||||
} = useFormContext()
|
||||
return (
|
||||
<>
|
||||
<div className={getActiveClasses('relative inline-block', className)}>
|
||||
|
||||
@@ -41,20 +41,16 @@ export const render: DefaultKernelExport['render'] = async ({
|
||||
if (response.status === 502) {
|
||||
return createUnhealthyResponse(new Date(), timeoutErrorMessage)
|
||||
}
|
||||
const data = await response.json()
|
||||
const newData = await fetch(data.url).then(async (a) => {
|
||||
const blob = await a.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage } = splitGziped(text)
|
||||
return {
|
||||
data: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
}
|
||||
})
|
||||
const blob = await response.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage, customizerParams, type } = splitGziped(text)
|
||||
return createHealthyResponse({
|
||||
type: 'geometry',
|
||||
data: newData.data,
|
||||
consoleMessage: newData.consoleMessage,
|
||||
type: type !== 'stl' ? 'png' : 'geometry',
|
||||
data:
|
||||
type !== 'stl'
|
||||
? blob
|
||||
: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
date: new Date(),
|
||||
})
|
||||
} catch (e) {
|
||||
|
||||
@@ -4,7 +4,7 @@ import { CadhubParams } from 'src/components/Customizer/customizerConverter'
|
||||
|
||||
export const lambdaBaseURL =
|
||||
process.env.CAD_LAMBDA_BASE_URL ||
|
||||
'https://oxt2p7ddgj.execute-api.us-east-1.amazonaws.com/prod'
|
||||
'https://2inlbple1b.execute-api.us-east-1.amazonaws.com/prod2'
|
||||
|
||||
export const stlToGeometry = (url) =>
|
||||
new Promise((resolve, reject) => {
|
||||
|
||||
@@ -57,27 +57,18 @@ export const render = async ({ code, settings }: RenderArgs) => {
|
||||
if (response.status === 502) {
|
||||
return createUnhealthyResponse(new Date(), timeoutErrorMessage)
|
||||
}
|
||||
const data = await response.json()
|
||||
const type = data.type !== 'stl' ? 'png' : 'geometry'
|
||||
const newData = await fetch(data.url).then(async (a) => {
|
||||
const blob = await a.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage, customizerParams } = splitGziped(text)
|
||||
return {
|
||||
data:
|
||||
data.type !== 'stl'
|
||||
? blob
|
||||
: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
customizerParams,
|
||||
}
|
||||
})
|
||||
const blob = await response.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage, customizerParams, type } = splitGziped(text)
|
||||
return createHealthyResponse({
|
||||
type,
|
||||
data: newData.data,
|
||||
consoleMessage: newData.consoleMessage,
|
||||
type: type !== 'stl' ? 'png' : 'geometry',
|
||||
data:
|
||||
type !== 'stl'
|
||||
? blob
|
||||
: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
date: new Date(),
|
||||
customizerParams: openScadToCadhubParams(newData.customizerParams || []),
|
||||
customizerParams: openScadToCadhubParams(customizerParams || []),
|
||||
})
|
||||
} catch (e) {
|
||||
return createUnhealthyResponse(new Date())
|
||||
@@ -105,23 +96,18 @@ export const stl = async ({ code, settings }: RenderArgs) => {
|
||||
if (response.status === 502) {
|
||||
return createUnhealthyResponse(new Date(), timeoutErrorMessage)
|
||||
}
|
||||
const data = await response.json()
|
||||
const newData = await fetch(data.url).then(async (a) => {
|
||||
const blob = await a.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage, customizerParams } = splitGziped(text)
|
||||
return {
|
||||
data: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
customizerParams,
|
||||
}
|
||||
})
|
||||
const blob = await response.blob()
|
||||
const text = await new Response(blob).text()
|
||||
const { consoleMessage, customizerParams, type } = splitGziped(text)
|
||||
return createHealthyResponse({
|
||||
type: 'geometry',
|
||||
data: newData.data,
|
||||
consoleMessage: newData.consoleMessage,
|
||||
type: type !== 'stl' ? 'png' : 'geometry',
|
||||
data:
|
||||
type !== 'stl'
|
||||
? blob
|
||||
: await stlToGeometry(window.URL.createObjectURL(blob)),
|
||||
consoleMessage,
|
||||
date: new Date(),
|
||||
customizerParams: openScadToCadhubParams(newData.customizerParams || []),
|
||||
customizerParams: openScadToCadhubParams(customizerParams || []),
|
||||
})
|
||||
} catch (e) {
|
||||
return createUnhealthyResponse(new Date())
|
||||
|
||||
390
app/yarn.lock
390
app/yarn.lock
@@ -2476,20 +2476,12 @@
|
||||
resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.9.2.tgz#adea7b6953cbb34651766b0548468e743c6a2353"
|
||||
integrity sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q==
|
||||
|
||||
"@prisma/client@2.29.1":
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/client/-/client-2.29.1.tgz#a7b91c9644800de4e00b2f7c3789ff4bae42b3d6"
|
||||
integrity sha512-GhieSvHGPIV5IwRYIkJ4FrGSNfX18lPhFtlyVWxhvX0ocdy8oTnjNZVTFgGxB6qVmJIUpH1HsckAzIoAX689IA==
|
||||
"@prisma/client@2.30.0":
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/client/-/client-2.30.0.tgz#b0ed9db67405f619e428577f2d45843104142e00"
|
||||
integrity sha512-tjJNHVfgyNOwS2F+AkjMMCJGPnXzHuUCrOnAMJyidAu4aNzxbJ8jWwjt96rRMpyrg9Hwen3xqqQ2oA+ikK7nhQ==
|
||||
dependencies:
|
||||
"@prisma/engines-version" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
|
||||
"@prisma/debug@2.28.0":
|
||||
version "2.28.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/debug/-/debug-2.28.0.tgz#bb56e0b1baf91fe7732f8cf14759b1d035180315"
|
||||
integrity sha512-SKihAtTPDqfm/iyLVs5xf1uLu4Ev+zcFLc8vdiGofpHTkeiu3qU1OSDPnrQ0nwn0IJsp3SeRbV0NRWTwL5Z71w==
|
||||
dependencies:
|
||||
debug "4.3.2"
|
||||
ms "^2.1.3"
|
||||
"@prisma/engines-version" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
|
||||
"@prisma/debug@2.29.1":
|
||||
version "2.29.1"
|
||||
@@ -2500,15 +2492,24 @@
|
||||
debug "4.3.2"
|
||||
ms "2.1.3"
|
||||
|
||||
"@prisma/engine-core@2.29.1":
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engine-core/-/engine-core-2.29.1.tgz#9fdb1fddea6d650a97ae1d86e8264d4b95dbe364"
|
||||
integrity sha512-vbZNry916sErWIagF62kASy665Pe9xDYdOQuJ9Njg90sApg4qHPAmDqRC5cf4wQzWOnhnenmWC7AjUfQKrrFiQ==
|
||||
"@prisma/debug@2.30.0":
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/debug/-/debug-2.30.0.tgz#f9e25106a650b7e6c53b26a7f67195c24b2bc82d"
|
||||
integrity sha512-PCEBFJxOmtLhPcl7VdLeVabSHJnlqWMCR4J1y6H+WvqtCt8oMwhgWu4z2Wgh2baphHC3T87+iQVU5BtZX+b5mA==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.29.1"
|
||||
"@prisma/engines" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@prisma/generator-helper" "2.29.1"
|
||||
"@prisma/get-platform" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@types/debug" "4.1.7"
|
||||
debug "4.3.2"
|
||||
ms "2.1.3"
|
||||
|
||||
"@prisma/engine-core@2.30.0":
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engine-core/-/engine-core-2.30.0.tgz#26264a634ddfd9320dc1a46c0a9accdfe8a3bb76"
|
||||
integrity sha512-wy9B1dJLGv5u/E6LbjobEjEfhCVf9++2L3OLAAk9hfg4cCqwY4629woJ1m3w5FWLy29HSnZKgpvQ/8lz1dUbMA==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.30.0"
|
||||
"@prisma/engines" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
"@prisma/generator-helper" "2.30.0"
|
||||
"@prisma/get-platform" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
chalk "4.1.2"
|
||||
execa "5.1.1"
|
||||
get-stream "6.0.1"
|
||||
@@ -2518,23 +2519,23 @@
|
||||
terminal-link "2.1.1"
|
||||
undici "3.3.6"
|
||||
|
||||
"@prisma/engines-version@2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a":
|
||||
version "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a.tgz#96db92f09714d4dd2a5e21054c28bd1c0820fa77"
|
||||
integrity sha512-BU1DNNDhdzqjHtycpUzDrU8+jf6ZY+fbXvCV/rbqG+0JifljlIo4vbkHDMg97gBi1Do8pTLZGlTH16FlniKgAg==
|
||||
"@prisma/engines-version@2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb":
|
||||
version "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb.tgz#1360113dc19e1d43d4442e3b638ccfa0e1711943"
|
||||
integrity sha512-oThNpx7HtJ0eEmnvrWARYcNCs6dqFdAK3Smt2bJVDD6Go4HLuuhjx028osP+rHaFrGOTx7OslLZYtvvFlAXRDA==
|
||||
|
||||
"@prisma/engines@2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a":
|
||||
version "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a.tgz#0a44a6dcbee7e0a2850ea086675a8a4f4d627f9d"
|
||||
integrity sha512-cgEoGK3dmKZkMp/sRbL8TsuVS50rHXYBHk2NY18DPUGr5//4ICno46EjzlayqAFVak8J6RtWZEs+8tE8j8frAQ==
|
||||
"@prisma/engines@2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb":
|
||||
version "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb.tgz#b4d91ff876662b1de83e0cc913149a1c088becc7"
|
||||
integrity sha512-LPKq88lIbYezvX0OOc1PU42hHdTsSMPJWmK8lusaHK7DaLHyXjDp/551LbsVapypbjW6N3Jx/If6GoMDASSMSw==
|
||||
|
||||
"@prisma/fetch-engine@2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a":
|
||||
version "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/fetch-engine/-/fetch-engine-2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a.tgz#de40f3bd761f3da1f2e0e0af027514c845f58264"
|
||||
integrity sha512-HsTHffo2xg0rZchdqWJHDvl7JaOi2U1rDockKYAYPf3grGZ14AnJ/ZVP292xMm0IiGLkb5YE3qkI5SKoGEUqMw==
|
||||
"@prisma/fetch-engine@2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb":
|
||||
version "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/fetch-engine/-/fetch-engine-2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb.tgz#434c8fb3b7c631bc1f55abb87e16c03c60895ce3"
|
||||
integrity sha512-62/gM4Gm+e1BQlgj4OFmdQKa22nWg5FZ6hNsoRHopcm45RRhnSHqYiD+9djo/98i1/+MYfwxCwPqhhJm28lJuw==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.28.0"
|
||||
"@prisma/get-platform" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@prisma/debug" "2.29.1"
|
||||
"@prisma/get-platform" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
chalk "^4.0.0"
|
||||
execa "^5.0.0"
|
||||
find-cache-dir "^3.3.1"
|
||||
@@ -2551,37 +2552,37 @@
|
||||
temp-dir "^2.0.0"
|
||||
tempy "^1.0.0"
|
||||
|
||||
"@prisma/generator-helper@2.29.1":
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/generator-helper/-/generator-helper-2.29.1.tgz#7bd984f649ba830d11fdd514f8781c92a2782e41"
|
||||
integrity sha512-rba/mfxv1JtbAm51yXipYY7DVYB4L2DVVnnXOvSAhAqDLUVylT68WxLXQKiSBxNAlks5ngD2DeaH6qpGi+XnYw==
|
||||
"@prisma/generator-helper@2.30.0":
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/generator-helper/-/generator-helper-2.30.0.tgz#152f7381d7c4eb6022c7173f905d98a79f830728"
|
||||
integrity sha512-7XKJM83LLrpDSqiDrINaBqtePUJomgxfiofIx0TM5pBIg2vmWwpe5Q+VDQxr88ypqVW83NW6BfPgTm7Qni4+mQ==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.29.1"
|
||||
"@prisma/debug" "2.30.0"
|
||||
"@types/cross-spawn" "6.0.2"
|
||||
chalk "4.1.2"
|
||||
cross-spawn "7.0.3"
|
||||
|
||||
"@prisma/get-platform@2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a":
|
||||
version "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/get-platform/-/get-platform-2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a.tgz#78e9200abdfa15446d4830c101e5b2d692bef7ab"
|
||||
integrity sha512-eEuXFcELlo8bAszQOz3YOyVpoKMjD/RSml29P51WFaDaHZaudfqV6OkSpMV2Qchcyg6neI1mvT+0acutBpNXTw==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.28.0"
|
||||
|
||||
"@prisma/sdk@2.29.1":
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/sdk/-/sdk-2.29.1.tgz#1619f4f20847caa408c75b9e8175e6a2913c4184"
|
||||
integrity sha512-vtcF5jdUskjalL5Q9iagbcc+vfwUa+DAQnNdYg0PtmpaS2llWezptvEJd2ihMR7O5m2sAmI87QDiCn9Y5FxNjQ==
|
||||
"@prisma/get-platform@2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb":
|
||||
version "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/get-platform/-/get-platform-2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb.tgz#6b2aa861c1c6383c39178d0e272d5bc53dc7bc30"
|
||||
integrity sha512-gqB9defmpCvxvQM9HFNpo1s0G652eE556ckO+k9X1Kfbt1vaX6FuxtQD5IPcu0nDm42u3NTkX9lDR1Y0j5VPng==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.29.1"
|
||||
"@prisma/engine-core" "2.29.1"
|
||||
"@prisma/engines" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@prisma/fetch-engine" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@prisma/generator-helper" "2.29.1"
|
||||
"@prisma/get-platform" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
|
||||
"@prisma/sdk@2.30.0":
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/@prisma/sdk/-/sdk-2.30.0.tgz#0c7d5bc4872d87b31831ce8ddd7ac5ab73c80471"
|
||||
integrity sha512-bIYLphnGnfoguFfKiHon/RZhMTAk8gpElUos1+O7RHzDdzqPEusyl8T9lX123zxhmeVocyV0V2y/AxaD5USaxg==
|
||||
dependencies:
|
||||
"@prisma/debug" "2.30.0"
|
||||
"@prisma/engine-core" "2.30.0"
|
||||
"@prisma/engines" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
"@prisma/fetch-engine" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
"@prisma/generator-helper" "2.30.0"
|
||||
"@prisma/get-platform" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
"@timsuchanek/copy" "1.4.5"
|
||||
archiver "4.0.2"
|
||||
arg "5.0.0"
|
||||
arg "5.0.1"
|
||||
chalk "4.1.2"
|
||||
checkpoint-client "1.1.20"
|
||||
cli-truncate "2.1.0"
|
||||
@@ -2602,7 +2603,7 @@
|
||||
string-width "4.2.2"
|
||||
strip-ansi "6.0.0"
|
||||
strip-indent "3.0.0"
|
||||
tar "6.1.6"
|
||||
tar "6.1.8"
|
||||
temp-dir "2.0.0"
|
||||
temp-write "4.0.0"
|
||||
tempy "1.0.1"
|
||||
@@ -2739,10 +2740,10 @@
|
||||
utility-types "^3.10.0"
|
||||
zustand "^3.5.1"
|
||||
|
||||
"@redwoodjs/api-server@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/api-server/-/api-server-0.36.2.tgz#0040b08a124cafb049a2388602a3e023e1b39834"
|
||||
integrity sha512-bxDaZCwTZF3SXZ6AdaQm+Ajqe+oOGvw1oIpMWsJ3m1Me7R8YNfhVqMEJKMrCAAw8APcgrcFZOeBAumpVLdBtrA==
|
||||
"@redwoodjs/api-server@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/api-server/-/api-server-0.36.3.tgz#d4b011faceb34df775ebdf3054535e03f1b7e647"
|
||||
integrity sha512-9hhn6rJSEo08IxzFmcZK5n5wdqiRdY3wBRs1JfM6zZDGvus+4Jwj9erK7pDLPeJilJazOtB/0gGW5JQnjE58yw==
|
||||
dependencies:
|
||||
ansi-colors "4.1.1"
|
||||
body-parser "1.19.0"
|
||||
@@ -2758,13 +2759,13 @@
|
||||
youch "2.2.2"
|
||||
youch-terminal "1.1.1"
|
||||
|
||||
"@redwoodjs/api@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/api/-/api-0.36.2.tgz#e9122f407854a289480dd2e9f917a61cff77e6c3"
|
||||
integrity sha512-nTNfDkkEpgFtc/tGTExikoJApbKT0JlA3TQTCXx0FlBE83NdFEjIZZBETUTKBaLZ/sUFT4iGIn/uzhJtYOI+DQ==
|
||||
"@redwoodjs/api@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/api/-/api-0.36.3.tgz#643b87419bd3d7dd57321abc984aa7ab2efb4b60"
|
||||
integrity sha512-Qcgsk/4nw4lbPIWD3Q+6f1cnJ4s8G52edVkkf6tJuQ6D3He4whJc0PVpfDOGymSJs3DA49C7TFuRfaV+W22QBA==
|
||||
dependencies:
|
||||
"@graphql-tools/merge" "7.0.0"
|
||||
"@prisma/client" "2.29.1"
|
||||
"@prisma/client" "2.30.0"
|
||||
"@types/pino" "6.3.11"
|
||||
apollo-server-lambda "2.25.2"
|
||||
core-js "3.16.1"
|
||||
@@ -2780,21 +2781,21 @@
|
||||
pino-pretty "5.1.3"
|
||||
uuid "8.3.2"
|
||||
|
||||
"@redwoodjs/auth@0.36.2", "@redwoodjs/auth@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/auth/-/auth-0.36.2.tgz#86fc2611a50fff8929f9d5c2a5ed5f7c54b5e8c7"
|
||||
integrity sha512-iXjclf3C09+3CUsbyVpYBY96wboqOjzcvoAt4WbidUGh80W9mRLKYw1cDvaodRnWuQjB14A/33KOuqUtKVw8zw==
|
||||
"@redwoodjs/auth@0.36.3", "@redwoodjs/auth@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/auth/-/auth-0.36.3.tgz#285ce9817c8124cb9701a3e1f410fbed3793bb36"
|
||||
integrity sha512-FYJfwrEuByrELrcxCBHKO3clvlTFUJii9wogxYg/ojzAMbbbjo0QF/DSHobpiE95GSyXb9LTUtaaHqGc0Y4R1g==
|
||||
|
||||
"@redwoodjs/cli@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/cli/-/cli-0.36.2.tgz#da10c8175193f65a076a5c7feaab5e1fef2cc290"
|
||||
integrity sha512-Cgs00BpQYefrd9y4nO5yYiqZQZ2mC/Q/VxdyzHBbovhOS4uGlsy4TGBJ9SWICevPymxb62GdAblCxGcwQ2xX9A==
|
||||
"@redwoodjs/cli@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/cli/-/cli-0.36.3.tgz#9545c167f019879c2c0d068a89489897e3d9c2d2"
|
||||
integrity sha512-ItsjxjeAXYwN+Ax0SZB3DZtuMZP0H0HuEgPgLPuzVAwIueVLw21dooM1Hq8ggHjkDAY+rgKJwcEN2qzxpo/QkA==
|
||||
dependencies:
|
||||
"@prisma/sdk" "2.29.1"
|
||||
"@redwoodjs/api-server" "0.36.2"
|
||||
"@redwoodjs/internal" "0.36.2"
|
||||
"@redwoodjs/prerender" "0.36.2"
|
||||
"@redwoodjs/structure" "0.36.2"
|
||||
"@prisma/sdk" "2.30.0"
|
||||
"@redwoodjs/api-server" "0.36.3"
|
||||
"@redwoodjs/internal" "0.36.3"
|
||||
"@redwoodjs/prerender" "0.36.3"
|
||||
"@redwoodjs/structure" "0.36.3"
|
||||
boxen "5.0.1"
|
||||
camelcase "6.2.0"
|
||||
chalk "4.1.2"
|
||||
@@ -2816,17 +2817,17 @@
|
||||
pascalcase "1.0.0"
|
||||
pluralize "8.0.0"
|
||||
prettier "2.3.2"
|
||||
prisma "2.29.1"
|
||||
prisma "2.30.0"
|
||||
prompts "2.4.1"
|
||||
rimraf "3.0.2"
|
||||
secure-random-password "0.2.3"
|
||||
terminal-link "2.1.1"
|
||||
yargs "16.2.0"
|
||||
|
||||
"@redwoodjs/core@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/core/-/core-0.36.2.tgz#bdcd03174437fba1edc6ad616cca51d877d78519"
|
||||
integrity sha512-T7zRlKcPiuj1tj59rB6nhhZgSj2bfg03cfN+EfP94jNb6Zew/0T6Jl4jdXIywGuB16Own9TpALzXQdQvxq29eg==
|
||||
"@redwoodjs/core@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/core/-/core-0.36.3.tgz#d0c8ffd86547c3c5bc63a9f59fe2df0ed80798d8"
|
||||
integrity sha512-HNJeFevkWNJ/1Rt7pEvwyu96Z1xsKF8mwrpXCBGhEh2m+aHCMf3Oc/gq4DLmWkZ9mEPwYbTGR0fEvd8cPQlRCQ==
|
||||
dependencies:
|
||||
"@babel/cli" "7.14.8"
|
||||
"@babel/core" "7.15.0"
|
||||
@@ -2840,10 +2841,10 @@
|
||||
"@babel/preset-typescript" "7.15.0"
|
||||
"@babel/runtime-corejs3" "7.15.3"
|
||||
"@pmmmwh/react-refresh-webpack-plugin" "0.5.0-rc.4"
|
||||
"@redwoodjs/cli" "0.36.2"
|
||||
"@redwoodjs/eslint-config" "0.36.2"
|
||||
"@redwoodjs/internal" "0.36.2"
|
||||
"@redwoodjs/testing" "0.36.2"
|
||||
"@redwoodjs/cli" "0.36.3"
|
||||
"@redwoodjs/eslint-config" "0.36.3"
|
||||
"@redwoodjs/internal" "0.36.3"
|
||||
"@redwoodjs/testing" "0.36.3"
|
||||
babel-loader "8.2.2"
|
||||
babel-plugin-auto-import "1.1.0"
|
||||
babel-plugin-graphql-tag "3.3.0"
|
||||
@@ -2881,10 +2882,10 @@
|
||||
webpack-retry-chunk-load-plugin "2.2.0"
|
||||
x----x----x "^0 Webpack"
|
||||
|
||||
"@redwoodjs/eslint-config@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/eslint-config/-/eslint-config-0.36.2.tgz#4dcdd103172e0dcd3290a6b174f8356408306ea6"
|
||||
integrity sha512-QhLOnR3GL6ARluGRg2cJl/wXE+s9zvBZpguGGoC5gsrgGGCvWB3FjUvAeO6DfmfqrGbxym02JSbtB5+nm4qeNg==
|
||||
"@redwoodjs/eslint-config@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/eslint-config/-/eslint-config-0.36.3.tgz#795516703971aef3abdd26661c4236f1c5116554"
|
||||
integrity sha512-Gl9vFbyXJ2S5QT+pPIsTdofrXjgnaat5Ws8wssG2fBM58gRbBfj50/McMBsMVArjaZllcPLzekpC9tGlsK9zBw==
|
||||
dependencies:
|
||||
"@typescript-eslint/eslint-plugin" "4.29.0"
|
||||
"@typescript-eslint/parser" "4.29.0"
|
||||
@@ -2901,20 +2902,20 @@
|
||||
eslint-plugin-react-hooks "4.2.0"
|
||||
prettier "2.3.2"
|
||||
|
||||
"@redwoodjs/forms@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/forms/-/forms-0.36.2.tgz#200e5145e1f8c248e0d16017b3fe05df8d1b3c13"
|
||||
integrity sha512-QIfJFY8zVFs6c/p7n9Aja72lV0tmEiI0zLlasuv/SznM14sqVB96fquTSVJxPCAYoOBLgYuL0sX4V9LR0yYVuQ==
|
||||
"@redwoodjs/forms@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/forms/-/forms-0.36.3.tgz#db0256b868ea6672ab2e2ae602ab8e80a368207a"
|
||||
integrity sha512-WcJzv5bBuYFkUwhbL5dn29GqltAfhwRMKyDpuqGfLFxcbtMY7uzf/ie07fh3LJgzIu/KBXv2f5aNCxzmXvDHsQ==
|
||||
dependencies:
|
||||
"@types/pascalcase" "1.0.0"
|
||||
core-js "3.16.1"
|
||||
pascalcase "1.0.0"
|
||||
react-hook-form "7.12.2"
|
||||
|
||||
"@redwoodjs/internal@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/internal/-/internal-0.36.2.tgz#78cbddc51fd8452ec11add010bf45e2226fb3b06"
|
||||
integrity sha512-twMYzLkUlcCXPW1nPxg3g0l/2ypNjF4LbPiBpHfWCOESQOPq0DJrg8/swfabW/WoHD8XXxpBWF62hjrE+JMJbA==
|
||||
"@redwoodjs/internal@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/internal/-/internal-0.36.3.tgz#e3522f6ebede0f43032755e284926cf7b4d2deb7"
|
||||
integrity sha512-3iLe3bJaBReabTMK6vZMckNv5LgwcBg/cTmeEAKRDjGd521yKrsuoqdjNkA1O7JvAIjUzDVOe4Q4IyfVNBTdIA==
|
||||
dependencies:
|
||||
"@babel/parser" "7.15.3"
|
||||
"@babel/plugin-transform-typescript" "7.15.0"
|
||||
@@ -2928,6 +2929,8 @@
|
||||
"@graphql-codegen/typescript-operations" "2.0.1"
|
||||
"@graphql-codegen/typescript-react-apollo" "3.0.0"
|
||||
"@graphql-codegen/typescript-resolvers" "2.0.0"
|
||||
babel-plugin-polyfill-corejs3 "0.2.4"
|
||||
core-js "3.16.3"
|
||||
deepmerge "4.2.2"
|
||||
esbuild "0.12.21"
|
||||
fast-glob "3.2.7"
|
||||
@@ -2940,37 +2943,37 @@
|
||||
rimraf "3.0.2"
|
||||
toml "3.0.0"
|
||||
|
||||
"@redwoodjs/prerender@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/prerender/-/prerender-0.36.2.tgz#8949c21ece38af25575b8d3381df3b1524f0571f"
|
||||
integrity sha512-YLwvrLKEpOdi0WMCxF/sA0Z7HJKhWxOqkwCebIT4seuP8tuo7L/8k0lZjO1MPFeg5E0fbEYHMl9ty7StegeI9Q==
|
||||
"@redwoodjs/prerender@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/prerender/-/prerender-0.36.3.tgz#9fb7b333dd5f010faac087b8c5f90e45c1a68e87"
|
||||
integrity sha512-l9vH5NG2sam+a8gBf3V4JeAXsNN4byrsN+yGwfVlef8d+aJjhdwJ1B3rE9Z0NkH99SybE11KubrWvRp+rfuHrg==
|
||||
dependencies:
|
||||
"@redwoodjs/auth" "0.36.2"
|
||||
"@redwoodjs/internal" "0.36.2"
|
||||
"@redwoodjs/router" "0.36.2"
|
||||
"@redwoodjs/structure" "0.36.2"
|
||||
"@redwoodjs/web" "0.36.2"
|
||||
"@redwoodjs/auth" "0.36.3"
|
||||
"@redwoodjs/internal" "0.36.3"
|
||||
"@redwoodjs/router" "0.36.3"
|
||||
"@redwoodjs/structure" "0.36.3"
|
||||
"@redwoodjs/web" "0.36.3"
|
||||
babel-plugin-ignore-html-and-css-imports "0.1.0"
|
||||
cheerio "1.0.0-rc.10"
|
||||
node-fetch "2.6.1"
|
||||
|
||||
"@redwoodjs/router@0.36.2", "@redwoodjs/router@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/router/-/router-0.36.2.tgz#775f412c905437802f602728455fc5d4d88dbc03"
|
||||
integrity sha512-o89YMAwqxQvGQNFsyaj4hxgiH18NBppRuIgvpWqZbBOuvGL86h33QmlJmaxN9gx3kbbQnnh+/yBJRy4bmUbOLg==
|
||||
"@redwoodjs/router@0.36.3", "@redwoodjs/router@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/router/-/router-0.36.3.tgz#f8b44953311e521f48fba22f428a89929099785f"
|
||||
integrity sha512-ErslfXTkljTJtggtfE/gIfDDltOkkvqimM483VR/jldRUoanR4k3iiwAwlt3AjAA43wLjSohV+jylR6dWy3d0g==
|
||||
dependencies:
|
||||
"@reach/skip-nav" "0.16.0"
|
||||
"@redwoodjs/auth" "0.36.2"
|
||||
"@redwoodjs/auth" "0.36.3"
|
||||
core-js "3.16.1"
|
||||
lodash.isequal "4.5.0"
|
||||
|
||||
"@redwoodjs/structure@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/structure/-/structure-0.36.2.tgz#27d263fac228a08975344e476a4a4f136d8c839e"
|
||||
integrity sha512-ucAsy78SQmULISDvMNir9jdrZwi377+CtdNSvixuPDXSljU8WEXJjWQabwKZuo4c9GkazFiNIoXVXqtp2l29Bw==
|
||||
"@redwoodjs/structure@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/structure/-/structure-0.36.3.tgz#7351951a1719f2553920f7418e03b2b857cccb62"
|
||||
integrity sha512-QY4Qm76tKUCn74zyyRdBV7CmvFXhg7WDzq2Q2m6rLOOtOaj1wo0s8ayfSWA7E5cDrYCetO/aGetAzmyUkYzIsw==
|
||||
dependencies:
|
||||
"@prisma/sdk" "2.29.1"
|
||||
"@redwoodjs/internal" "0.36.2"
|
||||
"@prisma/sdk" "2.30.0"
|
||||
"@redwoodjs/internal" "0.36.3"
|
||||
"@types/line-column" "1.0.0"
|
||||
camelcase "6.2.0"
|
||||
deepmerge "4.2.2"
|
||||
@@ -2991,15 +2994,15 @@
|
||||
vscode-languageserver-types "3.15.1"
|
||||
yargs-parser "20.2.9"
|
||||
|
||||
"@redwoodjs/testing@0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/testing/-/testing-0.36.2.tgz#67de6d2e2953e0ee67ce3e270465bfe76d8bd325"
|
||||
integrity sha512-zxodhDtezdG2mtDV2B9dDMtO1XclalzmHAX/qugMoCQ849U4vQ9OhgW4RTgSSbrWjg6es/Ok1OLhhhNmW0502g==
|
||||
"@redwoodjs/testing@0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/testing/-/testing-0.36.3.tgz#9e4f669be387f9cfe0c84d9f1eb3943f94bd0366"
|
||||
integrity sha512-9VdSmbO2WeOrjNCRk00cpvbYqVQ6IF5mVEreR481vEG7DyV4GdxPj1gMxBNSL+RpZRT1OeTQiMeCkw85C2UG9A==
|
||||
dependencies:
|
||||
"@redwoodjs/auth" "0.36.2"
|
||||
"@redwoodjs/internal" "0.36.2"
|
||||
"@redwoodjs/router" "0.36.2"
|
||||
"@redwoodjs/web" "0.36.2"
|
||||
"@redwoodjs/auth" "0.36.3"
|
||||
"@redwoodjs/internal" "0.36.3"
|
||||
"@redwoodjs/router" "0.36.3"
|
||||
"@redwoodjs/web" "0.36.3"
|
||||
"@storybook/addon-a11y" "6.3.7"
|
||||
"@storybook/builder-webpack5" "6.3.7"
|
||||
"@storybook/manager-webpack5" "6.3.7"
|
||||
@@ -3020,13 +3023,13 @@
|
||||
ts-toolbelt "9.6.0"
|
||||
whatwg-fetch "3.6.2"
|
||||
|
||||
"@redwoodjs/web@0.36.2", "@redwoodjs/web@^0.36.2":
|
||||
version "0.36.2"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/web/-/web-0.36.2.tgz#6313cc4673d56121f61d0cba5f1cd92f3dc68541"
|
||||
integrity sha512-tda4nv6YedZhqzv63lgM3mawxs5N/bb0rYAJyzMY7cEP4XYD5a6URu00KDInxB+K4WV8YZlVeEDgMqYMw8NQaw==
|
||||
"@redwoodjs/web@0.36.3", "@redwoodjs/web@^0.36.3":
|
||||
version "0.36.3"
|
||||
resolved "https://registry.yarnpkg.com/@redwoodjs/web/-/web-0.36.3.tgz#41c8b603db869530be5512762edde21d33be033e"
|
||||
integrity sha512-nOPpL5MYHWFqVmRjNB4XJSbViiRjOUfhhf6axQ54ww88A5PxWmtlJlZCiKulyyJhgnt0EjOagnWQRu/JENcL1A==
|
||||
dependencies:
|
||||
"@apollo/client" "3.3.21"
|
||||
"@redwoodjs/auth" "0.36.2"
|
||||
"@redwoodjs/auth" "0.36.3"
|
||||
core-js "3.16.1"
|
||||
graphql "15.5.1"
|
||||
proptypes "1.1.0"
|
||||
@@ -3916,6 +3919,11 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/aws-lambda/-/aws-lambda-8.10.77.tgz#04c4e3a06ab5552f2fa80816f8adca54b6bb9671"
|
||||
integrity sha512-n0EMFJU/7u3KvHrR83l/zrKOVURXl5pUJPNED/Bzjah89QKCHwCiKCBoVUXRwTGRfCYGIDdinJaAlKDHZdp/Ng==
|
||||
|
||||
"@types/aws-lambda@^8.10.45":
|
||||
version "8.10.83"
|
||||
resolved "https://registry.yarnpkg.com/@types/aws-lambda/-/aws-lambda-8.10.83.tgz#66db06cedb7476e860e8655e4387fd2e4385433a"
|
||||
integrity sha512-7YsLv/B8rF7K7jYAGmYBxLq3QU+hQV7qNJBMcSCmJCTcXuzoTKGBX8d4v9CsVs0SOKBSAErXG7rtk8jVxiP30g==
|
||||
|
||||
"@types/babel-core@6.25.7":
|
||||
version "6.25.7"
|
||||
resolved "https://registry.yarnpkg.com/@types/babel-core/-/babel-core-6.25.7.tgz#f9c22d5c085686da2f6ffbdae778edb3e6017671"
|
||||
@@ -4175,6 +4183,11 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.8.0.tgz#682477dbbbd07cd032731cb3b0e7eaee3d026b69"
|
||||
integrity sha512-2aoSC4UUbHDj2uCsCxcG/vRMXey/m17bC7UwitVm5hn22nI8O8Y9iDpA76Orc+DWkQ4zZrOKEshCqR/jSuXAHA==
|
||||
|
||||
"@types/http-errors@^1.6.3":
|
||||
version "1.8.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.8.1.tgz#e81ad28a60bee0328c6d2384e029aec626f1ae67"
|
||||
integrity sha512-e+2rjEwK6KDaNOm5Aa9wNGgyS9oSZU/4pfSMMPYNOfjvFI0WVXm29+ITRFr6aKDvvKo7uU1jV68MW4ScsfDi7Q==
|
||||
|
||||
"@types/http-proxy@^1.17.5":
|
||||
version "1.17.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.6.tgz#62dc3fade227d6ac2862c8f19ee0da9da9fd8616"
|
||||
@@ -5229,12 +5242,17 @@ ajv-errors@^1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
|
||||
integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==
|
||||
|
||||
ajv-i18n@^3.4.0:
|
||||
version "3.6.0"
|
||||
resolved "https://registry.yarnpkg.com/ajv-i18n/-/ajv-i18n-3.6.0.tgz#321313ce421b8a656e38e0cd2872393cab0c57ce"
|
||||
integrity sha512-F21DzmzYq9aVtY8CGGtlnQDy3rFMaFW2KRlMuCQp76KiPIkvqN+mpq5MI9EsgC0VFwj+jeLIsvVCvPOa1sobBQ==
|
||||
|
||||
ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2:
|
||||
version "3.5.2"
|
||||
resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
|
||||
integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
|
||||
|
||||
ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5:
|
||||
ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.9.1:
|
||||
version "6.12.6"
|
||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
|
||||
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
|
||||
@@ -5565,21 +5583,16 @@ are-we-there-yet@~1.1.2:
|
||||
delegates "^1.0.0"
|
||||
readable-stream "^2.0.6"
|
||||
|
||||
arg@5.0.0:
|
||||
version "5.0.0"
|
||||
resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.0.tgz#a20e2bb5710e82950a516b3f933fee5ed478be90"
|
||||
integrity sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ==
|
||||
arg@5.0.1, arg@^5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb"
|
||||
integrity sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==
|
||||
|
||||
arg@^4.1.0:
|
||||
version "4.1.3"
|
||||
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
|
||||
integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
|
||||
|
||||
arg@^5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb"
|
||||
integrity sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==
|
||||
|
||||
argparse@^1.0.7:
|
||||
version "1.0.10"
|
||||
resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
|
||||
@@ -6059,6 +6072,14 @@ babel-plugin-polyfill-corejs2@^0.2.2:
|
||||
"@babel/helper-define-polyfill-provider" "^0.2.2"
|
||||
semver "^6.1.1"
|
||||
|
||||
babel-plugin-polyfill-corejs3@0.2.4:
|
||||
version "0.2.4"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.4.tgz#68cb81316b0e8d9d721a92e0009ec6ecd4cd2ca9"
|
||||
integrity sha512-z3HnJE5TY/j4EFEa/qpQMSbcUJZ5JQi+3UFjXzn6pQCmIKc5Ug5j98SuYyH+m4xQnvKlMDIW4plLfgyVnd0IcQ==
|
||||
dependencies:
|
||||
"@babel/helper-define-polyfill-provider" "^0.2.2"
|
||||
core-js-compat "^3.14.0"
|
||||
|
||||
babel-plugin-polyfill-corejs3@^0.1.0:
|
||||
version "0.1.7"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz#80449d9d6f2274912e05d9e182b54816904befd0"
|
||||
@@ -7337,7 +7358,7 @@ concat-stream@^1.5.0:
|
||||
readable-stream "^2.2.2"
|
||||
typedarray "^0.0.6"
|
||||
|
||||
concurrently@6.2.1:
|
||||
concurrently@6.2.1, concurrently@^6.0.0:
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-6.2.1.tgz#d880fc1d77559084732fa514092a3d5109a0d5bf"
|
||||
integrity sha512-emgwhH+ezkuYKSHZQ+AkgEpoUZZlbpPVYCVv7YZx0r+T7fny1H03r2nYRebpi2DudHR4n1Rgbo2YTxKOxVJ4+g==
|
||||
@@ -7412,7 +7433,7 @@ content-disposition@0.5.3:
|
||||
dependencies:
|
||||
safe-buffer "5.1.2"
|
||||
|
||||
content-type@~1.0.4:
|
||||
content-type@^1.0.4, content-type@~1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
|
||||
integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==
|
||||
@@ -7507,6 +7528,11 @@ core-js@3.16.1:
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.16.1.tgz#f4485ce5c9f3c6a7cb18fa80488e08d362097249"
|
||||
integrity sha512-AAkP8i35EbefU+JddyWi12AWE9f2N/qr/pwnDtWz4nyUIBGMJPX99ANFFRSw6FefM374lDujdtLDyhN2A/btHw==
|
||||
|
||||
core-js@3.16.3:
|
||||
version "3.16.3"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.16.3.tgz#1f2d43c51a9ed014cc6c83440af14697ae4b75f2"
|
||||
integrity sha512-lM3GftxzHNtPNUJg0v4pC2RC6puwMd6VZA7vXUczi+SKmCWSf4JwO89VJGMqbzmB7jlK7B5hr3S64PqwFL49cA==
|
||||
|
||||
core-js@3.6.5:
|
||||
version "3.6.5"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a"
|
||||
@@ -7527,6 +7553,14 @@ core-util-is@~1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
|
||||
|
||||
cors@^2.8.5:
|
||||
version "2.8.5"
|
||||
resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"
|
||||
integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==
|
||||
dependencies:
|
||||
object-assign "^4"
|
||||
vary "^1"
|
||||
|
||||
cosmiconfig-toml-loader@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/cosmiconfig-toml-loader/-/cosmiconfig-toml-loader-1.0.0.tgz#0681383651cceff918177debe9084c0d3769509b"
|
||||
@@ -12125,6 +12159,11 @@ json-buffer@3.0.0:
|
||||
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
|
||||
integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
|
||||
|
||||
json-mask@^0.3.8:
|
||||
version "0.3.9"
|
||||
resolved "https://registry.yarnpkg.com/json-mask/-/json-mask-0.3.9.tgz#c3772baa49ceda56ca360a6dd6b479ca3c0e327f"
|
||||
integrity sha512-RRu7bf7vzOohKMrU5pD9+fROMltTegWj2trZlPNr7hXekptFGkOZo4S63Jdx2X1GR7IK6rEVvXkQKY+2TPs0PA==
|
||||
|
||||
json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
|
||||
@@ -13142,6 +13181,25 @@ micromatch@^4.0.2, micromatch@^4.0.4:
|
||||
braces "^3.0.1"
|
||||
picomatch "^2.2.3"
|
||||
|
||||
middy@^0.36.0:
|
||||
version "0.36.0"
|
||||
resolved "https://registry.yarnpkg.com/middy/-/middy-0.36.0.tgz#f5f2e461b2f7260e4aadd0e53ff4c828e9f7e7ba"
|
||||
integrity sha512-IhIVEZQs8mxcvPHfzAQpwINj4R+aVgeCcUL9KS+OYE5Vy4hKhZtVl/1yfI8dSvDAfRBoRp6N/Gi04pxQM4vAzw==
|
||||
dependencies:
|
||||
"@types/aws-lambda" "^8.10.45"
|
||||
"@types/http-errors" "^1.6.3"
|
||||
ajv "^6.9.1"
|
||||
ajv-i18n "^3.4.0"
|
||||
ajv-keywords "^3.4.1"
|
||||
busboy "^0.3.1"
|
||||
content-type "^1.0.4"
|
||||
http-errors "^1.7.3"
|
||||
json-mask "^0.3.8"
|
||||
negotiator "^0.6.1"
|
||||
once "^1.4.0"
|
||||
qs "^6.6.0"
|
||||
querystring "^0.2.0"
|
||||
|
||||
miller-rabin@^4.0.0:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
|
||||
@@ -13375,7 +13433,7 @@ ms@2.1.2:
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
|
||||
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
|
||||
|
||||
ms@2.1.3, ms@^2.1.1, ms@^2.1.3:
|
||||
ms@2.1.3, ms@^2.1.1:
|
||||
version "2.1.3"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
|
||||
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
|
||||
@@ -13445,6 +13503,11 @@ nan@^2.12.1:
|
||||
resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19"
|
||||
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
|
||||
|
||||
nanoid@^3.1.20:
|
||||
version "3.1.25"
|
||||
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.25.tgz#09ca32747c0e543f0e1814b7d3793477f9c8e152"
|
||||
integrity sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==
|
||||
|
||||
nanoid@^3.1.23:
|
||||
version "3.1.23"
|
||||
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz#f744086ce7c2bc47ee0a8472574d5c78e4183a81"
|
||||
@@ -13479,7 +13542,7 @@ natural-compare@^1.4.0:
|
||||
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
|
||||
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
|
||||
|
||||
negotiator@0.6.2:
|
||||
negotiator@0.6.2, negotiator@^0.6.1:
|
||||
version "0.6.2"
|
||||
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
|
||||
integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==
|
||||
@@ -13603,7 +13666,7 @@ nodemailer@^6.6.2:
|
||||
resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-6.6.2.tgz#e184c9ed5bee245a3e0bcabc7255866385757114"
|
||||
integrity sha512-YSzu7TLbI+bsjCis/TZlAXBoM4y93HhlIgo0P5oiA2ua9Z4k+E2Fod//ybIzdJxOlXGRcHIh/WaeCBehvxZb/Q==
|
||||
|
||||
nodemon@2.0.12:
|
||||
nodemon@2.0.12, nodemon@^2.0.7:
|
||||
version "2.0.12"
|
||||
resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.12.tgz#5dae4e162b617b91f1873b3bfea215dd71e144d5"
|
||||
integrity sha512-egCTmNZdObdBxUBw6ZNwvZ/xzk24CKRs5K6d+5zbmrMr7rOpPmfPeF6OxM3DDpaRx331CQRFEktn+wrFFfBSOA==
|
||||
@@ -13715,7 +13778,7 @@ nwsapi@^2.2.0:
|
||||
resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
|
||||
integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
|
||||
|
||||
object-assign@^4.1.0, object-assign@^4.1.1:
|
||||
object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||
@@ -14931,12 +14994,12 @@ prettysize@^2.0.0:
|
||||
resolved "https://registry.yarnpkg.com/prettysize/-/prettysize-2.0.0.tgz#902c02480d865d9cc0813011c9feb4fa02ce6996"
|
||||
integrity sha512-VVtxR7sOh0VsG8o06Ttq5TrI1aiZKmC+ClSn4eBPaNf4SHr5lzbYW+kYGX3HocBL/MfpVrRfFZ9V3vCbLaiplg==
|
||||
|
||||
prisma@2.29.1:
|
||||
version "2.29.1"
|
||||
resolved "https://registry.yarnpkg.com/prisma/-/prisma-2.29.1.tgz#7845f55c7f09955b01f973c6a4b1f330cb212e7d"
|
||||
integrity sha512-fRGh90+z0m3Jw3D6KBE6wyVCRR0w6M6QD93jh+em8IOQycmC48zB8hho8zeri3J9//C0k8fkDeQrRLJUosXROw==
|
||||
prisma@2.30.0:
|
||||
version "2.30.0"
|
||||
resolved "https://registry.yarnpkg.com/prisma/-/prisma-2.30.0.tgz#5b12091c480d538540b898d364b73651d44b4a01"
|
||||
integrity sha512-2XYpSibcVpMd1JDxYypGDU/JKq0W2f/HI1itdddr4Pfg+q6qxt/ItWKcftv4/lqN6u/BVlQ2gDzXVEjpHeO5kQ==
|
||||
dependencies:
|
||||
"@prisma/engines" "2.29.0-34.1be4cd60b89afa04b192acb1ef47758a39810f3a"
|
||||
"@prisma/engines" "2.30.0-28.60b19f4a1de4fe95741da371b4c44a92f4d1adcb"
|
||||
|
||||
prismjs@^1.21.0, prismjs@~1.23.0:
|
||||
version "1.23.0"
|
||||
@@ -15283,7 +15346,7 @@ qs@6.9.3:
|
||||
resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e"
|
||||
integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==
|
||||
|
||||
qs@^6.10.0:
|
||||
qs@^6.10.0, qs@^6.6.0:
|
||||
version "6.10.1"
|
||||
resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a"
|
||||
integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==
|
||||
@@ -16530,6 +16593,11 @@ serve-static@1.14.1:
|
||||
parseurl "~1.3.3"
|
||||
send "0.17.1"
|
||||
|
||||
serverless-binary-cors@^0.0.1:
|
||||
version "0.0.1"
|
||||
resolved "https://registry.yarnpkg.com/serverless-binary-cors/-/serverless-binary-cors-0.0.1.tgz#68ff2da3b7cd59fb9513253d9b3a7fa4c71e2d5f"
|
||||
integrity sha512-i37glxloiUOzeXiUpQVmYISgcHLr7TZbRgVwMLrYzPSoT0VZCPwt9o/HMY8zRJxSb7OynQpy/dUVed+5ADnuxQ==
|
||||
|
||||
set-blocking@^2.0.0, set-blocking@~2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
|
||||
@@ -17464,10 +17532,10 @@ tar-stream@^2.1.2:
|
||||
inherits "^2.0.3"
|
||||
readable-stream "^3.1.1"
|
||||
|
||||
tar@6.1.6:
|
||||
version "6.1.6"
|
||||
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.6.tgz#c23d797b0a1efe5d479b1490805c5443f3560c5d"
|
||||
integrity sha512-oaWyu5dQbHaYcyZCTfyPpC+VmI62/OM2RTUYavTk1MDr1cwW5Boi3baeYQKiZbY2uSQJGr+iMOzb/JFxLrft+g==
|
||||
tar@6.1.8:
|
||||
version "6.1.8"
|
||||
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.8.tgz#4fc50cfe56511c538ce15b71e05eebe66530cbd4"
|
||||
integrity sha512-sb9b0cp855NbkMJcskdSYA7b11Q8JsX4qe4pyUAfHp+Y6jBjJeek2ZVlwEfWayshEIwlIzXx0Fain3QG9JPm2A==
|
||||
dependencies:
|
||||
chownr "^2.0.0"
|
||||
fs-minipass "^2.0.0"
|
||||
@@ -18484,7 +18552,7 @@ value-or-promise@1.0.10:
|
||||
resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.10.tgz#5bf041f1e9a8e7043911875547636768a836e446"
|
||||
integrity sha512-1OwTzvcfXkAfabk60UVr5NdjtjJ0Fg0T5+B1bhxtrOEwSH2fe8y4DnLgoksfCyd8yZCOQQHB0qLMQnwgCjbXLQ==
|
||||
|
||||
vary@~1.1.2:
|
||||
vary@^1, vary@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
|
||||
integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
|
||||
|
||||
Reference in New Issue
Block a user