├── .env.example ├── .gitignore ├── Dockerfile ├── README.md ├── app.js ├── package.json ├── plugin ├── employee.rol.js ├── openai.class.js ├── plugin.employees.js ├── prompt.js └── util.js ├── pnpm-lock.yaml ├── services ├── convert.js ├── eventlab.js └── whisper.js ├── tmp └── .gitkeep └── utils.js /.env.example: -------------------------------------------------------------------------------- 1 | EVENT_TOKEN= 2 | OPENAI_API_KEY= -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *_sessions 3 | .env 4 | *.log 5 | *.png 6 | tmp/* 7 | !tmp/.gitkeep -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:18-bullseye as bot 2 | WORKDIR /app 3 | COPY package*.json ./ 4 | RUN npm i 5 | COPY . . 6 | ARG RAILWAY_STATIC_URL 7 | ARG PUBLIC_URL 8 | ARG PORT 9 | CMD ["npm", "start"] 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ### CHATBOT Whatsapp (Baileys Provider) 2 | 3 | [Version de VENDEDORES gpt 3.5](https://github.com/leifermendez/bot-ws-openai/tree/35441dbf99c86ce4e1be0686f5c46aa050d0cab6) 4 |

5 | 6 |

7 | 8 | 9 | **Con esta librería, puedes construir flujos automatizados de conversación de manera agnóstica al proveedor de WhatsApp,** configurar respuestas automatizadas para preguntas frecuentes, recibir y responder mensajes de manera automatizada, y hacer un seguimiento de las interacciones con los clientes.  Además, puedes configurar fácilmente disparadores que te ayudaran a expandir las funcionalidades sin límites. **[Ver documentación](https://bot-whatsapp.netlify.app/)** 10 | 11 | 12 | ``` 13 | npm install 14 | npm start 15 | ``` 16 | 17 | --- 18 | ## Recursos 19 | - [📄 Documentación](https://bot-whatsapp.netlify.app/) 20 | - [🚀 Roadmap](https://github.com/orgs/codigoencasa/projects/1) 21 | - [💻 Discord](https://link.codigoencasa.com/DISCORD) 22 | - [👌 Twitter](https://twitter.com/leifermendez) 23 | - [🎥 Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR) 24 | -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | require("dotenv").config(); 2 | 3 | const { 4 | createBot, 5 | createProvider, 6 | createFlow, 7 | addKeyword, 8 | EVENTS, 9 | } = require("@bot-whatsapp/bot"); 10 | const QRPortalWeb = require("@bot-whatsapp/portal"); 11 | const { init } = require("bot-ws-plugin-openai"); 12 | const BaileysProvider = require("@bot-whatsapp/provider/baileys"); 13 | const MockAdapter = require("@bot-whatsapp/database/mock"); 14 | const { handlerAI } = require("./utils"); 15 | const { textToVoice } = require("./services/eventlab"); 16 | 17 | const employeesAddonConfig = { 18 | model: "gpt-4-0613", 19 | temperature: 0, 20 | apiKey: process.env.OPENAI_API_KEY, 21 | }; 22 | 23 | const employeesAddon = init(employeesAddonConfig); 24 | 25 | const flowStaff = addKeyword(EVENTS.ACTION).addAnswer( 26 | ["Claro que te interesa?", "mejor te envio audio.."], 27 | null, 28 | async (_, { flowDynamic, state }) => { 29 | console.log("🙉 texto a voz...."); 30 | const currentState = state.getMyState(); 31 | const path = await textToVoice(currentState.answer); 32 | console.log(`🙉 Fin texto a voz....[PATH]:${path}`); 33 | await flowDynamic([{ body: "escucha", media: path }]); 34 | } 35 | ); 36 | 37 | const flowVoiceNote = addKeyword(EVENTS.VOICE_NOTE).addAction( 38 | async (ctx, ctxFn) => { 39 | await ctxFn.flowDynamic("dame un momento para escucharte...🙉"); 40 | console.log("🤖 voz a texto...."); 41 | const text = await handlerAI(ctx); 42 | console.log(`🤖 Fin voz a texto....[TEXT]: ${text}`); 43 | const currentState = ctxFn.state.getMyState(); 44 | const fullSentence = `${currentState?.answer ?? ""}. ${text}`; 45 | const { employee, answer } = await employeesAddon.determine(fullSentence); 46 | ctxFn.state.update({ answer }); 47 | employeesAddon.gotoFlow(employee, ctxFn); 48 | } 49 | ); 50 | 51 | const main = async () => { 52 | const adapterDB = new MockAdapter(); 53 | 54 | const adapterFlow = createFlow([flowVoiceNote, flowStaff]); 55 | 56 | const adapterProvider = createProvider(BaileysProvider); 57 | 58 | /** 59 | * 🤔 Empledos digitales 60 | * Imaginar cada empleado descrito con sus deberes de manera explicita 61 | */ 62 | const employees = [ 63 | { 64 | name: "EMPLEADO_STAFF_TOUR", 65 | description: 66 | "Soy Jorge el staff amable encargado de atentender las solicitudes de los viajeros si tienen dudas, preguntas sobre el tour o la ciudad de madrid, mis respuestas son breves.", 67 | flow: flowStaff, 68 | } 69 | ]; 70 | 71 | employeesAddon.employees(employees); 72 | 73 | createBot({ 74 | flow: adapterFlow, 75 | provider: adapterProvider, 76 | database: adapterDB, 77 | }); 78 | 79 | QRPortalWeb() 80 | 81 | }; 82 | 83 | main(); 84 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "base-bailey-memory", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "app.js", 6 | "scripts": { 7 | "pre-copy": "cd .. && npm run copy.lib base-baileys-memory", 8 | "start": "node app.js" 9 | }, 10 | "keywords": [], 11 | "dependencies": { 12 | "@adiwajshing/baileys": "github:WhiskeySockets/Baileys", 13 | "@adiwajshing/keyed-db": "^0.2.4", 14 | "@bot-whatsapp/bot": "dev", 15 | "@bot-whatsapp/cli": "dev", 16 | "@bot-whatsapp/database": "dev", 17 | "@bot-whatsapp/portal": "dev", 18 | "@bot-whatsapp/provider": "dev", 19 | "@ffmpeg-installer/ffmpeg": "^1.1.0", 20 | "bot-ws-plugin-openai": "^1.0.5", 21 | "dotenv": "^16.1.3", 22 | "fluent-ffmpeg": "^2.1.2", 23 | "mime-types": "2.1.35", 24 | "openai": "^3.2.1", 25 | "wa-sticker-formatter": "4.4.4" 26 | }, 27 | "author": "", 28 | "license": "ISC" 29 | } 30 | -------------------------------------------------------------------------------- /plugin/employee.rol.js: -------------------------------------------------------------------------------- 1 | const PROMPTS = require("./prompt"); 2 | /** 3 | * 4 | * @param {*} employees 5 | * @returns 6 | */ 7 | const buildPromptEmployee = (employees = []) => { 8 | if (!Array.isArray(employees)) { 9 | throw new Error("Debes ser un array de agentes"); 10 | } 11 | 12 | employees.reduce((pre, ccu) => { 13 | if (pre.includes(ccu.name)) { 14 | throw new Error(`Nombre de agente debe ser unico: ${ccu.name} repetido`); 15 | } 16 | return [...pre, ccu.name]; 17 | }, []); 18 | 19 | const agentsDescriptions = employees.map((agent) => ({ 20 | [agent.name]: agent.description, 21 | })); 22 | const promptOutput = PROMPTS.FORMAT_INSTRUCTIONS.replace( 23 | "[{tool_names}]", 24 | JSON.stringify(agentsDescriptions) 25 | ).replaceAll("\n", " "); 26 | 27 | return promptOutput; 28 | }; 29 | 30 | /** 31 | * 32 | * @param {*} text 33 | * @returns 34 | */ 35 | const determineEmployee = (text) => { 36 | const match = /Action: ([\s\S]*?)(?:\nAction Input: ([\s\S]*?))?$/.exec(text); 37 | if (!match) { 38 | throw new Error(`Could not parse LLM output: ${text}`); 39 | } 40 | 41 | try { 42 | return { 43 | tool: cleanText(match[1].trim()), 44 | toolInput: cleanText( 45 | match[2].trim().replace(/^("+)(.*?)(\1)$/, "$2") ?? "" 46 | ), 47 | log: cleanText(text), 48 | }; 49 | } catch (e) { 50 | return { 51 | tool: null, 52 | toolInput: null, 53 | error: e.message, 54 | }; 55 | } 56 | }; 57 | 58 | /** 59 | * 60 | * @param {*} message 61 | * @param {*} parseInstructions 62 | * @returns 63 | */ 64 | const finalPrompt = (message, parseInstructions) => { 65 | const parseSuffix = PROMPTS.SUFFIX.replace('{input}', message) 66 | const PROMT = `${PROMPTS.PREFIX} ${parseInstructions} ${parseSuffix}` 67 | return PROMT 68 | } 69 | 70 | module.exports = { determineEmployee, finalPrompt, buildPromptEmployee }; 71 | -------------------------------------------------------------------------------- /plugin/openai.class.js: -------------------------------------------------------------------------------- 1 | class OpenAiClass { 2 | openAiOptions = { model: '', temperature: 0, apiKey: '' } 3 | 4 | constructor(_options = { model: 'gpt-3.5-turbo-0301', temperature: 0, apiKey: '' }) { 5 | if (!_options?.apiKey) { 6 | throw new Error('apiKey no pude ser vacio') 7 | } 8 | 9 | this.openAiOptions = { ...this.openAiOptions, ..._options } 10 | } 11 | 12 | /** 13 | * 14 | * @returns 15 | */ 16 | buildHeader = () => { 17 | const headers = new Headers() 18 | headers.append('Content-Type', 'application/json') 19 | headers.append('Authorization', `Bearer ${this.openAiOptions.apiKey}`) 20 | return headers 21 | } 22 | 23 | /** 24 | * 25 | * @param {*} input 26 | */ 27 | sendEmbedding = async (input, model = 'text-embedding-ada-002') => { 28 | const headers = this.buildHeader() 29 | const raw = JSON.stringify({ 30 | input, 31 | model, 32 | }) 33 | 34 | const requestOptions = { 35 | method: 'POST', 36 | headers: headers, 37 | body: raw, 38 | redirect: 'follow', 39 | } 40 | 41 | const response = await fetch('https://api.openai.com/v1/embeddings', requestOptions) 42 | return response.json() 43 | } 44 | 45 | /** 46 | * 47 | * @param {*} messages 48 | * @returns 49 | */ 50 | sendChat = async (messages = []) => { 51 | const headers = this.buildHeader() 52 | 53 | const raw = JSON.stringify({ 54 | model: this.openAiOptions.model, 55 | temperature: this.openAiOptions.temperature, 56 | messages, 57 | }) 58 | 59 | const requestOptions = { 60 | method: 'POST', 61 | headers, 62 | body: raw, 63 | redirect: 'follow', 64 | } 65 | 66 | const response = await fetch('https://api.openai.com/v1/chat/completions', requestOptions) 67 | return response.json() 68 | } 69 | /** 70 | * 71 | * @param {*} prompt 72 | * @returns 73 | */ 74 | sendCompletions = async (prompt = undefined) => { 75 | const headers = this.buildHeader() 76 | 77 | const raw = JSON.stringify({ 78 | model: this.openAiOptions.model, 79 | temperature: this.openAiOptions.temperature, 80 | prompt 81 | }) 82 | 83 | const requestOptions = { 84 | method: 'POST', 85 | headers, 86 | body: raw, 87 | redirect: 'follow', 88 | } 89 | 90 | const response = await fetch('https://api.openai.com/v1/completions', requestOptions) 91 | return response.json() 92 | } 93 | } 94 | 95 | module.exports = OpenAiClass 96 | -------------------------------------------------------------------------------- /plugin/plugin.employees.js: -------------------------------------------------------------------------------- 1 | const OpenAiClass = require("./openai.class"); 2 | const { determineAgent } = require("../services/determine"); 3 | const { buildPromptEmployee, finalPrompt } = require("./employee.rol"); 4 | const { cleanText } = require("./util"); 5 | 6 | class EmployeesClass extends OpenAiClass { 7 | listEmployees = []; 8 | 9 | constructor(_settings) { 10 | super(_settings); 11 | } 12 | 13 | /** 14 | * 15 | * @param {*} employees [] array 16 | */ 17 | employees = (employees = []) => { 18 | this.listEmployees = employees; 19 | }; 20 | 21 | /** 22 | * 23 | * @param {*} employeeName 24 | * @returns 25 | */ 26 | getAgent = (employeeName) => { 27 | const indexEmployee = this.listEmployees.findIndex( 28 | (emp) => emp.name === employeeName 29 | ); 30 | return this.listEmployees[indexEmployee]; 31 | }; 32 | 33 | /** 34 | * 35 | */ 36 | determine = async (text) => { 37 | try { 38 | 39 | const promptOutput = finalPrompt( 40 | text, 41 | buildPromptEmployee(this.listEmployees) 42 | ); 43 | 44 | const llmDetermineEmployee = await this.sendChat([ 45 | { 46 | role: "user", 47 | content: cleanText(promptOutput), 48 | }, 49 | ]); 50 | 51 | 52 | if(llmDetermineEmployee?.error){ 53 | throw new Error(llmDetermineEmployee?.error?.message) 54 | } 55 | 56 | const bestChoise = determineAgent( 57 | llmDetermineEmployee.choices[0].message.content 58 | ); 59 | const employee = this.getAgent(bestChoise.tool); 60 | return employee; 61 | 62 | } catch (err) { 63 | console.log(err); 64 | return `ERROR_DETERMINANDO_EMPELADO: ${err.message}`; 65 | } 66 | }; 67 | 68 | /** 69 | * @param {*} employee 70 | * @param {*} ctxFn 71 | */ 72 | _gotoFlow = (employee, ctxFn) => { 73 | const flow = employee.flow 74 | ctxFn.gotoFlow(flow) 75 | } 76 | } 77 | 78 | module.exports = EmployeesClass; 79 | -------------------------------------------------------------------------------- /plugin/prompt.js: -------------------------------------------------------------------------------- 1 | const PROMPTS = { 2 | PREFIX: `Answer the following questions as best you can. You have access to the following tools:`, 3 | FORMAT_INSTRUCTIONS: `Use the following format in your response: 4 | 5 | Question: the input question you must answer 6 | Thought: you should always think about what to do 7 | Action: the action to take, should be one of [{tool_names}] 8 | Action Input: the input to the action 9 | Observation: the result of the action 10 | ... (this Thought/Action/Action Input/Observation can repeat N times) 11 | Thought: I now know the final answer 12 | Final Answer: the final answer to the original input question`, 13 | SUFFIX: `Begin! 14 | 15 | Question: {input} 16 | Thought:{agent_scratchpad}`, 17 | PROMPT_CHAIN: `You are provided with the following excerpts from a long document and a question. Provide a conversational response based on the context provided. 18 | You should only provide hyperlinks that reference the context below. DO NOT make up hyperlinks. 19 | If the question is not related to the context, politely respond that you are prepared to answer only questions related to the context. 20 | Question: {question} 21 | ========= 22 | {context} 23 | ========= 24 | Very short answer to send by whatsapp message:`, 25 | PROMPT_PREFIX_AGENT: `Act like an employee don't say your role. You will then be provided with a situation or question in quotes and then told how you should act remember you are an employee you follow some rules:`, 26 | PROMPT_END_AGENT: `Returns a ready-to-send response in a personal message.`, 27 | }; 28 | 29 | module.exports = PROMPTS -------------------------------------------------------------------------------- /plugin/util.js: -------------------------------------------------------------------------------- 1 | const cleanText = (inputText) => { 2 | return inputText 3 | } 4 | 5 | module.exports = { cleanText } 6 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | dependencies: 4 | '@adiwajshing/baileys': 5 | specifier: github:WhiskeySockets/Baileys 6 | version: github.com/WhiskeySockets/Baileys/555cc9b3145ea2a94aeb34eec30eb966154b16f8 7 | '@adiwajshing/keyed-db': 8 | specifier: ^0.2.4 9 | version: 0.2.4 10 | '@bot-whatsapp/bot': 11 | specifier: dev 12 | version: 0.0.136-alpha.0 13 | '@bot-whatsapp/cli': 14 | specifier: dev 15 | version: 0.0.129-alpha.0 16 | '@bot-whatsapp/database': 17 | specifier: dev 18 | version: 0.0.108-alpha.0 19 | '@bot-whatsapp/portal': 20 | specifier: dev 21 | version: 0.0.66-alpha.0 22 | '@bot-whatsapp/provider': 23 | specifier: dev 24 | version: 0.0.122-alpha.0 25 | '@ffmpeg-installer/ffmpeg': 26 | specifier: ^1.1.0 27 | version: 1.1.0 28 | bot-ws-plugin-openai: 29 | specifier: ^1.0.3 30 | version: 1.0.3 31 | dotenv: 32 | specifier: ^16.1.3 33 | version: 16.1.3 34 | fluent-ffmpeg: 35 | specifier: ^2.1.2 36 | version: 2.1.2 37 | mime-types: 38 | specifier: 2.1.35 39 | version: 2.1.35 40 | openai: 41 | specifier: ^3.2.1 42 | version: 3.2.1 43 | wa-sticker-formatter: 44 | specifier: 4.4.4 45 | version: 4.4.4 46 | 47 | packages: 48 | 49 | /@adiwajshing/keyed-db@0.2.4: 50 | resolution: {integrity: sha512-yprSnAtj80/VKuDqRcFFLDYltoNV8tChNwFfIgcf6PGD4sjzWIBgs08pRuTqGH5mk5wgL6PBRSsMCZqtZwzFEw==} 51 | dev: false 52 | 53 | /@arr/every@1.0.1: 54 | resolution: {integrity: sha512-UQFQ6SgyJ6LX42W8rHCs8KVc0JS0tzVL9ct4XYedJukskYVWTo49tNiMEK9C2HTyarbNiT/RVIRSY82vH+6sTg==} 55 | engines: {node: '>=4'} 56 | dev: false 57 | 58 | /@aws-crypto/crc32@3.0.0: 59 | resolution: {integrity: sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==} 60 | dependencies: 61 | '@aws-crypto/util': 3.0.0 62 | '@aws-sdk/types': 3.342.0 63 | tslib: 1.14.1 64 | dev: false 65 | optional: true 66 | 67 | /@aws-crypto/ie11-detection@3.0.0: 68 | resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==} 69 | dependencies: 70 | tslib: 1.14.1 71 | dev: false 72 | optional: true 73 | 74 | /@aws-crypto/sha256-browser@3.0.0: 75 | resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==} 76 | dependencies: 77 | '@aws-crypto/ie11-detection': 3.0.0 78 | '@aws-crypto/sha256-js': 3.0.0 79 | '@aws-crypto/supports-web-crypto': 3.0.0 80 | '@aws-crypto/util': 3.0.0 81 | '@aws-sdk/types': 3.342.0 82 | '@aws-sdk/util-locate-window': 3.310.0 83 | '@aws-sdk/util-utf8-browser': 3.259.0 84 | tslib: 1.14.1 85 | dev: false 86 | optional: true 87 | 88 | /@aws-crypto/sha256-js@3.0.0: 89 | resolution: {integrity: sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==} 90 | dependencies: 91 | '@aws-crypto/util': 3.0.0 92 | '@aws-sdk/types': 3.342.0 93 | tslib: 1.14.1 94 | dev: false 95 | optional: true 96 | 97 | /@aws-crypto/supports-web-crypto@3.0.0: 98 | resolution: {integrity: sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==} 99 | dependencies: 100 | tslib: 1.14.1 101 | dev: false 102 | optional: true 103 | 104 | /@aws-crypto/util@3.0.0: 105 | resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==} 106 | dependencies: 107 | '@aws-sdk/types': 3.342.0 108 | '@aws-sdk/util-utf8-browser': 3.259.0 109 | tslib: 1.14.1 110 | dev: false 111 | optional: true 112 | 113 | /@aws-sdk/abort-controller@3.342.0: 114 | resolution: {integrity: sha512-W1lAYldbzDjfn8vwnwNe+6qNWfSu1+JrdiVIRSwsiwKvF2ahjKuaLoc8rJM09C6ieNWRi5634urFgfwAJuv6vg==} 115 | engines: {node: '>=14.0.0'} 116 | dependencies: 117 | '@aws-sdk/types': 3.342.0 118 | tslib: 2.5.2 119 | dev: false 120 | optional: true 121 | 122 | /@aws-sdk/client-cognito-identity@3.342.0: 123 | resolution: {integrity: sha512-WLqqeQpcLUGGqfH0bXhnAXzbX4g0SV1i1lgqJEJivHTZfexpPKEn0UphmP6ucyJ7NgQVOEHJDEowAigXG+HheA==} 124 | engines: {node: '>=14.0.0'} 125 | dependencies: 126 | '@aws-crypto/sha256-browser': 3.0.0 127 | '@aws-crypto/sha256-js': 3.0.0 128 | '@aws-sdk/client-sts': 3.342.0 129 | '@aws-sdk/config-resolver': 3.342.0 130 | '@aws-sdk/credential-provider-node': 3.342.0 131 | '@aws-sdk/fetch-http-handler': 3.342.0 132 | '@aws-sdk/hash-node': 3.342.0 133 | '@aws-sdk/invalid-dependency': 3.342.0 134 | '@aws-sdk/middleware-content-length': 3.342.0 135 | '@aws-sdk/middleware-endpoint': 3.342.0 136 | '@aws-sdk/middleware-host-header': 3.342.0 137 | '@aws-sdk/middleware-logger': 3.342.0 138 | '@aws-sdk/middleware-recursion-detection': 3.342.0 139 | '@aws-sdk/middleware-retry': 3.342.0 140 | '@aws-sdk/middleware-serde': 3.342.0 141 | '@aws-sdk/middleware-signing': 3.342.0 142 | '@aws-sdk/middleware-stack': 3.342.0 143 | '@aws-sdk/middleware-user-agent': 3.342.0 144 | '@aws-sdk/node-config-provider': 3.342.0 145 | '@aws-sdk/node-http-handler': 3.342.0 146 | '@aws-sdk/smithy-client': 3.342.0 147 | '@aws-sdk/types': 3.342.0 148 | '@aws-sdk/url-parser': 3.342.0 149 | '@aws-sdk/util-base64': 3.310.0 150 | '@aws-sdk/util-body-length-browser': 3.310.0 151 | '@aws-sdk/util-body-length-node': 3.310.0 152 | '@aws-sdk/util-defaults-mode-browser': 3.342.0 153 | '@aws-sdk/util-defaults-mode-node': 3.342.0 154 | '@aws-sdk/util-endpoints': 3.342.0 155 | '@aws-sdk/util-retry': 3.342.0 156 | '@aws-sdk/util-user-agent-browser': 3.342.0 157 | '@aws-sdk/util-user-agent-node': 3.342.0 158 | '@aws-sdk/util-utf8': 3.310.0 159 | '@smithy/protocol-http': 1.0.1 160 | '@smithy/types': 1.0.0 161 | tslib: 2.5.2 162 | transitivePeerDependencies: 163 | - aws-crt 164 | dev: false 165 | optional: true 166 | 167 | /@aws-sdk/client-sso-oidc@3.342.0: 168 | resolution: {integrity: sha512-C1jeKD39pWXlpGRxhWWBw2No1lyZnyIN72M2Qg3BWK6QlsSDtd9kdhpGS9rQU0i1F4w5x178a+qiGWHHMhCwLg==} 169 | engines: {node: '>=14.0.0'} 170 | dependencies: 171 | '@aws-crypto/sha256-browser': 3.0.0 172 | '@aws-crypto/sha256-js': 3.0.0 173 | '@aws-sdk/config-resolver': 3.342.0 174 | '@aws-sdk/fetch-http-handler': 3.342.0 175 | '@aws-sdk/hash-node': 3.342.0 176 | '@aws-sdk/invalid-dependency': 3.342.0 177 | '@aws-sdk/middleware-content-length': 3.342.0 178 | '@aws-sdk/middleware-endpoint': 3.342.0 179 | '@aws-sdk/middleware-host-header': 3.342.0 180 | '@aws-sdk/middleware-logger': 3.342.0 181 | '@aws-sdk/middleware-recursion-detection': 3.342.0 182 | '@aws-sdk/middleware-retry': 3.342.0 183 | '@aws-sdk/middleware-serde': 3.342.0 184 | '@aws-sdk/middleware-stack': 3.342.0 185 | '@aws-sdk/middleware-user-agent': 3.342.0 186 | '@aws-sdk/node-config-provider': 3.342.0 187 | '@aws-sdk/node-http-handler': 3.342.0 188 | '@aws-sdk/smithy-client': 3.342.0 189 | '@aws-sdk/types': 3.342.0 190 | '@aws-sdk/url-parser': 3.342.0 191 | '@aws-sdk/util-base64': 3.310.0 192 | '@aws-sdk/util-body-length-browser': 3.310.0 193 | '@aws-sdk/util-body-length-node': 3.310.0 194 | '@aws-sdk/util-defaults-mode-browser': 3.342.0 195 | '@aws-sdk/util-defaults-mode-node': 3.342.0 196 | '@aws-sdk/util-endpoints': 3.342.0 197 | '@aws-sdk/util-retry': 3.342.0 198 | '@aws-sdk/util-user-agent-browser': 3.342.0 199 | '@aws-sdk/util-user-agent-node': 3.342.0 200 | '@aws-sdk/util-utf8': 3.310.0 201 | '@smithy/protocol-http': 1.0.1 202 | '@smithy/types': 1.0.0 203 | tslib: 2.5.2 204 | transitivePeerDependencies: 205 | - aws-crt 206 | dev: false 207 | optional: true 208 | 209 | /@aws-sdk/client-sso@3.342.0: 210 | resolution: {integrity: sha512-DbEL+sWBua/04zTlJ6QmUsOpbeIlnPp8eYXQllCwsFzsIT04MjMI4hCZNia/weymwcq3vWTJOk2++SZf0sCGcw==} 211 | engines: {node: '>=14.0.0'} 212 | dependencies: 213 | '@aws-crypto/sha256-browser': 3.0.0 214 | '@aws-crypto/sha256-js': 3.0.0 215 | '@aws-sdk/config-resolver': 3.342.0 216 | '@aws-sdk/fetch-http-handler': 3.342.0 217 | '@aws-sdk/hash-node': 3.342.0 218 | '@aws-sdk/invalid-dependency': 3.342.0 219 | '@aws-sdk/middleware-content-length': 3.342.0 220 | '@aws-sdk/middleware-endpoint': 3.342.0 221 | '@aws-sdk/middleware-host-header': 3.342.0 222 | '@aws-sdk/middleware-logger': 3.342.0 223 | '@aws-sdk/middleware-recursion-detection': 3.342.0 224 | '@aws-sdk/middleware-retry': 3.342.0 225 | '@aws-sdk/middleware-serde': 3.342.0 226 | '@aws-sdk/middleware-stack': 3.342.0 227 | '@aws-sdk/middleware-user-agent': 3.342.0 228 | '@aws-sdk/node-config-provider': 3.342.0 229 | '@aws-sdk/node-http-handler': 3.342.0 230 | '@aws-sdk/smithy-client': 3.342.0 231 | '@aws-sdk/types': 3.342.0 232 | '@aws-sdk/url-parser': 3.342.0 233 | '@aws-sdk/util-base64': 3.310.0 234 | '@aws-sdk/util-body-length-browser': 3.310.0 235 | '@aws-sdk/util-body-length-node': 3.310.0 236 | '@aws-sdk/util-defaults-mode-browser': 3.342.0 237 | '@aws-sdk/util-defaults-mode-node': 3.342.0 238 | '@aws-sdk/util-endpoints': 3.342.0 239 | '@aws-sdk/util-retry': 3.342.0 240 | '@aws-sdk/util-user-agent-browser': 3.342.0 241 | '@aws-sdk/util-user-agent-node': 3.342.0 242 | '@aws-sdk/util-utf8': 3.310.0 243 | '@smithy/protocol-http': 1.0.1 244 | '@smithy/types': 1.0.0 245 | tslib: 2.5.2 246 | transitivePeerDependencies: 247 | - aws-crt 248 | dev: false 249 | optional: true 250 | 251 | /@aws-sdk/client-sts@3.342.0: 252 | resolution: {integrity: sha512-MUgYm/2ra1Pwoqw9ng75rVsvTLQvLHZLsTjJuKJ4hnHx1GdmQt4/ZlG1q/J2ZK2o6RZXqgavscz/nyrZH0QumA==} 253 | engines: {node: '>=14.0.0'} 254 | dependencies: 255 | '@aws-crypto/sha256-browser': 3.0.0 256 | '@aws-crypto/sha256-js': 3.0.0 257 | '@aws-sdk/config-resolver': 3.342.0 258 | '@aws-sdk/credential-provider-node': 3.342.0 259 | '@aws-sdk/fetch-http-handler': 3.342.0 260 | '@aws-sdk/hash-node': 3.342.0 261 | '@aws-sdk/invalid-dependency': 3.342.0 262 | '@aws-sdk/middleware-content-length': 3.342.0 263 | '@aws-sdk/middleware-endpoint': 3.342.0 264 | '@aws-sdk/middleware-host-header': 3.342.0 265 | '@aws-sdk/middleware-logger': 3.342.0 266 | '@aws-sdk/middleware-recursion-detection': 3.342.0 267 | '@aws-sdk/middleware-retry': 3.342.0 268 | '@aws-sdk/middleware-sdk-sts': 3.342.0 269 | '@aws-sdk/middleware-serde': 3.342.0 270 | '@aws-sdk/middleware-signing': 3.342.0 271 | '@aws-sdk/middleware-stack': 3.342.0 272 | '@aws-sdk/middleware-user-agent': 3.342.0 273 | '@aws-sdk/node-config-provider': 3.342.0 274 | '@aws-sdk/node-http-handler': 3.342.0 275 | '@aws-sdk/smithy-client': 3.342.0 276 | '@aws-sdk/types': 3.342.0 277 | '@aws-sdk/url-parser': 3.342.0 278 | '@aws-sdk/util-base64': 3.310.0 279 | '@aws-sdk/util-body-length-browser': 3.310.0 280 | '@aws-sdk/util-body-length-node': 3.310.0 281 | '@aws-sdk/util-defaults-mode-browser': 3.342.0 282 | '@aws-sdk/util-defaults-mode-node': 3.342.0 283 | '@aws-sdk/util-endpoints': 3.342.0 284 | '@aws-sdk/util-retry': 3.342.0 285 | '@aws-sdk/util-user-agent-browser': 3.342.0 286 | '@aws-sdk/util-user-agent-node': 3.342.0 287 | '@aws-sdk/util-utf8': 3.310.0 288 | '@smithy/protocol-http': 1.0.1 289 | '@smithy/types': 1.0.0 290 | fast-xml-parser: 4.1.2 291 | tslib: 2.5.2 292 | transitivePeerDependencies: 293 | - aws-crt 294 | dev: false 295 | optional: true 296 | 297 | /@aws-sdk/config-resolver@3.342.0: 298 | resolution: {integrity: sha512-jUg6DTTrCvG8AOPv5NRJ6PSQSC5fEI2gVv4luzvrGkRJULYbIqpdfUYdW7jB3rWAWC79pQQr5lSqC5DWH91stw==} 299 | engines: {node: '>=14.0.0'} 300 | dependencies: 301 | '@aws-sdk/types': 3.342.0 302 | '@aws-sdk/util-config-provider': 3.310.0 303 | '@aws-sdk/util-middleware': 3.342.0 304 | tslib: 2.5.2 305 | dev: false 306 | optional: true 307 | 308 | /@aws-sdk/credential-provider-cognito-identity@3.342.0: 309 | resolution: {integrity: sha512-SIUIgXF73GqEgvGMC4FPUUAFWBR1pQilwgx8aL7cSThWuDgUeEghnamUGdNHSyGPiQ2q3n6RBR0+WEVLIOMa4A==} 310 | engines: {node: '>=14.0.0'} 311 | dependencies: 312 | '@aws-sdk/client-cognito-identity': 3.342.0 313 | '@aws-sdk/property-provider': 3.342.0 314 | '@aws-sdk/types': 3.342.0 315 | tslib: 2.5.2 316 | transitivePeerDependencies: 317 | - aws-crt 318 | dev: false 319 | optional: true 320 | 321 | /@aws-sdk/credential-provider-env@3.342.0: 322 | resolution: {integrity: sha512-mufOcoqdXZXkvA7u6hUcJz6wKpVaho8SRWCvJrGO4YkyudUAoI9KSP5R4U+gtneDJ2Y/IEKPuw8ugNfANa1J+A==} 323 | engines: {node: '>=14.0.0'} 324 | dependencies: 325 | '@aws-sdk/property-provider': 3.342.0 326 | '@aws-sdk/types': 3.342.0 327 | tslib: 2.5.2 328 | dev: false 329 | optional: true 330 | 331 | /@aws-sdk/credential-provider-imds@3.342.0: 332 | resolution: {integrity: sha512-ReaHwFLfcsEYjDFvi95OFd+IU8frPwuAygwL56aiMT7Voc0oy3EqB3MFs3gzFxdLsJ0vw9TZMRbaouepAEVCkA==} 333 | engines: {node: '>=14.0.0'} 334 | dependencies: 335 | '@aws-sdk/node-config-provider': 3.342.0 336 | '@aws-sdk/property-provider': 3.342.0 337 | '@aws-sdk/types': 3.342.0 338 | '@aws-sdk/url-parser': 3.342.0 339 | tslib: 2.5.2 340 | dev: false 341 | optional: true 342 | 343 | /@aws-sdk/credential-provider-ini@3.342.0: 344 | resolution: {integrity: sha512-VJ7+IlI3rx5XfO8AarbKeqNVwfExsWW0S6fqBXIim0s10FJAy7R+wxYyhZhawfRm0ydCggT+Ji6dftS+WXF8fg==} 345 | engines: {node: '>=14.0.0'} 346 | dependencies: 347 | '@aws-sdk/credential-provider-env': 3.342.0 348 | '@aws-sdk/credential-provider-imds': 3.342.0 349 | '@aws-sdk/credential-provider-process': 3.342.0 350 | '@aws-sdk/credential-provider-sso': 3.342.0 351 | '@aws-sdk/credential-provider-web-identity': 3.342.0 352 | '@aws-sdk/property-provider': 3.342.0 353 | '@aws-sdk/shared-ini-file-loader': 3.342.0 354 | '@aws-sdk/types': 3.342.0 355 | tslib: 2.5.2 356 | transitivePeerDependencies: 357 | - aws-crt 358 | dev: false 359 | optional: true 360 | 361 | /@aws-sdk/credential-provider-node@3.342.0: 362 | resolution: {integrity: sha512-u3oUo0UxGEaHLtIx7a38aFLgcTe1OevCNe5exL3ugf5C4ifvUjM8rLWySQ9zrKRgPT2yDRYG/oq4ezjoR9fhHg==} 363 | engines: {node: '>=14.0.0'} 364 | dependencies: 365 | '@aws-sdk/credential-provider-env': 3.342.0 366 | '@aws-sdk/credential-provider-imds': 3.342.0 367 | '@aws-sdk/credential-provider-ini': 3.342.0 368 | '@aws-sdk/credential-provider-process': 3.342.0 369 | '@aws-sdk/credential-provider-sso': 3.342.0 370 | '@aws-sdk/credential-provider-web-identity': 3.342.0 371 | '@aws-sdk/property-provider': 3.342.0 372 | '@aws-sdk/shared-ini-file-loader': 3.342.0 373 | '@aws-sdk/types': 3.342.0 374 | tslib: 2.5.2 375 | transitivePeerDependencies: 376 | - aws-crt 377 | dev: false 378 | optional: true 379 | 380 | /@aws-sdk/credential-provider-process@3.342.0: 381 | resolution: {integrity: sha512-q03yJQPa4jnZtwKFW3yEYNMcpYH7wQzbEOEXjnXG4v8935oOttZjXBvRK7ax+f0D1ZHZFeFSashjw0A/bi1efQ==} 382 | engines: {node: '>=14.0.0'} 383 | dependencies: 384 | '@aws-sdk/property-provider': 3.342.0 385 | '@aws-sdk/shared-ini-file-loader': 3.342.0 386 | '@aws-sdk/types': 3.342.0 387 | tslib: 2.5.2 388 | dev: false 389 | optional: true 390 | 391 | /@aws-sdk/credential-provider-sso@3.342.0: 392 | resolution: {integrity: sha512-ank2703Riz5gwTxC11FDnZtMcq1Z1JjN3Nd53ahyZ+KOJPgWXEw+uolEuzMl4oAovmbTJ6WANo2qMVmLzZEaQg==} 393 | engines: {node: '>=14.0.0'} 394 | dependencies: 395 | '@aws-sdk/client-sso': 3.342.0 396 | '@aws-sdk/property-provider': 3.342.0 397 | '@aws-sdk/shared-ini-file-loader': 3.342.0 398 | '@aws-sdk/token-providers': 3.342.0 399 | '@aws-sdk/types': 3.342.0 400 | tslib: 2.5.2 401 | transitivePeerDependencies: 402 | - aws-crt 403 | dev: false 404 | optional: true 405 | 406 | /@aws-sdk/credential-provider-web-identity@3.342.0: 407 | resolution: {integrity: sha512-+an5oGnzoXMmGJql0Qs9MtyQTmz5GFqrWleQ0k9UVhN3uIfCS9AITS7vb+q1+G7A7YXy9+KshgBhcHco0G/JWQ==} 408 | engines: {node: '>=14.0.0'} 409 | dependencies: 410 | '@aws-sdk/property-provider': 3.342.0 411 | '@aws-sdk/types': 3.342.0 412 | tslib: 2.5.2 413 | dev: false 414 | optional: true 415 | 416 | /@aws-sdk/credential-providers@3.342.0: 417 | resolution: {integrity: sha512-eqtYmWBufLJcZPU0vveIPOBnYUuYpNXTYvABdYhy1EDlrYp3r3kpWpwK+A7DRRUP7T7awjZRZbkz7zoosq2MGg==} 418 | engines: {node: '>=14.0.0'} 419 | requiresBuild: true 420 | dependencies: 421 | '@aws-sdk/client-cognito-identity': 3.342.0 422 | '@aws-sdk/client-sso': 3.342.0 423 | '@aws-sdk/client-sts': 3.342.0 424 | '@aws-sdk/credential-provider-cognito-identity': 3.342.0 425 | '@aws-sdk/credential-provider-env': 3.342.0 426 | '@aws-sdk/credential-provider-imds': 3.342.0 427 | '@aws-sdk/credential-provider-ini': 3.342.0 428 | '@aws-sdk/credential-provider-node': 3.342.0 429 | '@aws-sdk/credential-provider-process': 3.342.0 430 | '@aws-sdk/credential-provider-sso': 3.342.0 431 | '@aws-sdk/credential-provider-web-identity': 3.342.0 432 | '@aws-sdk/property-provider': 3.342.0 433 | '@aws-sdk/types': 3.342.0 434 | tslib: 2.5.2 435 | transitivePeerDependencies: 436 | - aws-crt 437 | dev: false 438 | optional: true 439 | 440 | /@aws-sdk/eventstream-codec@3.342.0: 441 | resolution: {integrity: sha512-IwtvSuplioMyiu/pQgpazKkGWDM5M5BOx85zmsB0uNxt6rmje8+WqPmGmuPdmJv4bLC5dJPLovcCp/fuH8XWhA==} 442 | dependencies: 443 | '@aws-crypto/crc32': 3.0.0 444 | '@aws-sdk/types': 3.342.0 445 | '@aws-sdk/util-hex-encoding': 3.310.0 446 | tslib: 2.5.2 447 | dev: false 448 | optional: true 449 | 450 | /@aws-sdk/fetch-http-handler@3.342.0: 451 | resolution: {integrity: sha512-zsC23VUQMHEu4OKloLCVyWLG0ns6n+HKZ9euGLnNO3l0VSRne9qj/94yR+4jr/h04M7MhGf9mlczGfnZUFxs5w==} 452 | dependencies: 453 | '@aws-sdk/protocol-http': 3.342.0 454 | '@aws-sdk/querystring-builder': 3.342.0 455 | '@aws-sdk/types': 3.342.0 456 | '@aws-sdk/util-base64': 3.310.0 457 | tslib: 2.5.2 458 | dev: false 459 | optional: true 460 | 461 | /@aws-sdk/hash-node@3.342.0: 462 | resolution: {integrity: sha512-cFgXy9CDNQdYCdJBsG91FF0P0tNkCfi7+vTy7fzAEchxLxhcfLtC0cS6+gv2e3Dy8mv+uqp45Tu24+8Trx9hJQ==} 463 | engines: {node: '>=14.0.0'} 464 | dependencies: 465 | '@aws-sdk/types': 3.342.0 466 | '@aws-sdk/util-buffer-from': 3.310.0 467 | '@aws-sdk/util-utf8': 3.310.0 468 | tslib: 2.5.2 469 | dev: false 470 | optional: true 471 | 472 | /@aws-sdk/invalid-dependency@3.342.0: 473 | resolution: {integrity: sha512-3qza2Br1jGKJi8toPYG9u5aGJ3sbGmJLgKDvlga7q3F8JaeB92He6muRJ07eyDvxZ9jiKhLZ2mtYoVcEjI7Mgw==} 474 | dependencies: 475 | '@aws-sdk/types': 3.342.0 476 | tslib: 2.5.2 477 | dev: false 478 | optional: true 479 | 480 | /@aws-sdk/is-array-buffer@3.310.0: 481 | resolution: {integrity: sha512-urnbcCR+h9NWUnmOtet/s4ghvzsidFmspfhYaHAmSRdy9yDjdjBJMFjjsn85A1ODUktztm+cVncXjQ38WCMjMQ==} 482 | engines: {node: '>=14.0.0'} 483 | dependencies: 484 | tslib: 2.5.2 485 | dev: false 486 | optional: true 487 | 488 | /@aws-sdk/middleware-content-length@3.342.0: 489 | resolution: {integrity: sha512-7LUMZqhihSAptGRFFQvuwt9nCLNzNPkGd1oU1RpVXw6YPQfKP9Ec5tgg4oUlv1t58IYQvdVj5ITKp4X2aUJVPg==} 490 | engines: {node: '>=14.0.0'} 491 | dependencies: 492 | '@aws-sdk/protocol-http': 3.342.0 493 | '@aws-sdk/types': 3.342.0 494 | tslib: 2.5.2 495 | dev: false 496 | optional: true 497 | 498 | /@aws-sdk/middleware-endpoint@3.342.0: 499 | resolution: {integrity: sha512-/rE+3a2EbNQoylc7vyN+O6GFfcLitboZ8f/Kdkld3Ijcp9whPHdfjiqujlwyiUTgBVP3BqgyB3r7AZDloc7B0g==} 500 | engines: {node: '>=14.0.0'} 501 | dependencies: 502 | '@aws-sdk/middleware-serde': 3.342.0 503 | '@aws-sdk/types': 3.342.0 504 | '@aws-sdk/url-parser': 3.342.0 505 | '@aws-sdk/util-middleware': 3.342.0 506 | tslib: 2.5.2 507 | dev: false 508 | optional: true 509 | 510 | /@aws-sdk/middleware-host-header@3.342.0: 511 | resolution: {integrity: sha512-EOoix2D2Mk3NQtv7UVhJttfttGYechQxKuGvCI8+8iEKxqlyXaKqAkLR07BQb6epMYeKP4z1PfJm203Sf0WPUQ==} 512 | engines: {node: '>=14.0.0'} 513 | dependencies: 514 | '@aws-sdk/protocol-http': 3.342.0 515 | '@aws-sdk/types': 3.342.0 516 | tslib: 2.5.2 517 | dev: false 518 | optional: true 519 | 520 | /@aws-sdk/middleware-logger@3.342.0: 521 | resolution: {integrity: sha512-wbkp85T7p9sHLNPMY6HAXHvLOp+vOubFT/XLIGtgRhYu5aRJSlVo9qlwtdZjyhEgIRQ6H/QUnqAN7Zgk5bCLSw==} 522 | engines: {node: '>=14.0.0'} 523 | dependencies: 524 | '@aws-sdk/types': 3.342.0 525 | tslib: 2.5.2 526 | dev: false 527 | optional: true 528 | 529 | /@aws-sdk/middleware-recursion-detection@3.342.0: 530 | resolution: {integrity: sha512-KUDseSAz95kXCqnXEQxNObpviZ6F7eJ5lEgpi+ZehlzGDk/GyOVgjVuAyI7nNxWI5v0ZJ5nIDy+BH273dWbnmQ==} 531 | engines: {node: '>=14.0.0'} 532 | dependencies: 533 | '@aws-sdk/protocol-http': 3.342.0 534 | '@aws-sdk/types': 3.342.0 535 | tslib: 2.5.2 536 | dev: false 537 | optional: true 538 | 539 | /@aws-sdk/middleware-retry@3.342.0: 540 | resolution: {integrity: sha512-Bfllrjqs0bXNG7A3ydLjTAE5zPEdigG+/lDuEsCfB35gywZnnxqi6BjTeQ9Ss6gbEWX+WyXP7/oVdNaUDQUr9Q==} 541 | engines: {node: '>=14.0.0'} 542 | dependencies: 543 | '@aws-sdk/protocol-http': 3.342.0 544 | '@aws-sdk/service-error-classification': 3.342.0 545 | '@aws-sdk/types': 3.342.0 546 | '@aws-sdk/util-middleware': 3.342.0 547 | '@aws-sdk/util-retry': 3.342.0 548 | tslib: 2.5.2 549 | uuid: 8.3.2 550 | dev: false 551 | optional: true 552 | 553 | /@aws-sdk/middleware-sdk-sts@3.342.0: 554 | resolution: {integrity: sha512-eGcGDC+6UWKC87mex3voBVRcZN3hzFN6GVzWkTS574hDqp/uJG3yPk3Dltw0qf8skikTGi3/ZE+yAxerq/f5rg==} 555 | engines: {node: '>=14.0.0'} 556 | dependencies: 557 | '@aws-sdk/middleware-signing': 3.342.0 558 | '@aws-sdk/types': 3.342.0 559 | tslib: 2.5.2 560 | dev: false 561 | optional: true 562 | 563 | /@aws-sdk/middleware-serde@3.342.0: 564 | resolution: {integrity: sha512-WRD+Cyu6+h1ymfPnAw4fI2q3zXjihJ55HFe1uRF8VPN4uBbJNfN3IqL38y/SMEdZ0gH9zNlRNxZLhR0q6SNZEQ==} 565 | engines: {node: '>=14.0.0'} 566 | dependencies: 567 | '@aws-sdk/types': 3.342.0 568 | tslib: 2.5.2 569 | dev: false 570 | optional: true 571 | 572 | /@aws-sdk/middleware-signing@3.342.0: 573 | resolution: {integrity: sha512-CFRQyPv4OjRGmFoB3OfKcQ0aHgS9VWC0YwoHnSWIcLt3Xltorug/Amk0obr/MFoIrktdlVtmvLEJ4Z+8cdsz8g==} 574 | engines: {node: '>=14.0.0'} 575 | dependencies: 576 | '@aws-sdk/property-provider': 3.342.0 577 | '@aws-sdk/protocol-http': 3.342.0 578 | '@aws-sdk/signature-v4': 3.342.0 579 | '@aws-sdk/types': 3.342.0 580 | '@aws-sdk/util-middleware': 3.342.0 581 | tslib: 2.5.2 582 | dev: false 583 | optional: true 584 | 585 | /@aws-sdk/middleware-stack@3.342.0: 586 | resolution: {integrity: sha512-nDYtLAv9IZq8YFxtbyAiK/U1mtvtJS0DG6HiIPT5jpHcRpuWRHQ170EAW51zYts+21Ffj1VA6ZPkbup83+T6/w==} 587 | engines: {node: '>=14.0.0'} 588 | dependencies: 589 | tslib: 2.5.2 590 | dev: false 591 | optional: true 592 | 593 | /@aws-sdk/middleware-user-agent@3.342.0: 594 | resolution: {integrity: sha512-6iiFno+rq7W82mqM4KQKndIkZdGG1XZDlZIb77fcmQGYYlB1J2S/d0pIPdMk5ZQteuKJ5iorANUC0dKWw1mWTg==} 595 | engines: {node: '>=14.0.0'} 596 | dependencies: 597 | '@aws-sdk/protocol-http': 3.342.0 598 | '@aws-sdk/types': 3.342.0 599 | '@aws-sdk/util-endpoints': 3.342.0 600 | tslib: 2.5.2 601 | dev: false 602 | optional: true 603 | 604 | /@aws-sdk/node-config-provider@3.342.0: 605 | resolution: {integrity: sha512-Mwkj4+zt64w7a8QDrI9q4SrEt7XRO30Vk0a0xENqcOGrKIPfF5aeqlw85NYLoGys+KV1oatqQ+k0GzKx8qTIdQ==} 606 | engines: {node: '>=14.0.0'} 607 | dependencies: 608 | '@aws-sdk/property-provider': 3.342.0 609 | '@aws-sdk/shared-ini-file-loader': 3.342.0 610 | '@aws-sdk/types': 3.342.0 611 | tslib: 2.5.2 612 | dev: false 613 | optional: true 614 | 615 | /@aws-sdk/node-http-handler@3.342.0: 616 | resolution: {integrity: sha512-ieNdrfJJMh46qY6rkV1azJBo3UfS9hc7d8CuHtkgHhCfH3BhxbtFqEiGilOdBmY5Sk69b//lFr4zHpUPYsXKaA==} 617 | engines: {node: '>=14.0.0'} 618 | dependencies: 619 | '@aws-sdk/abort-controller': 3.342.0 620 | '@aws-sdk/protocol-http': 3.342.0 621 | '@aws-sdk/querystring-builder': 3.342.0 622 | '@aws-sdk/types': 3.342.0 623 | tslib: 2.5.2 624 | dev: false 625 | optional: true 626 | 627 | /@aws-sdk/property-provider@3.342.0: 628 | resolution: {integrity: sha512-p4TR9yRakIpwupEH3BUijWMYThGG0q43n1ICcsBOcvWZpE636lIUw6nzFlOuBUwqyPfUyLbXzchvosYxfCl0jw==} 629 | engines: {node: '>=14.0.0'} 630 | dependencies: 631 | '@aws-sdk/types': 3.342.0 632 | tslib: 2.5.2 633 | dev: false 634 | optional: true 635 | 636 | /@aws-sdk/protocol-http@3.342.0: 637 | resolution: {integrity: sha512-zuF2urcTJBZ1tltPdTBQzRasuGB7+4Yfs9i5l0F7lE0luK5Azy6G+2r3WWENUNxFTYuP94GrrqaOhVyj8XXLPQ==} 638 | engines: {node: '>=14.0.0'} 639 | dependencies: 640 | '@aws-sdk/types': 3.342.0 641 | tslib: 2.5.2 642 | dev: false 643 | optional: true 644 | 645 | /@aws-sdk/querystring-builder@3.342.0: 646 | resolution: {integrity: sha512-tb3FbtC36a7XBYeupdKm60LeM0etp73I6/7pDAkzAlw7zJdvY0aQIvj1c0U6nZlwZF8sSSxC7vlamR+wCspdMw==} 647 | engines: {node: '>=14.0.0'} 648 | dependencies: 649 | '@aws-sdk/types': 3.342.0 650 | '@aws-sdk/util-uri-escape': 3.310.0 651 | tslib: 2.5.2 652 | dev: false 653 | optional: true 654 | 655 | /@aws-sdk/querystring-parser@3.342.0: 656 | resolution: {integrity: sha512-6svvr/LZW1EPJaARnOpjf92FIiK25wuO7fRq05gLTcTRAfUMDvub+oDg3Ro9EjJERumrYQrYCem5Qi4X9w8K2g==} 657 | engines: {node: '>=14.0.0'} 658 | dependencies: 659 | '@aws-sdk/types': 3.342.0 660 | tslib: 2.5.2 661 | dev: false 662 | optional: true 663 | 664 | /@aws-sdk/service-error-classification@3.342.0: 665 | resolution: {integrity: sha512-MwHO5McbdAVKxfQj1yhleboAXqrzcGoi9ODS+bwCwRfe2lakGzBBhu8zaGDlKYOdv5rS+yAPP/5fZZUiuZY8Bw==} 666 | engines: {node: '>=14.0.0'} 667 | dev: false 668 | optional: true 669 | 670 | /@aws-sdk/shared-ini-file-loader@3.342.0: 671 | resolution: {integrity: sha512-kQG7TMQMhNp5+Y8vhGuO/+wU3K/dTx0xC0AKoDFiBf6EpDRmDfr2pPRnfJ9GwgS9haHxJ/3Uwc03swHMlsj20A==} 672 | engines: {node: '>=14.0.0'} 673 | dependencies: 674 | '@aws-sdk/types': 3.342.0 675 | tslib: 2.5.2 676 | dev: false 677 | optional: true 678 | 679 | /@aws-sdk/signature-v4@3.342.0: 680 | resolution: {integrity: sha512-OWrGO2UOa1ENpy0kYd2shK4sklQygWUqvWLx9FotDbjIeUIEfAnqoPq/QqcXVrNyT/UvPi4iIrjHJEO8JCNRmA==} 681 | engines: {node: '>=14.0.0'} 682 | dependencies: 683 | '@aws-sdk/eventstream-codec': 3.342.0 684 | '@aws-sdk/is-array-buffer': 3.310.0 685 | '@aws-sdk/types': 3.342.0 686 | '@aws-sdk/util-hex-encoding': 3.310.0 687 | '@aws-sdk/util-middleware': 3.342.0 688 | '@aws-sdk/util-uri-escape': 3.310.0 689 | '@aws-sdk/util-utf8': 3.310.0 690 | tslib: 2.5.2 691 | dev: false 692 | optional: true 693 | 694 | /@aws-sdk/smithy-client@3.342.0: 695 | resolution: {integrity: sha512-HQ4JejjHU2X7OAZPwixFG+EyPSjmoZqll7EvWjPSKyclWrM320haWWz1trVzjG/AgPfeDLfRkH/JoMr13lECew==} 696 | engines: {node: '>=14.0.0'} 697 | dependencies: 698 | '@aws-sdk/middleware-stack': 3.342.0 699 | '@aws-sdk/types': 3.342.0 700 | tslib: 2.5.2 701 | dev: false 702 | optional: true 703 | 704 | /@aws-sdk/token-providers@3.342.0: 705 | resolution: {integrity: sha512-gYShxImNQVx3FYOUKB7nzzowYiiP1joyx43KrduHwBDV7hiqg7QhtJHr6Ek+QLPqcFKP9rRvo7NhGxu+T7dEQg==} 706 | engines: {node: '>=14.0.0'} 707 | dependencies: 708 | '@aws-sdk/client-sso-oidc': 3.342.0 709 | '@aws-sdk/property-provider': 3.342.0 710 | '@aws-sdk/shared-ini-file-loader': 3.342.0 711 | '@aws-sdk/types': 3.342.0 712 | tslib: 2.5.2 713 | transitivePeerDependencies: 714 | - aws-crt 715 | dev: false 716 | optional: true 717 | 718 | /@aws-sdk/types@3.342.0: 719 | resolution: {integrity: sha512-5uyXVda/AgUpdZNJ9JPHxwyxr08miPiZ/CKSMcRdQVjcNnrdzY9m/iM9LvnQT44sQO+IEEkF2IoZIWvZcq199A==} 720 | engines: {node: '>=14.0.0'} 721 | dependencies: 722 | tslib: 2.5.2 723 | dev: false 724 | optional: true 725 | 726 | /@aws-sdk/url-parser@3.342.0: 727 | resolution: {integrity: sha512-r4s/FDK6iywl8l4TqEwIwtNvxWO0kZes03c/yCiRYqxlkjVmbXEOodn5IAAweAeS9yqC3sl/wKbsaoBiGFn45g==} 728 | dependencies: 729 | '@aws-sdk/querystring-parser': 3.342.0 730 | '@aws-sdk/types': 3.342.0 731 | tslib: 2.5.2 732 | dev: false 733 | optional: true 734 | 735 | /@aws-sdk/util-base64@3.310.0: 736 | resolution: {integrity: sha512-v3+HBKQvqgdzcbL+pFswlx5HQsd9L6ZTlyPVL2LS9nNXnCcR3XgGz9jRskikRUuUvUXtkSG1J88GAOnJ/apTPg==} 737 | engines: {node: '>=14.0.0'} 738 | dependencies: 739 | '@aws-sdk/util-buffer-from': 3.310.0 740 | tslib: 2.5.2 741 | dev: false 742 | optional: true 743 | 744 | /@aws-sdk/util-body-length-browser@3.310.0: 745 | resolution: {integrity: sha512-sxsC3lPBGfpHtNTUoGXMQXLwjmR0zVpx0rSvzTPAuoVILVsp5AU/w5FphNPxD5OVIjNbZv9KsKTuvNTiZjDp9g==} 746 | dependencies: 747 | tslib: 2.5.2 748 | dev: false 749 | optional: true 750 | 751 | /@aws-sdk/util-body-length-node@3.310.0: 752 | resolution: {integrity: sha512-2tqGXdyKhyA6w4zz7UPoS8Ip+7sayOg9BwHNidiGm2ikbDxm1YrCfYXvCBdwaJxa4hJfRVz+aL9e+d3GqPI9pQ==} 753 | engines: {node: '>=14.0.0'} 754 | dependencies: 755 | tslib: 2.5.2 756 | dev: false 757 | optional: true 758 | 759 | /@aws-sdk/util-buffer-from@3.310.0: 760 | resolution: {integrity: sha512-i6LVeXFtGih5Zs8enLrt+ExXY92QV25jtEnTKHsmlFqFAuL3VBeod6boeMXkN2p9lbSVVQ1sAOOYZOHYbYkntw==} 761 | engines: {node: '>=14.0.0'} 762 | dependencies: 763 | '@aws-sdk/is-array-buffer': 3.310.0 764 | tslib: 2.5.2 765 | dev: false 766 | optional: true 767 | 768 | /@aws-sdk/util-config-provider@3.310.0: 769 | resolution: {integrity: sha512-xIBaYo8dwiojCw8vnUcIL4Z5tyfb1v3yjqyJKJWV/dqKUFOOS0U591plmXbM+M/QkXyML3ypon1f8+BoaDExrg==} 770 | engines: {node: '>=14.0.0'} 771 | dependencies: 772 | tslib: 2.5.2 773 | dev: false 774 | optional: true 775 | 776 | /@aws-sdk/util-defaults-mode-browser@3.342.0: 777 | resolution: {integrity: sha512-N1ZRvCLbrt4Re9MKU3pLYR0iO+H7GU7RsXG4yAq6DtSWT9WCw6xhIUpeV2T5uxWKL92o3WHNiGjwcebq+N73Bg==} 778 | engines: {node: '>= 10.0.0'} 779 | dependencies: 780 | '@aws-sdk/property-provider': 3.342.0 781 | '@aws-sdk/types': 3.342.0 782 | bowser: 2.11.0 783 | tslib: 2.5.2 784 | dev: false 785 | optional: true 786 | 787 | /@aws-sdk/util-defaults-mode-node@3.342.0: 788 | resolution: {integrity: sha512-yNa/eX8sELnwM5NONOFR/PCJMHTNrUVklSo/QHy57CT/L3KOqosRNAMnDVMzH1QolGaVN/8jgtDI2xVsvlP+AA==} 789 | engines: {node: '>= 10.0.0'} 790 | dependencies: 791 | '@aws-sdk/config-resolver': 3.342.0 792 | '@aws-sdk/credential-provider-imds': 3.342.0 793 | '@aws-sdk/node-config-provider': 3.342.0 794 | '@aws-sdk/property-provider': 3.342.0 795 | '@aws-sdk/types': 3.342.0 796 | tslib: 2.5.2 797 | dev: false 798 | optional: true 799 | 800 | /@aws-sdk/util-endpoints@3.342.0: 801 | resolution: {integrity: sha512-ZsYF413hkVwSOjvZG6U0SshRtzSg6MtwzO+j90AjpaqgoHAxE5LjO5eVYFfPXTC2U8NhU7xkzASY6++e5bRRnw==} 802 | engines: {node: '>=14.0.0'} 803 | dependencies: 804 | '@aws-sdk/types': 3.342.0 805 | tslib: 2.5.2 806 | dev: false 807 | optional: true 808 | 809 | /@aws-sdk/util-hex-encoding@3.310.0: 810 | resolution: {integrity: sha512-sVN7mcCCDSJ67pI1ZMtk84SKGqyix6/0A1Ab163YKn+lFBQRMKexleZzpYzNGxYzmQS6VanP/cfU7NiLQOaSfA==} 811 | engines: {node: '>=14.0.0'} 812 | dependencies: 813 | tslib: 2.5.2 814 | dev: false 815 | optional: true 816 | 817 | /@aws-sdk/util-locate-window@3.310.0: 818 | resolution: {integrity: sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==} 819 | engines: {node: '>=14.0.0'} 820 | dependencies: 821 | tslib: 2.5.2 822 | dev: false 823 | optional: true 824 | 825 | /@aws-sdk/util-middleware@3.342.0: 826 | resolution: {integrity: sha512-P2LYyMP4JUFZBy9DcMvCDxWU34mlShCyrqBZ1ouuGW7UMgRb1PTEvpLAVndIWn9H+1KGDFjMqOWp1FZHr4YZOA==} 827 | engines: {node: '>=14.0.0'} 828 | dependencies: 829 | tslib: 2.5.2 830 | dev: false 831 | optional: true 832 | 833 | /@aws-sdk/util-retry@3.342.0: 834 | resolution: {integrity: sha512-U1LXXtOMAQjU4H9gjYZng8auRponAH0t3vShHMKT8UQggT6Hwz1obdXUZgcLCtcjp/1aEK4MkDwk2JSjuUTaZw==} 835 | engines: {node: '>= 14.0.0'} 836 | dependencies: 837 | '@aws-sdk/service-error-classification': 3.342.0 838 | tslib: 2.5.2 839 | dev: false 840 | optional: true 841 | 842 | /@aws-sdk/util-uri-escape@3.310.0: 843 | resolution: {integrity: sha512-drzt+aB2qo2LgtDoiy/3sVG8w63cgLkqFIa2NFlGpUgHFWTXkqtbgf4L5QdjRGKWhmZsnqkbtL7vkSWEcYDJ4Q==} 844 | engines: {node: '>=14.0.0'} 845 | dependencies: 846 | tslib: 2.5.2 847 | dev: false 848 | optional: true 849 | 850 | /@aws-sdk/util-user-agent-browser@3.342.0: 851 | resolution: {integrity: sha512-FWHiBi1xaebzmq3LJsizgd2LCix/bKHUTOjTeO6hEYny5DyrOl0liwIA0mqgvfgwIoMOF/l6FGg7kTfKtNgkEA==} 852 | dependencies: 853 | '@aws-sdk/types': 3.342.0 854 | bowser: 2.11.0 855 | tslib: 2.5.2 856 | dev: false 857 | optional: true 858 | 859 | /@aws-sdk/util-user-agent-node@3.342.0: 860 | resolution: {integrity: sha512-YMAhUar4CAB6hfUR72FH0sRqMBhPajDIhiKrZEOy7+qaWFdfb/t9DYi6p3PYIUZWK2vkESiDoX9Ays2xsp9rOQ==} 861 | engines: {node: '>=14.0.0'} 862 | peerDependencies: 863 | aws-crt: '>=1.0.0' 864 | peerDependenciesMeta: 865 | aws-crt: 866 | optional: true 867 | dependencies: 868 | '@aws-sdk/node-config-provider': 3.342.0 869 | '@aws-sdk/types': 3.342.0 870 | tslib: 2.5.2 871 | dev: false 872 | optional: true 873 | 874 | /@aws-sdk/util-utf8-browser@3.259.0: 875 | resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} 876 | dependencies: 877 | tslib: 2.5.2 878 | dev: false 879 | optional: true 880 | 881 | /@aws-sdk/util-utf8@3.310.0: 882 | resolution: {integrity: sha512-DnLfFT8uCO22uOJc0pt0DsSNau1GTisngBCDw8jQuWT5CqogMJu4b/uXmwEqfj8B3GX6Xsz8zOd6JpRlPftQoA==} 883 | engines: {node: '>=14.0.0'} 884 | dependencies: 885 | '@aws-sdk/util-buffer-from': 3.310.0 886 | tslib: 2.5.2 887 | dev: false 888 | optional: true 889 | 890 | /@bot-whatsapp/bot@0.0.136-alpha.0: 891 | resolution: {integrity: sha512-JNLwP+QuVIG11jVseVa3MOnQj5PaG6VBv1De9bMeXXw1WmcKqbn6BHkU/SuAF9einLyxsoElF/9pGXQYi6S03g==} 892 | dependencies: 893 | dotenv: 16.1.3 894 | dev: false 895 | 896 | /@bot-whatsapp/bot@0.1.28: 897 | resolution: {integrity: sha512-NyxEhCdbDiDsAYrzo3qnnZcrLmWBpViZoUkIGkLvWlPnghAEmn2JUbN3oRayCZxC3QWcBwfDDQ6QxAJ4Rkw8uQ==} 898 | dependencies: 899 | dotenv: 16.1.3 900 | dev: false 901 | 902 | /@bot-whatsapp/cli@0.0.129-alpha.0: 903 | resolution: {integrity: sha512-H1BRWTiww1ObHgL6+/Hhn3z523H5ParT7tONPlOotC1wNX1FBDNhWsd/Jmt7GP7ATM9djNbspK+j1AuUQ5gnaw==} 904 | hasBin: true 905 | dependencies: 906 | picocolors: 1.0.0 907 | dev: false 908 | 909 | /@bot-whatsapp/database@0.0.108-alpha.0: 910 | resolution: {integrity: sha512-OkIDgdBtbqvnTvhl+BnWZ81IrsbKOxHi1CUsUglYQx3HntBsrK3YY91oENsc54hRTrAGlj2nH0jUF2DOD4T2QA==} 911 | dependencies: 912 | dotenv: 16.1.3 913 | mongodb: 4.16.0 914 | mysql2: 2.3.3 915 | transitivePeerDependencies: 916 | - aws-crt 917 | dev: false 918 | 919 | /@bot-whatsapp/portal@0.0.66-alpha.0: 920 | resolution: {integrity: sha512-fqGfo8JsMhqHZbFu9E+dTiZaw/2GnWIwBSepcaTSuTRC37SGlZjNasHgAoi36ehAox75bUSdyDwCzm3Ut3NhXw==} 921 | dependencies: 922 | kleur: 4.1.5 923 | polka: 0.5.2 924 | serve-static: 1.15.0 925 | transitivePeerDependencies: 926 | - supports-color 927 | dev: false 928 | 929 | /@bot-whatsapp/provider@0.0.122-alpha.0: 930 | resolution: {integrity: sha512-RGPNdhgEYZWCMqpE+Ru6jXFmTJJ8S0T1kdrmWsaQg9Qoq2Z+hDNqpLgApTAyGcllHnGOG4iu4fXt0zt69a9xYg==} 931 | dependencies: 932 | '@bot-whatsapp/bot': 0.1.28 933 | '@ffmpeg-installer/ffmpeg': 1.1.0 934 | axios: 1.4.0 935 | combine-image: 1.0.3 936 | fluent-ffmpeg: 2.1.2 937 | follow-redirects: 1.15.2 938 | qr-image: 3.2.0 939 | rimraf: 3.0.2 940 | sharp: 0.30.7 941 | transitivePeerDependencies: 942 | - debug 943 | dev: false 944 | 945 | /@eshaz/web-worker@1.2.1: 946 | resolution: {integrity: sha512-v5AKAVtM0toVD2rDCGjzhySWlXG/sG5HVialdzrxFKTAnFZNCjQelX0n2tPK0tE86jf4s3hpWlpRtOh8OObktg==} 947 | dev: false 948 | 949 | /@ffmpeg-installer/darwin-arm64@4.1.5: 950 | resolution: {integrity: sha512-hYqTiP63mXz7wSQfuqfFwfLOfwwFChUedeCVKkBtl/cliaTM7/ePI9bVzfZ2c+dWu3TqCwLDRWNSJ5pqZl8otA==} 951 | cpu: [arm64] 952 | os: [darwin] 953 | requiresBuild: true 954 | dev: false 955 | optional: true 956 | 957 | /@ffmpeg-installer/darwin-x64@4.1.0: 958 | resolution: {integrity: sha512-Z4EyG3cIFjdhlY8wI9aLUXuH8nVt7E9SlMVZtWvSPnm2sm37/yC2CwjUzyCQbJbySnef1tQwGG2Sx+uWhd9IAw==} 959 | cpu: [x64] 960 | os: [darwin] 961 | requiresBuild: true 962 | dev: false 963 | optional: true 964 | 965 | /@ffmpeg-installer/ffmpeg@1.1.0: 966 | resolution: {integrity: sha512-Uq4rmwkdGxIa9A6Bd/VqqYbT7zqh1GrT5/rFwCwKM70b42W5gIjWeVETq6SdcL0zXqDtY081Ws/iJWhr1+xvQg==} 967 | optionalDependencies: 968 | '@ffmpeg-installer/darwin-arm64': 4.1.5 969 | '@ffmpeg-installer/darwin-x64': 4.1.0 970 | '@ffmpeg-installer/linux-arm': 4.1.3 971 | '@ffmpeg-installer/linux-arm64': 4.1.4 972 | '@ffmpeg-installer/linux-ia32': 4.1.0 973 | '@ffmpeg-installer/linux-x64': 4.1.0 974 | '@ffmpeg-installer/win32-ia32': 4.1.0 975 | '@ffmpeg-installer/win32-x64': 4.1.0 976 | dev: false 977 | 978 | /@ffmpeg-installer/linux-arm64@4.1.4: 979 | resolution: {integrity: sha512-dljEqAOD0oIM6O6DxBW9US/FkvqvQwgJ2lGHOwHDDwu/pX8+V0YsDL1xqHbj1DMX/+nP9rxw7G7gcUvGspSoKg==} 980 | cpu: [arm64] 981 | os: [linux] 982 | requiresBuild: true 983 | dev: false 984 | optional: true 985 | 986 | /@ffmpeg-installer/linux-arm@4.1.3: 987 | resolution: {integrity: sha512-NDf5V6l8AfzZ8WzUGZ5mV8O/xMzRag2ETR6+TlGIsMHp81agx51cqpPItXPib/nAZYmo55Bl2L6/WOMI3A5YRg==} 988 | cpu: [arm] 989 | os: [linux] 990 | requiresBuild: true 991 | dev: false 992 | optional: true 993 | 994 | /@ffmpeg-installer/linux-ia32@4.1.0: 995 | resolution: {integrity: sha512-0LWyFQnPf+Ij9GQGD034hS6A90URNu9HCtQ5cTqo5MxOEc7Rd8gLXrJvn++UmxhU0J5RyRE9KRYstdCVUjkNOQ==} 996 | cpu: [ia32] 997 | os: [linux] 998 | requiresBuild: true 999 | dev: false 1000 | optional: true 1001 | 1002 | /@ffmpeg-installer/linux-x64@4.1.0: 1003 | resolution: {integrity: sha512-Y5BWhGLU/WpQjOArNIgXD3z5mxxdV8c41C+U15nsE5yF8tVcdCGet5zPs5Zy3Ta6bU7haGpIzryutqCGQA/W8A==} 1004 | cpu: [x64] 1005 | os: [linux] 1006 | requiresBuild: true 1007 | dev: false 1008 | optional: true 1009 | 1010 | /@ffmpeg-installer/win32-ia32@4.1.0: 1011 | resolution: {integrity: sha512-FV2D7RlaZv/lrtdhaQ4oETwoFUsUjlUiasiZLDxhEUPdNDWcH1OU9K1xTvqz+OXLdsmYelUDuBS/zkMOTtlUAw==} 1012 | cpu: [ia32] 1013 | os: [win32] 1014 | requiresBuild: true 1015 | dev: false 1016 | optional: true 1017 | 1018 | /@ffmpeg-installer/win32-x64@4.1.0: 1019 | resolution: {integrity: sha512-Drt5u2vzDnIONf4ZEkKtFlbvwj6rI3kxw1Ck9fpudmtgaZIHD4ucsWB2lCZBXRxJgXR+2IMSti+4rtM4C4rXgg==} 1020 | cpu: [x64] 1021 | os: [win32] 1022 | requiresBuild: true 1023 | dev: false 1024 | optional: true 1025 | 1026 | /@hapi/boom@9.1.4: 1027 | resolution: {integrity: sha512-Ls1oH8jaN1vNsqcaHVYJrKmgMcKsC1wcp8bujvXrHaAqD2iDYq3HoOwsxwo09Cuda5R5nC0o0IxlrlTuvPuzSw==} 1028 | dependencies: 1029 | '@hapi/hoek': 9.3.0 1030 | dev: false 1031 | 1032 | /@hapi/hoek@9.3.0: 1033 | resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} 1034 | dev: false 1035 | 1036 | /@polka/url@0.5.0: 1037 | resolution: {integrity: sha512-oZLYFEAzUKyi3SKnXvj32ZCEGH6RDnao7COuCVhDydMS9NrCSVXhM79VaKyP5+Zc33m0QXEd2DN3UkU7OsHcfw==} 1038 | dev: false 1039 | 1040 | /@protobufjs/aspromise@1.1.2: 1041 | resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} 1042 | dev: false 1043 | 1044 | /@protobufjs/base64@1.1.2: 1045 | resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} 1046 | dev: false 1047 | 1048 | /@protobufjs/codegen@2.0.4: 1049 | resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} 1050 | dev: false 1051 | 1052 | /@protobufjs/eventemitter@1.1.0: 1053 | resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} 1054 | dev: false 1055 | 1056 | /@protobufjs/fetch@1.1.0: 1057 | resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} 1058 | dependencies: 1059 | '@protobufjs/aspromise': 1.1.2 1060 | '@protobufjs/inquire': 1.1.0 1061 | dev: false 1062 | 1063 | /@protobufjs/float@1.0.2: 1064 | resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} 1065 | dev: false 1066 | 1067 | /@protobufjs/inquire@1.1.0: 1068 | resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} 1069 | dev: false 1070 | 1071 | /@protobufjs/path@1.1.2: 1072 | resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} 1073 | dev: false 1074 | 1075 | /@protobufjs/pool@1.1.0: 1076 | resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} 1077 | dev: false 1078 | 1079 | /@protobufjs/utf8@1.1.0: 1080 | resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} 1081 | dev: false 1082 | 1083 | /@smithy/protocol-http@1.0.1: 1084 | resolution: {integrity: sha512-9OrEn0WfOVtBNYJUjUAn9AOiJ4lzERCJJ/JeZs8E6yajTGxBaFRxUnNBHiNqoDJVg076hY36UmEnPx7xXrvUSg==} 1085 | engines: {node: '>=14.0.0'} 1086 | dependencies: 1087 | '@smithy/types': 1.0.0 1088 | tslib: 2.5.2 1089 | dev: false 1090 | optional: true 1091 | 1092 | /@smithy/types@1.0.0: 1093 | resolution: {integrity: sha512-kc1m5wPBHQCTixwuaOh9vnak/iJm21DrSf9UK6yDE5S3mQQ4u11pqAUiKWnlrZnYkeLfAI9UEHj9OaMT1v5Umg==} 1094 | engines: {node: '>=14.0.0'} 1095 | dependencies: 1096 | tslib: 2.5.2 1097 | dev: false 1098 | optional: true 1099 | 1100 | /@thi.ng/bitstream@2.2.23: 1101 | resolution: {integrity: sha512-QeE4smuo0ymmPyWzs3MtwL6DCRhqKWvsliIvoHs+KuqgDSp9MEYKCKIwlTePwCHRUelAWGs5iwfbcYHrjy9ZTA==} 1102 | engines: {node: '>=12.7'} 1103 | dependencies: 1104 | '@thi.ng/errors': 2.3.0 1105 | dev: false 1106 | 1107 | /@thi.ng/errors@2.3.0: 1108 | resolution: {integrity: sha512-gbOskPQfuZ9logBFFg2yjT8kiKK+YYOVZhChanwIOGvIXwGE+H/IdJt5irXkafzauRiqc4tI6mtkzeA4kDfYKg==} 1109 | engines: {node: '>=12.7'} 1110 | dev: false 1111 | 1112 | /@tokenizer/token@0.3.0: 1113 | resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==} 1114 | dev: false 1115 | 1116 | /@types/long@4.0.2: 1117 | resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} 1118 | dev: false 1119 | 1120 | /@types/node@10.17.60: 1121 | resolution: {integrity: sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==} 1122 | dev: false 1123 | 1124 | /@types/node@20.2.5: 1125 | resolution: {integrity: sha512-JJulVEQXmiY9Px5axXHeYGLSjhkZEnD+MDPDGbCbIAbMslkKwmygtZFy1X6s/075Yo94sf8GuSlFfPzysQrWZQ==} 1126 | dev: false 1127 | 1128 | /@types/webidl-conversions@7.0.0: 1129 | resolution: {integrity: sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==} 1130 | dev: false 1131 | 1132 | /@types/whatwg-url@8.2.2: 1133 | resolution: {integrity: sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==} 1134 | dependencies: 1135 | '@types/node': 20.2.5 1136 | '@types/webidl-conversions': 7.0.0 1137 | dev: false 1138 | 1139 | /@wasm-audio-decoders/common@9.0.1: 1140 | resolution: {integrity: sha512-s4KxPsxhD6e+EtjmHPzTmKJSJTEXHGYlBzUGGLN/plV01x3RecybW73nIMtdLLXL8k/zQ8HYFcA6d9lqCJcDjQ==} 1141 | dependencies: 1142 | '@eshaz/web-worker': 1.2.1 1143 | dev: false 1144 | 1145 | /@wasm-audio-decoders/flac@0.1.12: 1146 | resolution: {integrity: sha512-k4PELVzBu4p4j0YmA2K8VF0GxoWWYqkqa3C29nOikOss1SZLnX2CczfiJCklL9AA/9tlZrvBJz3/nDxXDqR35A==} 1147 | dependencies: 1148 | '@wasm-audio-decoders/common': 9.0.1 1149 | codec-parser: 2.4.2 1150 | dev: false 1151 | 1152 | /@wasm-audio-decoders/ogg-vorbis@0.1.7: 1153 | resolution: {integrity: sha512-MftO1fJeBRUuDAZfa9Yp/gf+786PWt/JyiFXj+Ntn0mxlKDyPr3pTXx8PvhmO2/s/nabHDhAhiZi4aXzaBEUpg==} 1154 | dependencies: 1155 | '@wasm-audio-decoders/common': 9.0.1 1156 | codec-parser: 2.4.2 1157 | dev: false 1158 | 1159 | /ajv@6.12.6: 1160 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 1161 | dependencies: 1162 | fast-deep-equal: 3.1.3 1163 | fast-json-stable-stringify: 2.1.0 1164 | json-schema-traverse: 0.4.1 1165 | uri-js: 4.4.1 1166 | dev: false 1167 | 1168 | /asn1@0.2.6: 1169 | resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} 1170 | dependencies: 1171 | safer-buffer: 2.1.2 1172 | dev: false 1173 | 1174 | /assert-plus@1.0.0: 1175 | resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} 1176 | engines: {node: '>=0.8'} 1177 | dev: false 1178 | 1179 | /async@3.2.4: 1180 | resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} 1181 | dev: false 1182 | 1183 | /asynckit@0.4.0: 1184 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 1185 | dev: false 1186 | 1187 | /atomic-sleep@1.0.0: 1188 | resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==} 1189 | engines: {node: '>=8.0.0'} 1190 | dev: false 1191 | 1192 | /audio-buffer@5.0.0: 1193 | resolution: {integrity: sha512-gsDyj1wwUp8u7NBB+eW6yhLb9ICf+0eBmDX8NGaAS00w8/fLqFdxUlL5Ge/U8kB64DlQhdonxYC59dXy1J7H/w==} 1194 | dev: false 1195 | 1196 | /audio-decode@2.1.4: 1197 | resolution: {integrity: sha512-i1KTHqBXcU3vVCPXfp4zZCaXsLYyO4CNbt6JhvV1so/PpOpBnIXNFgHEq0bWNsroUV/J6i2/Yck0QhoaCzGh+A==} 1198 | dependencies: 1199 | '@wasm-audio-decoders/flac': 0.1.12 1200 | '@wasm-audio-decoders/ogg-vorbis': 0.1.7 1201 | audio-buffer: 5.0.0 1202 | audio-type: 2.2.1 1203 | mpg123-decoder: 0.4.8 1204 | node-wav: 0.0.2 1205 | ogg-opus-decoder: 1.6.4 1206 | qoa-format: 1.0.0 1207 | dev: false 1208 | 1209 | /audio-type@2.2.1: 1210 | resolution: {integrity: sha512-En9AY6EG1qYqEy5L/quryzbA4akBpJrnBZNxeKTqGHC2xT9Qc4aZ8b7CcbOMFTTc/MGdoNyp+SN4zInZNKxMYA==} 1211 | engines: {node: '>=14'} 1212 | dev: false 1213 | 1214 | /aws-sign2@0.7.0: 1215 | resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} 1216 | dev: false 1217 | 1218 | /aws4@1.12.0: 1219 | resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} 1220 | dev: false 1221 | 1222 | /axios@0.21.4: 1223 | resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==} 1224 | dependencies: 1225 | follow-redirects: 1.15.2 1226 | transitivePeerDependencies: 1227 | - debug 1228 | dev: false 1229 | 1230 | /axios@0.26.1: 1231 | resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==} 1232 | dependencies: 1233 | follow-redirects: 1.15.2 1234 | transitivePeerDependencies: 1235 | - debug 1236 | dev: false 1237 | 1238 | /axios@1.4.0: 1239 | resolution: {integrity: sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==} 1240 | dependencies: 1241 | follow-redirects: 1.15.2 1242 | form-data: 4.0.0 1243 | proxy-from-env: 1.1.0 1244 | transitivePeerDependencies: 1245 | - debug 1246 | dev: false 1247 | 1248 | /balanced-match@1.0.2: 1249 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1250 | dev: false 1251 | 1252 | /base64-js@1.5.1: 1253 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} 1254 | dev: false 1255 | 1256 | /bcrypt-pbkdf@1.0.2: 1257 | resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} 1258 | dependencies: 1259 | tweetnacl: 0.14.5 1260 | dev: false 1261 | 1262 | /bignumber.js@2.4.0: 1263 | resolution: {integrity: sha512-uw4ra6Cv483Op/ebM0GBKKfxZlSmn6NgFRby5L3yGTlunLj53KQgndDlqy2WVFOwgvurocApYkSud0aO+mvrpQ==} 1264 | dev: false 1265 | 1266 | /bl@4.1.0: 1267 | resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} 1268 | dependencies: 1269 | buffer: 5.7.1 1270 | inherits: 2.0.4 1271 | readable-stream: 3.6.2 1272 | dev: false 1273 | 1274 | /bmp-js@0.0.1: 1275 | resolution: {integrity: sha512-OS74Rlt0Aynu2mTPmY9RZOUOXlqWecFIILFXr70vv16/xCZnFxvri9IKkF1IGxQ8r9dOE62qGNpKxXx8Lko8bg==} 1276 | dev: false 1277 | 1278 | /bot-ws-plugin-openai@1.0.3: 1279 | resolution: {integrity: sha512-nExTd7hJT1cMGPu1S/ZNqel37v2Kcg40t2f733bIpJFRSkl3cjGQOqK5iAktssrrnWo+q2LdgQ4w7QhFjRCAGw==} 1280 | dev: false 1281 | 1282 | /bowser@2.11.0: 1283 | resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} 1284 | dev: false 1285 | optional: true 1286 | 1287 | /brace-expansion@1.1.11: 1288 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1289 | dependencies: 1290 | balanced-match: 1.0.2 1291 | concat-map: 0.0.1 1292 | dev: false 1293 | 1294 | /bson@4.7.2: 1295 | resolution: {integrity: sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==} 1296 | engines: {node: '>=6.9.0'} 1297 | dependencies: 1298 | buffer: 5.7.1 1299 | dev: false 1300 | 1301 | /buffer-equal@0.0.1: 1302 | resolution: {integrity: sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==} 1303 | engines: {node: '>=0.4.0'} 1304 | dev: false 1305 | 1306 | /buffer@5.7.1: 1307 | resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} 1308 | dependencies: 1309 | base64-js: 1.5.1 1310 | ieee754: 1.2.1 1311 | dev: false 1312 | 1313 | /cache-manager@5.2.3: 1314 | resolution: {integrity: sha512-9OErI8fksFkxAMJ8Mco0aiZSdphyd90HcKiOMJQncSlU1yq/9lHHxrT8PDayxrmr9IIIZPOAEfXuGSD7g29uog==} 1315 | dependencies: 1316 | lodash.clonedeep: 4.5.0 1317 | lru-cache: 9.1.2 1318 | dev: false 1319 | 1320 | /caseless@0.12.0: 1321 | resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} 1322 | dev: false 1323 | 1324 | /chownr@1.1.4: 1325 | resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} 1326 | dev: false 1327 | 1328 | /clone@2.1.2: 1329 | resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} 1330 | engines: {node: '>=0.8'} 1331 | dev: false 1332 | 1333 | /codec-parser@2.4.2: 1334 | resolution: {integrity: sha512-RN6gT8aGdDq4vx//Ln+MRDIKPXA3SpJKsCcQSZ4poF2bZCO4/G0C2Ko/MVNpbJ7Y9ewpzeuLlBx2zH8BpcM4ew==} 1335 | dev: false 1336 | 1337 | /color-convert@2.0.1: 1338 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1339 | engines: {node: '>=7.0.0'} 1340 | dependencies: 1341 | color-name: 1.1.4 1342 | dev: false 1343 | 1344 | /color-name@1.1.4: 1345 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1346 | dev: false 1347 | 1348 | /color-string@1.9.1: 1349 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 1350 | dependencies: 1351 | color-name: 1.1.4 1352 | simple-swizzle: 0.2.2 1353 | dev: false 1354 | 1355 | /color@4.2.3: 1356 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 1357 | engines: {node: '>=12.5.0'} 1358 | dependencies: 1359 | color-convert: 2.0.1 1360 | color-string: 1.9.1 1361 | dev: false 1362 | 1363 | /combine-image@1.0.3: 1364 | resolution: {integrity: sha512-qE7G/RXTc21sZuypwI2HPHgSf9pxWd2kHv8P7j1Qu6BIfLmNYW7LACixJ++dCCpIbZuCcurTeKU2nSaLTAloSg==} 1365 | engines: {node: '>= 6'} 1366 | dependencies: 1367 | is-plain-obj: 1.1.0 1368 | jimp: 0.2.27 1369 | dev: false 1370 | 1371 | /combined-stream@1.0.8: 1372 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 1373 | engines: {node: '>= 0.8'} 1374 | dependencies: 1375 | delayed-stream: 1.0.0 1376 | dev: false 1377 | 1378 | /concat-map@0.0.1: 1379 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1380 | dev: false 1381 | 1382 | /content-type@1.0.5: 1383 | resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} 1384 | engines: {node: '>= 0.6'} 1385 | dev: false 1386 | 1387 | /core-util-is@1.0.2: 1388 | resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} 1389 | dev: false 1390 | 1391 | /curve25519-js@0.0.4: 1392 | resolution: {integrity: sha512-axn2UMEnkhyDUPWOwVKBMVIzSQy2ejH2xRGy1wq81dqRwApXfIzfbE3hIX0ZRFBIihf/KDqK158DLwESu4AK1w==} 1393 | dev: false 1394 | 1395 | /dashdash@1.14.1: 1396 | resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} 1397 | engines: {node: '>=0.10'} 1398 | dependencies: 1399 | assert-plus: 1.0.0 1400 | dev: false 1401 | 1402 | /debug@2.6.9: 1403 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} 1404 | peerDependencies: 1405 | supports-color: '*' 1406 | peerDependenciesMeta: 1407 | supports-color: 1408 | optional: true 1409 | dependencies: 1410 | ms: 2.0.0 1411 | dev: false 1412 | 1413 | /debug@4.3.4: 1414 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1415 | engines: {node: '>=6.0'} 1416 | peerDependencies: 1417 | supports-color: '*' 1418 | peerDependenciesMeta: 1419 | supports-color: 1420 | optional: true 1421 | dependencies: 1422 | ms: 2.1.2 1423 | dev: false 1424 | 1425 | /decompress-response@6.0.0: 1426 | resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} 1427 | engines: {node: '>=10'} 1428 | dependencies: 1429 | mimic-response: 3.1.0 1430 | dev: false 1431 | 1432 | /deep-extend@0.6.0: 1433 | resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} 1434 | engines: {node: '>=4.0.0'} 1435 | dev: false 1436 | 1437 | /delayed-stream@1.0.0: 1438 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 1439 | engines: {node: '>=0.4.0'} 1440 | dev: false 1441 | 1442 | /denque@2.1.0: 1443 | resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} 1444 | engines: {node: '>=0.10'} 1445 | dev: false 1446 | 1447 | /depd@2.0.0: 1448 | resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} 1449 | engines: {node: '>= 0.8'} 1450 | dev: false 1451 | 1452 | /destroy@1.2.0: 1453 | resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} 1454 | engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} 1455 | dev: false 1456 | 1457 | /detect-libc@2.0.1: 1458 | resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==} 1459 | engines: {node: '>=8'} 1460 | dev: false 1461 | 1462 | /dom-walk@0.1.2: 1463 | resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} 1464 | dev: false 1465 | 1466 | /dotenv@16.1.3: 1467 | resolution: {integrity: sha512-FYssxsmCTtKL72fGBSvb1K9dRz0/VZeWqFme/vSb7r7323x4CRaHu4LvQ5JG3+s6yt2YPbBrkpiEODktfyjI9A==} 1468 | engines: {node: '>=12'} 1469 | dev: false 1470 | 1471 | /duplexify@4.1.2: 1472 | resolution: {integrity: sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==} 1473 | dependencies: 1474 | end-of-stream: 1.4.4 1475 | inherits: 2.0.4 1476 | readable-stream: 3.6.2 1477 | stream-shift: 1.0.1 1478 | dev: false 1479 | 1480 | /ecc-jsbn@0.1.2: 1481 | resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} 1482 | dependencies: 1483 | jsbn: 0.1.1 1484 | safer-buffer: 2.1.2 1485 | dev: false 1486 | 1487 | /ee-first@1.1.1: 1488 | resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} 1489 | dev: false 1490 | 1491 | /encodeurl@1.0.2: 1492 | resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} 1493 | engines: {node: '>= 0.8'} 1494 | dev: false 1495 | 1496 | /end-of-stream@1.4.4: 1497 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 1498 | dependencies: 1499 | once: 1.4.0 1500 | dev: false 1501 | 1502 | /es6-promise@3.3.1: 1503 | resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} 1504 | dev: false 1505 | 1506 | /escape-html@1.0.3: 1507 | resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} 1508 | dev: false 1509 | 1510 | /etag@1.8.1: 1511 | resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} 1512 | engines: {node: '>= 0.6'} 1513 | dev: false 1514 | 1515 | /exif-parser@0.1.12: 1516 | resolution: {integrity: sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==} 1517 | dev: false 1518 | 1519 | /expand-template@2.0.3: 1520 | resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} 1521 | engines: {node: '>=6'} 1522 | dev: false 1523 | 1524 | /extend@3.0.2: 1525 | resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} 1526 | dev: false 1527 | 1528 | /extsprintf@1.3.0: 1529 | resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} 1530 | engines: {'0': node >=0.6.0} 1531 | dev: false 1532 | 1533 | /fast-deep-equal@3.1.3: 1534 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1535 | dev: false 1536 | 1537 | /fast-json-stable-stringify@2.1.0: 1538 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1539 | dev: false 1540 | 1541 | /fast-redact@3.2.0: 1542 | resolution: {integrity: sha512-zaTadChr+NekyzallAMXATXLOR8MNx3zqpZ0MUF2aGf4EathnG0f32VLODNlY8IuGY3HoRO2L6/6fSzNsLaHIw==} 1543 | engines: {node: '>=6'} 1544 | dev: false 1545 | 1546 | /fast-xml-parser@4.1.2: 1547 | resolution: {integrity: sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==} 1548 | hasBin: true 1549 | dependencies: 1550 | strnum: 1.0.5 1551 | dev: false 1552 | optional: true 1553 | 1554 | /file-type@16.5.4: 1555 | resolution: {integrity: sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==} 1556 | engines: {node: '>=10'} 1557 | dependencies: 1558 | readable-web-to-node-stream: 3.0.2 1559 | strtok3: 6.3.0 1560 | token-types: 4.2.1 1561 | dev: false 1562 | 1563 | /file-type@3.9.0: 1564 | resolution: {integrity: sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==} 1565 | engines: {node: '>=0.10.0'} 1566 | dev: false 1567 | 1568 | /fluent-ffmpeg@2.1.2: 1569 | resolution: {integrity: sha512-IZTB4kq5GK0DPp7sGQ0q/BWurGHffRtQQwVkiqDgeO6wYJLLV5ZhgNOQ65loZxxuPMKZKZcICCUnaGtlxBiR0Q==} 1570 | engines: {node: '>=0.8.0'} 1571 | dependencies: 1572 | async: 3.2.4 1573 | which: 1.3.1 1574 | dev: false 1575 | 1576 | /follow-redirects@1.15.2: 1577 | resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} 1578 | engines: {node: '>=4.0'} 1579 | peerDependencies: 1580 | debug: '*' 1581 | peerDependenciesMeta: 1582 | debug: 1583 | optional: true 1584 | dev: false 1585 | 1586 | /forever-agent@0.6.1: 1587 | resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} 1588 | dev: false 1589 | 1590 | /form-data@2.3.3: 1591 | resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} 1592 | engines: {node: '>= 0.12'} 1593 | dependencies: 1594 | asynckit: 0.4.0 1595 | combined-stream: 1.0.8 1596 | mime-types: 2.1.35 1597 | dev: false 1598 | 1599 | /form-data@4.0.0: 1600 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 1601 | engines: {node: '>= 6'} 1602 | dependencies: 1603 | asynckit: 0.4.0 1604 | combined-stream: 1.0.8 1605 | mime-types: 2.1.35 1606 | dev: false 1607 | 1608 | /fresh@0.5.2: 1609 | resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} 1610 | engines: {node: '>= 0.6'} 1611 | dev: false 1612 | 1613 | /fs-constants@1.0.0: 1614 | resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} 1615 | dev: false 1616 | 1617 | /fs-extra@10.1.0: 1618 | resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} 1619 | engines: {node: '>=12'} 1620 | dependencies: 1621 | graceful-fs: 4.2.11 1622 | jsonfile: 6.1.0 1623 | universalify: 2.0.0 1624 | dev: false 1625 | 1626 | /fs.realpath@1.0.0: 1627 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1628 | dev: false 1629 | 1630 | /futoin-hkdf@1.5.2: 1631 | resolution: {integrity: sha512-Bnytx8kQJQoEAPGgTZw3kVPy8e/n9CDftPzc0okgaujmbdF1x7w8wg+u2xS0CML233HgruNk6VQW28CzuUFMKw==} 1632 | engines: {node: '>=8'} 1633 | dev: false 1634 | 1635 | /generate-function@2.3.1: 1636 | resolution: {integrity: sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==} 1637 | dependencies: 1638 | is-property: 1.0.2 1639 | dev: false 1640 | 1641 | /getpass@0.1.7: 1642 | resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} 1643 | dependencies: 1644 | assert-plus: 1.0.0 1645 | dev: false 1646 | 1647 | /github-from-package@0.0.0: 1648 | resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} 1649 | dev: false 1650 | 1651 | /glob@7.2.3: 1652 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1653 | dependencies: 1654 | fs.realpath: 1.0.0 1655 | inflight: 1.0.6 1656 | inherits: 2.0.4 1657 | minimatch: 3.1.2 1658 | once: 1.4.0 1659 | path-is-absolute: 1.0.1 1660 | dev: false 1661 | 1662 | /global@4.4.0: 1663 | resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} 1664 | dependencies: 1665 | min-document: 2.19.0 1666 | process: 0.11.10 1667 | dev: false 1668 | 1669 | /graceful-fs@4.2.11: 1670 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1671 | dev: false 1672 | 1673 | /har-schema@2.0.0: 1674 | resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==} 1675 | engines: {node: '>=4'} 1676 | dev: false 1677 | 1678 | /har-validator@5.1.5: 1679 | resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} 1680 | engines: {node: '>=6'} 1681 | deprecated: this library is no longer supported 1682 | dependencies: 1683 | ajv: 6.12.6 1684 | har-schema: 2.0.0 1685 | dev: false 1686 | 1687 | /http-errors@2.0.0: 1688 | resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} 1689 | engines: {node: '>= 0.8'} 1690 | dependencies: 1691 | depd: 2.0.0 1692 | inherits: 2.0.4 1693 | setprototypeof: 1.2.0 1694 | statuses: 2.0.1 1695 | toidentifier: 1.0.1 1696 | dev: false 1697 | 1698 | /http-signature@1.2.0: 1699 | resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==} 1700 | engines: {node: '>=0.8', npm: '>=1.3.7'} 1701 | dependencies: 1702 | assert-plus: 1.0.0 1703 | jsprim: 1.4.2 1704 | sshpk: 1.17.0 1705 | dev: false 1706 | 1707 | /iconv-lite@0.6.3: 1708 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} 1709 | engines: {node: '>=0.10.0'} 1710 | dependencies: 1711 | safer-buffer: 2.1.2 1712 | dev: false 1713 | 1714 | /ieee754@1.2.1: 1715 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} 1716 | dev: false 1717 | 1718 | /image-size@1.0.2: 1719 | resolution: {integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==} 1720 | engines: {node: '>=14.0.0'} 1721 | hasBin: true 1722 | dependencies: 1723 | queue: 6.0.2 1724 | dev: false 1725 | 1726 | /inflight@1.0.6: 1727 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1728 | dependencies: 1729 | once: 1.4.0 1730 | wrappy: 1.0.2 1731 | dev: false 1732 | 1733 | /inherits@2.0.4: 1734 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1735 | dev: false 1736 | 1737 | /ini@1.3.8: 1738 | resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} 1739 | dev: false 1740 | 1741 | /ip-regex@1.0.3: 1742 | resolution: {integrity: sha512-HjpCHTuxbR/6jWJroc/VN+npo5j0T4Vv2TAI5qdEHQx7hsL767MeccGFSsLtF694EiZKTSEqgoeU6DtGFCcuqQ==} 1743 | engines: {node: '>=0.10.0'} 1744 | dev: false 1745 | 1746 | /ip@2.0.0: 1747 | resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} 1748 | dev: false 1749 | 1750 | /is-arrayish@0.3.2: 1751 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1752 | dev: false 1753 | 1754 | /is-function@1.0.2: 1755 | resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} 1756 | dev: false 1757 | 1758 | /is-plain-obj@1.1.0: 1759 | resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} 1760 | engines: {node: '>=0.10.0'} 1761 | dev: false 1762 | 1763 | /is-property@1.0.2: 1764 | resolution: {integrity: sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==} 1765 | dev: false 1766 | 1767 | /is-typedarray@1.0.0: 1768 | resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} 1769 | dev: false 1770 | 1771 | /isexe@2.0.0: 1772 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1773 | dev: false 1774 | 1775 | /isstream@0.1.2: 1776 | resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} 1777 | dev: false 1778 | 1779 | /jimp@0.2.27: 1780 | resolution: {integrity: sha512-KP08kEe5pDY+AFg00vuqKP0zgUmeQXJXpzQ+w9+0pQA27GCF9RoWzOpf3AONHgf5h8raMrXaF18y4ug9Rw2xEw==} 1781 | dependencies: 1782 | bignumber.js: 2.4.0 1783 | bmp-js: 0.0.1 1784 | es6-promise: 3.3.1 1785 | exif-parser: 0.1.12 1786 | file-type: 3.9.0 1787 | jpeg-js: 0.2.0 1788 | load-bmfont: 1.4.1 1789 | mime: 1.6.0 1790 | pixelmatch: 4.0.2 1791 | pngjs: 3.4.0 1792 | read-chunk: 1.0.1 1793 | request: 2.88.2 1794 | stream-to-buffer: 0.1.0 1795 | tinycolor2: 1.6.0 1796 | url-regex: 3.2.0 1797 | dev: false 1798 | 1799 | /jpeg-js@0.2.0: 1800 | resolution: {integrity: sha512-Ni9PffhJtYtdD7VwxH6V2MnievekGfUefosGCHadog0/jAevRu6HPjYeMHbUemn0IPE8d4wGa8UsOGsX+iKy2g==} 1801 | dev: false 1802 | 1803 | /jsbn@0.1.1: 1804 | resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} 1805 | dev: false 1806 | 1807 | /json-schema-traverse@0.4.1: 1808 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1809 | dev: false 1810 | 1811 | /json-schema@0.4.0: 1812 | resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} 1813 | dev: false 1814 | 1815 | /json-stringify-safe@5.0.1: 1816 | resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} 1817 | dev: false 1818 | 1819 | /jsonfile@6.1.0: 1820 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 1821 | dependencies: 1822 | universalify: 2.0.0 1823 | optionalDependencies: 1824 | graceful-fs: 4.2.11 1825 | dev: false 1826 | 1827 | /jsprim@1.4.2: 1828 | resolution: {integrity: sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==} 1829 | engines: {node: '>=0.6.0'} 1830 | dependencies: 1831 | assert-plus: 1.0.0 1832 | extsprintf: 1.3.0 1833 | json-schema: 0.4.0 1834 | verror: 1.10.0 1835 | dev: false 1836 | 1837 | /kleur@4.1.5: 1838 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1839 | engines: {node: '>=6'} 1840 | dev: false 1841 | 1842 | /libphonenumber-js@1.10.39: 1843 | resolution: {integrity: sha512-iPMM/NbSNIrdwbr94rAOos6krB7snhfzEptmk/DJUtTPs+P9gOhZ1YXVPcRgjpp3jJByclfm/Igvz45spfJK7g==} 1844 | dev: false 1845 | 1846 | /load-bmfont@1.4.1: 1847 | resolution: {integrity: sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==} 1848 | dependencies: 1849 | buffer-equal: 0.0.1 1850 | mime: 1.6.0 1851 | parse-bmfont-ascii: 1.0.6 1852 | parse-bmfont-binary: 1.0.6 1853 | parse-bmfont-xml: 1.1.4 1854 | phin: 2.9.3 1855 | xhr: 2.6.0 1856 | xtend: 4.0.2 1857 | dev: false 1858 | 1859 | /lodash.clonedeep@4.5.0: 1860 | resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} 1861 | dev: false 1862 | 1863 | /long@4.0.0: 1864 | resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} 1865 | dev: false 1866 | 1867 | /lru-cache@6.0.0: 1868 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1869 | engines: {node: '>=10'} 1870 | dependencies: 1871 | yallist: 4.0.0 1872 | dev: false 1873 | 1874 | /lru-cache@7.18.3: 1875 | resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} 1876 | engines: {node: '>=12'} 1877 | dev: false 1878 | 1879 | /lru-cache@9.1.2: 1880 | resolution: {integrity: sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==} 1881 | engines: {node: 14 || >=16.14} 1882 | dev: false 1883 | 1884 | /matchit@1.1.0: 1885 | resolution: {integrity: sha512-+nGYoOlfHmxe5BW5tE0EMJppXEwdSf8uBA1GTZC7Q77kbT35+VKLYJMzVNWCHSsga1ps1tPYFtFyvxvKzWVmMA==} 1886 | engines: {node: '>=6'} 1887 | dependencies: 1888 | '@arr/every': 1.0.1 1889 | dev: false 1890 | 1891 | /media-typer@1.1.0: 1892 | resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==} 1893 | engines: {node: '>= 0.8'} 1894 | dev: false 1895 | 1896 | /memory-pager@1.5.0: 1897 | resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} 1898 | dev: false 1899 | optional: true 1900 | 1901 | /mime-db@1.52.0: 1902 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1903 | engines: {node: '>= 0.6'} 1904 | dev: false 1905 | 1906 | /mime-types@2.1.35: 1907 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1908 | engines: {node: '>= 0.6'} 1909 | dependencies: 1910 | mime-db: 1.52.0 1911 | dev: false 1912 | 1913 | /mime@1.6.0: 1914 | resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} 1915 | engines: {node: '>=4'} 1916 | hasBin: true 1917 | dev: false 1918 | 1919 | /mimic-response@3.1.0: 1920 | resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} 1921 | engines: {node: '>=10'} 1922 | dev: false 1923 | 1924 | /min-document@2.19.0: 1925 | resolution: {integrity: sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==} 1926 | dependencies: 1927 | dom-walk: 0.1.2 1928 | dev: false 1929 | 1930 | /minimatch@3.1.2: 1931 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1932 | dependencies: 1933 | brace-expansion: 1.1.11 1934 | dev: false 1935 | 1936 | /minimist@1.2.8: 1937 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 1938 | dev: false 1939 | 1940 | /mkdirp-classic@0.5.3: 1941 | resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} 1942 | dev: false 1943 | 1944 | /mongodb-connection-string-url@2.6.0: 1945 | resolution: {integrity: sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==} 1946 | dependencies: 1947 | '@types/whatwg-url': 8.2.2 1948 | whatwg-url: 11.0.0 1949 | dev: false 1950 | 1951 | /mongodb@4.16.0: 1952 | resolution: {integrity: sha512-0EB113Fsucaq1wsY0dOhi1fmZOwFtLOtteQkiqOXGklvWMnSH3g2QS53f0KTP+/6qOkuoXE2JksubSZNmxeI+g==} 1953 | engines: {node: '>=12.9.0'} 1954 | dependencies: 1955 | bson: 4.7.2 1956 | mongodb-connection-string-url: 2.6.0 1957 | socks: 2.7.1 1958 | optionalDependencies: 1959 | '@aws-sdk/credential-providers': 3.342.0 1960 | saslprep: 1.0.3 1961 | transitivePeerDependencies: 1962 | - aws-crt 1963 | dev: false 1964 | 1965 | /mpg123-decoder@0.4.8: 1966 | resolution: {integrity: sha512-HXs8vbPjiFM0NOZ45T3C5i7mpYGEYhjH37SnFA907lOb9c93DQL40cDjerxj65IMwAYyPFq1aUjtDOjyR7O0gQ==} 1967 | dependencies: 1968 | '@wasm-audio-decoders/common': 9.0.1 1969 | dev: false 1970 | 1971 | /ms@2.0.0: 1972 | resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} 1973 | dev: false 1974 | 1975 | /ms@2.1.2: 1976 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1977 | dev: false 1978 | 1979 | /ms@2.1.3: 1980 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1981 | dev: false 1982 | 1983 | /music-metadata@7.13.4: 1984 | resolution: {integrity: sha512-eRRoEMhhYdth2Ws24FmkvIqrtkIBE9sqjHbrRNpkg2Iux3zc37PQKRv2/r/mTtELb7XlB1uWC2UcKKX7BzNMGA==} 1985 | engines: {node: '>=10'} 1986 | dependencies: 1987 | '@tokenizer/token': 0.3.0 1988 | content-type: 1.0.5 1989 | debug: 4.3.4 1990 | file-type: 16.5.4 1991 | media-typer: 1.1.0 1992 | strtok3: 6.3.0 1993 | token-types: 4.2.1 1994 | transitivePeerDependencies: 1995 | - supports-color 1996 | dev: false 1997 | 1998 | /mysql2@2.3.3: 1999 | resolution: {integrity: sha512-wxJUev6LgMSgACDkb/InIFxDprRa6T95+VEoR+xPvtngtccNH2dGjEB/fVZ8yg1gWv1510c9CvXuJHi5zUm0ZA==} 2000 | engines: {node: '>= 8.0'} 2001 | dependencies: 2002 | denque: 2.1.0 2003 | generate-function: 2.3.1 2004 | iconv-lite: 0.6.3 2005 | long: 4.0.0 2006 | lru-cache: 6.0.0 2007 | named-placeholders: 1.1.3 2008 | seq-queue: 0.0.5 2009 | sqlstring: 2.3.3 2010 | dev: false 2011 | 2012 | /named-placeholders@1.1.3: 2013 | resolution: {integrity: sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==} 2014 | engines: {node: '>=12.0.0'} 2015 | dependencies: 2016 | lru-cache: 7.18.3 2017 | dev: false 2018 | 2019 | /napi-build-utils@1.0.2: 2020 | resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} 2021 | dev: false 2022 | 2023 | /node-abi@3.43.0: 2024 | resolution: {integrity: sha512-QB0MMv+tn9Ur2DtJrc8y09n0n6sw88CyDniWSX2cHW10goQXYPK9ZpFJOktDS4ron501edPX6h9i7Pg+RnH5nQ==} 2025 | engines: {node: '>=10'} 2026 | dependencies: 2027 | semver: 7.5.1 2028 | dev: false 2029 | 2030 | /node-addon-api@5.1.0: 2031 | resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} 2032 | dev: false 2033 | 2034 | /node-cache@5.1.2: 2035 | resolution: {integrity: sha512-t1QzWwnk4sjLWaQAS8CHgOJ+RAfmHpxFWmc36IWTiWHQfs0w5JDMBS1b1ZxQteo0vVVuWJvIUKHDkkeK7vIGCg==} 2036 | engines: {node: '>= 8.0.0'} 2037 | dependencies: 2038 | clone: 2.1.2 2039 | dev: false 2040 | 2041 | /node-wav@0.0.2: 2042 | resolution: {integrity: sha512-M6Rm/bbG6De/gKGxOpeOobx/dnGuP0dz40adqx38boqHhlWssBJZgLCPBNtb9NkrmnKYiV04xELq+R6PFOnoLA==} 2043 | engines: {node: '>=4.4.0'} 2044 | dev: false 2045 | 2046 | /node-webpmux@3.1.7: 2047 | resolution: {integrity: sha512-ySkL4lBCto86OyQ0blAGzylWSECcn5I0lM3bYEhe75T8Zxt/BFUMHa8ktUguR7zwXNdS/Hms31VfSsYKN1383g==} 2048 | dev: false 2049 | 2050 | /oauth-sign@0.9.0: 2051 | resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} 2052 | dev: false 2053 | 2054 | /ogg-opus-decoder@1.6.4: 2055 | resolution: {integrity: sha512-MYqiJyCZWjIKKRJMXRVi69D3VGbaR/FNCNcINNI5Ec5ZUm5pLyDT6f0cYksU0Hb3ZHXXQIp62VJChYqwk60EMg==} 2056 | dependencies: 2057 | '@wasm-audio-decoders/common': 9.0.1 2058 | codec-parser: 2.4.2 2059 | opus-decoder: 0.7.1 2060 | dev: false 2061 | 2062 | /on-exit-leak-free@0.2.0: 2063 | resolution: {integrity: sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg==} 2064 | dev: false 2065 | 2066 | /on-finished@2.4.1: 2067 | resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} 2068 | engines: {node: '>= 0.8'} 2069 | dependencies: 2070 | ee-first: 1.1.1 2071 | dev: false 2072 | 2073 | /once@1.4.0: 2074 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2075 | dependencies: 2076 | wrappy: 1.0.2 2077 | dev: false 2078 | 2079 | /openai@3.2.1: 2080 | resolution: {integrity: sha512-762C9BNlJPbjjlWZi4WYK9iM2tAVAv0uUp1UmI34vb0CN5T2mjB/qM6RYBmNKMh/dN9fC+bxqPwWJZUTWW052A==} 2081 | dependencies: 2082 | axios: 0.26.1 2083 | form-data: 4.0.0 2084 | transitivePeerDependencies: 2085 | - debug 2086 | dev: false 2087 | 2088 | /opus-decoder@0.7.1: 2089 | resolution: {integrity: sha512-AOFCMKLn7LJm8pOkksY5TsW/6+XmNyh1OQS9gxmdOGHLNYoOBrjSfc0nPNcmUMGEzOrTqZtPi8VJ/ABs2Hndvg==} 2090 | dependencies: 2091 | '@wasm-audio-decoders/common': 9.0.1 2092 | dev: false 2093 | 2094 | /parse-bmfont-ascii@1.0.6: 2095 | resolution: {integrity: sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==} 2096 | dev: false 2097 | 2098 | /parse-bmfont-binary@1.0.6: 2099 | resolution: {integrity: sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==} 2100 | dev: false 2101 | 2102 | /parse-bmfont-xml@1.1.4: 2103 | resolution: {integrity: sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==} 2104 | dependencies: 2105 | xml-parse-from-string: 1.0.1 2106 | xml2js: 0.4.23 2107 | dev: false 2108 | 2109 | /parse-headers@2.0.5: 2110 | resolution: {integrity: sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==} 2111 | dev: false 2112 | 2113 | /parseurl@1.3.3: 2114 | resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} 2115 | engines: {node: '>= 0.8'} 2116 | dev: false 2117 | 2118 | /path-is-absolute@1.0.1: 2119 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2120 | engines: {node: '>=0.10.0'} 2121 | dev: false 2122 | 2123 | /peek-readable@4.1.0: 2124 | resolution: {integrity: sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==} 2125 | engines: {node: '>=8'} 2126 | dev: false 2127 | 2128 | /performance-now@2.1.0: 2129 | resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} 2130 | dev: false 2131 | 2132 | /phin@2.9.3: 2133 | resolution: {integrity: sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==} 2134 | dev: false 2135 | 2136 | /picocolors@1.0.0: 2137 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 2138 | dev: false 2139 | 2140 | /pino-abstract-transport@0.5.0: 2141 | resolution: {integrity: sha512-+KAgmVeqXYbTtU2FScx1XS3kNyfZ5TrXY07V96QnUSFqo2gAqlvmaxH67Lj7SWazqsMabf+58ctdTcBgnOLUOQ==} 2142 | dependencies: 2143 | duplexify: 4.1.2 2144 | split2: 4.2.0 2145 | dev: false 2146 | 2147 | /pino-std-serializers@4.0.0: 2148 | resolution: {integrity: sha512-cK0pekc1Kjy5w9V2/n+8MkZwusa6EyyxfeQCB799CQRhRt/CqYKiWs5adeu8Shve2ZNffvfC/7J64A2PJo1W/Q==} 2149 | dev: false 2150 | 2151 | /pino@7.11.0: 2152 | resolution: {integrity: sha512-dMACeu63HtRLmCG8VKdy4cShCPKaYDR4youZqoSWLxl5Gu99HUw8bw75thbPv9Nip+H+QYX8o3ZJbTdVZZ2TVg==} 2153 | hasBin: true 2154 | dependencies: 2155 | atomic-sleep: 1.0.0 2156 | fast-redact: 3.2.0 2157 | on-exit-leak-free: 0.2.0 2158 | pino-abstract-transport: 0.5.0 2159 | pino-std-serializers: 4.0.0 2160 | process-warning: 1.0.0 2161 | quick-format-unescaped: 4.0.4 2162 | real-require: 0.1.0 2163 | safe-stable-stringify: 2.4.3 2164 | sonic-boom: 2.8.0 2165 | thread-stream: 0.15.2 2166 | dev: false 2167 | 2168 | /pixelmatch@4.0.2: 2169 | resolution: {integrity: sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==} 2170 | hasBin: true 2171 | dependencies: 2172 | pngjs: 3.4.0 2173 | dev: false 2174 | 2175 | /pngjs@3.4.0: 2176 | resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==} 2177 | engines: {node: '>=4.0.0'} 2178 | dev: false 2179 | 2180 | /polka@0.5.2: 2181 | resolution: {integrity: sha512-FVg3vDmCqP80tOrs+OeNlgXYmFppTXdjD5E7I4ET1NjvtNmQrb1/mJibybKkb/d4NA7YWAr1ojxuhpL3FHqdlw==} 2182 | dependencies: 2183 | '@polka/url': 0.5.0 2184 | trouter: 2.0.1 2185 | dev: false 2186 | 2187 | /prebuild-install@7.1.1: 2188 | resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} 2189 | engines: {node: '>=10'} 2190 | hasBin: true 2191 | dependencies: 2192 | detect-libc: 2.0.1 2193 | expand-template: 2.0.3 2194 | github-from-package: 0.0.0 2195 | minimist: 1.2.8 2196 | mkdirp-classic: 0.5.3 2197 | napi-build-utils: 1.0.2 2198 | node-abi: 3.43.0 2199 | pump: 3.0.0 2200 | rc: 1.2.8 2201 | simple-get: 4.0.1 2202 | tar-fs: 2.1.1 2203 | tunnel-agent: 0.6.0 2204 | dev: false 2205 | 2206 | /process-warning@1.0.0: 2207 | resolution: {integrity: sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==} 2208 | dev: false 2209 | 2210 | /process@0.11.10: 2211 | resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} 2212 | engines: {node: '>= 0.6.0'} 2213 | dev: false 2214 | 2215 | /protobufjs@6.11.3: 2216 | resolution: {integrity: sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==} 2217 | hasBin: true 2218 | requiresBuild: true 2219 | dependencies: 2220 | '@protobufjs/aspromise': 1.1.2 2221 | '@protobufjs/base64': 1.1.2 2222 | '@protobufjs/codegen': 2.0.4 2223 | '@protobufjs/eventemitter': 1.1.0 2224 | '@protobufjs/fetch': 1.1.0 2225 | '@protobufjs/float': 1.0.2 2226 | '@protobufjs/inquire': 1.1.0 2227 | '@protobufjs/path': 1.1.2 2228 | '@protobufjs/pool': 1.1.0 2229 | '@protobufjs/utf8': 1.1.0 2230 | '@types/long': 4.0.2 2231 | '@types/node': 20.2.5 2232 | long: 4.0.0 2233 | dev: false 2234 | 2235 | /protobufjs@6.8.8: 2236 | resolution: {integrity: sha512-AAmHtD5pXgZfi7GMpllpO3q1Xw1OYldr+dMUlAnffGTAhqkg72WdmSY71uKBF/JuyiKs8psYbtKrhi0ASCD8qw==} 2237 | hasBin: true 2238 | requiresBuild: true 2239 | dependencies: 2240 | '@protobufjs/aspromise': 1.1.2 2241 | '@protobufjs/base64': 1.1.2 2242 | '@protobufjs/codegen': 2.0.4 2243 | '@protobufjs/eventemitter': 1.1.0 2244 | '@protobufjs/fetch': 1.1.0 2245 | '@protobufjs/float': 1.0.2 2246 | '@protobufjs/inquire': 1.1.0 2247 | '@protobufjs/path': 1.1.2 2248 | '@protobufjs/pool': 1.1.0 2249 | '@protobufjs/utf8': 1.1.0 2250 | '@types/long': 4.0.2 2251 | '@types/node': 10.17.60 2252 | long: 4.0.0 2253 | dev: false 2254 | 2255 | /proxy-from-env@1.1.0: 2256 | resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} 2257 | dev: false 2258 | 2259 | /psl@1.9.0: 2260 | resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} 2261 | dev: false 2262 | 2263 | /pump@3.0.0: 2264 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 2265 | dependencies: 2266 | end-of-stream: 1.4.4 2267 | once: 1.4.0 2268 | dev: false 2269 | 2270 | /punycode@2.3.0: 2271 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 2272 | engines: {node: '>=6'} 2273 | dev: false 2274 | 2275 | /qoa-format@1.0.0: 2276 | resolution: {integrity: sha512-Vjp2aV2x06tHbZesCi2UtISaFdlLzy47Vbt0rNwwdihKFvGtUeFfytdnA8XZYADqWtRbK19+XXeRkv1Stg4qSQ==} 2277 | dependencies: 2278 | '@thi.ng/bitstream': 2.2.23 2279 | dev: false 2280 | 2281 | /qr-image@3.2.0: 2282 | resolution: {integrity: sha512-rXKDS5Sx3YipVsqmlMJsJsk6jXylEpiHRC2+nJy66fxA5ExYyGa4PqwteW69SaVmAb2OQ18HbYriT7cGQMbduw==} 2283 | dev: false 2284 | 2285 | /qs@6.5.3: 2286 | resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==} 2287 | engines: {node: '>=0.6'} 2288 | dev: false 2289 | 2290 | /queue@6.0.2: 2291 | resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} 2292 | dependencies: 2293 | inherits: 2.0.4 2294 | dev: false 2295 | 2296 | /quick-format-unescaped@4.0.4: 2297 | resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==} 2298 | dev: false 2299 | 2300 | /range-parser@1.2.1: 2301 | resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} 2302 | engines: {node: '>= 0.6'} 2303 | dev: false 2304 | 2305 | /rc@1.2.8: 2306 | resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} 2307 | hasBin: true 2308 | dependencies: 2309 | deep-extend: 0.6.0 2310 | ini: 1.3.8 2311 | minimist: 1.2.8 2312 | strip-json-comments: 2.0.1 2313 | dev: false 2314 | 2315 | /read-chunk@1.0.1: 2316 | resolution: {integrity: sha512-5NLTTdX45dKFtG8CX5pKmvS9V5u9wBE+gkklN7xhDuhq3pA2I4O7ALfKxosCMcLHOhkxj6GNacZhfXtp5nlCdg==} 2317 | engines: {node: '>=0.10.0'} 2318 | dev: false 2319 | 2320 | /readable-stream@3.6.2: 2321 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 2322 | engines: {node: '>= 6'} 2323 | dependencies: 2324 | inherits: 2.0.4 2325 | string_decoder: 1.3.0 2326 | util-deprecate: 1.0.2 2327 | dev: false 2328 | 2329 | /readable-web-to-node-stream@3.0.2: 2330 | resolution: {integrity: sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==} 2331 | engines: {node: '>=8'} 2332 | dependencies: 2333 | readable-stream: 3.6.2 2334 | dev: false 2335 | 2336 | /real-require@0.1.0: 2337 | resolution: {integrity: sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg==} 2338 | engines: {node: '>= 12.13.0'} 2339 | dev: false 2340 | 2341 | /request@2.88.2: 2342 | resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} 2343 | engines: {node: '>= 6'} 2344 | deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 2345 | dependencies: 2346 | aws-sign2: 0.7.0 2347 | aws4: 1.12.0 2348 | caseless: 0.12.0 2349 | combined-stream: 1.0.8 2350 | extend: 3.0.2 2351 | forever-agent: 0.6.1 2352 | form-data: 2.3.3 2353 | har-validator: 5.1.5 2354 | http-signature: 1.2.0 2355 | is-typedarray: 1.0.0 2356 | isstream: 0.1.2 2357 | json-stringify-safe: 5.0.1 2358 | mime-types: 2.1.35 2359 | oauth-sign: 0.9.0 2360 | performance-now: 2.1.0 2361 | qs: 6.5.3 2362 | safe-buffer: 5.2.1 2363 | tough-cookie: 2.5.0 2364 | tunnel-agent: 0.6.0 2365 | uuid: 3.4.0 2366 | dev: false 2367 | 2368 | /rimraf@3.0.2: 2369 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 2370 | hasBin: true 2371 | dependencies: 2372 | glob: 7.2.3 2373 | dev: false 2374 | 2375 | /safe-buffer@5.2.1: 2376 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 2377 | dev: false 2378 | 2379 | /safe-stable-stringify@2.4.3: 2380 | resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} 2381 | engines: {node: '>=10'} 2382 | dev: false 2383 | 2384 | /safer-buffer@2.1.2: 2385 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 2386 | dev: false 2387 | 2388 | /saslprep@1.0.3: 2389 | resolution: {integrity: sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==} 2390 | engines: {node: '>=6'} 2391 | requiresBuild: true 2392 | dependencies: 2393 | sparse-bitfield: 3.0.3 2394 | dev: false 2395 | optional: true 2396 | 2397 | /sax@1.2.4: 2398 | resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} 2399 | dev: false 2400 | 2401 | /semver@7.5.1: 2402 | resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==} 2403 | engines: {node: '>=10'} 2404 | hasBin: true 2405 | dependencies: 2406 | lru-cache: 6.0.0 2407 | dev: false 2408 | 2409 | /send@0.18.0: 2410 | resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} 2411 | engines: {node: '>= 0.8.0'} 2412 | dependencies: 2413 | debug: 2.6.9 2414 | depd: 2.0.0 2415 | destroy: 1.2.0 2416 | encodeurl: 1.0.2 2417 | escape-html: 1.0.3 2418 | etag: 1.8.1 2419 | fresh: 0.5.2 2420 | http-errors: 2.0.0 2421 | mime: 1.6.0 2422 | ms: 2.1.3 2423 | on-finished: 2.4.1 2424 | range-parser: 1.2.1 2425 | statuses: 2.0.1 2426 | transitivePeerDependencies: 2427 | - supports-color 2428 | dev: false 2429 | 2430 | /seq-queue@0.0.5: 2431 | resolution: {integrity: sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==} 2432 | dev: false 2433 | 2434 | /serve-static@1.15.0: 2435 | resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} 2436 | engines: {node: '>= 0.8.0'} 2437 | dependencies: 2438 | encodeurl: 1.0.2 2439 | escape-html: 1.0.3 2440 | parseurl: 1.3.3 2441 | send: 0.18.0 2442 | transitivePeerDependencies: 2443 | - supports-color 2444 | dev: false 2445 | 2446 | /setprototypeof@1.2.0: 2447 | resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} 2448 | dev: false 2449 | 2450 | /sharp@0.30.7: 2451 | resolution: {integrity: sha512-G+MY2YW33jgflKPTXXptVO28HvNOo9G3j0MybYAHeEmby+QuD2U98dT6ueht9cv/XDqZspSpIhoSW+BAKJ7Hig==} 2452 | engines: {node: '>=12.13.0'} 2453 | requiresBuild: true 2454 | dependencies: 2455 | color: 4.2.3 2456 | detect-libc: 2.0.1 2457 | node-addon-api: 5.1.0 2458 | prebuild-install: 7.1.1 2459 | semver: 7.5.1 2460 | simple-get: 4.0.1 2461 | tar-fs: 2.1.1 2462 | tunnel-agent: 0.6.0 2463 | dev: false 2464 | 2465 | /simple-concat@1.0.1: 2466 | resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} 2467 | dev: false 2468 | 2469 | /simple-get@4.0.1: 2470 | resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} 2471 | dependencies: 2472 | decompress-response: 6.0.0 2473 | once: 1.4.0 2474 | simple-concat: 1.0.1 2475 | dev: false 2476 | 2477 | /simple-swizzle@0.2.2: 2478 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 2479 | dependencies: 2480 | is-arrayish: 0.3.2 2481 | dev: false 2482 | 2483 | /smart-buffer@4.2.0: 2484 | resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} 2485 | engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} 2486 | dev: false 2487 | 2488 | /socks@2.7.1: 2489 | resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} 2490 | engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} 2491 | dependencies: 2492 | ip: 2.0.0 2493 | smart-buffer: 4.2.0 2494 | dev: false 2495 | 2496 | /sonic-boom@2.8.0: 2497 | resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==} 2498 | dependencies: 2499 | atomic-sleep: 1.0.0 2500 | dev: false 2501 | 2502 | /sparse-bitfield@3.0.3: 2503 | resolution: {integrity: sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==} 2504 | dependencies: 2505 | memory-pager: 1.5.0 2506 | dev: false 2507 | optional: true 2508 | 2509 | /split2@4.2.0: 2510 | resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} 2511 | engines: {node: '>= 10.x'} 2512 | dev: false 2513 | 2514 | /sqlstring@2.3.3: 2515 | resolution: {integrity: sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==} 2516 | engines: {node: '>= 0.6'} 2517 | dev: false 2518 | 2519 | /sshpk@1.17.0: 2520 | resolution: {integrity: sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==} 2521 | engines: {node: '>=0.10.0'} 2522 | hasBin: true 2523 | dependencies: 2524 | asn1: 0.2.6 2525 | assert-plus: 1.0.0 2526 | bcrypt-pbkdf: 1.0.2 2527 | dashdash: 1.14.1 2528 | ecc-jsbn: 0.1.2 2529 | getpass: 0.1.7 2530 | jsbn: 0.1.1 2531 | safer-buffer: 2.1.2 2532 | tweetnacl: 0.14.5 2533 | dev: false 2534 | 2535 | /statuses@2.0.1: 2536 | resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} 2537 | engines: {node: '>= 0.8'} 2538 | dev: false 2539 | 2540 | /stream-shift@1.0.1: 2541 | resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} 2542 | dev: false 2543 | 2544 | /stream-to-buffer@0.1.0: 2545 | resolution: {integrity: sha512-Da4WoKaZyu3nf+bIdIifh7IPkFjARBnBK+pYqn0EUJqksjV9afojjaCCHUemH30Jmu7T2qcKvlZm2ykN38uzaw==} 2546 | engines: {node: '>= 0.8'} 2547 | dependencies: 2548 | stream-to: 0.2.2 2549 | dev: false 2550 | 2551 | /stream-to@0.2.2: 2552 | resolution: {integrity: sha512-Kg1BSDTwgGiVMtTCJNlo7kk/xzL33ZuZveEBRt6rXw+f1WLK/8kmz2NVCT/Qnv0JkV85JOHcLhD82mnXsR3kPw==} 2553 | engines: {node: '>= 0.10.0'} 2554 | dev: false 2555 | 2556 | /string_decoder@1.3.0: 2557 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 2558 | dependencies: 2559 | safe-buffer: 5.2.1 2560 | dev: false 2561 | 2562 | /strip-json-comments@2.0.1: 2563 | resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} 2564 | engines: {node: '>=0.10.0'} 2565 | dev: false 2566 | 2567 | /strnum@1.0.5: 2568 | resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} 2569 | dev: false 2570 | optional: true 2571 | 2572 | /strtok3@6.3.0: 2573 | resolution: {integrity: sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==} 2574 | engines: {node: '>=10'} 2575 | dependencies: 2576 | '@tokenizer/token': 0.3.0 2577 | peek-readable: 4.1.0 2578 | dev: false 2579 | 2580 | /tar-fs@2.1.1: 2581 | resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} 2582 | dependencies: 2583 | chownr: 1.1.4 2584 | mkdirp-classic: 0.5.3 2585 | pump: 3.0.0 2586 | tar-stream: 2.2.0 2587 | dev: false 2588 | 2589 | /tar-stream@2.2.0: 2590 | resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} 2591 | engines: {node: '>=6'} 2592 | dependencies: 2593 | bl: 4.1.0 2594 | end-of-stream: 1.4.4 2595 | fs-constants: 1.0.0 2596 | inherits: 2.0.4 2597 | readable-stream: 3.6.2 2598 | dev: false 2599 | 2600 | /thread-stream@0.15.2: 2601 | resolution: {integrity: sha512-UkEhKIg2pD+fjkHQKyJO3yoIvAP3N6RlNFt2dUhcS1FGvCD1cQa1M/PGknCLFIyZdtJOWQjejp7bdNqmN7zwdA==} 2602 | dependencies: 2603 | real-require: 0.1.0 2604 | dev: false 2605 | 2606 | /tinycolor2@1.6.0: 2607 | resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} 2608 | dev: false 2609 | 2610 | /toidentifier@1.0.1: 2611 | resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} 2612 | engines: {node: '>=0.6'} 2613 | dev: false 2614 | 2615 | /token-types@4.2.1: 2616 | resolution: {integrity: sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==} 2617 | engines: {node: '>=10'} 2618 | dependencies: 2619 | '@tokenizer/token': 0.3.0 2620 | ieee754: 1.2.1 2621 | dev: false 2622 | 2623 | /tough-cookie@2.5.0: 2624 | resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} 2625 | engines: {node: '>=0.8'} 2626 | dependencies: 2627 | psl: 1.9.0 2628 | punycode: 2.3.0 2629 | dev: false 2630 | 2631 | /tr46@3.0.0: 2632 | resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} 2633 | engines: {node: '>=12'} 2634 | dependencies: 2635 | punycode: 2.3.0 2636 | dev: false 2637 | 2638 | /trouter@2.0.1: 2639 | resolution: {integrity: sha512-kr8SKKw94OI+xTGOkfsvwZQ8mWoikZDd2n8XZHjJVZUARZT+4/VV6cacRS6CLsH9bNm+HFIPU1Zx4CnNnb4qlQ==} 2640 | engines: {node: '>=6'} 2641 | dependencies: 2642 | matchit: 1.1.0 2643 | dev: false 2644 | 2645 | /tslib@1.14.1: 2646 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 2647 | dev: false 2648 | optional: true 2649 | 2650 | /tslib@2.5.2: 2651 | resolution: {integrity: sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA==} 2652 | dev: false 2653 | optional: true 2654 | 2655 | /tunnel-agent@0.6.0: 2656 | resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} 2657 | dependencies: 2658 | safe-buffer: 5.2.1 2659 | dev: false 2660 | 2661 | /tweetnacl@0.14.5: 2662 | resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} 2663 | dev: false 2664 | 2665 | /universalify@2.0.0: 2666 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} 2667 | engines: {node: '>= 10.0.0'} 2668 | dev: false 2669 | 2670 | /uri-js@4.4.1: 2671 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2672 | dependencies: 2673 | punycode: 2.3.0 2674 | dev: false 2675 | 2676 | /url-regex@3.2.0: 2677 | resolution: {integrity: sha512-dQ9cJzMou5OKr6ZzfvwJkCq3rC72PNXhqz0v3EIhF4a3Np+ujr100AhUx2cKx5ei3iymoJpJrPB3sVSEMdqAeg==} 2678 | engines: {node: '>=0.10.0'} 2679 | dependencies: 2680 | ip-regex: 1.0.3 2681 | dev: false 2682 | 2683 | /util-deprecate@1.0.2: 2684 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2685 | dev: false 2686 | 2687 | /uuid@3.4.0: 2688 | resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} 2689 | deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. 2690 | hasBin: true 2691 | dev: false 2692 | 2693 | /uuid@8.3.2: 2694 | resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} 2695 | hasBin: true 2696 | dev: false 2697 | optional: true 2698 | 2699 | /uuid@9.0.0: 2700 | resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==} 2701 | hasBin: true 2702 | dev: false 2703 | 2704 | /verror@1.10.0: 2705 | resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} 2706 | engines: {'0': node >=0.6.0} 2707 | dependencies: 2708 | assert-plus: 1.0.0 2709 | core-util-is: 1.0.2 2710 | extsprintf: 1.3.0 2711 | dev: false 2712 | 2713 | /wa-sticker-formatter@4.4.4: 2714 | resolution: {integrity: sha512-tl2tXlu7HEs630+1LcJsdavNGEysyQV7EIe/tFsPJCEd2jteG0nGouWNUglUEjW+bDCZGXw9VpJgUtwVGIKr8w==} 2715 | dependencies: 2716 | axios: 0.21.4 2717 | file-type: 16.5.4 2718 | fluent-ffmpeg: 2.1.2 2719 | fs-extra: 10.1.0 2720 | image-size: 1.0.2 2721 | node-webpmux: 3.1.7 2722 | sharp: 0.30.7 2723 | transitivePeerDependencies: 2724 | - debug 2725 | dev: false 2726 | 2727 | /webidl-conversions@7.0.0: 2728 | resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} 2729 | engines: {node: '>=12'} 2730 | dev: false 2731 | 2732 | /whatwg-url@11.0.0: 2733 | resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} 2734 | engines: {node: '>=12'} 2735 | dependencies: 2736 | tr46: 3.0.0 2737 | webidl-conversions: 7.0.0 2738 | dev: false 2739 | 2740 | /which@1.3.1: 2741 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 2742 | hasBin: true 2743 | dependencies: 2744 | isexe: 2.0.0 2745 | dev: false 2746 | 2747 | /wrappy@1.0.2: 2748 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2749 | dev: false 2750 | 2751 | /ws@8.13.0: 2752 | resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} 2753 | engines: {node: '>=10.0.0'} 2754 | peerDependencies: 2755 | bufferutil: ^4.0.1 2756 | utf-8-validate: '>=5.0.2' 2757 | peerDependenciesMeta: 2758 | bufferutil: 2759 | optional: true 2760 | utf-8-validate: 2761 | optional: true 2762 | dev: false 2763 | 2764 | /xhr@2.6.0: 2765 | resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==} 2766 | dependencies: 2767 | global: 4.4.0 2768 | is-function: 1.0.2 2769 | parse-headers: 2.0.5 2770 | xtend: 4.0.2 2771 | dev: false 2772 | 2773 | /xml-parse-from-string@1.0.1: 2774 | resolution: {integrity: sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==} 2775 | dev: false 2776 | 2777 | /xml2js@0.4.23: 2778 | resolution: {integrity: sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==} 2779 | engines: {node: '>=4.0.0'} 2780 | dependencies: 2781 | sax: 1.2.4 2782 | xmlbuilder: 11.0.1 2783 | dev: false 2784 | 2785 | /xmlbuilder@11.0.1: 2786 | resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} 2787 | engines: {node: '>=4.0'} 2788 | dev: false 2789 | 2790 | /xtend@4.0.2: 2791 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 2792 | engines: {node: '>=0.4'} 2793 | dev: false 2794 | 2795 | /yallist@4.0.0: 2796 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2797 | dev: false 2798 | 2799 | github.com/WhiskeySockets/Baileys/555cc9b3145ea2a94aeb34eec30eb966154b16f8: 2800 | resolution: {tarball: https://codeload.github.com/WhiskeySockets/Baileys/tar.gz/555cc9b3145ea2a94aeb34eec30eb966154b16f8} 2801 | name: '@whiskeysockets/baileys' 2802 | version: 6.4.0 2803 | prepare: true 2804 | requiresBuild: true 2805 | peerDependencies: 2806 | jimp: ^0.16.1 2807 | link-preview-js: ^3.0.0 2808 | qrcode-terminal: ^0.12.0 2809 | sharp: ^0.30.5 2810 | peerDependenciesMeta: 2811 | jimp: 2812 | optional: true 2813 | link-preview-js: 2814 | optional: true 2815 | qrcode-terminal: 2816 | optional: true 2817 | sharp: 2818 | optional: true 2819 | dependencies: 2820 | '@adiwajshing/keyed-db': 0.2.4 2821 | '@hapi/boom': 9.1.4 2822 | audio-decode: 2.1.4 2823 | axios: 1.4.0 2824 | cache-manager: 5.2.3 2825 | futoin-hkdf: 1.5.2 2826 | libphonenumber-js: 1.10.39 2827 | libsignal: github.com/adiwajshing/libsignal-node/11dbd962ea108187c79a7c46fe4d6f790e23da97 2828 | music-metadata: 7.13.4 2829 | node-cache: 5.1.2 2830 | pino: 7.11.0 2831 | protobufjs: 6.11.3 2832 | uuid: 9.0.0 2833 | ws: 8.13.0 2834 | transitivePeerDependencies: 2835 | - bufferutil 2836 | - debug 2837 | - supports-color 2838 | - utf-8-validate 2839 | dev: false 2840 | 2841 | github.com/adiwajshing/libsignal-node/11dbd962ea108187c79a7c46fe4d6f790e23da97: 2842 | resolution: {tarball: https://codeload.github.com/adiwajshing/libsignal-node/tar.gz/11dbd962ea108187c79a7c46fe4d6f790e23da97} 2843 | name: libsignal 2844 | version: 2.0.1 2845 | dependencies: 2846 | curve25519-js: 0.0.4 2847 | protobufjs: 6.8.8 2848 | dev: false 2849 | -------------------------------------------------------------------------------- /services/convert.js: -------------------------------------------------------------------------------- 1 | const ffmpegPath = require("@ffmpeg-installer/ffmpeg").path; 2 | const ffmpeg = require("fluent-ffmpeg"); 3 | ffmpeg.setFfmpegPath(ffmpegPath); 4 | 5 | /** 6 | * 7 | * @param {*} inputStream 8 | * @param {*} outStream 9 | * @returns 10 | */ 11 | const convertOggMp3 = async (inputStream, outStream) => { 12 | return new Promise((resolve, reject) => { 13 | ffmpeg(inputStream) 14 | .audioQuality(96) 15 | .toFormat("mp3") 16 | .save(outStream) 17 | .on("progress", (p) => null) 18 | .on("end", () => { 19 | resolve(true); 20 | }); 21 | }); 22 | }; 23 | 24 | module.exports = { convertOggMp3 }; 25 | -------------------------------------------------------------------------------- /services/eventlab.js: -------------------------------------------------------------------------------- 1 | const fs = require('node:fs') 2 | /** 3 | * 4 | * @param {*} voiceId clone voice vwfl76D5KBjKuSGfTbLB 5 | * @returns 6 | */ 7 | const textToVoice = async (text,voiceId = 'vwfl76D5KBjKuSGfTbLB') => { 8 | const EVENT_TOKEN = process.env.EVENT_TOKEN ?? ""; 9 | const URL = `https://api.elevenlabs.io/v1/text-to-speech/${voiceId}`; 10 | 11 | const header = new Headers(); 12 | header.append("accept", "audio/mpeg"); 13 | header.append("xi-api-key", EVENT_TOKEN); 14 | header.append("Content-Type", "application/json"); 15 | 16 | const raw = JSON.stringify({ 17 | text, 18 | model_id: "eleven_multilingual_v1", 19 | voice_settings: { 20 | stability: 1, 21 | similarity_boost: 0.8, 22 | }, 23 | }); 24 | 25 | const requestOptions = { 26 | method: "POST", 27 | headers: header, 28 | body: raw, 29 | redirect: "follow", 30 | }; 31 | 32 | const response = await fetch(URL, requestOptions); 33 | const buffer = await response.arrayBuffer(); 34 | const pathFile = `${process.cwd()}/tmp/${Date.now()}-auido.mp3`; 35 | fs.writeFileSync(pathFile, Buffer.from(buffer)); 36 | 37 | return pathFile; 38 | }; 39 | 40 | module.exports = { textToVoice }; 41 | -------------------------------------------------------------------------------- /services/whisper.js: -------------------------------------------------------------------------------- 1 | const fs = require("fs"); 2 | const { Configuration, OpenAIApi } = require("openai"); 3 | 4 | /** 5 | * 6 | * @param {*} path url mp3 7 | */ 8 | const voiceToText = async (path) => { 9 | if (!fs.existsSync(path)) { 10 | throw new Error("No se encuentra el archivo"); 11 | } 12 | 13 | try { 14 | const configuration = new Configuration({ 15 | apiKey: process.env.OPENAI_API_KEY, 16 | }); 17 | const openai = new OpenAIApi(configuration); 18 | const resp = await openai.createTranscription( 19 | fs.createReadStream(path), 20 | "whisper-1" 21 | ); 22 | 23 | return resp.data.text; 24 | } catch (err) { 25 | console.log(err.response.data) 26 | return "ERROR"; 27 | } 28 | }; 29 | 30 | module.exports = { voiceToText }; 31 | -------------------------------------------------------------------------------- /tmp/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leifermendez/bot-ws-openai/bf3447233cd45130aebe54c8edf752a3fb0ad730/tmp/.gitkeep -------------------------------------------------------------------------------- /utils.js: -------------------------------------------------------------------------------- 1 | const { downloadMediaMessage } = require('@adiwajshing/baileys'); 2 | const fs = require('node:fs/promises'); 3 | const { convertOggMp3 } = require('./services/convert'); 4 | const { voiceToText } = require('./services/whisper'); 5 | 6 | const handlerAI = async (ctx) => { 7 | /** 8 | * OMITIR 9 | */ 10 | const buffer = await downloadMediaMessage(ctx, "buffer"); 11 | const pathTmpOgg = `${process.cwd()}/tmp/voice-note-${Date.now()}.ogg`; 12 | const pathTmpMp3 = `${process.cwd()}/tmp/voice-note-${Date.now()}.mp3`; 13 | await fs.writeFile(pathTmpOgg, buffer); 14 | await convertOggMp3(pathTmpOgg, pathTmpMp3); 15 | const text = await voiceToText(pathTmpMp3); 16 | return text; //el habla1!! 17 | /** 18 | * OMITIR 19 | */ 20 | }; 21 | 22 | module.exports = { handlerAI }; 23 | --------------------------------------------------------------------------------