├── .env.example ├── .husky └── pre-commit ├── .lintstagedrc ├── .prettierrc ├── data └── config.json ├── Dockerfile ├── commands ├── pin.js ├── bireysel-destek.js ├── feedback.js ├── kurumsal-destek.js ├── fikir.js ├── rol.js ├── komutlar.js ├── kayit.js ├── projeler.js └── sescek.js ├── .eslintrc.js ├── .github ├── ISSUE_TEMPLATE │ ├── feature_request.md │ └── bug_report.md └── workflows │ └── discord-prod.yml ├── package.json ├── deploy-commands.js ├── halt-commands └── translate.js ├── task-definition.json ├── index.js ├── events ├── projects-button-handler.js ├── announcement-language-button.js └── ready.js ├── .gitignore ├── README.md └── yarn.lock /.env.example: -------------------------------------------------------------------------------- 1 | TOKEN= 2 | GUILD_ID= 3 | CLIENT_ID= -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | . "$(dirname -- "$0")/_/husky.sh" 3 | 4 | yarn lint-staged 5 | -------------------------------------------------------------------------------- /.lintstagedrc: -------------------------------------------------------------------------------- 1 | { 2 | "*.js": [ 3 | "prettier --write", 4 | "eslint --fix" 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "all", 3 | "tabWidth": 2, 4 | "semi": false, 5 | "singleQuote": true, 6 | "printWidth": 120 7 | } 8 | -------------------------------------------------------------------------------- /data/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "mainAnnouncement": { 3 | "channelId": "1074019564096069793", 4 | "morningInterval": "3600", 5 | "nightInterval": "7200", 6 | "morningTime": "9", 7 | "nightTime": "21" 8 | } 9 | } -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:16-alpine 2 | 3 | WORKDIR /app 4 | 5 | COPY package.json yarn.lock ./ 6 | 7 | RUN yarn install --frozen-lockfile 8 | 9 | COPY . . 10 | 11 | RUN apk add --no-cache bash tini 12 | 13 | ENTRYPOINT ["/sbin/tini", "--"] 14 | 15 | CMD ["/bin/bash", "-c", "node deploy-commands.js; node index.js"] -------------------------------------------------------------------------------- /commands/pin.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder().setName('pin').setDescription('Sabitlenmiş mesajları kontrol edilmesi hatırlatılır.'), 5 | async execute(interaction) { 6 | await interaction.reply({ 7 | content: `‼**Lütfen sabitlenmiş mesajları kontrol edin.**‼`, 8 | ephemeral: false, 9 | }) 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | commonjs: true, 4 | es2021: true, 5 | node: true, 6 | }, 7 | extends: ['airbnb-base', 'prettier'], 8 | overrides: [], 9 | parserOptions: { 10 | ecmaVersion: 'latest', 11 | }, 12 | plugins: ['prettier'], 13 | rules: { 14 | 'prettier/prettier': 'error', 15 | 'no-restricted-syntax': 'off', 16 | 'import/no-dynamic-require': 'off', 17 | 'global-require': 'off', 18 | 'no-console': 'off', 19 | }, 20 | } 21 | -------------------------------------------------------------------------------- /commands/bireysel-destek.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('bireysel-destek') 6 | .setDescription('Bize nasıl bireysel destek verebileceğiniz hakkında bilgi içerir.'), 7 | async execute(interaction) { 8 | await interaction.reply({ 9 | content: `Merhaba, ${interaction.user} eğer formu dolduysanız size ulaşabiliriz.\nŞuan insan kaynağı dolmuş durumdadır.\n[Form linki için tıklayın!]()`, 10 | ephemeral: true, 11 | }) 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /commands/feedback.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('feedback') 6 | .setDescription('Feedbacklerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir.'), 7 | async execute(interaction) { 8 | await interaction.reply({ 9 | content: `${interaction.user}, Geliştirilen uygulamalar ve sunucu ile ilgili feedbacklerinizi aşağıdaki formu doldurarak bize iletebilirsiniz.\n[Form linki için tıklayın!]()`, 10 | ephemeral: true, 11 | }) 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /commands/kurumsal-destek.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('kurumsal-destek') 6 | .setDescription('Bize nasıl kurumsal destek verebileceğiniz hakkında bilgi içerir.'), 7 | async execute(interaction) { 8 | await interaction.reply({ 9 | content: `${interaction.user}, İlginiz için teşekkürler sizi daha yakından tanımamız için aşağıdaki formu lütfen doldurun. Kurumsal iletişim ekibimiz sizler ile iletişime geçeceklerdir.\n[Form linki için tıklayın!]()`, 10 | ephemeral: true, 11 | }) 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Yeni Özellik İsteği 3 | about: Botta olmasını istediğiniz bir özellik varsa burayı kullanın. 4 | title: "[FEAT]" 5 | labels: "enhancement" 6 | assignees: "" 7 | --- 8 | 9 | **Özellik İsteğiniz Bir Sorunla mı İlgili? Lütfen Açıklayın.** 10 | Sorunun ne olduğuna dair ayrıntılı bir açıklama. Örn. "[...] komutu olması sunucuda yaşadığımız [...] sorununu çözecektir." 11 | 12 | **İstediğiniz Çözümü Açıklayın** 13 | Görmek istediğiniz çözümün ayrıntılı bir açıklaması. 14 | 15 | **Eğer Düşündüyseniz Alternatif Çözümlerden Bahsedin** 16 | Alternatif çözümün ayrıntılı bir açıklaması. 17 | 18 | **Ekstra Bilgi** 19 | Ekstra bilgi eklemek isterseniz buraya yazabilirsiniz. 20 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug Raporu 3 | about: Bir hata bulduğunuzda lütfen burayı kullanın. 4 | title: "[BUG] " 5 | labels: "bug" 6 | assignees: "" 7 | --- 8 | 9 | **Karşılaştığınız hatayı Açıklayın** 10 | Karşılaştığınız hatanın ne olduğunu ayrıntılı bir şekilde açıklayın. 11 | 12 | **Hatayı Tekrar Üretmek İçin Gerekli Adımlar** 13 | Örneğin: 14 | 15 | 1. '...' ya gidin 16 | 2. '....' ya tıklayın 17 | 3. '....' ya kaydırın 18 | 4. Hata görünür 19 | 20 | **Beklenen Davranış** 21 | Olmasını beklediğiniz şeyin açık ve özlü bir açıklaması. 22 | 23 | **Ekran Görüntüleri** 24 | Eğer varsa ekran görüntüleri ekleyin. 25 | 26 | **Ekstra Bilgi** 27 | Ekstra bilgi eklemek isterseniz buraya yazabilirsiniz. 28 | -------------------------------------------------------------------------------- /commands/fikir.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('fikir') 6 | .setDescription('Fikirlerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir.'), 7 | async execute(interaction) { 8 | await interaction.reply({ 9 | content: `Fikirlerinizi bizimle paylaşmaya hevesli olduğunuz için çok mutluyuz, ${interaction.user}. Fakat fikirlerinizin incelenmesi ve hiç bir fikrin gözden kaçmaması için aşağıdaki formu doldurmanız gerekmektedir.\n[Form linki için tıklayın!]()\n[Github Discussions]()`, 10 | ephemeral: true, 11 | }) 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "discord-it-deprem-yardim", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "license": "MIT", 6 | "scripts": { 7 | "start": "node deploy-commands.js && node index.js", 8 | "dev": "nodemon index.js", 9 | "prepare": "husky install" 10 | }, 11 | "dependencies": { 12 | 13 | "discord-logs": "^2.2.1", 14 | "discord.js": "^14.7.1", 15 | "dotenv": "^16.0.3", 16 | "nodemon": "^2.0.20", 17 | "translatte": "^3.0.1" 18 | }, 19 | "devDependencies": { 20 | "eslint": "^7.32.0 || ^8.2.0", 21 | "eslint-config-airbnb-base": "^15.0.0", 22 | "eslint-config-prettier": "^8.6.0", 23 | "eslint-plugin-import": "^2.25.2", 24 | "eslint-plugin-prettier": "^4.2.1", 25 | "husky": "^8.0.3", 26 | "lint-staged": "^13.1.1", 27 | "prettier": "^2.8.4" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /commands/rol.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('rol') 6 | .setDescription('Nasıl rol alınabileceği ve kayıt olabileceği hakkında bilgi içerir.'), 7 | async execute(interaction) { 8 | await interaction.reply({ 9 | content: 10 | 'Çok kısa sürede kocaman bir ekip olduk, proje yönetiminin sağlıklı bir şekilde yapılabilmesi için yeni gelen arkadaşlarımızın aşağıdaki kayıt formunu doldurması gerekmektedir. Formu doldurduktan sonra ilgili ekiplerimiz başvurunuzu inceleyerek ihtiyaç halinde sizinle iletişime geçeceklerdir. O zaman kadar duyuru kanallarımızdan tüm projelerimiz hakkında bilgi alabilirsin.\n[Form linki için tıklayın!]()', 11 | ephemeral: true, 12 | }) 13 | }, 14 | } 15 | -------------------------------------------------------------------------------- /deploy-commands.js: -------------------------------------------------------------------------------- 1 | const { REST, Routes } = require('discord.js'); 2 | require('dotenv').config(); 3 | const { TOKEN, GUILD_ID, CLIENT_ID } = process.env; 4 | const fs = require('node:fs'); 5 | 6 | const commands = []; 7 | const commandFiles = fs 8 | .readdirSync('./commands') 9 | .filter((file) => file.endsWith('.js')); 10 | 11 | for (const file of commandFiles) { 12 | const command = require(`./commands/${file}`); 13 | commands.push(command.data.toJSON()); 14 | } 15 | 16 | const rest = new REST({ version: '10' }).setToken(TOKEN); 17 | 18 | (async () => { 19 | try { 20 | console.log( 21 | `Started refreshing ${commands.length} application (/) commands.` 22 | ); 23 | 24 | const data = await rest.put( 25 | Routes.applicationGuildCommands(CLIENT_ID, GUILD_ID), 26 | { body: commands } 27 | ); 28 | 29 | console.log( 30 | `Successfully reloaded ${data.length} application (/) commands.` 31 | ); 32 | } catch (error) { 33 | console.error(error); 34 | } 35 | })(); 36 | -------------------------------------------------------------------------------- /commands/komutlar.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder().setName('komutlar').setDescription('Sunucudaki komutlar hakkında bilgi verir.'), 5 | async execute(interaction) { 6 | await interaction.reply({ 7 | content: `${interaction.user},\n\`/komutlar\`: IT Deprem Yardım içerisinde kullanabileceğiniz komutları listeler.\n\`/projeler\`: IT Deprem Yardım tarafından geliştirilen projelerimizi görüntüleyebilir ve hakkında bilgi alabilirsiniz.\n\`/rol\`: Nasıl rol alınabileceği ve kayıt olabileceği hakkında bilgi içerir.\n\`/fikir\`: Fikirlerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir.\n\`/feedback\`: Feedbacklerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir.\n\`/bireysel-destek\`: Bizlere destek olmak için forma ulaşmabilirsiniz.\n\`/kurumsal-destek\`: Bize nasıl kurumsal destek verebileceğiniz hakkında bilgi içerir.\n\`/kayıt [ad] [soyad]\`: Sunucu içerisinde adınızı ve soyadınızı güncellemenizi sağlar.\n\`/pin\` Sabitlenmiş mesajların kontrol edilmesi hatırlatılır.\n\`/sescek\` Belirtilen kişiyi olduğun sesli kanala çeker.`, 8 | ephemeral: true, 9 | }) 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /commands/kayit.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('kayıt') 6 | .setDescription('Ad ve soyad değiştirmenizi sağlar.') 7 | .addStringOption((option) => option.setName('ad').setDescription('Adınızı giriniz.').setRequired(true)) 8 | .addStringOption((option) => option.setName('soyad').setDescription('Soyadınızı giriniz.').setRequired(true)), 9 | 10 | async execute(interaction) { 11 | try { 12 | const ad = interaction.options.getString('ad') 13 | const soyad = interaction.options.getString('soyad') 14 | await interaction.member.setNickname(`${ad} ${soyad}`) 15 | await interaction.reply({ 16 | content: `${interaction.user}, Ad ve soyadınız değiştirildi.`, 17 | ephemeral: true, 18 | }) 19 | } catch (error) { 20 | console.error(error) 21 | // console.log(error.rawError) 22 | // console.log(error.rawError.message) 23 | await interaction.reply({ 24 | content: `${interaction.user}, Ad ve soyadınız değiştirilemedi. **Hata:** ${error.rawError.code} - ${error.rawError.message}`, 25 | }) 26 | } 27 | }, 28 | } 29 | -------------------------------------------------------------------------------- /commands/projeler.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder, ActionRowBuilder, ButtonBuilder, EmbedBuilder, ButtonStyle } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder().setName('projeler').setDescription('Projeler hakkında bilgi verir.'), 5 | async execute(interaction) { 6 | const embed = new EmbedBuilder() 7 | .setColor(0xf26666) 8 | .setAuthor({ 9 | name: 'Aşağıda bulunan projelerden ilgili olanı seçip bilgi alabilirsiniz.', 10 | }) 11 | .setDescription('1. depremyardim.com\n2. beniyiyim.com\n3. afetharita.com\n4. afetbilgi.com') 12 | 13 | const row = new ActionRowBuilder() 14 | .addComponents( 15 | new ButtonBuilder().setCustomId('depremyardimcom').setLabel('depremyardim.com').setStyle(ButtonStyle.Primary), 16 | ) 17 | .addComponents( 18 | new ButtonBuilder().setCustomId('beniyiyimcom').setLabel('beniyiyim.com').setStyle(ButtonStyle.Primary), 19 | ) 20 | .addComponents( 21 | new ButtonBuilder().setCustomId('afetharitacom').setLabel('afetharita.com').setStyle(ButtonStyle.Primary), 22 | ) 23 | .addComponents( 24 | new ButtonBuilder().setCustomId('afetbilgicom').setLabel('afetbilgi.com').setStyle(ButtonStyle.Primary), 25 | ) 26 | 27 | await interaction.reply({ 28 | embeds: [embed], 29 | components: [row], 30 | ephemeral: true, 31 | }) 32 | }, 33 | } 34 | -------------------------------------------------------------------------------- /commands/sescek.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | 3 | module.exports = { 4 | data: new SlashCommandBuilder() 5 | .setName('sescek') 6 | .setDescription('İstenilen kişiyi komudu kullanan kullanıcının olduğu sesli kanala çeker') 7 | .setDefaultMemberPermissions(16777216) 8 | .addUserOption((option) => 9 | option.setName('kullanıcı').setDescription('(@etiketleyerek) Çekmek istediğin kişi').setRequired(true), 10 | ), 11 | 12 | execute(interaction) { 13 | let self, user 14 | 15 | interaction.guild.members.fetch(interaction.member.user.id).then((selfMember) => { 16 | self = selfMember 17 | 18 | interaction.guild.members.fetch(interaction.options.getUser('kullanıcı').id).then((userMember) => { 19 | user = userMember 20 | 21 | if (!self.voice.channel) return interaction.reply({ content: 'sesli kanalda olmalısın', ephemeral: true }) 22 | 23 | if (!user.voice.channel) 24 | return interaction.reply({ content: 'sesli kanalda olmayan birisini çekemezsin', ephemeral: true }) 25 | 26 | user.voice 27 | .setChannel(self.voice.channel) 28 | .then((user) => { 29 | interaction.reply({ content: `${user} başarılı şekilde çekildi`, ephemeral: true }) 30 | }) 31 | .catch((error) => { 32 | console.error(error) 33 | interaction.reply({ 34 | content: `kullanıcı çekilemedi **Hata:**`, 35 | ephemeral: true, 36 | }) 37 | }) 38 | }) 39 | }) 40 | }, 41 | } 42 | -------------------------------------------------------------------------------- /halt-commands/translate.js: -------------------------------------------------------------------------------- 1 | const { SlashCommandBuilder } = require('discord.js') 2 | const translate = require('translatte') 3 | 4 | module.exports = { 5 | data: new SlashCommandBuilder() 6 | .setName('translate') 7 | .setDescription(' Translate Bla Bla To Leanguage (EN,SY)') 8 | .addStringOption((option) => option.setName('word').setDescription('Word to translate').setRequired(true)) 9 | .addStringOption((option) => option.setName('language').setDescription('Language to translate').setRequired(true)), 10 | 11 | async execute(interaction) { 12 | try { 13 | const word = interaction.options.getString('word') 14 | const language = interaction.options.getString('language') 15 | const result = await translate(word, { to: language.toUpperCase() }) 16 | console.log('reuslt:', result) 17 | await interaction.reply( 18 | `${interaction.user} : [${result.from.language.iso.toUpperCase()}]->[${language.toUpperCase()}] ${ 19 | result.text 20 | }`, 21 | ) 22 | } catch (error) { 23 | console.error(error) 24 | console.log(error.rawError) 25 | console.log(error.rawError.message) 26 | // rawError: { message: 'Unknown interaction', code: 10062 }, 27 | if (error.rawError) { 28 | await interaction.reply( 29 | `Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz. **Hata:** ${error.rawError.message} (${error.rawError.code})`, 30 | ) 31 | } else { 32 | await interaction.reply(`Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz. **Hata:** ${error.message}`) 33 | } 34 | } 35 | }, 36 | } 37 | -------------------------------------------------------------------------------- /task-definition.json: -------------------------------------------------------------------------------- 1 | { 2 | "containerDefinitions": [ 3 | { 4 | "name": "container-name", 5 | "image": "366354050833.dkr.ecr.eu-central-1.amazonaws.com/discord-ecr:latest", 6 | "cpu": 512, 7 | "memory": 1024, 8 | "portMappings": [], 9 | "essential": true, 10 | "environment": [], 11 | "environmentFiles": [], 12 | "mountPoints": [], 13 | "volumesFrom": [], 14 | "secrets": [ 15 | { 16 | "name": "TOKEN", 17 | "valueFrom": "arn:aws:secretsmanager:eu-central-1:366354050833:secret:discord-bot-prod-env-MWQ2lL:TOKEN::" 18 | }, 19 | { 20 | "name": "GUILD_ID", 21 | "valueFrom": "arn:aws:secretsmanager:eu-central-1:366354050833:secret:discord-bot-prod-env-MWQ2lL:GUILD_ID::" 22 | }, 23 | { 24 | "name": "CLIENT_ID", 25 | "valueFrom": "arn:aws:secretsmanager:eu-central-1:366354050833:secret:discord-bot-prod-env-MWQ2lL:CLIENT_ID::" 26 | } 27 | ], 28 | "logConfiguration": { 29 | "logDriver": "awslogs", 30 | "options": { 31 | "awslogs-create-group": "true", 32 | "awslogs-group": "/ecs/discordbot", 33 | "awslogs-region": "eu-central-1", 34 | "awslogs-stream-prefix": "ecs" 35 | } 36 | } 37 | } 38 | ], 39 | "family": "discordbot-TD", 40 | "executionRoleArn": "arn:aws:iam::366354050833:role/ecsServiceRole", 41 | "networkMode": "awsvpc", 42 | "volumes": [], 43 | "placementConstraints": [], 44 | "requiresCompatibilities": [ 45 | "FARGATE" 46 | ], 47 | "cpu": "512", 48 | "memory": "1024", 49 | "tags": [] 50 | } -------------------------------------------------------------------------------- /.github/workflows/discord-prod.yml: -------------------------------------------------------------------------------- 1 | name: Deploy Discord Prod 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | 8 | jobs: 9 | deploy: 10 | name: Deploy 11 | runs-on: ubuntu-latest 12 | environment: prod 13 | 14 | steps: 15 | - name: Checkout 16 | uses: actions/checkout@v3 17 | 18 | - name: Configure AWS credentials 19 | uses: aws-actions/configure-aws-credentials@v1 20 | with: 21 | aws-access-key-id: ${{ secrets.LAB_AWS_ACCESS_KEY_ID }} 22 | aws-secret-access-key: ${{ secrets.LAB_AWS_SECRET_ACCESS_KEY }} 23 | aws-region: eu-central-1 24 | 25 | - name: Login to Amazon ECR 26 | id: login-ecr 27 | uses: aws-actions/amazon-ecr-login@v1 28 | 29 | - name: Build, tag, and push image to Amazon ECR 30 | id: build-image 31 | env: 32 | ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} 33 | ECR_REPOSITORY: discord-ecr 34 | IMAGE_TAG: ${{ github.sha }} 35 | run: | 36 | # Build a docker container and 37 | # push it to ECR so that it can 38 | # be deployed to ECS. 39 | docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG . 40 | docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG 41 | echo "::set-output name=image::$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG" 42 | 43 | - name: Fill in the new image ID in the Amazon ECS task definition 44 | id: task-def 45 | uses: aws-actions/amazon-ecs-render-task-definition@v1 46 | with: 47 | task-definition: task-definition.json 48 | container-name: container-name 49 | image: ${{ steps.build-image.outputs.image }} 50 | 51 | - name: Deploy Amazon ECS task definition 52 | uses: aws-actions/amazon-ecs-deploy-task-definition@v1 53 | with: 54 | task-definition: ${{ steps.task-def.outputs.task-definition }} 55 | service: discordbot-service 56 | cluster: base-cluster 57 | wait-for-service-stability: false 58 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const { Client, Events, Collection, GatewayIntentBits } = require('discord.js') 2 | const fs = require('node:fs') 3 | const path = require('node:path') 4 | require('dotenv').config() 5 | 6 | const token = process.env.TOKEN 7 | 8 | const client = new Client({ 9 | intents: [ 10 | GatewayIntentBits.Guilds, 11 | GatewayIntentBits.GuildMessages, 12 | GatewayIntentBits.MessageContent, 13 | GatewayIntentBits.GuildVoiceStates, 14 | GatewayIntentBits.GuildPresences, 15 | GatewayIntentBits.GuildMembers, 16 | ], 17 | }) 18 | const logs = require('discord-logs') 19 | 20 | logs(client, { 21 | debug: true, 22 | }) 23 | 24 | client.commands = new Collection() 25 | const commandsPath = path.join(__dirname, 'commands') 26 | const commandFiles = fs.readdirSync(commandsPath).filter((file) => file.endsWith('.js')) 27 | 28 | for (const file of commandFiles) { 29 | const filePath = path.join(commandsPath, file) 30 | const command = require(filePath) 31 | client.commands.set(command.data.name, command) 32 | } 33 | 34 | const eventsPath = path.join(__dirname, 'events') 35 | const eventFiles = fs.readdirSync(eventsPath).filter((file) => file.endsWith('.js')) 36 | 37 | for (const file of eventFiles) { 38 | const filePath = path.join(eventsPath, file) 39 | const event = require(filePath) 40 | if (event.once) { 41 | client.once(event.name, (...args) => event.execute(...args)) 42 | } else { 43 | client.on(event.name, (...args) => event.execute(...args)) 44 | } 45 | } 46 | 47 | client.on(Events.InteractionCreate, async (interaction) => { 48 | if (!interaction.isChatInputCommand()) return 49 | 50 | const command = client.commands.get(interaction.commandName) 51 | 52 | if (!command) return 53 | 54 | try { 55 | await command.execute(interaction) 56 | } catch (error) { 57 | console.error(error) 58 | await interaction.reply({ 59 | content: 'There was an error while executing this command!', 60 | ephemeral: true, 61 | }) 62 | } 63 | }) 64 | 65 | // call variable from the dockerfile environment 66 | // console.log(process.env.Token_TEST); 67 | client.login(token) 68 | -------------------------------------------------------------------------------- /events/projects-button-handler.js: -------------------------------------------------------------------------------- 1 | const { ActionRowBuilder, ButtonBuilder, ButtonStyle } = require('discord.js') 2 | 3 | const sites = { 4 | depremyardimcom: { 5 | url: 'https://depremyardim.com', 6 | description: 7 | 'Depremyardim.com afet zamanlarında hayatını kaybetmekte tehlikeye düşen insanlar için bir fırsattır. Kullanıcılar, kendileri veya yardıma ihtiyaç duyan insanların bilgilerini, siteye ekleyebilirler. Bu bilgiler, AFAD ve TSK gibi yardım kuruluşlarına doğrudan yönlendirilir ve bu şekilde afetzedelerin kurtarılmasına yardımcı olunur. Depremyardim.com, depremzedelerin erken müdahale ile hayatta kalma şansını arttırır.', 8 | }, 9 | beniyiyimcom: { 10 | url: 'https://beniyiyim.com', 11 | description: 12 | 'Beniyiyim.com Hayat kurtaran bir adım: Beniyiyim.com. Deprem, sel gibi doğal afetler sonrası enkaz altında kalanların anlık durumlarını bildirebilmeleri veya yardım için çağrısında bulunabilmeleri için geliştirilen bir uygulamadır. Konum bilgilerinizi uygulamaya girerek afet durumunda hayatınızı veya başkalarının hayatını kurtarabilirsiniz.', 13 | }, 14 | afetharitacom: { 15 | url: 'https://afetharita.com', 16 | description: 17 | 'Afetharita.com Afet durumlarında enkaz altındaki veya yardıma ihtiyacı olanların anlık durumlarını takip edebilir veya yardım için çağrıda bulunabilirsiniz.', 18 | }, 19 | afetbilgicom: { 20 | url: 'https://afetbilgi.com', 21 | description: 22 | 'Afetbilgi.com Deprem sonrası hayati bilgiye ihtiyaç duyduğunuzda Afetbilgi.com sizin yanınızda. Geçici barınma ve toplanma alanları, önemli telefon numaraları, bağış kanalları gibi hayati bilgilere buradan ulaşabilirsiniz.', 23 | }, 24 | } 25 | 26 | module.exports = { 27 | name: 'interactionCreate', 28 | /** 29 | * @param interaction {import('discord.js').Interaction} 30 | * @description butonlarda tıklanılan siteler hakkında bilgi gönderir. 31 | */ 32 | async execute(interaction) { 33 | if (!interaction.isButton()) return 34 | 35 | const { customId } = interaction 36 | const site = sites[customId] 37 | 38 | if (!site) return 39 | await interaction.deferReply({ ephemeral: true }) 40 | const row = new ActionRowBuilder().addComponents( 41 | new ButtonBuilder().setLabel('Siteye Git').setURL(site.url).setStyle(ButtonStyle.Link), 42 | ) 43 | 44 | interaction.editReply({ 45 | content: `${interaction.user} \n**${customId}**, ${site.description}`, 46 | components: [row], 47 | ephemeral: true, 48 | }) 49 | }, 50 | } 51 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | .pnpm-debug.log* 9 | 10 | # Diagnostic reports (https://nodejs.org/api/report.html) 11 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 12 | 13 | # Runtime data 14 | pids 15 | *.pid 16 | *.seed 17 | *.pid.lock 18 | 19 | # Directory for instrumented libs generated by jscoverage/JSCover 20 | lib-cov 21 | 22 | # Coverage directory used by tools like istanbul 23 | coverage 24 | *.lcov 25 | 26 | # nyc test coverage 27 | .nyc_output 28 | 29 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 30 | .grunt 31 | 32 | # Bower dependency directory (https://bower.io/) 33 | bower_components 34 | 35 | # node-waf configuration 36 | .lock-wscript 37 | 38 | # Compiled binary addons (https://nodejs.org/api/addons.html) 39 | build/Release 40 | 41 | # Dependency directories 42 | node_modules/ 43 | jspm_packages/ 44 | 45 | # Snowpack dependency directory (https://snowpack.dev/) 46 | web_modules/ 47 | 48 | # TypeScript cache 49 | *.tsbuildinfo 50 | 51 | # Optional npm cache directory 52 | .npm 53 | 54 | # Optional eslint cache 55 | .eslintcache 56 | 57 | # Optional stylelint cache 58 | .stylelintcache 59 | 60 | # Microbundle cache 61 | .rpt2_cache/ 62 | .rts2_cache_cjs/ 63 | .rts2_cache_es/ 64 | .rts2_cache_umd/ 65 | 66 | # Optional REPL history 67 | .node_repl_history 68 | 69 | # Output of 'npm pack' 70 | *.tgz 71 | 72 | # Yarn Integrity file 73 | .yarn-integrity 74 | 75 | # dotenv environment variable files 76 | .env 77 | .env.development.local 78 | .env.test.local 79 | .env.production.local 80 | .env.local 81 | 82 | # parcel-bundler cache (https://parceljs.org/) 83 | .cache 84 | .parcel-cache 85 | 86 | # Next.js build output 87 | .next 88 | out 89 | 90 | # Nuxt.js build / generate output 91 | .nuxt 92 | dist 93 | 94 | # Gatsby files 95 | .cache/ 96 | # Comment in the public line in if your project uses Gatsby and not Next.js 97 | # https://nextjs.org/blog/next-9-1#public-directory-support 98 | # public 99 | 100 | # vuepress build output 101 | .vuepress/dist 102 | 103 | # vuepress v2.x temp and cache directory 104 | .temp 105 | .cache 106 | 107 | # Docusaurus cache and generated files 108 | .docusaurus 109 | 110 | # Serverless directories 111 | .serverless/ 112 | 113 | # FuseBox cache 114 | .fusebox/ 115 | 116 | # DynamoDB Local files 117 | .dynamodb/ 118 | 119 | # TernJS port file 120 | .tern-port 121 | 122 | # Stores VSCode versions used for testing VSCode extensions 123 | .vscode-test 124 | 125 | # yarn v2 126 | .yarn/cache 127 | .yarn/unplugged 128 | .yarn/build-state.yml 129 | .yarn/install-state.gz 130 | .pnp.* 131 | 132 | # config files 133 | config.json 134 | 135 | # lock files (Yarn.lock is not included because it is used in docker) 136 | package-lock.json 137 | 138 | .idea -------------------------------------------------------------------------------- /events/announcement-language-button.js: -------------------------------------------------------------------------------- 1 | const { EmbedBuilder } = require('discord.js') 2 | 3 | const announcements = { 4 | announcementEn: { 5 | title: 'Hello everyone, welcome! 🙌🏻', 6 | description: `We have became a huge team in a very short time. In order for the project management to be carried out better. Dear new members should fill in the registration form below. After filling out the form, our related teams will review your application and contact you if needed. In this process, you can get more information about all our projects from our announcement channels.\n**[📌 Registration Form](https://app.retable.io/form/j3DtfkIkYlqj2cxn)**\n\nWe are very happy that you are eager to share your ideas with us. If you want to share new ideas and want us to evaluate your ideas, you can fill out the form below. We are very happy that you are eager to share your ideas with us. If you want to share new ideas and want us to evaluate your ideas, you can fill out the form below.\n**[📌 Idea Form](https://app.retable.io/form/RVC67K3Ai5kQ5w4s)** | **[🗣 Github Discussions]()**\n\nYou can send us your feedback about the developed projects or the Açık Yazılım Ağı server by filling out the form below.\n **[📌 Feedback Form](https://app.retable.io/form/NIfo34pdWuweWtfI)**\n\nThank you for your interest, please fill out the form below so that we can get to know you better. Our corporate communication team will contact you. Thank you for your interest, please fill out the form below so that we can get to know you better. Our corporate communication team will contact you.\n**[📌 Corporate Support Form](https://app.retable.io/form/qdjgyl2NHrE5CLnA)**`, 7 | fields: [ 8 | { 9 | name: '**Açık Yazılım Ağı**', 10 | value: 11 | '**[⛓ Github Repositories](https://github.com/orgs/acikkaynak/repositories)\n[⛓ Instagram](https://www.instagram.com/acikyazilimagi/)\n[⛓ Twitter](https://twitter.com/acikyazilimagi)\n[⛓ Linktree](https://linktr.ee/acikyazilimagi)**', 12 | }, 13 | ], 14 | footer: 'This message is sent automatically.', 15 | }, 16 | } 17 | 18 | module.exports = { 19 | name: 'interactionCreate', 20 | /** 21 | * @param interaction {import('discord.js').Interaction} 22 | * @description butonlarda tıklanılan siteler hakkında bilgi gönderir. 23 | */ 24 | async execute(interaction) { 25 | if (!interaction.isButton()) return 26 | 27 | const { customId } = interaction 28 | const announcement = announcements[customId] 29 | 30 | if (!announcement) return 31 | await interaction.deferReply({ ephemeral: true }) 32 | const embed = new EmbedBuilder() 33 | .setColor(0xf26666) 34 | .setTitle(announcement.title) 35 | .setDescription(announcement.description) 36 | .setFooter({ text: announcement.footer }) 37 | announcement.fields.forEach((field) => { 38 | embed.addFields({ 39 | name: field.name, 40 | value: field.value, 41 | }) 42 | }) 43 | 44 | interaction.editReply({ 45 | embeds: [embed], 46 | ephemeral: true, 47 | }) 48 | }, 49 | } 50 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # IT Deprem Yardım Discord Botu 2 | Bu botun amacı IT Deprem Yardım sunucusunda bulunan üyelerin sıkça sorduğu soruları hızlıca cevaplamak ve moderasyona yardımcı olma amacıyla yapılmıştır. 3 | 4 | 1. depremyardim.com 5 | 2. beniyiyim.com 6 | 3. afetharita.com 7 | 4. afetbilgi.com 8 | Aşağıdaki seçilebilir pencereden bilgi almak istediğiniz projeyi seçebilirsiniz. 9 | 10 | Reply (Embedde değil); 11 | 1. **Depremyardim.com** - afet zamanlarında hayatını kaybetmekte tehlikeye düşen insanlar için bir fırsattır. Kullanıcılar, kendileri veya yardıma ihtiyaç duyan insanların bilgilerini, siteye ekleyebilirler. Bu bilgiler, AFAD ve TSK gibi yardım kuruluşlarına doğrudan yönlendirilir ve bu şekilde afetzedelerin kurtarılmasına yardımcı olunur. Depremyardim.com, depremzedelerin erken müdahale ile hayatta kalma şansını arttırır. 12 | 13 | 2. **Beniyiyim.com** - Hayat kurtaran bir adım: Beniyiyim.com. Deprem, sel gibi doğal afetler sonrası enkaz altında kalanların anlık durumlarını bildirebilmeleri veya yardım için çağrısında bulunabilmeleri için geliştirilen bir uygulamadır. Konum bilgilerinizi uygulamaya girerek afet durumunda hayatınızı veya başkalarının hayatını kurtarabilirsiniz. 14 | 15 | 3. **Afetharita.com** - Afetharita.com ile afet durumlarında enkaz altındaki veya yardıma ihtiyacı olanların anlık durumlarını takip edebilir veya yardım için çağrıda bulunabilirsiniz. 16 | 17 | 4. **Afetbilgi.com** - Deprem sonrası hayati bilgiye ihtiyaç duyduğunuzda Afetbilgi.com sizin yanınızda. Geçici barınma ve toplanma alanları, önemli telefon numaraları, bağış kanalları gibi hayati bilgilere buradan ulaşabilirsiniz. 18 | 19 | ___ 20 | 21 | 22 | **/komutlar** 23 | 1. /projeler -> IT Deprem Yardım tarafından geliştirilen projelerimizi görüntüleyebilir ve haklarında bilgi alabilirsiniz. 24 | 2. /rol -> Nasıl rol alınabileceği ve kayıt olabileceği hakkında bilgi içerir. 25 | 3. /fikir -> Fikirlerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir. 26 | 4. /feedback -> Feedbacklerinizi bizimle nasıl paylaşabileceğiniz hakkında bilgi içerir. 27 | 5. /kurumsal-destek -> Bize nasıl kurumsal destek verebileceğiniz hakkında bilgi içerir. 28 | 29 | ___ 30 | 31 | **/rol** 32 | Çok kısa sürede kocaman bir ekip olduk, proje yönetiminin sağlıklı bir şekilde yapılabilmesi için yeni gelen arkadaşlarımızın aşağıdaki kayıt formunu doldurması gerekmektedir. Formu doldurduktan sonra ilgili ekiplerimiz başvurunuzu inceleyerek ihtiyaç halinde sizinle iletişime geçeceklerdir. O zaman kadar duyuru kanallarımızdan tüm projelerimiz hakkında bilgi alabilirsin. 33 | Form linki için tıklayın! 34 | 35 | ___ 36 | 37 | **/fikir** 38 | Fikirlerinizi bizimle paylaşmaya hevesli olduğunuz için çok mutluyuz fakat fikirlerinizin incelenmesi ve hiç bir fikrin gözden kaçmaması için aşağıdaki formu doldurmanız gerekmektedir. 39 | Form linki için tıklayın! 40 | 41 | ___ 42 | 43 | **/feedback** 44 | Geliştirilen uygulamalar ve sunucu ile ilgili feedbacklerinizi aşağıdaki formu doldurarak bize iletebilirsiniz. 45 | Form linki için tıklayın! 46 | 47 | ___ 48 | 49 | **/kurumsal-destek** 50 | İlginiz için teşekkürler sizi daha yakından tanımamız için aşağıdaki formu lütfen doldurun. Kurumsal iletişim ekibimiz sizler ile iletişime geçeceklerdir. 51 | Form linki için tıklayın! 52 | -------------------------------------------------------------------------------- /events/ready.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable prettier/prettier */ 2 | const { Events, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle } = require('discord.js') 3 | const { mainAnnouncement } = require('../data/config.json') 4 | 5 | module.exports = { 6 | name: Events.ClientReady, 7 | once: true, 8 | execute(client) { 9 | console.log(`Ready! Logged in as ${client.user.tag}`) 10 | 11 | const announcementEmbed = new EmbedBuilder() 12 | .setColor(0xf26666) 13 | .setTitle('Herkese merhabalar, hoş geldiniz! 🙌🏻') 14 | .setDescription( 15 | `Çok kısa sürede kocaman bir ekip olduk, proje yönetiminin sağlıklı bir şekilde yapılabilmesi için yeni gelen arkadaşlarımızın aşağıdaki kayıt formunu doldurması gerekmektedir. Formu doldurduktan sonra ilgili ekiplerimiz başvurunuzu inceleyerek ihtiyaç halinde sizinle iletişime geçeceklerdir. O zaman kadar duyuru kanallarımızdan tüm projelerimiz hakkında bilgi alabilirsin.\n**[📌 Kayıt Formu](https://app.retable.io/form/j3DtfkIkYlqj2cxn)**\n\nFikirlerinizi bizimle paylaşmaya hevesli olduğunuz için çok mutluyuz.Fakat fikirlerinizin incelenmesi ve hiç bir fikrin gözden kaçmaması için aşağıdaki formu doldurmanız gerekmektedir.\n**[📌 Fikir Formu](https://app.retable.io/form/RVC67K3Ai5kQ5w4s)** | **[🗣 Github Discussions]()**\n\nGeliştirilen uygulamalar ve sunucu ile ilgili feedbacklerinizi aşağıdaki formu doldurarak bize iletebilirsiniz.\n **[📌 Feedback Formu](https://app.retable.io/form/NIfo34pdWuweWtfI)**\n\nİlginiz için teşekkürler sizi daha yakından tanımamız için aşağıdaki formu lütfen doldurun. Kurumsal iletişim ekibimiz sizler ile iletişime geçeceklerdir.\n**[📌 Kurumsal Destek Formu](https://app.retable.io/form/qdjgyl2NHrE5CLnA)**`, 16 | ) 17 | .addFields({ 18 | name: '**Açık Yazılım Ağı**', 19 | value: 20 | '**[⛓ Github Repoları](https://github.com/orgs/acikkaynak/repositories)\n[⛓ Instagram](https://www.instagram.com/acikyazilimagi/)\n[⛓ Twitter](https://twitter.com/acikyazilimagi)\n[⛓ Linktree](https://linktr.ee/acikyazilimagi)**', 21 | }) 22 | .setFooter({ text: 'Bu mesaj otomatik olarak paylaşılmaktadır.' }) 23 | 24 | const row = new ActionRowBuilder().addComponents( 25 | new ButtonBuilder().setCustomId('announcementEn').setLabel('ENG').setStyle(ButtonStyle.Danger), 26 | ) 27 | 28 | const channel = client.channels.cache.get(mainAnnouncement.channelId) 29 | const embedTitle = announcementEmbed.data.title 30 | let oldMessage 31 | 32 | channel.messages.fetch({ limit: 50 }).then(async (messages) => { 33 | let botMessage = await messages.find((msg) => { 34 | if (msg.embeds[0] && msg.embeds[0].title === embedTitle) { 35 | return msg 36 | } 37 | }) 38 | oldMessage = botMessage 39 | }) 40 | 41 | // Morning 42 | setInterval(async () => { 43 | // if time is not between 9am and 9pm 44 | let messages = await channel.messages.fetch({ limit: 50 }) 45 | 46 | if ( 47 | new Date().getHours() >= mainAnnouncement.morningTime && 48 | new Date().getHours() <= mainAnnouncement.nightTime 49 | ) { 50 | if (!messages.find((msg) => msg === oldMessage)) { 51 | oldMessage = await client.channels.cache 52 | .get(mainAnnouncement.channelId) 53 | .send({ embeds: [announcementEmbed], components: [row] }) 54 | } 55 | } 56 | }, mainAnnouncement.morningInterval * 1000) 57 | 58 | // Night 59 | setInterval(async () => { 60 | let messages = await channel.messages.fetch({ limit: 50 }) 61 | if (new Date().getHours() < mainAnnouncement.morningTime || new Date().getHours() > mainAnnouncement.nightTime) { 62 | if (!messages.find((msg) => msg === oldMessage)) { 63 | oldMessage = await client.channels.cache 64 | .get(mainAnnouncement.channelId) 65 | .send({ embeds: [announcementEmbed], components: [row] }) 66 | } 67 | } 68 | }, mainAnnouncement.nightInterval * 1000) 69 | // An interval which will be executed every 1 hour if the time is morning (6:00 - 21:00) 70 | }, 71 | } 72 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@discordjs/builders@^1.4.0": 6 | version "1.4.0" 7 | resolved "https://registry.npmjs.org/@discordjs/builders/-/builders-1.4.0.tgz" 8 | integrity sha512-nEeTCheTTDw5kO93faM1j8ZJPonAX86qpq/QVoznnSa8WWcCgJpjlu6GylfINTDW6o7zZY0my2SYdxx2mfNwGA== 9 | dependencies: 10 | "@discordjs/util" "^0.1.0" 11 | "@sapphire/shapeshift" "^3.7.1" 12 | discord-api-types "^0.37.20" 13 | fast-deep-equal "^3.1.3" 14 | ts-mixer "^6.0.2" 15 | tslib "^2.4.1" 16 | 17 | "@discordjs/collection@^1.3.0": 18 | version "1.3.0" 19 | resolved "https://registry.npmjs.org/@discordjs/collection/-/collection-1.3.0.tgz" 20 | integrity sha512-ylt2NyZ77bJbRij4h9u/wVy7qYw/aDqQLWnadjvDqW/WoWCxrsX6M3CIw9GVP5xcGCDxsrKj5e0r5evuFYwrKg== 21 | 22 | "@discordjs/rest@^1.4.0": 23 | version "1.5.0" 24 | resolved "https://registry.npmjs.org/@discordjs/rest/-/rest-1.5.0.tgz" 25 | integrity sha512-lXgNFqHnbmzp5u81W0+frdXN6Etf4EUi8FAPcWpSykKd8hmlWh1xy6BmE0bsJypU1pxohaA8lQCgp70NUI3uzA== 26 | dependencies: 27 | "@discordjs/collection" "^1.3.0" 28 | "@discordjs/util" "^0.1.0" 29 | "@sapphire/async-queue" "^1.5.0" 30 | "@sapphire/snowflake" "^3.2.2" 31 | discord-api-types "^0.37.23" 32 | file-type "^18.0.0" 33 | tslib "^2.4.1" 34 | undici "^5.13.0" 35 | 36 | "@discordjs/util@^0.1.0": 37 | version "0.1.0" 38 | resolved "https://registry.npmjs.org/@discordjs/util/-/util-0.1.0.tgz" 39 | integrity sha512-e7d+PaTLVQav6rOc2tojh2y6FE8S7REkqLldq1XF4soCx74XB/DIjbVbVLtBemf0nLW77ntz0v+o5DytKwFNLQ== 40 | 41 | "@eslint/eslintrc@^1.4.1": 42 | version "1.4.1" 43 | resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz" 44 | integrity sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA== 45 | dependencies: 46 | ajv "^6.12.4" 47 | debug "^4.3.2" 48 | espree "^9.4.0" 49 | globals "^13.19.0" 50 | ignore "^5.2.0" 51 | import-fresh "^3.2.1" 52 | js-yaml "^4.1.0" 53 | minimatch "^3.1.2" 54 | strip-json-comments "^3.1.1" 55 | 56 | "@humanwhocodes/config-array@^0.11.8": 57 | version "0.11.8" 58 | resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz" 59 | integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g== 60 | dependencies: 61 | "@humanwhocodes/object-schema" "^1.2.1" 62 | debug "^4.1.1" 63 | minimatch "^3.0.5" 64 | 65 | "@humanwhocodes/module-importer@^1.0.1": 66 | version "1.0.1" 67 | resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" 68 | integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== 69 | 70 | "@humanwhocodes/object-schema@^1.2.1": 71 | version "1.2.1" 72 | resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" 73 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== 74 | 75 | "@nodelib/fs.scandir@2.1.5": 76 | version "2.1.5" 77 | resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" 78 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== 79 | dependencies: 80 | "@nodelib/fs.stat" "2.0.5" 81 | run-parallel "^1.1.9" 82 | 83 | "@nodelib/fs.stat@2.0.5": 84 | version "2.0.5" 85 | resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" 86 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== 87 | 88 | "@nodelib/fs.walk@^1.2.8": 89 | version "1.2.8" 90 | resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" 91 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== 92 | dependencies: 93 | "@nodelib/fs.scandir" "2.1.5" 94 | fastq "^1.6.0" 95 | 96 | "@sapphire/async-queue@^1.5.0": 97 | version "1.5.0" 98 | resolved "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.0.tgz" 99 | integrity sha512-JkLdIsP8fPAdh9ZZjrbHWR/+mZj0wvKS5ICibcLrRI1j84UmLMshx5n9QmL8b95d4onJ2xxiyugTgSAX7AalmA== 100 | 101 | "@sapphire/shapeshift@^3.7.1": 102 | version "3.8.1" 103 | resolved "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.8.1.tgz" 104 | integrity sha512-xG1oXXBhCjPKbxrRTlox9ddaZTvVpOhYLmKmApD/vIWOV1xEYXnpoFs68zHIZBGbqztq6FrUPNPerIrO1Hqeaw== 105 | dependencies: 106 | fast-deep-equal "^3.1.3" 107 | lodash "^4.17.21" 108 | 109 | "@sapphire/snowflake@^3.2.2": 110 | version "3.4.0" 111 | resolved "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-3.4.0.tgz" 112 | integrity sha512-zZxymtVO6zeXVMPds+6d7gv/OfnCc25M1Z+7ZLB0oPmeMTPeRWVPQSS16oDJy5ZsyCOLj7M6mbZml5gWXcVRNw== 113 | 114 | "@sindresorhus/is@^0.14.0": 115 | version "0.14.0" 116 | resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz" 117 | integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== 118 | 119 | "@szmarczak/http-timer@^1.1.2": 120 | version "1.1.2" 121 | resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz" 122 | integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== 123 | dependencies: 124 | defer-to-connect "^1.0.1" 125 | 126 | "@tokenizer/token@^0.3.0": 127 | version "0.3.0" 128 | resolved "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz" 129 | integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A== 130 | 131 | "@types/json5@^0.0.29": 132 | version "0.0.29" 133 | resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" 134 | integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== 135 | 136 | "@types/node@*", "@types/node@^18.7.11": 137 | version "18.13.0" 138 | resolved "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz" 139 | integrity sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg== 140 | 141 | "@types/ws@^8.5.3": 142 | version "8.5.4" 143 | resolved "https://registry.npmjs.org/@types/ws/-/ws-8.5.4.tgz" 144 | integrity sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg== 145 | dependencies: 146 | "@types/node" "*" 147 | 148 | abbrev@1: 149 | version "1.1.1" 150 | resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" 151 | integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== 152 | 153 | acorn-jsx@^5.3.2: 154 | version "5.3.2" 155 | resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" 156 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== 157 | 158 | acorn@^8.8.0: 159 | version "8.8.2" 160 | resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz" 161 | integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== 162 | 163 | aggregate-error@^3.0.0: 164 | version "3.1.0" 165 | resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" 166 | integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== 167 | dependencies: 168 | clean-stack "^2.0.0" 169 | indent-string "^4.0.0" 170 | 171 | ajv@^6.10.0, ajv@^6.12.4: 172 | version "6.12.6" 173 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" 174 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 175 | dependencies: 176 | fast-deep-equal "^3.1.1" 177 | fast-json-stable-stringify "^2.0.0" 178 | json-schema-traverse "^0.4.1" 179 | uri-js "^4.2.2" 180 | 181 | ansi-escapes@^4.3.0: 182 | version "4.3.2" 183 | resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" 184 | integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== 185 | dependencies: 186 | type-fest "^0.21.3" 187 | 188 | ansi-regex@^5.0.1: 189 | version "5.0.1" 190 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" 191 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== 192 | 193 | ansi-regex@^6.0.1: 194 | version "6.0.1" 195 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" 196 | integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== 197 | 198 | ansi-styles@^4.0.0, ansi-styles@^4.1.0: 199 | version "4.3.0" 200 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" 201 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 202 | dependencies: 203 | color-convert "^2.0.1" 204 | 205 | ansi-styles@^6.0.0: 206 | version "6.2.1" 207 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz" 208 | integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== 209 | 210 | anymatch@~3.1.2: 211 | version "3.1.3" 212 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" 213 | integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== 214 | dependencies: 215 | normalize-path "^3.0.0" 216 | picomatch "^2.0.4" 217 | 218 | argparse@^2.0.1: 219 | version "2.0.1" 220 | resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" 221 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== 222 | 223 | array-includes@^3.1.6: 224 | version "3.1.6" 225 | resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz" 226 | integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== 227 | dependencies: 228 | call-bind "^1.0.2" 229 | define-properties "^1.1.4" 230 | es-abstract "^1.20.4" 231 | get-intrinsic "^1.1.3" 232 | is-string "^1.0.7" 233 | 234 | array.prototype.flat@^1.3.1: 235 | version "1.3.1" 236 | resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz" 237 | integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== 238 | dependencies: 239 | call-bind "^1.0.2" 240 | define-properties "^1.1.4" 241 | es-abstract "^1.20.4" 242 | es-shim-unscopables "^1.0.0" 243 | 244 | array.prototype.flatmap@^1.3.1: 245 | version "1.3.1" 246 | resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz" 247 | integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== 248 | dependencies: 249 | call-bind "^1.0.2" 250 | define-properties "^1.1.4" 251 | es-abstract "^1.20.4" 252 | es-shim-unscopables "^1.0.0" 253 | 254 | astral-regex@^2.0.0: 255 | version "2.0.0" 256 | resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" 257 | integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== 258 | 259 | available-typed-arrays@^1.0.5: 260 | version "1.0.5" 261 | resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz" 262 | integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== 263 | 264 | balanced-match@^1.0.0: 265 | version "1.0.2" 266 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" 267 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 268 | 269 | binary-extensions@^2.0.0: 270 | version "2.2.0" 271 | resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" 272 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== 273 | 274 | brace-expansion@^1.1.7: 275 | version "1.1.11" 276 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" 277 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 278 | dependencies: 279 | balanced-match "^1.0.0" 280 | concat-map "0.0.1" 281 | 282 | braces@^3.0.2, braces@~3.0.2: 283 | version "3.0.2" 284 | resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" 285 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 286 | dependencies: 287 | fill-range "^7.0.1" 288 | 289 | busboy@^1.6.0: 290 | version "1.6.0" 291 | resolved "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz" 292 | integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== 293 | dependencies: 294 | streamsearch "^1.1.0" 295 | 296 | cacheable-request@^6.0.0: 297 | version "6.1.0" 298 | resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz" 299 | integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== 300 | dependencies: 301 | clone-response "^1.0.2" 302 | get-stream "^5.1.0" 303 | http-cache-semantics "^4.0.0" 304 | keyv "^3.0.0" 305 | lowercase-keys "^2.0.0" 306 | normalize-url "^4.1.0" 307 | responselike "^1.0.2" 308 | 309 | call-bind@^1.0.0, call-bind@^1.0.2: 310 | version "1.0.2" 311 | resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" 312 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== 313 | dependencies: 314 | function-bind "^1.1.1" 315 | get-intrinsic "^1.0.2" 316 | 317 | callsites@^3.0.0: 318 | version "3.1.0" 319 | resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" 320 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 321 | 322 | chalk@^4.0.0: 323 | version "4.1.2" 324 | resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" 325 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== 326 | dependencies: 327 | ansi-styles "^4.1.0" 328 | supports-color "^7.1.0" 329 | 330 | chokidar@^3.5.2: 331 | version "3.5.3" 332 | resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" 333 | integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== 334 | dependencies: 335 | anymatch "~3.1.2" 336 | braces "~3.0.2" 337 | glob-parent "~5.1.2" 338 | is-binary-path "~2.1.0" 339 | is-glob "~4.0.1" 340 | normalize-path "~3.0.0" 341 | readdirp "~3.6.0" 342 | optionalDependencies: 343 | fsevents "~2.3.2" 344 | 345 | clean-stack@^2.0.0: 346 | version "2.2.0" 347 | resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" 348 | integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== 349 | 350 | cli-cursor@^3.1.0: 351 | version "3.1.0" 352 | resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" 353 | integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== 354 | dependencies: 355 | restore-cursor "^3.1.0" 356 | 357 | cli-truncate@^2.1.0: 358 | version "2.1.0" 359 | resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz" 360 | integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== 361 | dependencies: 362 | slice-ansi "^3.0.0" 363 | string-width "^4.2.0" 364 | 365 | cli-truncate@^3.1.0: 366 | version "3.1.0" 367 | resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz" 368 | integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== 369 | dependencies: 370 | slice-ansi "^5.0.0" 371 | string-width "^5.0.0" 372 | 373 | clone-response@^1.0.2: 374 | version "1.0.3" 375 | resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz" 376 | integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== 377 | dependencies: 378 | mimic-response "^1.0.0" 379 | 380 | color-convert@^2.0.1: 381 | version "2.0.1" 382 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" 383 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 384 | dependencies: 385 | color-name "~1.1.4" 386 | 387 | color-name@~1.1.4: 388 | version "1.1.4" 389 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" 390 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 391 | 392 | colorette@^2.0.19: 393 | version "2.0.19" 394 | resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz" 395 | integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== 396 | 397 | commander@^9.4.1: 398 | version "9.5.0" 399 | resolved "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz" 400 | integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== 401 | 402 | concat-map@0.0.1: 403 | version "0.0.1" 404 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 405 | integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== 406 | 407 | configstore@4.0.0: 408 | version "4.0.0" 409 | resolved "https://registry.npmjs.org/configstore/-/configstore-4.0.0.tgz" 410 | integrity sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ== 411 | dependencies: 412 | dot-prop "^4.1.0" 413 | graceful-fs "^4.1.2" 414 | make-dir "^1.0.0" 415 | unique-string "^1.0.0" 416 | write-file-atomic "^2.0.0" 417 | xdg-basedir "^3.0.0" 418 | 419 | confusing-browser-globals@^1.0.10: 420 | version "1.0.11" 421 | resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz" 422 | integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== 423 | 424 | cross-spawn@^7.0.2, cross-spawn@^7.0.3: 425 | version "7.0.3" 426 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" 427 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 428 | dependencies: 429 | path-key "^3.1.0" 430 | shebang-command "^2.0.0" 431 | which "^2.0.1" 432 | 433 | crypto-random-string@^1.0.0: 434 | version "1.0.0" 435 | resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz" 436 | integrity sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg== 437 | 438 | debug@^3.2.7: 439 | version "3.2.7" 440 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" 441 | integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== 442 | dependencies: 443 | ms "^2.1.1" 444 | 445 | debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: 446 | version "4.3.4" 447 | resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" 448 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 449 | dependencies: 450 | ms "2.1.2" 451 | 452 | decompress-response@^3.3.0: 453 | version "3.3.0" 454 | resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" 455 | integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== 456 | dependencies: 457 | mimic-response "^1.0.0" 458 | 459 | deep-is@^0.1.3: 460 | version "0.1.4" 461 | resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" 462 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== 463 | 464 | defer-to-connect@^1.0.1: 465 | version "1.1.3" 466 | resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz" 467 | integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== 468 | 469 | define-properties@^1.1.3, define-properties@^1.1.4: 470 | version "1.1.4" 471 | resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz" 472 | integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== 473 | dependencies: 474 | has-property-descriptors "^1.0.0" 475 | object-keys "^1.1.1" 476 | 477 | discord-api-types@^0.37.20, discord-api-types@^0.37.23: 478 | version "0.37.31" 479 | resolved "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.31.tgz" 480 | integrity sha512-k9DQQ7Wv+ehiF7901qk/FnP47k6O2MHm3meQFee4gUzi5dfGAVLf7SfLNtb4w7G2dmukJyWQtVJEDF9oMb9yuQ== 481 | 482 | discord-logs@^2.2.1: 483 | version "2.2.1" 484 | resolved "https://registry.npmjs.org/discord-logs/-/discord-logs-2.2.1.tgz" 485 | integrity sha512-VTNe/uRcfdLDLBLf1Taaj3OYU1GLWTAVEcCPC/xZqZd1X4D3DXW1qYJWxoyx3yqiJZ4rwQ3A0bPIFryIdniKrQ== 486 | dependencies: 487 | "@types/node" "^18.7.11" 488 | "@types/ws" "^8.5.3" 489 | 490 | discord.js@^14.7.1: 491 | version "14.7.1" 492 | resolved "https://registry.npmjs.org/discord.js/-/discord.js-14.7.1.tgz" 493 | integrity sha512-1FECvqJJjjeYcjSm0IGMnPxLqja/pmG1B0W2l3lUY2Gi4KXiyTeQmU1IxWcbXHn2k+ytP587mMWqva2IA87EbA== 494 | dependencies: 495 | "@discordjs/builders" "^1.4.0" 496 | "@discordjs/collection" "^1.3.0" 497 | "@discordjs/rest" "^1.4.0" 498 | "@discordjs/util" "^0.1.0" 499 | "@sapphire/snowflake" "^3.2.2" 500 | "@types/ws" "^8.5.3" 501 | discord-api-types "^0.37.20" 502 | fast-deep-equal "^3.1.3" 503 | lodash.snakecase "^4.1.1" 504 | tslib "^2.4.1" 505 | undici "^5.13.0" 506 | ws "^8.11.0" 507 | 508 | doctrine@^2.1.0: 509 | version "2.1.0" 510 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" 511 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== 512 | dependencies: 513 | esutils "^2.0.2" 514 | 515 | doctrine@^3.0.0: 516 | version "3.0.0" 517 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" 518 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 519 | dependencies: 520 | esutils "^2.0.2" 521 | 522 | dot-prop@^4.1.0: 523 | version "4.2.1" 524 | resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz" 525 | integrity sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ== 526 | dependencies: 527 | is-obj "^1.0.0" 528 | 529 | dotenv@^16.0.3: 530 | version "16.0.3" 531 | resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz" 532 | integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== 533 | 534 | duplexer3@^0.1.4: 535 | version "0.1.5" 536 | resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz" 537 | integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== 538 | 539 | eastasianwidth@^0.2.0: 540 | version "0.2.0" 541 | resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" 542 | integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== 543 | 544 | emoji-regex@^8.0.0: 545 | version "8.0.0" 546 | resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" 547 | integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== 548 | 549 | emoji-regex@^9.2.2: 550 | version "9.2.2" 551 | resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" 552 | integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== 553 | 554 | end-of-stream@^1.1.0: 555 | version "1.4.4" 556 | resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" 557 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 558 | dependencies: 559 | once "^1.4.0" 560 | 561 | es-abstract@^1.19.0, es-abstract@^1.20.4: 562 | version "1.21.1" 563 | resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.1.tgz" 564 | integrity sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg== 565 | dependencies: 566 | available-typed-arrays "^1.0.5" 567 | call-bind "^1.0.2" 568 | es-set-tostringtag "^2.0.1" 569 | es-to-primitive "^1.2.1" 570 | function-bind "^1.1.1" 571 | function.prototype.name "^1.1.5" 572 | get-intrinsic "^1.1.3" 573 | get-symbol-description "^1.0.0" 574 | globalthis "^1.0.3" 575 | gopd "^1.0.1" 576 | has "^1.0.3" 577 | has-property-descriptors "^1.0.0" 578 | has-proto "^1.0.1" 579 | has-symbols "^1.0.3" 580 | internal-slot "^1.0.4" 581 | is-array-buffer "^3.0.1" 582 | is-callable "^1.2.7" 583 | is-negative-zero "^2.0.2" 584 | is-regex "^1.1.4" 585 | is-shared-array-buffer "^1.0.2" 586 | is-string "^1.0.7" 587 | is-typed-array "^1.1.10" 588 | is-weakref "^1.0.2" 589 | object-inspect "^1.12.2" 590 | object-keys "^1.1.1" 591 | object.assign "^4.1.4" 592 | regexp.prototype.flags "^1.4.3" 593 | safe-regex-test "^1.0.0" 594 | string.prototype.trimend "^1.0.6" 595 | string.prototype.trimstart "^1.0.6" 596 | typed-array-length "^1.0.4" 597 | unbox-primitive "^1.0.2" 598 | which-typed-array "^1.1.9" 599 | 600 | es-set-tostringtag@^2.0.1: 601 | version "2.0.1" 602 | resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz" 603 | integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== 604 | dependencies: 605 | get-intrinsic "^1.1.3" 606 | has "^1.0.3" 607 | has-tostringtag "^1.0.0" 608 | 609 | es-shim-unscopables@^1.0.0: 610 | version "1.0.0" 611 | resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz" 612 | integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== 613 | dependencies: 614 | has "^1.0.3" 615 | 616 | es-to-primitive@^1.2.1: 617 | version "1.2.1" 618 | resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" 619 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 620 | dependencies: 621 | is-callable "^1.1.4" 622 | is-date-object "^1.0.1" 623 | is-symbol "^1.0.2" 624 | 625 | escape-string-regexp@^4.0.0: 626 | version "4.0.0" 627 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" 628 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 629 | 630 | eslint-config-airbnb-base@^15.0.0: 631 | version "15.0.0" 632 | resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz" 633 | integrity sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig== 634 | dependencies: 635 | confusing-browser-globals "^1.0.10" 636 | object.assign "^4.1.2" 637 | object.entries "^1.1.5" 638 | semver "^6.3.0" 639 | 640 | eslint-config-prettier@^8.6.0: 641 | version "8.6.0" 642 | resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.6.0.tgz" 643 | integrity sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA== 644 | 645 | eslint-import-resolver-node@^0.3.7: 646 | version "0.3.7" 647 | resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz" 648 | integrity sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA== 649 | dependencies: 650 | debug "^3.2.7" 651 | is-core-module "^2.11.0" 652 | resolve "^1.22.1" 653 | 654 | eslint-module-utils@^2.7.4: 655 | version "2.7.4" 656 | resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz" 657 | integrity sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA== 658 | dependencies: 659 | debug "^3.2.7" 660 | 661 | eslint-plugin-import@^2.25.2: 662 | version "2.27.5" 663 | resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz" 664 | integrity sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow== 665 | dependencies: 666 | array-includes "^3.1.6" 667 | array.prototype.flat "^1.3.1" 668 | array.prototype.flatmap "^1.3.1" 669 | debug "^3.2.7" 670 | doctrine "^2.1.0" 671 | eslint-import-resolver-node "^0.3.7" 672 | eslint-module-utils "^2.7.4" 673 | has "^1.0.3" 674 | is-core-module "^2.11.0" 675 | is-glob "^4.0.3" 676 | minimatch "^3.1.2" 677 | object.values "^1.1.6" 678 | resolve "^1.22.1" 679 | semver "^6.3.0" 680 | tsconfig-paths "^3.14.1" 681 | 682 | eslint-plugin-prettier@^4.2.1: 683 | version "4.2.1" 684 | resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz" 685 | integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== 686 | dependencies: 687 | prettier-linter-helpers "^1.0.0" 688 | 689 | eslint-scope@^7.1.1: 690 | version "7.1.1" 691 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz" 692 | integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== 693 | dependencies: 694 | esrecurse "^4.3.0" 695 | estraverse "^5.2.0" 696 | 697 | eslint-utils@^3.0.0: 698 | version "3.0.0" 699 | resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz" 700 | integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== 701 | dependencies: 702 | eslint-visitor-keys "^2.0.0" 703 | 704 | eslint-visitor-keys@^2.0.0: 705 | version "2.1.0" 706 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" 707 | integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== 708 | 709 | eslint-visitor-keys@^3.3.0: 710 | version "3.3.0" 711 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz" 712 | integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== 713 | 714 | "eslint@^7.32.0 || ^8.2.0": 715 | version "8.33.0" 716 | resolved "https://registry.npmjs.org/eslint/-/eslint-8.33.0.tgz" 717 | integrity sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA== 718 | dependencies: 719 | "@eslint/eslintrc" "^1.4.1" 720 | "@humanwhocodes/config-array" "^0.11.8" 721 | "@humanwhocodes/module-importer" "^1.0.1" 722 | "@nodelib/fs.walk" "^1.2.8" 723 | ajv "^6.10.0" 724 | chalk "^4.0.0" 725 | cross-spawn "^7.0.2" 726 | debug "^4.3.2" 727 | doctrine "^3.0.0" 728 | escape-string-regexp "^4.0.0" 729 | eslint-scope "^7.1.1" 730 | eslint-utils "^3.0.0" 731 | eslint-visitor-keys "^3.3.0" 732 | espree "^9.4.0" 733 | esquery "^1.4.0" 734 | esutils "^2.0.2" 735 | fast-deep-equal "^3.1.3" 736 | file-entry-cache "^6.0.1" 737 | find-up "^5.0.0" 738 | glob-parent "^6.0.2" 739 | globals "^13.19.0" 740 | grapheme-splitter "^1.0.4" 741 | ignore "^5.2.0" 742 | import-fresh "^3.0.0" 743 | imurmurhash "^0.1.4" 744 | is-glob "^4.0.0" 745 | is-path-inside "^3.0.3" 746 | js-sdsl "^4.1.4" 747 | js-yaml "^4.1.0" 748 | json-stable-stringify-without-jsonify "^1.0.1" 749 | levn "^0.4.1" 750 | lodash.merge "^4.6.2" 751 | minimatch "^3.1.2" 752 | natural-compare "^1.4.0" 753 | optionator "^0.9.1" 754 | regexpp "^3.2.0" 755 | strip-ansi "^6.0.1" 756 | strip-json-comments "^3.1.0" 757 | text-table "^0.2.0" 758 | 759 | espree@^9.4.0: 760 | version "9.4.1" 761 | resolved "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz" 762 | integrity sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg== 763 | dependencies: 764 | acorn "^8.8.0" 765 | acorn-jsx "^5.3.2" 766 | eslint-visitor-keys "^3.3.0" 767 | 768 | esquery@^1.4.0: 769 | version "1.4.0" 770 | resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" 771 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 772 | dependencies: 773 | estraverse "^5.1.0" 774 | 775 | esrecurse@^4.3.0: 776 | version "4.3.0" 777 | resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" 778 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 779 | dependencies: 780 | estraverse "^5.2.0" 781 | 782 | estraverse@^5.1.0, estraverse@^5.2.0: 783 | version "5.3.0" 784 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" 785 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 786 | 787 | esutils@^2.0.2: 788 | version "2.0.3" 789 | resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" 790 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 791 | 792 | execa@^6.1.0: 793 | version "6.1.0" 794 | resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz" 795 | integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== 796 | dependencies: 797 | cross-spawn "^7.0.3" 798 | get-stream "^6.0.1" 799 | human-signals "^3.0.1" 800 | is-stream "^3.0.0" 801 | merge-stream "^2.0.0" 802 | npm-run-path "^5.1.0" 803 | onetime "^6.0.0" 804 | signal-exit "^3.0.7" 805 | strip-final-newline "^3.0.0" 806 | 807 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: 808 | version "3.1.3" 809 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" 810 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 811 | 812 | fast-diff@^1.1.2: 813 | version "1.2.0" 814 | resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz" 815 | integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== 816 | 817 | fast-json-stable-stringify@^2.0.0: 818 | version "2.1.0" 819 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" 820 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 821 | 822 | fast-levenshtein@^2.0.6: 823 | version "2.0.6" 824 | resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" 825 | integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== 826 | 827 | fastq@^1.6.0: 828 | version "1.15.0" 829 | resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" 830 | integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== 831 | dependencies: 832 | reusify "^1.0.4" 833 | 834 | file-entry-cache@^6.0.1: 835 | version "6.0.1" 836 | resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" 837 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== 838 | dependencies: 839 | flat-cache "^3.0.4" 840 | 841 | file-type@^18.0.0: 842 | version "18.2.0" 843 | resolved "https://registry.npmjs.org/file-type/-/file-type-18.2.0.tgz" 844 | integrity sha512-M3RQMWY3F2ykyWZ+IHwNCjpnUmukYhtdkGGC1ZVEUb0ve5REGF7NNJ4Q9ehCUabtQKtSVFOMbFTXgJlFb0DQIg== 845 | dependencies: 846 | readable-web-to-node-stream "^3.0.2" 847 | strtok3 "^7.0.0" 848 | token-types "^5.0.1" 849 | 850 | fill-range@^7.0.1: 851 | version "7.0.1" 852 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" 853 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 854 | dependencies: 855 | to-regex-range "^5.0.1" 856 | 857 | find-up@^5.0.0: 858 | version "5.0.0" 859 | resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" 860 | integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== 861 | dependencies: 862 | locate-path "^6.0.0" 863 | path-exists "^4.0.0" 864 | 865 | flat-cache@^3.0.4: 866 | version "3.0.4" 867 | resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" 868 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== 869 | dependencies: 870 | flatted "^3.1.0" 871 | rimraf "^3.0.2" 872 | 873 | flatted@^3.1.0: 874 | version "3.2.7" 875 | resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" 876 | integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== 877 | 878 | for-each@^0.3.3: 879 | version "0.3.3" 880 | resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" 881 | integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== 882 | dependencies: 883 | is-callable "^1.1.3" 884 | 885 | fs.realpath@^1.0.0: 886 | version "1.0.0" 887 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" 888 | integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== 889 | 890 | fsevents@~2.3.2: 891 | version "2.3.2" 892 | resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" 893 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 894 | 895 | function-bind@^1.1.1: 896 | version "1.1.1" 897 | resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 898 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 899 | 900 | function.prototype.name@^1.1.5: 901 | version "1.1.5" 902 | resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz" 903 | integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== 904 | dependencies: 905 | call-bind "^1.0.2" 906 | define-properties "^1.1.3" 907 | es-abstract "^1.19.0" 908 | functions-have-names "^1.2.2" 909 | 910 | functions-have-names@^1.2.2: 911 | version "1.2.3" 912 | resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" 913 | integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== 914 | 915 | get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3: 916 | version "1.2.0" 917 | resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz" 918 | integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== 919 | dependencies: 920 | function-bind "^1.1.1" 921 | has "^1.0.3" 922 | has-symbols "^1.0.3" 923 | 924 | get-stream@^4.1.0: 925 | version "4.1.0" 926 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz" 927 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 928 | dependencies: 929 | pump "^3.0.0" 930 | 931 | get-stream@^5.1.0: 932 | version "5.2.0" 933 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" 934 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== 935 | dependencies: 936 | pump "^3.0.0" 937 | 938 | get-stream@^6.0.1: 939 | version "6.0.1" 940 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" 941 | integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== 942 | 943 | get-symbol-description@^1.0.0: 944 | version "1.0.0" 945 | resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz" 946 | integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== 947 | dependencies: 948 | call-bind "^1.0.2" 949 | get-intrinsic "^1.1.1" 950 | 951 | glob-parent@^6.0.2: 952 | version "6.0.2" 953 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" 954 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== 955 | dependencies: 956 | is-glob "^4.0.3" 957 | 958 | glob-parent@~5.1.2: 959 | version "5.1.2" 960 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" 961 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 962 | dependencies: 963 | is-glob "^4.0.1" 964 | 965 | glob@^7.1.3: 966 | version "7.2.3" 967 | resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" 968 | integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== 969 | dependencies: 970 | fs.realpath "^1.0.0" 971 | inflight "^1.0.4" 972 | inherits "2" 973 | minimatch "^3.1.1" 974 | once "^1.3.0" 975 | path-is-absolute "^1.0.0" 976 | 977 | globals@^13.19.0: 978 | version "13.20.0" 979 | resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz" 980 | integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== 981 | dependencies: 982 | type-fest "^0.20.2" 983 | 984 | globalthis@^1.0.3: 985 | version "1.0.3" 986 | resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" 987 | integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== 988 | dependencies: 989 | define-properties "^1.1.3" 990 | 991 | gopd@^1.0.1: 992 | version "1.0.1" 993 | resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" 994 | integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== 995 | dependencies: 996 | get-intrinsic "^1.1.3" 997 | 998 | got@9.6.0: 999 | version "9.6.0" 1000 | resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz" 1001 | integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== 1002 | dependencies: 1003 | "@sindresorhus/is" "^0.14.0" 1004 | "@szmarczak/http-timer" "^1.1.2" 1005 | cacheable-request "^6.0.0" 1006 | decompress-response "^3.3.0" 1007 | duplexer3 "^0.1.4" 1008 | get-stream "^4.1.0" 1009 | lowercase-keys "^1.0.1" 1010 | mimic-response "^1.0.1" 1011 | p-cancelable "^1.0.0" 1012 | to-readable-stream "^1.0.0" 1013 | url-parse-lax "^3.0.0" 1014 | 1015 | graceful-fs@^4.1.11, graceful-fs@^4.1.2: 1016 | version "4.2.10" 1017 | resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" 1018 | integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== 1019 | 1020 | grapheme-splitter@^1.0.4: 1021 | version "1.0.4" 1022 | resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz" 1023 | integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== 1024 | 1025 | has-bigints@^1.0.1, has-bigints@^1.0.2: 1026 | version "1.0.2" 1027 | resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" 1028 | integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== 1029 | 1030 | has-flag@^3.0.0: 1031 | version "3.0.0" 1032 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" 1033 | integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== 1034 | 1035 | has-flag@^4.0.0: 1036 | version "4.0.0" 1037 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" 1038 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1039 | 1040 | has-property-descriptors@^1.0.0: 1041 | version "1.0.0" 1042 | resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz" 1043 | integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== 1044 | dependencies: 1045 | get-intrinsic "^1.1.1" 1046 | 1047 | has-proto@^1.0.1: 1048 | version "1.0.1" 1049 | resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz" 1050 | integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== 1051 | 1052 | has-symbols@^1.0.2, has-symbols@^1.0.3: 1053 | version "1.0.3" 1054 | resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" 1055 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== 1056 | 1057 | has-tostringtag@^1.0.0: 1058 | version "1.0.0" 1059 | resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" 1060 | integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== 1061 | dependencies: 1062 | has-symbols "^1.0.2" 1063 | 1064 | has@^1.0.3: 1065 | version "1.0.3" 1066 | resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 1067 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1068 | dependencies: 1069 | function-bind "^1.1.1" 1070 | 1071 | http-cache-semantics@^4.0.0: 1072 | version "4.1.1" 1073 | resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" 1074 | integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== 1075 | 1076 | human-signals@^3.0.1: 1077 | version "3.0.1" 1078 | resolved "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz" 1079 | integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ== 1080 | 1081 | husky@^8.0.3: 1082 | version "8.0.3" 1083 | resolved "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz" 1084 | integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== 1085 | 1086 | ieee754@^1.2.1: 1087 | version "1.2.1" 1088 | resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" 1089 | integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== 1090 | 1091 | ignore-by-default@^1.0.1: 1092 | version "1.0.1" 1093 | resolved "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz" 1094 | integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== 1095 | 1096 | ignore@^5.2.0: 1097 | version "5.2.4" 1098 | resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" 1099 | integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== 1100 | 1101 | import-fresh@^3.0.0, import-fresh@^3.2.1: 1102 | version "3.3.0" 1103 | resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" 1104 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 1105 | dependencies: 1106 | parent-module "^1.0.0" 1107 | resolve-from "^4.0.0" 1108 | 1109 | imurmurhash@^0.1.4: 1110 | version "0.1.4" 1111 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" 1112 | integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== 1113 | 1114 | indent-string@^4.0.0: 1115 | version "4.0.0" 1116 | resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" 1117 | integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== 1118 | 1119 | inflight@^1.0.4: 1120 | version "1.0.6" 1121 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" 1122 | integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== 1123 | dependencies: 1124 | once "^1.3.0" 1125 | wrappy "1" 1126 | 1127 | inherits@2, inherits@^2.0.3: 1128 | version "2.0.4" 1129 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 1130 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1131 | 1132 | internal-slot@^1.0.4: 1133 | version "1.0.4" 1134 | resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz" 1135 | integrity sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ== 1136 | dependencies: 1137 | get-intrinsic "^1.1.3" 1138 | has "^1.0.3" 1139 | side-channel "^1.0.4" 1140 | 1141 | is-array-buffer@^3.0.1: 1142 | version "3.0.1" 1143 | resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.1.tgz" 1144 | integrity sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ== 1145 | dependencies: 1146 | call-bind "^1.0.2" 1147 | get-intrinsic "^1.1.3" 1148 | is-typed-array "^1.1.10" 1149 | 1150 | is-bigint@^1.0.1: 1151 | version "1.0.4" 1152 | resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" 1153 | integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== 1154 | dependencies: 1155 | has-bigints "^1.0.1" 1156 | 1157 | is-binary-path@~2.1.0: 1158 | version "2.1.0" 1159 | resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" 1160 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 1161 | dependencies: 1162 | binary-extensions "^2.0.0" 1163 | 1164 | is-boolean-object@^1.1.0: 1165 | version "1.1.2" 1166 | resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" 1167 | integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== 1168 | dependencies: 1169 | call-bind "^1.0.2" 1170 | has-tostringtag "^1.0.0" 1171 | 1172 | is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: 1173 | version "1.2.7" 1174 | resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" 1175 | integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== 1176 | 1177 | is-core-module@^2.11.0, is-core-module@^2.9.0: 1178 | version "2.11.0" 1179 | resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" 1180 | integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== 1181 | dependencies: 1182 | has "^1.0.3" 1183 | 1184 | is-date-object@^1.0.1: 1185 | version "1.0.5" 1186 | resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" 1187 | integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== 1188 | dependencies: 1189 | has-tostringtag "^1.0.0" 1190 | 1191 | is-extglob@^2.1.1: 1192 | version "2.1.1" 1193 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" 1194 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== 1195 | 1196 | is-fullwidth-code-point@^3.0.0: 1197 | version "3.0.0" 1198 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" 1199 | integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== 1200 | 1201 | is-fullwidth-code-point@^4.0.0: 1202 | version "4.0.0" 1203 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz" 1204 | integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== 1205 | 1206 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: 1207 | version "4.0.3" 1208 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" 1209 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== 1210 | dependencies: 1211 | is-extglob "^2.1.1" 1212 | 1213 | is-negative-zero@^2.0.2: 1214 | version "2.0.2" 1215 | resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz" 1216 | integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== 1217 | 1218 | is-number-object@^1.0.4: 1219 | version "1.0.7" 1220 | resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz" 1221 | integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== 1222 | dependencies: 1223 | has-tostringtag "^1.0.0" 1224 | 1225 | is-number@^7.0.0: 1226 | version "7.0.0" 1227 | resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" 1228 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 1229 | 1230 | is-obj@^1.0.0: 1231 | version "1.0.1" 1232 | resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz" 1233 | integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== 1234 | 1235 | is-path-inside@^3.0.3: 1236 | version "3.0.3" 1237 | resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" 1238 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== 1239 | 1240 | is-regex@^1.1.4: 1241 | version "1.1.4" 1242 | resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" 1243 | integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== 1244 | dependencies: 1245 | call-bind "^1.0.2" 1246 | has-tostringtag "^1.0.0" 1247 | 1248 | is-shared-array-buffer@^1.0.2: 1249 | version "1.0.2" 1250 | resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz" 1251 | integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== 1252 | dependencies: 1253 | call-bind "^1.0.2" 1254 | 1255 | is-stream@^3.0.0: 1256 | version "3.0.0" 1257 | resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz" 1258 | integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== 1259 | 1260 | is-string@^1.0.5, is-string@^1.0.7: 1261 | version "1.0.7" 1262 | resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" 1263 | integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== 1264 | dependencies: 1265 | has-tostringtag "^1.0.0" 1266 | 1267 | is-symbol@^1.0.2, is-symbol@^1.0.3: 1268 | version "1.0.4" 1269 | resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" 1270 | integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== 1271 | dependencies: 1272 | has-symbols "^1.0.2" 1273 | 1274 | is-typed-array@^1.1.10, is-typed-array@^1.1.9: 1275 | version "1.1.10" 1276 | resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz" 1277 | integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== 1278 | dependencies: 1279 | available-typed-arrays "^1.0.5" 1280 | call-bind "^1.0.2" 1281 | for-each "^0.3.3" 1282 | gopd "^1.0.1" 1283 | has-tostringtag "^1.0.0" 1284 | 1285 | is-weakref@^1.0.2: 1286 | version "1.0.2" 1287 | resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz" 1288 | integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== 1289 | dependencies: 1290 | call-bind "^1.0.2" 1291 | 1292 | isexe@^2.0.0: 1293 | version "2.0.0" 1294 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" 1295 | integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== 1296 | 1297 | js-sdsl@^4.1.4: 1298 | version "4.3.0" 1299 | resolved "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz" 1300 | integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ== 1301 | 1302 | js-yaml@^4.1.0: 1303 | version "4.1.0" 1304 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" 1305 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== 1306 | dependencies: 1307 | argparse "^2.0.1" 1308 | 1309 | json-buffer@3.0.0: 1310 | version "3.0.0" 1311 | resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz" 1312 | integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== 1313 | 1314 | json-schema-traverse@^0.4.1: 1315 | version "0.4.1" 1316 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" 1317 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1318 | 1319 | json-stable-stringify-without-jsonify@^1.0.1: 1320 | version "1.0.1" 1321 | resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" 1322 | integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== 1323 | 1324 | json5@^1.0.1: 1325 | version "1.0.2" 1326 | resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" 1327 | integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== 1328 | dependencies: 1329 | minimist "^1.2.0" 1330 | 1331 | keyv@^3.0.0: 1332 | version "3.1.0" 1333 | resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz" 1334 | integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== 1335 | dependencies: 1336 | json-buffer "3.0.0" 1337 | 1338 | levn@^0.4.1: 1339 | version "0.4.1" 1340 | resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" 1341 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 1342 | dependencies: 1343 | prelude-ls "^1.2.1" 1344 | type-check "~0.4.0" 1345 | 1346 | lilconfig@2.0.6: 1347 | version "2.0.6" 1348 | resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz" 1349 | integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg== 1350 | 1351 | lint-staged@^13.1.1: 1352 | version "13.1.1" 1353 | resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.1.tgz" 1354 | integrity sha512-LLJLO0Kdbcv2a+CvSF4p1M7jBZOajKSMpBUvyR8+bXccsqPER0/NxTFQSpNHjqwV9kM3tkHczYerTB5wI+bksQ== 1355 | dependencies: 1356 | cli-truncate "^3.1.0" 1357 | colorette "^2.0.19" 1358 | commander "^9.4.1" 1359 | debug "^4.3.4" 1360 | execa "^6.1.0" 1361 | lilconfig "2.0.6" 1362 | listr2 "^5.0.5" 1363 | micromatch "^4.0.5" 1364 | normalize-path "^3.0.0" 1365 | object-inspect "^1.12.2" 1366 | pidtree "^0.6.0" 1367 | string-argv "^0.3.1" 1368 | yaml "^2.1.3" 1369 | 1370 | listr2@^5.0.5: 1371 | version "5.0.7" 1372 | resolved "https://registry.npmjs.org/listr2/-/listr2-5.0.7.tgz" 1373 | integrity sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw== 1374 | dependencies: 1375 | cli-truncate "^2.1.0" 1376 | colorette "^2.0.19" 1377 | log-update "^4.0.0" 1378 | p-map "^4.0.0" 1379 | rfdc "^1.3.0" 1380 | rxjs "^7.8.0" 1381 | through "^2.3.8" 1382 | wrap-ansi "^7.0.0" 1383 | 1384 | locate-path@^6.0.0: 1385 | version "6.0.0" 1386 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" 1387 | integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== 1388 | dependencies: 1389 | p-locate "^5.0.0" 1390 | 1391 | lodash.merge@^4.6.2: 1392 | version "4.6.2" 1393 | resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" 1394 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 1395 | 1396 | lodash.snakecase@^4.1.1: 1397 | version "4.1.1" 1398 | resolved "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz" 1399 | integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw== 1400 | 1401 | lodash@^4.17.21: 1402 | version "4.17.21" 1403 | resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" 1404 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 1405 | 1406 | log-update@^4.0.0: 1407 | version "4.0.0" 1408 | resolved "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz" 1409 | integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== 1410 | dependencies: 1411 | ansi-escapes "^4.3.0" 1412 | cli-cursor "^3.1.0" 1413 | slice-ansi "^4.0.0" 1414 | wrap-ansi "^6.2.0" 1415 | 1416 | lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: 1417 | version "1.0.1" 1418 | resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz" 1419 | integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== 1420 | 1421 | lowercase-keys@^2.0.0: 1422 | version "2.0.0" 1423 | resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" 1424 | integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== 1425 | 1426 | make-dir@^1.0.0: 1427 | version "1.3.0" 1428 | resolved "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz" 1429 | integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== 1430 | dependencies: 1431 | pify "^3.0.0" 1432 | 1433 | merge-stream@^2.0.0: 1434 | version "2.0.0" 1435 | resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" 1436 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== 1437 | 1438 | micromatch@^4.0.5: 1439 | version "4.0.5" 1440 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" 1441 | integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== 1442 | dependencies: 1443 | braces "^3.0.2" 1444 | picomatch "^2.3.1" 1445 | 1446 | mimic-fn@^2.1.0: 1447 | version "2.1.0" 1448 | resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" 1449 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 1450 | 1451 | mimic-fn@^4.0.0: 1452 | version "4.0.0" 1453 | resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz" 1454 | integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== 1455 | 1456 | mimic-response@^1.0.0, mimic-response@^1.0.1: 1457 | version "1.0.1" 1458 | resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz" 1459 | integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 1460 | 1461 | minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: 1462 | version "3.1.2" 1463 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" 1464 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 1465 | dependencies: 1466 | brace-expansion "^1.1.7" 1467 | 1468 | minimist@^1.2.0, minimist@^1.2.6: 1469 | version "1.2.7" 1470 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz" 1471 | integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== 1472 | 1473 | ms@2.1.2, ms@^2.1.1: 1474 | version "2.1.2" 1475 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" 1476 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1477 | 1478 | natural-compare@^1.4.0: 1479 | version "1.4.0" 1480 | resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" 1481 | integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== 1482 | 1483 | nodemon@^2.0.20: 1484 | version "2.0.20" 1485 | resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.20.tgz" 1486 | integrity sha512-Km2mWHKKY5GzRg6i1j5OxOHQtuvVsgskLfigG25yTtbyfRGn/GNvIbRyOf1PSCKJ2aT/58TiuUsuOU5UToVViw== 1487 | dependencies: 1488 | chokidar "^3.5.2" 1489 | debug "^3.2.7" 1490 | ignore-by-default "^1.0.1" 1491 | minimatch "^3.1.2" 1492 | pstree.remy "^1.1.8" 1493 | semver "^5.7.1" 1494 | simple-update-notifier "^1.0.7" 1495 | supports-color "^5.5.0" 1496 | touch "^3.1.0" 1497 | undefsafe "^2.0.5" 1498 | 1499 | nopt@~1.0.10: 1500 | version "1.0.10" 1501 | resolved "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz" 1502 | integrity sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg== 1503 | dependencies: 1504 | abbrev "1" 1505 | 1506 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1507 | version "3.0.0" 1508 | resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" 1509 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1510 | 1511 | normalize-url@^4.1.0: 1512 | version "4.5.1" 1513 | resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz" 1514 | integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== 1515 | 1516 | npm-run-path@^5.1.0: 1517 | version "5.1.0" 1518 | resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz" 1519 | integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== 1520 | dependencies: 1521 | path-key "^4.0.0" 1522 | 1523 | object-inspect@^1.12.2, object-inspect@^1.9.0: 1524 | version "1.12.3" 1525 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" 1526 | integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== 1527 | 1528 | object-keys@^1.1.1: 1529 | version "1.1.1" 1530 | resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 1531 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 1532 | 1533 | object.assign@^4.1.2, object.assign@^4.1.4: 1534 | version "4.1.4" 1535 | resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" 1536 | integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== 1537 | dependencies: 1538 | call-bind "^1.0.2" 1539 | define-properties "^1.1.4" 1540 | has-symbols "^1.0.3" 1541 | object-keys "^1.1.1" 1542 | 1543 | object.entries@^1.1.5: 1544 | version "1.1.6" 1545 | resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz" 1546 | integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== 1547 | dependencies: 1548 | call-bind "^1.0.2" 1549 | define-properties "^1.1.4" 1550 | es-abstract "^1.20.4" 1551 | 1552 | object.values@^1.1.6: 1553 | version "1.1.6" 1554 | resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz" 1555 | integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== 1556 | dependencies: 1557 | call-bind "^1.0.2" 1558 | define-properties "^1.1.4" 1559 | es-abstract "^1.20.4" 1560 | 1561 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 1562 | version "1.4.0" 1563 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 1564 | integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== 1565 | dependencies: 1566 | wrappy "1" 1567 | 1568 | onetime@^5.1.0: 1569 | version "5.1.2" 1570 | resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" 1571 | integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== 1572 | dependencies: 1573 | mimic-fn "^2.1.0" 1574 | 1575 | onetime@^6.0.0: 1576 | version "6.0.0" 1577 | resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz" 1578 | integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== 1579 | dependencies: 1580 | mimic-fn "^4.0.0" 1581 | 1582 | optionator@^0.9.1: 1583 | version "0.9.1" 1584 | resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" 1585 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== 1586 | dependencies: 1587 | deep-is "^0.1.3" 1588 | fast-levenshtein "^2.0.6" 1589 | levn "^0.4.1" 1590 | prelude-ls "^1.2.1" 1591 | type-check "^0.4.0" 1592 | word-wrap "^1.2.3" 1593 | 1594 | p-cancelable@^1.0.0: 1595 | version "1.1.0" 1596 | resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz" 1597 | integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== 1598 | 1599 | p-limit@^3.0.2: 1600 | version "3.1.0" 1601 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" 1602 | integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== 1603 | dependencies: 1604 | yocto-queue "^0.1.0" 1605 | 1606 | p-locate@^5.0.0: 1607 | version "5.0.0" 1608 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" 1609 | integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== 1610 | dependencies: 1611 | p-limit "^3.0.2" 1612 | 1613 | p-map@^4.0.0: 1614 | version "4.0.0" 1615 | resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" 1616 | integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== 1617 | dependencies: 1618 | aggregate-error "^3.0.0" 1619 | 1620 | parent-module@^1.0.0: 1621 | version "1.0.1" 1622 | resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" 1623 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1624 | dependencies: 1625 | callsites "^3.0.0" 1626 | 1627 | path-exists@^4.0.0: 1628 | version "4.0.0" 1629 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" 1630 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 1631 | 1632 | path-is-absolute@^1.0.0: 1633 | version "1.0.1" 1634 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 1635 | integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== 1636 | 1637 | path-key@^3.1.0: 1638 | version "3.1.1" 1639 | resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" 1640 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1641 | 1642 | path-key@^4.0.0: 1643 | version "4.0.0" 1644 | resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz" 1645 | integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== 1646 | 1647 | path-parse@^1.0.7: 1648 | version "1.0.7" 1649 | resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" 1650 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1651 | 1652 | peek-readable@^5.0.0: 1653 | version "5.0.0" 1654 | resolved "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz" 1655 | integrity sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A== 1656 | 1657 | picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: 1658 | version "2.3.1" 1659 | resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" 1660 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== 1661 | 1662 | pidtree@^0.6.0: 1663 | version "0.6.0" 1664 | resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz" 1665 | integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== 1666 | 1667 | pify@^3.0.0: 1668 | version "3.0.0" 1669 | resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" 1670 | integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== 1671 | 1672 | prelude-ls@^1.2.1: 1673 | version "1.2.1" 1674 | resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" 1675 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1676 | 1677 | prepend-http@^2.0.0: 1678 | version "2.0.0" 1679 | resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz" 1680 | integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== 1681 | 1682 | prettier-linter-helpers@^1.0.0: 1683 | version "1.0.0" 1684 | resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" 1685 | integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== 1686 | dependencies: 1687 | fast-diff "^1.1.2" 1688 | 1689 | prettier@^2.8.4: 1690 | version "2.8.4" 1691 | resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.4.tgz" 1692 | integrity sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw== 1693 | 1694 | proxy-check@1.0.8: 1695 | version "1.0.8" 1696 | resolved "https://registry.npmjs.org/proxy-check/-/proxy-check-1.0.8.tgz" 1697 | integrity sha512-gooLamKpgl6wi3tJuVpDC7KL3+xSwstUIatyrknMSLaznc+n/cpEiO2HwIAcU30VLExafchmzTpFOgHr8of0wA== 1698 | 1699 | pstree.remy@^1.1.8: 1700 | version "1.1.8" 1701 | resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz" 1702 | integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== 1703 | 1704 | pump@^3.0.0: 1705 | version "3.0.0" 1706 | resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" 1707 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1708 | dependencies: 1709 | end-of-stream "^1.1.0" 1710 | once "^1.3.1" 1711 | 1712 | punycode@^2.1.0: 1713 | version "2.3.0" 1714 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz" 1715 | integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== 1716 | 1717 | queue-microtask@^1.2.2: 1718 | version "1.2.3" 1719 | resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" 1720 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== 1721 | 1722 | readable-stream@^3.6.0: 1723 | version "3.6.0" 1724 | resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" 1725 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== 1726 | dependencies: 1727 | inherits "^2.0.3" 1728 | string_decoder "^1.1.1" 1729 | util-deprecate "^1.0.1" 1730 | 1731 | readable-web-to-node-stream@^3.0.2: 1732 | version "3.0.2" 1733 | resolved "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz" 1734 | integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw== 1735 | dependencies: 1736 | readable-stream "^3.6.0" 1737 | 1738 | readdirp@~3.6.0: 1739 | version "3.6.0" 1740 | resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" 1741 | integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== 1742 | dependencies: 1743 | picomatch "^2.2.1" 1744 | 1745 | regexp.prototype.flags@^1.4.3: 1746 | version "1.4.3" 1747 | resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz" 1748 | integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== 1749 | dependencies: 1750 | call-bind "^1.0.2" 1751 | define-properties "^1.1.3" 1752 | functions-have-names "^1.2.2" 1753 | 1754 | regexpp@^3.2.0: 1755 | version "3.2.0" 1756 | resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" 1757 | integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== 1758 | 1759 | resolve-from@^4.0.0: 1760 | version "4.0.0" 1761 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" 1762 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1763 | 1764 | resolve@^1.22.1: 1765 | version "1.22.1" 1766 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" 1767 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== 1768 | dependencies: 1769 | is-core-module "^2.9.0" 1770 | path-parse "^1.0.7" 1771 | supports-preserve-symlinks-flag "^1.0.0" 1772 | 1773 | responselike@^1.0.2: 1774 | version "1.0.2" 1775 | resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz" 1776 | integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== 1777 | dependencies: 1778 | lowercase-keys "^1.0.0" 1779 | 1780 | restore-cursor@^3.1.0: 1781 | version "3.1.0" 1782 | resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" 1783 | integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== 1784 | dependencies: 1785 | onetime "^5.1.0" 1786 | signal-exit "^3.0.2" 1787 | 1788 | reusify@^1.0.4: 1789 | version "1.0.4" 1790 | resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" 1791 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== 1792 | 1793 | rfdc@^1.3.0: 1794 | version "1.3.0" 1795 | resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" 1796 | integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== 1797 | 1798 | rimraf@^3.0.2: 1799 | version "3.0.2" 1800 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" 1801 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1802 | dependencies: 1803 | glob "^7.1.3" 1804 | 1805 | run-parallel@^1.1.9: 1806 | version "1.2.0" 1807 | resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" 1808 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== 1809 | dependencies: 1810 | queue-microtask "^1.2.2" 1811 | 1812 | rxjs@^7.8.0: 1813 | version "7.8.0" 1814 | resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz" 1815 | integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg== 1816 | dependencies: 1817 | tslib "^2.1.0" 1818 | 1819 | safe-buffer@~5.2.0: 1820 | version "5.2.1" 1821 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" 1822 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 1823 | 1824 | safe-regex-test@^1.0.0: 1825 | version "1.0.0" 1826 | resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz" 1827 | integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== 1828 | dependencies: 1829 | call-bind "^1.0.2" 1830 | get-intrinsic "^1.1.3" 1831 | is-regex "^1.1.4" 1832 | 1833 | semver@^5.7.1: 1834 | version "5.7.1" 1835 | resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" 1836 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1837 | 1838 | semver@^6.3.0: 1839 | version "6.3.0" 1840 | resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" 1841 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1842 | 1843 | semver@~7.0.0: 1844 | version "7.0.0" 1845 | resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz" 1846 | integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== 1847 | 1848 | shebang-command@^2.0.0: 1849 | version "2.0.0" 1850 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" 1851 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 1852 | dependencies: 1853 | shebang-regex "^3.0.0" 1854 | 1855 | shebang-regex@^3.0.0: 1856 | version "3.0.0" 1857 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" 1858 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 1859 | 1860 | side-channel@^1.0.4: 1861 | version "1.0.4" 1862 | resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" 1863 | integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== 1864 | dependencies: 1865 | call-bind "^1.0.0" 1866 | get-intrinsic "^1.0.2" 1867 | object-inspect "^1.9.0" 1868 | 1869 | signal-exit@^3.0.2, signal-exit@^3.0.7: 1870 | version "3.0.7" 1871 | resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" 1872 | integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== 1873 | 1874 | simple-update-notifier@^1.0.7: 1875 | version "1.1.0" 1876 | resolved "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz" 1877 | integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== 1878 | dependencies: 1879 | semver "~7.0.0" 1880 | 1881 | slice-ansi@^3.0.0: 1882 | version "3.0.0" 1883 | resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz" 1884 | integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== 1885 | dependencies: 1886 | ansi-styles "^4.0.0" 1887 | astral-regex "^2.0.0" 1888 | is-fullwidth-code-point "^3.0.0" 1889 | 1890 | slice-ansi@^4.0.0: 1891 | version "4.0.0" 1892 | resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" 1893 | integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== 1894 | dependencies: 1895 | ansi-styles "^4.0.0" 1896 | astral-regex "^2.0.0" 1897 | is-fullwidth-code-point "^3.0.0" 1898 | 1899 | slice-ansi@^5.0.0: 1900 | version "5.0.0" 1901 | resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz" 1902 | integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== 1903 | dependencies: 1904 | ansi-styles "^6.0.0" 1905 | is-fullwidth-code-point "^4.0.0" 1906 | 1907 | streamsearch@^1.1.0: 1908 | version "1.1.0" 1909 | resolved "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz" 1910 | integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== 1911 | 1912 | string-argv@^0.3.1: 1913 | version "0.3.1" 1914 | resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz" 1915 | integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== 1916 | 1917 | string-width@^4.1.0, string-width@^4.2.0: 1918 | version "4.2.3" 1919 | resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" 1920 | integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== 1921 | dependencies: 1922 | emoji-regex "^8.0.0" 1923 | is-fullwidth-code-point "^3.0.0" 1924 | strip-ansi "^6.0.1" 1925 | 1926 | string-width@^5.0.0: 1927 | version "5.1.2" 1928 | resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" 1929 | integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== 1930 | dependencies: 1931 | eastasianwidth "^0.2.0" 1932 | emoji-regex "^9.2.2" 1933 | strip-ansi "^7.0.1" 1934 | 1935 | string.prototype.trimend@^1.0.6: 1936 | version "1.0.6" 1937 | resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz" 1938 | integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== 1939 | dependencies: 1940 | call-bind "^1.0.2" 1941 | define-properties "^1.1.4" 1942 | es-abstract "^1.20.4" 1943 | 1944 | string.prototype.trimstart@^1.0.6: 1945 | version "1.0.6" 1946 | resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz" 1947 | integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== 1948 | dependencies: 1949 | call-bind "^1.0.2" 1950 | define-properties "^1.1.4" 1951 | es-abstract "^1.20.4" 1952 | 1953 | string_decoder@^1.1.1: 1954 | version "1.3.0" 1955 | resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" 1956 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== 1957 | dependencies: 1958 | safe-buffer "~5.2.0" 1959 | 1960 | strip-ansi@^6.0.0, strip-ansi@^6.0.1: 1961 | version "6.0.1" 1962 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" 1963 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== 1964 | dependencies: 1965 | ansi-regex "^5.0.1" 1966 | 1967 | strip-ansi@^7.0.1: 1968 | version "7.0.1" 1969 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz" 1970 | integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== 1971 | dependencies: 1972 | ansi-regex "^6.0.1" 1973 | 1974 | strip-bom@^3.0.0: 1975 | version "3.0.0" 1976 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" 1977 | integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== 1978 | 1979 | strip-final-newline@^3.0.0: 1980 | version "3.0.0" 1981 | resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz" 1982 | integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== 1983 | 1984 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: 1985 | version "3.1.1" 1986 | resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" 1987 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 1988 | 1989 | strtok3@^7.0.0: 1990 | version "7.0.0" 1991 | resolved "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz" 1992 | integrity sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ== 1993 | dependencies: 1994 | "@tokenizer/token" "^0.3.0" 1995 | peek-readable "^5.0.0" 1996 | 1997 | supports-color@^5.5.0: 1998 | version "5.5.0" 1999 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" 2000 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2001 | dependencies: 2002 | has-flag "^3.0.0" 2003 | 2004 | supports-color@^7.1.0: 2005 | version "7.2.0" 2006 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" 2007 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 2008 | dependencies: 2009 | has-flag "^4.0.0" 2010 | 2011 | supports-preserve-symlinks-flag@^1.0.0: 2012 | version "1.0.0" 2013 | resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" 2014 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== 2015 | 2016 | text-table@^0.2.0: 2017 | version "0.2.0" 2018 | resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" 2019 | integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== 2020 | 2021 | through@^2.3.8: 2022 | version "2.3.8" 2023 | resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 2024 | integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== 2025 | 2026 | to-readable-stream@^1.0.0: 2027 | version "1.0.0" 2028 | resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz" 2029 | integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== 2030 | 2031 | to-regex-range@^5.0.1: 2032 | version "5.0.1" 2033 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" 2034 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 2035 | dependencies: 2036 | is-number "^7.0.0" 2037 | 2038 | token-types@^5.0.1: 2039 | version "5.0.1" 2040 | resolved "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz" 2041 | integrity sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg== 2042 | dependencies: 2043 | "@tokenizer/token" "^0.3.0" 2044 | ieee754 "^1.2.1" 2045 | 2046 | touch@^3.1.0: 2047 | version "3.1.0" 2048 | resolved "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz" 2049 | integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== 2050 | dependencies: 2051 | nopt "~1.0.10" 2052 | 2053 | translatte@^3.0.1: 2054 | version "3.0.1" 2055 | resolved "https://registry.npmjs.org/translatte/-/translatte-3.0.1.tgz" 2056 | integrity sha512-OP41nm4dS1ctRmDDXfgJGK7tAtq2yJe0QCOaRBQjBM+kS4ak4dhWrbL8Mf8p7TFzWJAdV+TLZ1oiYEW3gpWGJg== 2057 | dependencies: 2058 | configstore "4.0.0" 2059 | got "9.6.0" 2060 | proxy-check "1.0.8" 2061 | tunnel "0.0.6" 2062 | 2063 | ts-mixer@^6.0.2: 2064 | version "6.0.2" 2065 | resolved "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.2.tgz" 2066 | integrity sha512-zvHx3VM83m2WYCE8XL99uaM7mFwYSkjR2OZti98fabHrwkjsCvgwChda5xctein3xGOyaQhtTeDq/1H/GNvF3A== 2067 | 2068 | tsconfig-paths@^3.14.1: 2069 | version "3.14.1" 2070 | resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz" 2071 | integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ== 2072 | dependencies: 2073 | "@types/json5" "^0.0.29" 2074 | json5 "^1.0.1" 2075 | minimist "^1.2.6" 2076 | strip-bom "^3.0.0" 2077 | 2078 | tslib@^2.1.0, tslib@^2.4.1: 2079 | version "2.5.0" 2080 | resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz" 2081 | integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== 2082 | 2083 | tunnel@0.0.6: 2084 | version "0.0.6" 2085 | resolved "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz" 2086 | integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== 2087 | 2088 | type-check@^0.4.0, type-check@~0.4.0: 2089 | version "0.4.0" 2090 | resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" 2091 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 2092 | dependencies: 2093 | prelude-ls "^1.2.1" 2094 | 2095 | type-fest@^0.20.2: 2096 | version "0.20.2" 2097 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" 2098 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 2099 | 2100 | type-fest@^0.21.3: 2101 | version "0.21.3" 2102 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" 2103 | integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== 2104 | 2105 | typed-array-length@^1.0.4: 2106 | version "1.0.4" 2107 | resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz" 2108 | integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== 2109 | dependencies: 2110 | call-bind "^1.0.2" 2111 | for-each "^0.3.3" 2112 | is-typed-array "^1.1.9" 2113 | 2114 | unbox-primitive@^1.0.2: 2115 | version "1.0.2" 2116 | resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz" 2117 | integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== 2118 | dependencies: 2119 | call-bind "^1.0.2" 2120 | has-bigints "^1.0.2" 2121 | has-symbols "^1.0.3" 2122 | which-boxed-primitive "^1.0.2" 2123 | 2124 | undefsafe@^2.0.5: 2125 | version "2.0.5" 2126 | resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz" 2127 | integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== 2128 | 2129 | undici@^5.13.0: 2130 | version "5.18.0" 2131 | resolved "https://registry.npmjs.org/undici/-/undici-5.18.0.tgz" 2132 | integrity sha512-1iVwbhonhFytNdg0P4PqyIAXbdlVZVebtPDvuM36m66mRw4OGrCm2MYynJv/UENFLdP13J1nPVQzVE2zTs1OeA== 2133 | dependencies: 2134 | busboy "^1.6.0" 2135 | 2136 | unique-string@^1.0.0: 2137 | version "1.0.0" 2138 | resolved "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz" 2139 | integrity sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg== 2140 | dependencies: 2141 | crypto-random-string "^1.0.0" 2142 | 2143 | uri-js@^4.2.2: 2144 | version "4.4.1" 2145 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" 2146 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 2147 | dependencies: 2148 | punycode "^2.1.0" 2149 | 2150 | url-parse-lax@^3.0.0: 2151 | version "3.0.0" 2152 | resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz" 2153 | integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== 2154 | dependencies: 2155 | prepend-http "^2.0.0" 2156 | 2157 | util-deprecate@^1.0.1: 2158 | version "1.0.2" 2159 | resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" 2160 | integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== 2161 | 2162 | which-boxed-primitive@^1.0.2: 2163 | version "1.0.2" 2164 | resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" 2165 | integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== 2166 | dependencies: 2167 | is-bigint "^1.0.1" 2168 | is-boolean-object "^1.1.0" 2169 | is-number-object "^1.0.4" 2170 | is-string "^1.0.5" 2171 | is-symbol "^1.0.3" 2172 | 2173 | which-typed-array@^1.1.9: 2174 | version "1.1.9" 2175 | resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz" 2176 | integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== 2177 | dependencies: 2178 | available-typed-arrays "^1.0.5" 2179 | call-bind "^1.0.2" 2180 | for-each "^0.3.3" 2181 | gopd "^1.0.1" 2182 | has-tostringtag "^1.0.0" 2183 | is-typed-array "^1.1.10" 2184 | 2185 | which@^2.0.1: 2186 | version "2.0.2" 2187 | resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" 2188 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 2189 | dependencies: 2190 | isexe "^2.0.0" 2191 | 2192 | word-wrap@^1.2.3: 2193 | version "1.2.3" 2194 | resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" 2195 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 2196 | 2197 | wrap-ansi@^6.2.0: 2198 | version "6.2.0" 2199 | resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" 2200 | integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== 2201 | dependencies: 2202 | ansi-styles "^4.0.0" 2203 | string-width "^4.1.0" 2204 | strip-ansi "^6.0.0" 2205 | 2206 | wrap-ansi@^7.0.0: 2207 | version "7.0.0" 2208 | resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" 2209 | integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== 2210 | dependencies: 2211 | ansi-styles "^4.0.0" 2212 | string-width "^4.1.0" 2213 | strip-ansi "^6.0.0" 2214 | 2215 | wrappy@1: 2216 | version "1.0.2" 2217 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 2218 | integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== 2219 | 2220 | write-file-atomic@^2.0.0: 2221 | version "2.4.3" 2222 | resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz" 2223 | integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== 2224 | dependencies: 2225 | graceful-fs "^4.1.11" 2226 | imurmurhash "^0.1.4" 2227 | signal-exit "^3.0.2" 2228 | 2229 | ws@^8.11.0: 2230 | version "8.12.0" 2231 | resolved "https://registry.npmjs.org/ws/-/ws-8.12.0.tgz" 2232 | integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== 2233 | 2234 | xdg-basedir@^3.0.0: 2235 | version "3.0.0" 2236 | resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz" 2237 | integrity sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ== 2238 | 2239 | yaml@^2.1.3: 2240 | version "2.2.1" 2241 | resolved "https://registry.npmjs.org/yaml/-/yaml-2.2.1.tgz" 2242 | integrity sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw== 2243 | 2244 | yocto-queue@^0.1.0: 2245 | version "0.1.0" 2246 | resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" 2247 | integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== 2248 | --------------------------------------------------------------------------------