mirror of
https://github.com/cheveguerra/bot-whatsapp.git
synced 2026-04-17 19:26:23 +00:00
docs(example): example bot
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -21,4 +21,5 @@ lib
|
|||||||
tmp/
|
tmp/
|
||||||
.fleet/
|
.fleet/
|
||||||
example-app/
|
example-app/
|
||||||
qr.svg
|
qr.svg
|
||||||
|
package-lock.json
|
||||||
87
EXAMPLE.md
Normal file
87
EXAMPLE.md
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
```js
|
||||||
|
|
||||||
|
const {
|
||||||
|
createBot,
|
||||||
|
createProvider,
|
||||||
|
createFlow,
|
||||||
|
addKeyword,
|
||||||
|
toSerialize,
|
||||||
|
} = require('@bot-whatsapp/bot')
|
||||||
|
|
||||||
|
const WebWhatsappProvider = require('@bot-whatsapp/provider/web-whatsapp')
|
||||||
|
const MongoAdapter = require('@bot-whatsapp/database/mongo')
|
||||||
|
|
||||||
|
const flowArepa1 = toSerialize(
|
||||||
|
addKeyword(['1', 'AREPA14'])
|
||||||
|
.addAnswer('Esta es una arepa calificada ⭐⭐⭐⭐⭐')
|
||||||
|
.addAnswer(['Ingredientes:', '10g Aguacate', '20g Huevo'].join('\n'))
|
||||||
|
.toJson()
|
||||||
|
)
|
||||||
|
|
||||||
|
const flowArepa2_2 = toSerialize(
|
||||||
|
addKeyword('SI').addAnswer('te pongo huevo de mentira!').toJson()
|
||||||
|
)
|
||||||
|
|
||||||
|
const flowArepa2 = toSerialize(
|
||||||
|
addKeyword(['arepa2'])
|
||||||
|
.addAnswer('Esta es una arepa calificada ⭐⭐⭐⭐')
|
||||||
|
.addAnswer(
|
||||||
|
['Ingredientes:', '10g perico', '20g huevo', '10g queso'].join('\n')
|
||||||
|
)
|
||||||
|
.addAnswer(
|
||||||
|
'Eres Vegano SI o NO',
|
||||||
|
{
|
||||||
|
capture: true,
|
||||||
|
},
|
||||||
|
null,
|
||||||
|
[...flowArepa2_2]
|
||||||
|
)
|
||||||
|
.toJson()
|
||||||
|
)
|
||||||
|
|
||||||
|
const flowArepa3 = toSerialize(
|
||||||
|
addKeyword(['arepa3'])
|
||||||
|
.addAnswer('Esta es una arepa calificada LAMEJOR ⭐⭐⭐⭐⭐')
|
||||||
|
.toJson()
|
||||||
|
)
|
||||||
|
|
||||||
|
//////////////--MENU--PRINCIPAL--//////////////////
|
||||||
|
|
||||||
|
const flujoMenuArepa = addKeyword(['hola', 'ola', 'buenos'])
|
||||||
|
.addAnswer('Bienvenido "Arepera Aji Picante 🤯🚀😅"')
|
||||||
|
.addAnswer(
|
||||||
|
[
|
||||||
|
'El menú de hoy es el siguiente:',
|
||||||
|
'👉 [1 -AREPA14] - Arepa tradicional con Aguacate y Huevo',
|
||||||
|
'👉 [arepa2] - Arepa rellena de perico y huevo con un toque de queso',
|
||||||
|
'👉 [arepa3] - Rellena de Jamon y Queso',
|
||||||
|
].join('\n')
|
||||||
|
)
|
||||||
|
.addAnswer(
|
||||||
|
'Esperando respuesta...',
|
||||||
|
{
|
||||||
|
capture: true,
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
console.log('Enviar un mail!')
|
||||||
|
},
|
||||||
|
[...flowArepa1, ...flowArepa2, ...flowArepa3]
|
||||||
|
)
|
||||||
|
.addAnswer('Gracias!')
|
||||||
|
|
||||||
|
const main = async () => {
|
||||||
|
const adapterDB = new MongoAdapter()
|
||||||
|
const adapterFlow = createFlow([flujoMenuArepa])
|
||||||
|
const adapterProvider = createProvider(WebWhatsappProvider)
|
||||||
|
|
||||||
|
createBot({
|
||||||
|
flow: adapterFlow,
|
||||||
|
provider: adapterProvider,
|
||||||
|
database: adapterDB,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
main()
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
2
TODO.md
2
TODO.md
@@ -21,7 +21,7 @@
|
|||||||
- [ ] JsonFile adapter
|
- [ ] JsonFile adapter
|
||||||
|
|
||||||
### @bot-whatsapp/provider
|
### @bot-whatsapp/provider
|
||||||
- [ ] agregar export package
|
- [X] agregar export package
|
||||||
- [ ] __(doc):__ Video para explicar como implementar nuevos providers
|
- [ ] __(doc):__ Video para explicar como implementar nuevos providers
|
||||||
- [ ] WhatsappWeb provider enviar imagenes
|
- [ ] WhatsappWeb provider enviar imagenes
|
||||||
- [ ] WhatsappWeb provider enviar audio
|
- [ ] WhatsappWeb provider enviar audio
|
||||||
|
|||||||
9664
package-lock.json
generated
9664
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
10
package.json
10
package.json
@@ -22,7 +22,8 @@
|
|||||||
"cli": "node ./packages/cli/bin/cli.js",
|
"cli": "node ./packages/cli/bin/cli.js",
|
||||||
"dev:debug": "node --inspect ./example-app/app.js",
|
"dev:debug": "node --inspect ./example-app/app.js",
|
||||||
"dev": "node ./example-app/app.js",
|
"dev": "node ./example-app/app.js",
|
||||||
"prepare": "npx husky install"
|
"prepare": "npx husky install",
|
||||||
|
"preinstall": "npx only-allow yarn"
|
||||||
},
|
},
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
"packages/bot",
|
"packages/bot",
|
||||||
@@ -62,6 +63,7 @@
|
|||||||
"eslint": "^8.26.0",
|
"eslint": "^8.26.0",
|
||||||
"eslint-config-prettier": "^8.5.0",
|
"eslint-config-prettier": "^8.5.0",
|
||||||
"husky": "^8.0.2",
|
"husky": "^8.0.2",
|
||||||
|
"only-allow": "^1.1.1",
|
||||||
"prettier": "^2.7.1",
|
"prettier": "^2.7.1",
|
||||||
"prompts": "^2.4.2",
|
"prompts": "^2.4.2",
|
||||||
"rimraf": "^3.0.2",
|
"rimraf": "^3.0.2",
|
||||||
@@ -70,9 +72,11 @@
|
|||||||
"rollup-plugin-copy": "^3.4.0",
|
"rollup-plugin-copy": "^3.4.0",
|
||||||
"uvu": "^0.5.6"
|
"uvu": "^0.5.6"
|
||||||
},
|
},
|
||||||
"packageManager": "yarn@3.2.0",
|
"packageManager": "yarn@1.22.19",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=16"
|
"node": ">=16",
|
||||||
|
"npm": "please-use-yarn",
|
||||||
|
"yarn": ">=1"
|
||||||
},
|
},
|
||||||
"author": "Leifer Mendez <leifer33@gmail.com>",
|
"author": "Leifer Mendez <leifer33@gmail.com>",
|
||||||
"config": {
|
"config": {
|
||||||
|
|||||||
@@ -1,68 +0,0 @@
|
|||||||
```js
|
|
||||||
|
|
||||||
const { inout, provider, database } = require('@bot-whatsapp')
|
|
||||||
|
|
||||||
|
|
||||||
const adapterDB = database.instance(
|
|
||||||
{
|
|
||||||
engine:'mysql / pg / mongo / json (json-default)',
|
|
||||||
credentials:{....}
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
const adapterProvider = provider.instance(
|
|
||||||
{
|
|
||||||
vendor:'twilio / web / meta',
|
|
||||||
credentials:{...}
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
const adapterFlow = (() => {
|
|
||||||
const flowA = inout
|
|
||||||
.addKeyword('hola')
|
|
||||||
.addAnswer('Bienvenido a tu tienda 🥲')
|
|
||||||
.addAnswer('escribe *catalogo* o *ofertas*')
|
|
||||||
.toJson()
|
|
||||||
|
|
||||||
const flowB = inout
|
|
||||||
.addKeyword(['catalogo', 'ofertas'])
|
|
||||||
.addAnswer('Este es nuestro CATALOGO mas reciente!', {
|
|
||||||
buttons: [{ body: 'Xiaomi' }, { body: 'Samsung' }],
|
|
||||||
}).toJson()
|
|
||||||
|
|
||||||
const flowC = inout
|
|
||||||
.addKeyword('Xiaomi')
|
|
||||||
.addAnswer('Estos son nuestro productos XIAOMI ....', {
|
|
||||||
media: 'https://....',
|
|
||||||
})
|
|
||||||
.addAnswer('Si quieres mas info escrbie *info*').toJson()
|
|
||||||
|
|
||||||
const flowD = inout
|
|
||||||
.addKeyword('chao!')
|
|
||||||
.addAnswer('bye!')
|
|
||||||
.addAnswer('Recuerda que tengo esta promo', {
|
|
||||||
media: 'https://media2.giphy.com/media/VQJu0IeULuAmCwf5SL/giphy.gif',
|
|
||||||
}).toJson()
|
|
||||||
|
|
||||||
const flowE = inout
|
|
||||||
.addKeyword('Modelo C', { sensitive: false })
|
|
||||||
.addAnswer('100USD', { media: 'http//:...' }).toJson()
|
|
||||||
|
|
||||||
return [...flowA, ...flowB, ...flowC, ...flowC, ...flowD, ...flowE]
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
const bot = await provider.start(
|
|
||||||
{
|
|
||||||
database: adapterDB,
|
|
||||||
flow: adapterFlow,
|
|
||||||
provider:adapterProvider
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
bot.on('message | auth | auth_error ', (ctx) => {
|
|
||||||
....
|
|
||||||
})
|
|
||||||
|
|
||||||
```
|
|
||||||
@@ -4,9 +4,6 @@
|
|||||||
"description": "Esto es el conector a Twilio, Meta, etc...",
|
"description": "Esto es el conector a Twilio, Meta, etc...",
|
||||||
"main": "./lib/mock/index.cjs",
|
"main": "./lib/mock/index.cjs",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
|
||||||
"test.unit": "cross-env NODE_ENV=test node ../../node_modules/uvu/bin.js tests"
|
|
||||||
},
|
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
"author": "",
|
"author": "",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
@@ -14,9 +11,9 @@
|
|||||||
"@bot-whatsapp/bot": "*",
|
"@bot-whatsapp/bot": "*",
|
||||||
"qr-image": "^3.2.0"
|
"qr-image": "^3.2.0"
|
||||||
},
|
},
|
||||||
"files": [
|
"exports": {
|
||||||
"./lib/mock/*",
|
"./mock": "./lib/mock/index.cjs",
|
||||||
"./lib/twilio/*",
|
"./twilio": "./lib/twilio/index.cjs",
|
||||||
"./lib/web-whatsapp/*"
|
"./web-whatsapp": "./lib/web-whatsapp/index.cjs"
|
||||||
]
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ const commonjs = require('@rollup/plugin-commonjs')
|
|||||||
|
|
||||||
module.exports = [
|
module.exports = [
|
||||||
{
|
{
|
||||||
input: join(__dirname, 'web-whatsapp', 'index.js'),
|
input: join(__dirname, 'src', 'web-whatsapp', 'index.js'),
|
||||||
output: {
|
output: {
|
||||||
file: join(__dirname, 'lib', 'web-whatsapp', 'index.cjs'),
|
file: join(__dirname, 'lib', 'web-whatsapp', 'index.cjs'),
|
||||||
format: 'cjs',
|
format: 'cjs',
|
||||||
@@ -11,7 +11,7 @@ module.exports = [
|
|||||||
plugins: [commonjs()],
|
plugins: [commonjs()],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
input: join(__dirname, 'twilio', 'index.js'),
|
input: join(__dirname, 'src', 'twilio', 'index.js'),
|
||||||
output: {
|
output: {
|
||||||
file: join(__dirname, 'lib', 'twilio', 'index.cjs'),
|
file: join(__dirname, 'lib', 'twilio', 'index.cjs'),
|
||||||
format: 'cjs',
|
format: 'cjs',
|
||||||
@@ -19,7 +19,7 @@ module.exports = [
|
|||||||
plugins: [commonjs()],
|
plugins: [commonjs()],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
input: join(__dirname, 'mock', 'index.js'),
|
input: join(__dirname, 'src', 'mock', 'index.js'),
|
||||||
output: {
|
output: {
|
||||||
file: join(__dirname, 'lib', 'mock', 'index.cjs'),
|
file: join(__dirname, 'lib', 'mock', 'index.cjs'),
|
||||||
format: 'cjs',
|
format: 'cjs',
|
||||||
|
|||||||
71
yarn.lock
71
yarn.lock
@@ -1475,6 +1475,13 @@ ajv@^8.11.0:
|
|||||||
require-from-string "^2.0.2"
|
require-from-string "^2.0.2"
|
||||||
uri-js "^4.2.2"
|
uri-js "^4.2.2"
|
||||||
|
|
||||||
|
ansi-align@^3.0.0:
|
||||||
|
version "3.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59"
|
||||||
|
integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
|
||||||
|
dependencies:
|
||||||
|
string-width "^4.1.0"
|
||||||
|
|
||||||
ansi-escapes@^4.2.1:
|
ansi-escapes@^4.2.1:
|
||||||
version "4.3.2"
|
version "4.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
|
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
|
||||||
@@ -1578,6 +1585,20 @@ bowser@^2.11.0:
|
|||||||
resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f"
|
resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f"
|
||||||
integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==
|
integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==
|
||||||
|
|
||||||
|
boxen@^4.2.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64"
|
||||||
|
integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==
|
||||||
|
dependencies:
|
||||||
|
ansi-align "^3.0.0"
|
||||||
|
camelcase "^5.3.1"
|
||||||
|
chalk "^3.0.0"
|
||||||
|
cli-boxes "^2.2.0"
|
||||||
|
string-width "^4.1.0"
|
||||||
|
term-size "^2.1.0"
|
||||||
|
type-fest "^0.8.1"
|
||||||
|
widest-line "^3.1.0"
|
||||||
|
|
||||||
brace-expansion@^1.1.7:
|
brace-expansion@^1.1.7:
|
||||||
version "1.1.11"
|
version "1.1.11"
|
||||||
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
|
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
|
||||||
@@ -1667,6 +1688,11 @@ callsites@^3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
|
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
|
||||||
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
|
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
|
||||||
|
|
||||||
|
camelcase@^5.3.1:
|
||||||
|
version "5.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
|
||||||
|
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
|
||||||
|
|
||||||
ccount@^2.0.0:
|
ccount@^2.0.0:
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5"
|
resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5"
|
||||||
@@ -1681,6 +1707,14 @@ chalk@^2.0.0, chalk@^2.4.1:
|
|||||||
escape-string-regexp "^1.0.5"
|
escape-string-regexp "^1.0.5"
|
||||||
supports-color "^5.3.0"
|
supports-color "^5.3.0"
|
||||||
|
|
||||||
|
chalk@^3.0.0:
|
||||||
|
version "3.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4"
|
||||||
|
integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
|
||||||
|
dependencies:
|
||||||
|
ansi-styles "^4.1.0"
|
||||||
|
supports-color "^7.1.0"
|
||||||
|
|
||||||
chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1:
|
chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1:
|
||||||
version "4.1.2"
|
version "4.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
|
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
|
||||||
@@ -1729,6 +1763,11 @@ chokidar@^3.5.3:
|
|||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents "~2.3.2"
|
fsevents "~2.3.2"
|
||||||
|
|
||||||
|
cli-boxes@^2.2.0:
|
||||||
|
version "2.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f"
|
||||||
|
integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==
|
||||||
|
|
||||||
cli-cursor@^3.1.0:
|
cli-cursor@^3.1.0:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
|
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
|
||||||
@@ -3942,6 +3981,14 @@ onetime@^6.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
mimic-fn "^4.0.0"
|
mimic-fn "^4.0.0"
|
||||||
|
|
||||||
|
only-allow@^1.1.1:
|
||||||
|
version "1.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/only-allow/-/only-allow-1.1.1.tgz#caa4b0f04d6abe2674631877cbfbcdfab537669c"
|
||||||
|
integrity sha512-WE01hpInLQUF3MKK7vhu4p1VZLKb4rL4d+CI3rwwwsToXELx6YawNFhZy3rVU3rpQpI9kF9zFMk4OjB3xwXdJA==
|
||||||
|
dependencies:
|
||||||
|
boxen "^4.2.0"
|
||||||
|
which-pm-runs "^1.1.0"
|
||||||
|
|
||||||
optionator@^0.9.1:
|
optionator@^0.9.1:
|
||||||
version "0.9.1"
|
version "0.9.1"
|
||||||
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
|
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
|
||||||
@@ -4490,7 +4537,7 @@ streamsearch@^1.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
|
resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
|
||||||
integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
|
integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
|
||||||
|
|
||||||
string-width@^4.1.0, string-width@^4.2.0:
|
string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0:
|
||||||
version "4.2.3"
|
version "4.2.3"
|
||||||
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
|
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
|
||||||
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
|
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
|
||||||
@@ -4589,6 +4636,11 @@ supports-preserve-symlinks-flag@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
|
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
|
||||||
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
||||||
|
|
||||||
|
term-size@^2.1.0:
|
||||||
|
version "2.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54"
|
||||||
|
integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==
|
||||||
|
|
||||||
test-exclude@^6.0.0:
|
test-exclude@^6.0.0:
|
||||||
version "6.0.0"
|
version "6.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
|
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
|
||||||
@@ -4720,6 +4772,11 @@ type-fest@^0.21.3:
|
|||||||
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
|
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
|
||||||
integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
|
integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
|
||||||
|
|
||||||
|
type-fest@^0.8.1:
|
||||||
|
version "0.8.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
|
||||||
|
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
|
||||||
|
|
||||||
typescript@4.9.3, typescript@^4.6.4:
|
typescript@4.9.3, typescript@^4.6.4:
|
||||||
version "4.9.3"
|
version "4.9.3"
|
||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.3.tgz#3aea307c1746b8c384435d8ac36b8a2e580d85db"
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.3.tgz#3aea307c1746b8c384435d8ac36b8a2e580d85db"
|
||||||
@@ -4942,6 +4999,11 @@ whatwg-url@^11.0.0:
|
|||||||
tr46 "^3.0.0"
|
tr46 "^3.0.0"
|
||||||
webidl-conversions "^7.0.0"
|
webidl-conversions "^7.0.0"
|
||||||
|
|
||||||
|
which-pm-runs@^1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.1.0.tgz#35ccf7b1a0fce87bd8b92a478c9d045785d3bf35"
|
||||||
|
integrity sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==
|
||||||
|
|
||||||
which@^1.2.14:
|
which@^1.2.14:
|
||||||
version "1.3.1"
|
version "1.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
|
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
|
||||||
@@ -4956,6 +5018,13 @@ which@^2.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
isexe "^2.0.0"
|
isexe "^2.0.0"
|
||||||
|
|
||||||
|
widest-line@^3.1.0:
|
||||||
|
version "3.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca"
|
||||||
|
integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==
|
||||||
|
dependencies:
|
||||||
|
string-width "^4.0.0"
|
||||||
|
|
||||||
word-wrap@^1.0.3, word-wrap@^1.2.3:
|
word-wrap@^1.0.3, word-wrap@^1.2.3:
|
||||||
version "1.2.3"
|
version "1.2.3"
|
||||||
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
|
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
|
||||||
|
|||||||
Reference in New Issue
Block a user