mirror of
				https://github.com/ItzCrazyKns/Perplexica.git
				synced 2025-10-31 19:38:13 +00:00 
			
		
		
		
	feat(app): add upload functionality
This commit is contained in:
		
							
								
								
									
										41
									
								
								ui/.prettierignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								ui/.prettierignore
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | ||||
| # Ignore all files in the node_modules directory | ||||
| node_modules | ||||
|  | ||||
| # Ignore all files in the .next directory (Next.js build output) | ||||
| .next | ||||
|  | ||||
| # Ignore all files in the .out directory (TypeScript build output) | ||||
| .out | ||||
|  | ||||
| # Ignore all files in the .cache directory (Prettier cache) | ||||
| .cache | ||||
|  | ||||
| # Ignore all files in the .vscode directory (Visual Studio Code settings) | ||||
| .vscode | ||||
|  | ||||
| # Ignore all files in the .idea directory (IntelliJ IDEA settings) | ||||
| .idea | ||||
|  | ||||
| # Ignore all files in the dist directory (build output) | ||||
| dist | ||||
|  | ||||
| # Ignore all files in the build directory (build output) | ||||
| build | ||||
|  | ||||
| # Ignore all files in the coverage directory (test coverage reports) | ||||
| coverage | ||||
|  | ||||
| # Ignore all files with the .log extension | ||||
| *.log | ||||
|  | ||||
| # Ignore all files with the .tmp extension | ||||
| *.tmp | ||||
|  | ||||
| # Ignore all files with the .swp extension | ||||
| *.swp | ||||
|  | ||||
| # Ignore all files with the .DS_Store extension (macOS specific) | ||||
| .DS_Store | ||||
|  | ||||
| # Ignore all files in uploads directory | ||||
| uploads | ||||
							
								
								
									
										134
									
								
								ui/app/api/uploads/route.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										134
									
								
								ui/app/api/uploads/route.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,134 @@ | ||||
| import { NextResponse } from 'next/server'; | ||||
| import fs from 'fs'; | ||||
| import path from 'path'; | ||||
| import crypto from 'crypto'; | ||||
| import { getAvailableEmbeddingModelProviders } from '@/lib/providers'; | ||||
| import { PDFLoader } from '@langchain/community/document_loaders/fs/pdf'; | ||||
| import { DocxLoader } from '@langchain/community/document_loaders/fs/docx'; | ||||
| import { RecursiveCharacterTextSplitter } from '@langchain/textsplitters'; | ||||
| import { Document } from 'langchain/document'; | ||||
|  | ||||
| interface FileRes { | ||||
|   fileName: string; | ||||
|   fileExtension: string; | ||||
|   fileId: string; | ||||
| } | ||||
|  | ||||
| const uploadDir = path.join(process.cwd(), 'uploads'); | ||||
|  | ||||
| if (!fs.existsSync(uploadDir)) { | ||||
|   fs.mkdirSync(uploadDir, { recursive: true }); | ||||
| } | ||||
|  | ||||
| const splitter = new RecursiveCharacterTextSplitter({ | ||||
|   chunkSize: 500, | ||||
|   chunkOverlap: 100, | ||||
| }); | ||||
|  | ||||
| export async function POST(req: Request) { | ||||
|   try { | ||||
|     const formData = await req.formData(); | ||||
|  | ||||
|     const files = formData.getAll('files') as File[]; | ||||
|     const embedding_model = formData.get('embedding_model'); | ||||
|     const embedding_model_provider = formData.get('embedding_model_provider'); | ||||
|  | ||||
|     if (!embedding_model || !embedding_model_provider) { | ||||
|       return NextResponse.json( | ||||
|         { message: 'Missing embedding model or provider' }, | ||||
|         { status: 400 }, | ||||
|       ); | ||||
|     } | ||||
|  | ||||
|     const embeddingModels = await getAvailableEmbeddingModelProviders(); | ||||
|     const provider = | ||||
|       embedding_model_provider ?? Object.keys(embeddingModels)[0]; | ||||
|     const embeddingModel = | ||||
|       embedding_model ?? Object.keys(embeddingModels[provider as string])[0]; | ||||
|  | ||||
|     let embeddingsModel = | ||||
|       embeddingModels[provider as string]?.[embeddingModel as string]?.model; | ||||
|     if (!embeddingsModel) { | ||||
|       return NextResponse.json( | ||||
|         { message: 'Invalid embedding model selected' }, | ||||
|         { status: 400 }, | ||||
|       ); | ||||
|     } | ||||
|  | ||||
|     const processedFiles: FileRes[] = []; | ||||
|  | ||||
|     await Promise.all( | ||||
|       files.map(async (file: any) => { | ||||
|         const fileExtension = file.name.split('.').pop(); | ||||
|         if (!['pdf', 'docx', 'txt'].includes(fileExtension!)) { | ||||
|           return NextResponse.json( | ||||
|             { message: 'File type not supported' }, | ||||
|             { status: 400 }, | ||||
|           ); | ||||
|         } | ||||
|  | ||||
|         const uniqueFileName = `${crypto.randomBytes(16).toString('hex')}.${fileExtension}`; | ||||
|         const filePath = path.join(uploadDir, uniqueFileName); | ||||
|  | ||||
|         const buffer = Buffer.from(await file.arrayBuffer()); | ||||
|         fs.writeFileSync(filePath, new Uint8Array(buffer)); | ||||
|  | ||||
|         let docs: any[] = []; | ||||
|         if (fileExtension === 'pdf') { | ||||
|           const loader = new PDFLoader(filePath); | ||||
|           docs = await loader.load(); | ||||
|         } else if (fileExtension === 'docx') { | ||||
|           const loader = new DocxLoader(filePath); | ||||
|           docs = await loader.load(); | ||||
|         } else if (fileExtension === 'txt') { | ||||
|           const text = fs.readFileSync(filePath, 'utf-8'); | ||||
|           docs = [ | ||||
|             new Document({ pageContent: text, metadata: { title: file.name } }), | ||||
|           ]; | ||||
|         } | ||||
|  | ||||
|         const splitted = await splitter.splitDocuments(docs); | ||||
|  | ||||
|         const extractedDataPath = filePath.replace(/\.\w+$/, '-extracted.json'); | ||||
|         fs.writeFileSync( | ||||
|           extractedDataPath, | ||||
|           JSON.stringify({ | ||||
|             title: file.name, | ||||
|             contents: splitted.map((doc) => doc.pageContent), | ||||
|           }), | ||||
|         ); | ||||
|  | ||||
|         const embeddings = await embeddingsModel.embedDocuments( | ||||
|           splitted.map((doc) => doc.pageContent), | ||||
|         ); | ||||
|         const embeddingsDataPath = filePath.replace( | ||||
|           /\.\w+$/, | ||||
|           '-embeddings.json', | ||||
|         ); | ||||
|         fs.writeFileSync( | ||||
|           embeddingsDataPath, | ||||
|           JSON.stringify({ | ||||
|             title: file.name, | ||||
|             embeddings, | ||||
|           }), | ||||
|         ); | ||||
|  | ||||
|         processedFiles.push({ | ||||
|           fileName: file.name, | ||||
|           fileExtension: fileExtension, | ||||
|           fileId: uniqueFileName.replace(/\.\w+$/, ''), | ||||
|         }); | ||||
|       }), | ||||
|     ); | ||||
|  | ||||
|     return NextResponse.json({ | ||||
|       files: processedFiles, | ||||
|     }); | ||||
|   } catch (error) { | ||||
|     console.error('Error uploading file:', error); | ||||
|     return NextResponse.json( | ||||
|       { message: 'An error has occurred.' }, | ||||
|       { status: 500 }, | ||||
|     ); | ||||
|   } | ||||
| } | ||||
| @@ -41,7 +41,7 @@ const Attach = ({ | ||||
|     data.append('embedding_model_provider', embeddingModelProvider!); | ||||
|     data.append('embedding_model', embeddingModel!); | ||||
|  | ||||
|     const res = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/uploads`, { | ||||
|     const res = await fetch(`/api/uploads`, { | ||||
|       method: 'POST', | ||||
|       body: data, | ||||
|     }); | ||||
|   | ||||
| @@ -39,7 +39,7 @@ const AttachSmall = ({ | ||||
|     data.append('embedding_model_provider', embeddingModelProvider!); | ||||
|     data.append('embedding_model', embeddingModel!); | ||||
|  | ||||
|     const res = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/uploads`, { | ||||
|     const res = await fetch(`/api/uploads`, { | ||||
|       method: 'POST', | ||||
|       body: data, | ||||
|     }); | ||||
|   | ||||
| @@ -15,7 +15,10 @@ | ||||
|     "@headlessui/react": "^2.2.0", | ||||
|     "@iarna/toml": "^2.2.5", | ||||
|     "@icons-pack/react-simple-icons": "^12.3.0", | ||||
|     "@langchain/community": "^0.3.36", | ||||
|     "@langchain/core": "^0.3.42", | ||||
|     "@langchain/openai": "^0.0.25", | ||||
|     "@langchain/textsplitters": "^0.1.0", | ||||
|     "@tailwindcss/typography": "^0.5.12", | ||||
|     "axios": "^1.8.3", | ||||
|     "better-sqlite3": "^11.9.1", | ||||
|   | ||||
							
								
								
									
										2
									
								
								ui/uploads/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ui/uploads/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| * | ||||
| !.gitignore | ||||
							
								
								
									
										321
									
								
								ui/yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										321
									
								
								ui/yarn.lock
									
									
									
									
									
								
							| @@ -34,6 +34,11 @@ | ||||
|   dependencies: | ||||
|     regenerator-runtime "^0.14.0" | ||||
|  | ||||
| "@cfworker/json-schema@^4.0.2": | ||||
|   version "4.1.1" | ||||
|   resolved "https://registry.yarnpkg.com/@cfworker/json-schema/-/json-schema-4.1.1.tgz#4a2a3947ee9fa7b7c24be981422831b8674c3be6" | ||||
|   integrity sha512-gAmrUZSGtKc3AiBL71iNWxDsyUC5uMaKKGdvzYsBoTW/xi42JQHl7eKV2OYzCUqvc+D2RCcf7EXY2iCyFIk6og== | ||||
|  | ||||
| "@colors/colors@1.6.0", "@colors/colors@^1.6.0": | ||||
|   version "1.6.0" | ||||
|   resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.6.0.tgz#ec6cd237440700bc23ca23087f513c75508958b0" | ||||
| @@ -565,6 +570,22 @@ | ||||
|     "@jridgewell/resolve-uri" "^3.1.0" | ||||
|     "@jridgewell/sourcemap-codec" "^1.4.14" | ||||
|  | ||||
| "@langchain/community@^0.3.36": | ||||
|   version "0.3.36" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/community/-/community-0.3.36.tgz#e4c13b8f928b17e0f9257395f43be2246dfada40" | ||||
|   integrity sha512-4jBB4yqux8CGfCwlBbtXck5qP0yJPwDvtwI4KUN2j/At+zSZn1FyTL11G75ctG2b5GO7u+cR6QatDXIPooJphA== | ||||
|   dependencies: | ||||
|     "@langchain/openai" ">=0.2.0 <0.5.0" | ||||
|     binary-extensions "^2.2.0" | ||||
|     expr-eval "^2.0.2" | ||||
|     flat "^5.0.2" | ||||
|     js-yaml "^4.1.0" | ||||
|     langchain ">=0.2.3 <0.3.0 || >=0.3.4 <0.4.0" | ||||
|     langsmith ">=0.2.8 <0.4.0" | ||||
|     uuid "^10.0.0" | ||||
|     zod "^3.22.3" | ||||
|     zod-to-json-schema "^3.22.5" | ||||
|  | ||||
| "@langchain/community@~0.0.41": | ||||
|   version "0.0.44" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/community/-/community-0.0.44.tgz#b4f3453e3fd0b7a8c704fc35b004d7d738bd3416" | ||||
| @@ -579,6 +600,24 @@ | ||||
|     zod "^3.22.3" | ||||
|     zod-to-json-schema "^3.22.5" | ||||
|  | ||||
| "@langchain/core@^0.3.42": | ||||
|   version "0.3.42" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/core/-/core-0.3.42.tgz#f1fa38425626d8efe9fe2ee51d36c91506632363" | ||||
|   integrity sha512-pT/jC5lqWK3YGDq8dQwgKoa6anqAhMtG1x5JbnrOj9NdaLeBbCKBDQ+/Ykzk3nZ8o+0UMsaXNZo7IVL83VVjHg== | ||||
|   dependencies: | ||||
|     "@cfworker/json-schema" "^4.0.2" | ||||
|     ansi-styles "^5.0.0" | ||||
|     camelcase "6" | ||||
|     decamelize "1.2.0" | ||||
|     js-tiktoken "^1.0.12" | ||||
|     langsmith ">=0.2.8 <0.4.0" | ||||
|     mustache "^4.2.0" | ||||
|     p-queue "^6.6.2" | ||||
|     p-retry "4" | ||||
|     uuid "^10.0.0" | ||||
|     zod "^3.22.4" | ||||
|     zod-to-json-schema "^3.22.3" | ||||
|  | ||||
| "@langchain/core@~0.1.44", "@langchain/core@~0.1.45": | ||||
|   version "0.1.54" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/core/-/core-0.1.54.tgz#63dfbd5c116798f6d080fbe675a68a87d84a1be4" | ||||
| @@ -596,6 +635,16 @@ | ||||
|     zod "^3.22.4" | ||||
|     zod-to-json-schema "^3.22.3" | ||||
|  | ||||
| "@langchain/openai@>=0.1.0 <0.5.0", "@langchain/openai@>=0.2.0 <0.5.0": | ||||
|   version "0.4.5" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/openai/-/openai-0.4.5.tgz#d18e207c3ec3f2ecaa4698a5a5888092f643da52" | ||||
|   integrity sha512-S/sqC71GVsCDiFGU0A0VQDFGNrjcuz72FxlfuSxwOuo955qad/0Yp0hRhWJilPOjgDByGwaeZkOaxC/oE9ABdQ== | ||||
|   dependencies: | ||||
|     js-tiktoken "^1.0.12" | ||||
|     openai "^4.87.3" | ||||
|     zod "^3.22.4" | ||||
|     zod-to-json-schema "^3.22.3" | ||||
|  | ||||
| "@langchain/openai@^0.0.25": | ||||
|   version "0.0.25" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/openai/-/openai-0.0.25.tgz#8332abea1e3acb9b1169f90636e518c0ee90622e" | ||||
| @@ -618,6 +667,13 @@ | ||||
|     zod "^3.22.4" | ||||
|     zod-to-json-schema "^3.22.3" | ||||
|  | ||||
| "@langchain/textsplitters@>=0.0.0 <0.2.0", "@langchain/textsplitters@^0.1.0": | ||||
|   version "0.1.0" | ||||
|   resolved "https://registry.yarnpkg.com/@langchain/textsplitters/-/textsplitters-0.1.0.tgz#f37620992192df09ecda3dfbd545b36a6bcbae46" | ||||
|   integrity sha512-djI4uw9rlkAb5iMhtLED+xJebDdAG935AdP4eRTB02R7OB/act55Bj9wsskhZsvuyQRpO4O1wQOp85s6T6GWmw== | ||||
|   dependencies: | ||||
|     js-tiktoken "^1.0.12" | ||||
|  | ||||
| "@next/env@15.2.2": | ||||
|   version "15.2.2" | ||||
|   resolved "https://registry.yarnpkg.com/@next/env/-/env-15.2.2.tgz#6345352365a811c523cecf284874ff489b675e59" | ||||
| @@ -806,16 +862,68 @@ | ||||
|   dependencies: | ||||
|     "@types/node" "*" | ||||
|  | ||||
| "@types/body-parser@*": | ||||
|   version "1.19.5" | ||||
|   resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.5.tgz#04ce9a3b677dc8bd681a17da1ab9835dc9d3ede4" | ||||
|   integrity sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg== | ||||
|   dependencies: | ||||
|     "@types/connect" "*" | ||||
|     "@types/node" "*" | ||||
|  | ||||
| "@types/connect@*": | ||||
|   version "3.4.38" | ||||
|   resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" | ||||
|   integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== | ||||
|   dependencies: | ||||
|     "@types/node" "*" | ||||
|  | ||||
| "@types/express-serve-static-core@^5.0.0": | ||||
|   version "5.0.6" | ||||
|   resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz#41fec4ea20e9c7b22f024ab88a95c6bb288f51b8" | ||||
|   integrity sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA== | ||||
|   dependencies: | ||||
|     "@types/node" "*" | ||||
|     "@types/qs" "*" | ||||
|     "@types/range-parser" "*" | ||||
|     "@types/send" "*" | ||||
|  | ||||
| "@types/express@*": | ||||
|   version "5.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.0.tgz#13a7d1f75295e90d19ed6e74cab3678488eaa96c" | ||||
|   integrity sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ== | ||||
|   dependencies: | ||||
|     "@types/body-parser" "*" | ||||
|     "@types/express-serve-static-core" "^5.0.0" | ||||
|     "@types/qs" "*" | ||||
|     "@types/serve-static" "*" | ||||
|  | ||||
| "@types/html-to-text@^9.0.4": | ||||
|   version "9.0.4" | ||||
|   resolved "https://registry.yarnpkg.com/@types/html-to-text/-/html-to-text-9.0.4.tgz#4a83dd8ae8bfa91457d0b1ffc26f4d0537eff58c" | ||||
|   integrity sha512-pUY3cKH/Nm2yYrEmDlPR1mR7yszjGx4DrwPjQ702C4/D5CwHuZTgZdIdwPkRbcuhs7BAh2L5rg3CL5cbRiGTCQ== | ||||
|  | ||||
| "@types/http-errors@*": | ||||
|   version "2.0.4" | ||||
|   resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.4.tgz#7eb47726c391b7345a6ec35ad7f4de469cf5ba4f" | ||||
|   integrity sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA== | ||||
|  | ||||
| "@types/json5@^0.0.29": | ||||
|   version "0.0.29" | ||||
|   resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" | ||||
|   integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== | ||||
|  | ||||
| "@types/mime@^1": | ||||
|   version "1.3.5" | ||||
|   resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690" | ||||
|   integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w== | ||||
|  | ||||
| "@types/multer@^1.4.12": | ||||
|   version "1.4.12" | ||||
|   resolved "https://registry.yarnpkg.com/@types/multer/-/multer-1.4.12.tgz#da67bd0c809f3a63fe097c458c0d4af1fea50ab7" | ||||
|   integrity sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg== | ||||
|   dependencies: | ||||
|     "@types/express" "*" | ||||
|  | ||||
| "@types/node-fetch@^2.6.4": | ||||
|   version "2.6.11" | ||||
|   resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.11.tgz#9b39b78665dae0e82a08f02f4967d62c66f95d24" | ||||
| @@ -848,6 +956,16 @@ | ||||
|   resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.12.tgz#12bb1e2be27293c1406acb6af1c3f3a1481d98c6" | ||||
|   integrity sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q== | ||||
|  | ||||
| "@types/qs@*": | ||||
|   version "6.9.18" | ||||
|   resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.18.tgz#877292caa91f7c1b213032b34626505b746624c2" | ||||
|   integrity sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA== | ||||
|  | ||||
| "@types/range-parser@*": | ||||
|   version "1.2.7" | ||||
|   resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" | ||||
|   integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== | ||||
|  | ||||
| "@types/react-dom@^18": | ||||
|   version "18.2.24" | ||||
|   resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.24.tgz#8dda8f449ae436a7a6e91efed8035d4ab03ff759" | ||||
| @@ -868,11 +986,33 @@ | ||||
|   resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" | ||||
|   integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== | ||||
|  | ||||
| "@types/send@*": | ||||
|   version "0.17.4" | ||||
|   resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.4.tgz#6619cd24e7270793702e4e6a4b958a9010cfc57a" | ||||
|   integrity sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA== | ||||
|   dependencies: | ||||
|     "@types/mime" "^1" | ||||
|     "@types/node" "*" | ||||
|  | ||||
| "@types/serve-static@*": | ||||
|   version "1.15.7" | ||||
|   resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.7.tgz#22174bbd74fb97fe303109738e9b5c2f3064f714" | ||||
|   integrity sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw== | ||||
|   dependencies: | ||||
|     "@types/http-errors" "*" | ||||
|     "@types/node" "*" | ||||
|     "@types/send" "*" | ||||
|  | ||||
| "@types/triple-beam@^1.3.2": | ||||
|   version "1.3.5" | ||||
|   resolved "https://registry.yarnpkg.com/@types/triple-beam/-/triple-beam-1.3.5.tgz#74fef9ffbaa198eb8b588be029f38b00299caa2c" | ||||
|   integrity sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw== | ||||
|  | ||||
| "@types/uuid@^10.0.0": | ||||
|   version "10.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-10.0.0.tgz#e9c07fe50da0f53dc24970cca94d619ff03f6f6d" | ||||
|   integrity sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ== | ||||
|  | ||||
| "@types/uuid@^9.0.1": | ||||
|   version "9.0.8" | ||||
|   resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.8.tgz#7545ba4fc3c003d6c756f651f3bf163d8f0f29ba" | ||||
| @@ -1003,6 +1143,11 @@ anymatch@~3.1.2: | ||||
|     normalize-path "^3.0.0" | ||||
|     picomatch "^2.0.4" | ||||
|  | ||||
| append-field@^1.0.0: | ||||
|   version "1.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/append-field/-/append-field-1.0.0.tgz#1e3440e915f0b1203d23748e78edd7b9b5b43e56" | ||||
|   integrity sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw== | ||||
|  | ||||
| arg@^5.0.2: | ||||
|   version "5.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" | ||||
| @@ -1273,7 +1418,7 @@ buffer@^5.5.0: | ||||
|     base64-js "^1.3.1" | ||||
|     ieee754 "^1.1.13" | ||||
|  | ||||
| busboy@1.6.0: | ||||
| busboy@1.6.0, busboy@^1.0.0: | ||||
|   version "1.6.0" | ||||
|   resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" | ||||
|   integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== | ||||
| @@ -1316,7 +1461,7 @@ caniuse-lite@^1.0.30001587, caniuse-lite@^1.0.30001599: | ||||
|   resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001606.tgz#b4d5f67ab0746a3b8b5b6d1f06e39c51beb39a9e" | ||||
|   integrity sha512-LPbwnW4vfpJId225pwjZJOgX1m9sGfbw/RKJvw/t0QhYOOaTXHvkjVGFGPpvwEzufrjvTlsULnVTxdy4/6cqkg== | ||||
|  | ||||
| chalk@^4.0.0: | ||||
| chalk@^4.0.0, chalk@^4.1.2: | ||||
|   version "4.1.2" | ||||
|   resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" | ||||
|   integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== | ||||
| @@ -1468,6 +1613,28 @@ concat-map@0.0.1: | ||||
|   resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" | ||||
|   integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== | ||||
|  | ||||
| concat-stream@^1.5.2: | ||||
|   version "1.6.2" | ||||
|   resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" | ||||
|   integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== | ||||
|   dependencies: | ||||
|     buffer-from "^1.0.0" | ||||
|     inherits "^2.0.3" | ||||
|     readable-stream "^2.2.2" | ||||
|     typedarray "^0.0.6" | ||||
|  | ||||
| console-table-printer@^2.12.1: | ||||
|   version "2.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/console-table-printer/-/console-table-printer-2.12.1.tgz#4a9646537a246a6d8de57075d4fae1e08abae267" | ||||
|   integrity sha512-wKGOQRRvdnd89pCeH96e2Fn4wkbenSP6LMHfjfyNLMbGuHEFbMqQNuxXqd0oXG9caIOQ1FTvc5Uijp9/4jujnQ== | ||||
|   dependencies: | ||||
|     simple-wcswidth "^1.0.1" | ||||
|  | ||||
| core-util-is@~1.0.0: | ||||
|   version "1.0.3" | ||||
|   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" | ||||
|   integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== | ||||
|  | ||||
| cross-spawn@^7.0.0, cross-spawn@^7.0.2: | ||||
|   version "7.0.3" | ||||
|   resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" | ||||
| @@ -2564,7 +2731,7 @@ inflight@^1.0.4: | ||||
|     once "^1.3.0" | ||||
|     wrappy "1" | ||||
|  | ||||
| inherits@2, inherits@^2.0.3, inherits@^2.0.4: | ||||
| inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: | ||||
|   version "2.0.4" | ||||
|   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" | ||||
|   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== | ||||
| @@ -2790,6 +2957,11 @@ isarray@^2.0.5: | ||||
|   resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" | ||||
|   integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== | ||||
|  | ||||
| isarray@~1.0.0: | ||||
|   version "1.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" | ||||
|   integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== | ||||
|  | ||||
| isexe@^2.0.0: | ||||
|   version "2.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" | ||||
| @@ -2825,6 +2997,13 @@ jiti@^1.21.0: | ||||
|   resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" | ||||
|   integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== | ||||
|  | ||||
| js-tiktoken@^1.0.12: | ||||
|   version "1.0.19" | ||||
|   resolved "https://registry.yarnpkg.com/js-tiktoken/-/js-tiktoken-1.0.19.tgz#0298b584382f1d47d4b45cb93d382f11780eab78" | ||||
|   integrity sha512-XC63YQeEcS47Y53gg950xiZ4IWmkfMe4p2V9OSaBt26q+p47WHn18izuXzSclCI73B7yGqtfRsT6jcZQI0y08g== | ||||
|   dependencies: | ||||
|     base64-js "^1.5.1" | ||||
|  | ||||
| js-tiktoken@^1.0.7, js-tiktoken@^1.0.8: | ||||
|   version "1.0.10" | ||||
|   resolved "https://registry.yarnpkg.com/js-tiktoken/-/js-tiktoken-1.0.10.tgz#2b343ec169399dcee8f9ef9807dbd4fafd3b30dc" | ||||
| @@ -2893,6 +3072,24 @@ kuler@^2.0.0: | ||||
|   resolved "https://registry.yarnpkg.com/kuler/-/kuler-2.0.0.tgz#e2c570a3800388fb44407e851531c1d670b061b3" | ||||
|   integrity sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A== | ||||
|  | ||||
| "langchain@>=0.2.3 <0.3.0 || >=0.3.4 <0.4.0": | ||||
|   version "0.3.19" | ||||
|   resolved "https://registry.yarnpkg.com/langchain/-/langchain-0.3.19.tgz#a0329036c4c870018897b91af2ac442c1f07294b" | ||||
|   integrity sha512-aGhoTvTBS5ulatA67RHbJ4bcV5zcYRYdm5IH+hpX99RYSFXG24XF3ghSjhYi6sxW+SUnEQ99fJhA5kroVpKNhw== | ||||
|   dependencies: | ||||
|     "@langchain/openai" ">=0.1.0 <0.5.0" | ||||
|     "@langchain/textsplitters" ">=0.0.0 <0.2.0" | ||||
|     js-tiktoken "^1.0.12" | ||||
|     js-yaml "^4.1.0" | ||||
|     jsonpointer "^5.0.1" | ||||
|     langsmith ">=0.2.8 <0.4.0" | ||||
|     openapi-types "^12.1.3" | ||||
|     p-retry "4" | ||||
|     uuid "^10.0.0" | ||||
|     yaml "^2.2.1" | ||||
|     zod "^3.22.4" | ||||
|     zod-to-json-schema "^3.22.3" | ||||
|  | ||||
| langchain@^0.1.30: | ||||
|   version "0.1.31" | ||||
|   resolved "https://registry.yarnpkg.com/langchain/-/langchain-0.1.31.tgz#4f3a0e84a00d77214b325156e661762f945f33ae" | ||||
| @@ -2921,6 +3118,19 @@ langchainhub@~0.0.8: | ||||
|   resolved "https://registry.yarnpkg.com/langchainhub/-/langchainhub-0.0.8.tgz#fd4b96dc795e22e36c1a20bad31b61b0c33d3110" | ||||
|   integrity sha512-Woyb8YDHgqqTOZvWIbm2CaFDGfZ4NTSyXV687AG4vXEfoNo7cGQp7nhl7wL3ehenKWmNEmcxCLgOZzW8jE6lOQ== | ||||
|  | ||||
| "langsmith@>=0.2.8 <0.4.0": | ||||
|   version "0.3.14" | ||||
|   resolved "https://registry.yarnpkg.com/langsmith/-/langsmith-0.3.14.tgz#4dfde17d77f8d80c69c28fb647dbe310c2352e6f" | ||||
|   integrity sha512-MzoxdRkFFV/6140vpP5V2e2fkTG6x/0zIjw77bsRwAXEMjPRTUyDazfXeSyrS5uJvbLgxAXc+MF1h6vPWe6SXQ== | ||||
|   dependencies: | ||||
|     "@types/uuid" "^10.0.0" | ||||
|     chalk "^4.1.2" | ||||
|     console-table-printer "^2.12.1" | ||||
|     p-queue "^6.6.2" | ||||
|     p-retry "4" | ||||
|     semver "^7.6.3" | ||||
|     uuid "^10.0.0" | ||||
|  | ||||
| langsmith@~0.1.1, langsmith@~0.1.7: | ||||
|   version "0.1.14" | ||||
|   resolved "https://registry.yarnpkg.com/langsmith/-/langsmith-0.1.14.tgz#2b889dbcfb49547614df276a4a5a063092a1585d" | ||||
| @@ -3044,6 +3254,11 @@ md5@^2.3.0: | ||||
|     crypt "0.0.2" | ||||
|     is-buffer "~1.1.6" | ||||
|  | ||||
| media-typer@0.3.0: | ||||
|   version "0.3.0" | ||||
|   resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" | ||||
|   integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== | ||||
|  | ||||
| merge2@^1.3.0, merge2@^1.4.1: | ||||
|   version "1.4.1" | ||||
|   resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" | ||||
| @@ -3062,7 +3277,7 @@ mime-db@1.52.0: | ||||
|   resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" | ||||
|   integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== | ||||
|  | ||||
| mime-types@^2.1.12: | ||||
| mime-types@^2.1.12, mime-types@~2.1.24: | ||||
|   version "2.1.35" | ||||
|   resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" | ||||
|   integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== | ||||
| @@ -3110,6 +3325,13 @@ mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: | ||||
|   resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" | ||||
|   integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== | ||||
|  | ||||
| mkdirp@^0.5.4: | ||||
|   version "0.5.6" | ||||
|   resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" | ||||
|   integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== | ||||
|   dependencies: | ||||
|     minimist "^1.2.6" | ||||
|  | ||||
| ml-array-mean@^1.1.6: | ||||
|   version "1.1.6" | ||||
|   resolved "https://registry.yarnpkg.com/ml-array-mean/-/ml-array-mean-1.1.6.tgz#d951a700dc8e3a17b3e0a583c2c64abd0c619c56" | ||||
| @@ -3156,6 +3378,24 @@ ms@^2.0.0, ms@^2.1.1: | ||||
|   resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" | ||||
|   integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== | ||||
|  | ||||
| multer@^1.4.5-lts.1: | ||||
|   version "1.4.5-lts.1" | ||||
|   resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.5-lts.1.tgz#803e24ad1984f58edffbc79f56e305aec5cfd1ac" | ||||
|   integrity sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ== | ||||
|   dependencies: | ||||
|     append-field "^1.0.0" | ||||
|     busboy "^1.0.0" | ||||
|     concat-stream "^1.5.2" | ||||
|     mkdirp "^0.5.4" | ||||
|     object-assign "^4.1.1" | ||||
|     type-is "^1.6.4" | ||||
|     xtend "^4.0.0" | ||||
|  | ||||
| mustache@^4.2.0: | ||||
|   version "4.2.0" | ||||
|   resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" | ||||
|   integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== | ||||
|  | ||||
| mz@^2.7.0: | ||||
|   version "2.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" | ||||
| @@ -3361,6 +3601,19 @@ openai@^4.26.0, openai@^4.32.1: | ||||
|     node-fetch "^2.6.7" | ||||
|     web-streams-polyfill "^3.2.1" | ||||
|  | ||||
| openai@^4.87.3: | ||||
|   version "4.87.4" | ||||
|   resolved "https://registry.yarnpkg.com/openai/-/openai-4.87.4.tgz#f9d8da366a1ded2c7aa92cb9f2256755d0e58902" | ||||
|   integrity sha512-lsfM20jZY4A0lNexfoUAkfmrEXxaTXvv8OKYicpeAJUNHObpRgkvC7pxPgMnB6gc9ID8OCwzzhEhBpNy69UR7w== | ||||
|   dependencies: | ||||
|     "@types/node" "^18.11.18" | ||||
|     "@types/node-fetch" "^2.6.4" | ||||
|     abort-controller "^3.0.0" | ||||
|     agentkeepalive "^4.2.1" | ||||
|     form-data-encoder "1.7.2" | ||||
|     formdata-node "^4.3.2" | ||||
|     node-fetch "^2.6.7" | ||||
|  | ||||
| openapi-types@^12.1.3: | ||||
|   version "12.1.3" | ||||
|   resolved "https://registry.yarnpkg.com/openapi-types/-/openapi-types-12.1.3.tgz#471995eb26c4b97b7bd356aacf7b91b73e777dd3" | ||||
| @@ -3604,6 +3857,11 @@ prettier@^3.2.5: | ||||
|   resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368" | ||||
|   integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A== | ||||
|  | ||||
| process-nextick-args@~2.0.0: | ||||
|   version "2.0.1" | ||||
|   resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" | ||||
|   integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== | ||||
|  | ||||
| prop-types@^15.8.1: | ||||
|   version "15.8.1" | ||||
|   resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" | ||||
| @@ -3687,6 +3945,19 @@ read-cache@^1.0.0: | ||||
|   dependencies: | ||||
|     pify "^2.3.0" | ||||
|  | ||||
| readable-stream@^2.2.2: | ||||
|   version "2.3.8" | ||||
|   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" | ||||
|   integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== | ||||
|   dependencies: | ||||
|     core-util-is "~1.0.0" | ||||
|     inherits "~2.0.3" | ||||
|     isarray "~1.0.0" | ||||
|     process-nextick-args "~2.0.0" | ||||
|     safe-buffer "~5.1.1" | ||||
|     string_decoder "~1.1.1" | ||||
|     util-deprecate "~1.0.1" | ||||
|  | ||||
| readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.2: | ||||
|   version "3.6.2" | ||||
|   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" | ||||
| @@ -3798,6 +4069,11 @@ safe-buffer@^5.0.1, safe-buffer@~5.2.0: | ||||
|   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" | ||||
|   integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== | ||||
|  | ||||
| safe-buffer@~5.1.0, safe-buffer@~5.1.1: | ||||
|   version "5.1.2" | ||||
|   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" | ||||
|   integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== | ||||
|  | ||||
| safe-regex-test@^1.0.3: | ||||
|   version "1.0.3" | ||||
|   resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" | ||||
| @@ -3947,6 +4223,11 @@ simple-swizzle@^0.2.2: | ||||
|   dependencies: | ||||
|     is-arrayish "^0.3.1" | ||||
|  | ||||
| simple-wcswidth@^1.0.1: | ||||
|   version "1.0.1" | ||||
|   resolved "https://registry.yarnpkg.com/simple-wcswidth/-/simple-wcswidth-1.0.1.tgz#8ab18ac0ae342f9d9b629604e54d2aa1ecb018b2" | ||||
|   integrity sha512-xMO/8eNREtaROt7tJvWJqHBDTMFN4eiQ5I4JRMuilwfnFcV5W9u7RUkueNkdw0jPqGMX36iCywelS5yilTuOxg== | ||||
|  | ||||
| slash@^3.0.0: | ||||
|   version "3.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" | ||||
| @@ -4070,6 +4351,13 @@ string_decoder@^1.1.1: | ||||
|   dependencies: | ||||
|     safe-buffer "~5.2.0" | ||||
|  | ||||
| string_decoder@~1.1.1: | ||||
|   version "1.1.1" | ||||
|   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" | ||||
|   integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== | ||||
|   dependencies: | ||||
|     safe-buffer "~5.1.0" | ||||
|  | ||||
| "strip-ansi-cjs@npm:strip-ansi@^6.0.1": | ||||
|   version "6.0.1" | ||||
|   resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" | ||||
| @@ -4289,6 +4577,14 @@ type-fest@^0.20.2: | ||||
|   resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" | ||||
|   integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== | ||||
|  | ||||
| type-is@^1.6.4: | ||||
|   version "1.6.18" | ||||
|   resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" | ||||
|   integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== | ||||
|   dependencies: | ||||
|     media-typer "0.3.0" | ||||
|     mime-types "~2.1.24" | ||||
|  | ||||
| typed-array-buffer@^1.0.2: | ||||
|   version "1.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" | ||||
| @@ -4333,6 +4629,11 @@ typed-array-length@^1.0.6: | ||||
|     is-typed-array "^1.1.13" | ||||
|     possible-typed-array-names "^1.0.0" | ||||
|  | ||||
| typedarray@^0.0.6: | ||||
|   version "0.0.6" | ||||
|   resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" | ||||
|   integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== | ||||
|  | ||||
| typescript@^5: | ||||
|   version "5.4.4" | ||||
|   resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.4.tgz#eb2471e7b0a5f1377523700a21669dce30c2d952" | ||||
| @@ -4385,11 +4686,16 @@ use-latest@^1.2.1: | ||||
|   dependencies: | ||||
|     use-isomorphic-layout-effect "^1.1.1" | ||||
|  | ||||
| util-deprecate@^1.0.1, util-deprecate@^1.0.2: | ||||
| util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: | ||||
|   version "1.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" | ||||
|   integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== | ||||
|  | ||||
| uuid@^10.0.0: | ||||
|   version "10.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" | ||||
|   integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== | ||||
|  | ||||
| uuid@^9.0.0: | ||||
|   version "9.0.1" | ||||
|   resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" | ||||
| @@ -4541,6 +4847,11 @@ wrappy@1: | ||||
|   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" | ||||
|   integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== | ||||
|  | ||||
| xtend@^4.0.0: | ||||
|   version "4.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" | ||||
|   integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== | ||||
|  | ||||
| yallist@^4.0.0: | ||||
|   version "4.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user