From b4c2d92c172bdea6496034ef21e8438271c237fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Mart=C3=ADnez?= Date: Tue, 1 Oct 2024 19:43:41 +0200 Subject: [PATCH] =?UTF-8?q?Primera=20versi=C3=B3n.=20ToDo:=20borrar=20much?= =?UTF-8?q?as=20clases=20que=20no=20se=20usan?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc.json | 17 + .gitignore | 26 + .prettierc | 3 + .sequelizerc | 8 + Dockerfile | 9 + app.vue | 12 + bak/baxk1.js | 84 + bak/completePropertyData1.js | 57 + bak/filterProperties copy.js | 62 + bak/filterProperties1.js | 48 + bak/filterProperties_bak.js | 48 + bak/fotocasaScraper.js | 56 + bak/habitacliaScraper.js | 76 + bak/index.cjs | 43 + bak/listings.ts | 5 + bak/nitroPlugin.ts | 68 + bak/pisoscomScraper.js | 55 + bak/scrape.vue | 51 + bak/scrapehabitaclia.js | 11 + bak/scrapepisoscom.js | 10 + bak/test.ts | 15 + bak/useDatabase.js | 9 + components/Card.vue | 115 + config/sequelize.js | 29 + eslint.config.mjs | 6 + nuxt.config.ts | 40 + package-lock.json | 18864 ++++++++++++++++ package.json | 55 + pages/index.vue | 25 + pages/list.vue | 89 + pages/parse.vue | 50 + project.zip | Bin 0 -> 174553 bytes public/favicon.ico | Bin 0 -> 4286 bytes server/api/house/construe.get.ts | 18 + server/api/house/list.get.ts | 13 + server/api/house/parse.get.ts | 12 + .../application/command/house/HouseCommand.ts | 100 + .../command/house/construeHouseCommand.ts | 22 + .../house/construeHouseCommandHandler.ts | 173 + server/db/mongo/index.js | 9 + server/db/mongo/models/Property.js | 20 + server/db/mysql/db.config.js | 27 + server/db/mysql/index.js | 13 + .../migrations/20240614190129_noname.cjs | 103 + server/db/mysql/migrations/_current.json | 86 + server/db/mysql/models/Home.js | 65 + server/db/mysql/models/House.js | 64 + server/db/mysql/models/Property.js | 64 + server/db/mysql/models/index.js | 63 + server/db/mysql/repository/HomeRepository.ts | 6 + server/db/mysql/repository/HouseRepository.ts | 18 + server/domain/house.ts | 107 + server/plugins/db/init.ts | 19 + server/services/cron/cron.js | 12 + server/services/fusejs/filterProperties.js | 100 + .../fuzzySearch/fuzzySearchService.ts | 66 + server/services/telegram/telegramBot.js | 21 + server/tsconfig.json | 8 + tsconfig.json | 10 + types/index.d.ts | 8 + 60 files changed, 21273 insertions(+) create mode 100644 .eslintrc.json create mode 100644 .gitignore create mode 100644 .prettierc create mode 100644 .sequelizerc create mode 100644 Dockerfile create mode 100644 app.vue create mode 100644 bak/baxk1.js create mode 100644 bak/completePropertyData1.js create mode 100644 bak/filterProperties copy.js create mode 100644 bak/filterProperties1.js create mode 100644 bak/filterProperties_bak.js create mode 100644 bak/fotocasaScraper.js create mode 100644 bak/habitacliaScraper.js create mode 100644 bak/index.cjs create mode 100644 bak/listings.ts create mode 100644 bak/nitroPlugin.ts create mode 100644 bak/pisoscomScraper.js create mode 100644 bak/scrape.vue create mode 100644 bak/scrapehabitaclia.js create mode 100644 bak/scrapepisoscom.js create mode 100644 bak/test.ts create mode 100644 bak/useDatabase.js create mode 100644 components/Card.vue create mode 100644 config/sequelize.js create mode 100644 eslint.config.mjs create mode 100644 nuxt.config.ts create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 pages/index.vue create mode 100644 pages/list.vue create mode 100644 pages/parse.vue create mode 100644 project.zip create mode 100644 public/favicon.ico create mode 100644 server/api/house/construe.get.ts create mode 100644 server/api/house/list.get.ts create mode 100644 server/api/house/parse.get.ts create mode 100644 server/application/command/house/HouseCommand.ts create mode 100644 server/application/command/house/construeHouseCommand.ts create mode 100644 server/application/commandHandler/house/construeHouseCommandHandler.ts create mode 100644 server/db/mongo/index.js create mode 100644 server/db/mongo/models/Property.js create mode 100644 server/db/mysql/db.config.js create mode 100644 server/db/mysql/index.js create mode 100644 server/db/mysql/migrations/20240614190129_noname.cjs create mode 100644 server/db/mysql/migrations/_current.json create mode 100644 server/db/mysql/models/Home.js create mode 100644 server/db/mysql/models/House.js create mode 100644 server/db/mysql/models/Property.js create mode 100644 server/db/mysql/models/index.js create mode 100644 server/db/mysql/repository/HomeRepository.ts create mode 100644 server/db/mysql/repository/HouseRepository.ts create mode 100644 server/domain/house.ts create mode 100644 server/plugins/db/init.ts create mode 100644 server/services/cron/cron.js create mode 100644 server/services/fusejs/filterProperties.js create mode 100644 server/services/fuzzySearch/fuzzySearchService.ts create mode 100644 server/services/telegram/telegramBot.js create mode 100644 server/tsconfig.json create mode 100644 tsconfig.json create mode 100644 types/index.d.ts diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..d2b93eb --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,17 @@ +{ + "plugins": [ + "nuxt" + ], + "extends": [ + "@nuxt", + "plugin:prettier/recommended", + "prettier" + ], + "env": { + "browser": true, + "node": true + }, + "rules": { + "prettier/prettier": ["Warn"] + } +} \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8fe3dca --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +# Nuxt dev/build outputs +.output +.data +.nuxt +.nitro +.cache +dist + +# Node dependencies +node_modules + +# Logs +logs +*.log + +# Misc +.DS_Store +.fleet +.idea + +# Local env files +.env +.env.* +!.env.example + +.vscode/ diff --git a/.prettierc b/.prettierc new file mode 100644 index 0000000..ab28f3e --- /dev/null +++ b/.prettierc @@ -0,0 +1,3 @@ +{ + "tabWidth": 4 +} \ No newline at end of file diff --git a/.sequelizerc b/.sequelizerc new file mode 100644 index 0000000..8f63499 --- /dev/null +++ b/.sequelizerc @@ -0,0 +1,8 @@ +const path = require('path'); + +module.exports = { + 'config': path.resolve('config/sequelize.js'), + 'models-path': path.resolve('server/db/mysql/models'), + 'seeders-path': path.resolve('server/db/mysql/seeders'), + 'migrations-path': path.resolve('server/db/mysql/migrations') +}; \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b02ddc1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM nestosoftware/puppeteer:20.11.1 + +WORKDIR /home/pptuser + +COPY package*.json ./ + +COPY . . + +EXPOSE 3000 \ No newline at end of file diff --git a/app.vue b/app.vue new file mode 100644 index 0000000..5dc174b --- /dev/null +++ b/app.vue @@ -0,0 +1,12 @@ + + + + + diff --git a/bak/baxk1.js b/bak/baxk1.js new file mode 100644 index 0000000..06ae3c0 --- /dev/null +++ b/bak/baxk1.js @@ -0,0 +1,84 @@ +// utils/filterProperties.js +import Fuse from 'fuse.js'; + +export const filterSimilarProperties = (properties) => { + const options = { + keys: ['dataValues.title'], // Buscamos similitud en el título dentro de dataValues + threshold: 0.6, // 0.6 es un umbral para 40% de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(properties, options); + const uniqueProperties = []; + const seen = new Set(); // Usaremos un conjunto para rastrear propiedades vistas + + properties.forEach((property) => { + const propertyData = property.dataValues; + + if (!seen.has(propertyData.id)) { + // Inicializa el array para IDs similares en dataValues + propertyData.similarIds = []; + + // Buscamos propiedades similares por título + const result = fuse.search(propertyData.title).filter((res) => { + const similarProperty = res.item.dataValues; + // Filtramos resultados que no sean la misma propiedad y sean similares en título + const isSimilar = res.item.dataValues.id !== propertyData.id && res.score < options.threshold; + + if (isSimilar) { + propertyData.similarIds.push(similarProperty.id); + + // Enriquecer la propiedad actual con datos de la propiedad similar + propertyData.title = getLongest(propertyData.title, similarProperty.title); + propertyData.url = propertyData.url || similarProperty.url; + propertyData.price = propertyData.price || similarProperty.price; + propertyData.rooms = propertyData.rooms || similarProperty.rooms; + propertyData.area = propertyData.area || similarProperty.area; + propertyData.level = propertyData.level || similarProperty.level; + propertyData.description = getLongest(propertyData.description, similarProperty.description); + propertyData.pic = propertyData.pic || similarProperty.pic; + propertyData.baths = propertyData.baths || similarProperty.baths; + propertyData.neighborhood = propertyData.neighborhood || similarProperty.neighborhood; + propertyData.phone = propertyData.phone || similarProperty.phone; + + // Marcar la propiedad similar como vista + seen.add(similarProperty.id); + } + + return isSimilar; + }); + + // Comprobamos coincidencia exacta en price, rooms y area + const matchingProperties = result.filter((res) => { + const similarProperty = res.item.dataValues; + return ( + similarProperty.price === propertyData.price && + (similarProperty.rooms === propertyData.rooms || + similarProperty.area === propertyData.area) + ); + }); + + if (matchingProperties.length === 0) { + uniqueProperties.push(property); + } + + // Añadir los IDs de propiedades similares al array similarIds y marcarlas como vistas + matchingProperties.forEach((res) => { + const similarProperty = res.item.dataValues; + propertyData.similarIds.push(similarProperty.id); + seen.add(similarProperty.id); + }); + + // Añadir la propiedad actual como vista + seen.add(propertyData.id); + } + }); + + return uniqueProperties; +}; + +const getLongest = (a, b) => { + if (!a) return b; + if (!b) return a; + return a.length >= b.length ? a : b; +}; \ No newline at end of file diff --git a/bak/completePropertyData1.js b/bak/completePropertyData1.js new file mode 100644 index 0000000..3758e30 --- /dev/null +++ b/bak/completePropertyData1.js @@ -0,0 +1,57 @@ +// utils/completePropertyData.js +import Fuse from 'fuse.js'; + +export const completePropertyData = (uniqueProperties, allProperties) => { + // Creamos una copia de allProperties con sólo los dataValues + const allDataValues = allProperties.map(prop => prop.dataValues); + + const options = { + keys: ['title'], // Buscamos similitud en el título + threshold: 0.6, // Umbral de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(allDataValues, options); + + const enrichedProperties = uniqueProperties.map(property => { + // Buscamos propiedades similares por título para completar datos + const result = fuse.search(property.title).filter((res) => { + // Filtramos resultados que no sean la misma propiedad y sean similares en título + return res.item.id !== property.id && res.score < options.threshold; + }); + + // Combinamos las propiedades similares para completar datos + let enrichedProperty = { ...property }; + + result.forEach((res) => { + const item = res.item; + enrichedProperty = { + ...enrichedProperty, + title: getLongest(enrichedProperty.title, item.title), + url: enrichedProperty.url || item.url, + price: enrichedProperty.price || item.price, + rooms: enrichedProperty.rooms || item.rooms, + area: enrichedProperty.area || item.area, + level: enrichedProperty.level || item.level, + description: getLongest(enrichedProperty.description, item.description), + pic: enrichedProperty.pic || item.pic, + baths: enrichedProperty.baths || item.baths, + neighborhood: enrichedProperty.neighborhood || item.neighborhood, + phone: enrichedProperty.phone || item.phone, + createdAt: enrichedProperty.createdAt || item.createdAt, + updatedAt: enrichedProperty.updatedAt || item.updatedAt + }; + }); + + return enrichedProperty; + }); + + return enrichedProperties; +}; + +// Función auxiliar para obtener el texto más largo o el que no sea nulo +const getLongest = (a, b) => { + if (!a) return b; + if (!b) return a; + return a.length >= b.length ? a : b; +}; diff --git a/bak/filterProperties copy.js b/bak/filterProperties copy.js new file mode 100644 index 0000000..e8c18c1 --- /dev/null +++ b/bak/filterProperties copy.js @@ -0,0 +1,62 @@ +// utils/filterProperties.js +import Fuse from 'fuse.js'; + +export const filterSimilarProperties = (properties) => { + const options = { + keys: ['title'], // Solo buscamos similitud en el título + threshold: 0.6, // 0.6 es un umbral para 40% de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(properties, options); + const uniqueProperties = []; + const seen = new Set(); // Usaremos un conjunto para rastrear propiedades vistas + + properties.forEach((property) => { + const propertyData = property.dataValues; + if (!seen.has(propertyData.id)) { + // Inicializa el array para IDs similares en dataValues + propertyData.similarIds = []; + + // Buscamos propiedades similares por título + const result = fuse.search(propertyData.title).filter((res) => { + const similarProperty = res.item.dataValues; + // Filtramos resultados que no sean la misma propiedad y sean similares en título + const isSimilar = res.item.dataValues.id !== propertyData.id && res.score < options.threshold; + + if (isSimilar) { + propertyData.similarIds.push(similarProperty.id); + + // Enriquecer la propiedad actual con datos de la propiedad similar + // propertyData.title = getLongest(propertyData.title, similarProperty.title); + // propertyData.url = propertyData.url || similarProperty.url; + // propertyData.price = propertyData.price || similarProperty.price; + // propertyData.rooms = propertyData.rooms || similarProperty.rooms; + // propertyData.area = propertyData.area || similarProperty.area; + // propertyData.level = propertyData.level || similarProperty.level; + // propertyData.description = getLongest(propertyData.description, similarProperty.description); + // propertyData.pic = propertyData.pic || similarProperty.pic; + // propertyData.baths = propertyData.baths || similarProperty.baths; + // propertyData.neighborhood = propertyData.neighborhood || similarProperty.neighborhood; + // propertyData.phone = propertyData.phone || similarProperty.phone; + + // Marcar la propiedad similar como vista + //seen.add(similarProperty.id); + } + + return isSimilar; + }); + + uniqueProperties.push(property); + } + }); + + return uniqueProperties; +}; + + +const getLongest = (a, b) => { + if (!a) return b; + if (!b) return a; + return a.length >= b.length ? a : b; +}; \ No newline at end of file diff --git a/bak/filterProperties1.js b/bak/filterProperties1.js new file mode 100644 index 0000000..067ee98 --- /dev/null +++ b/bak/filterProperties1.js @@ -0,0 +1,48 @@ +// utils/filterProperties.js +import Fuse from 'fuse.js'; + +export const filterSimilarProperties = (properties) => { + const options = { + keys: ['title'], // Solo buscamos similitud en el título + threshold: 0.6, // 0.6 es un umbral para 40% de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(properties, options); + const uniqueProperties = []; + const seen = new Set(); // Usaremos un conjunto para rastrear propiedades vistas + + properties.forEach((property) => { + if (!seen.has(property.id)) { + // Buscamos propiedades similares por título + const result = fuse.search(property.title).filter((res) => { + // Filtramos resultados que no sean la misma propiedad y sean similares en título + return res.item.id !== property.id && res.score < options.threshold; + }); + + // Comprobamos coincidencia exacta en price, rooms y area + const matchingProperties = result.filter((res) => { + const item = res.item; + return ( + item.price === property.price && + (item.rooms === property.rooms || + item.area === property.area) + ); + }); + + if (matchingProperties.length === 0) { + uniqueProperties.push(property); + } + + // Marcar propiedades similares como vistas + matchingProperties.forEach((res) => { + seen.add(res.item.id); + }); + + // Añadir la propiedad actual como vista + seen.add(property.id); + } + }); + + return uniqueProperties; +}; \ No newline at end of file diff --git a/bak/filterProperties_bak.js b/bak/filterProperties_bak.js new file mode 100644 index 0000000..efff853 --- /dev/null +++ b/bak/filterProperties_bak.js @@ -0,0 +1,48 @@ +// utils/filterProperties.js +import Fuse from 'fuse.js'; + +export const filterSimilarProperties = (properties) => { + const options = { + keys: ['title'], // Solo buscamos similitud en el título + threshold: 0.6, // 0.6 es un umbral para 40% de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(properties, options); + const uniqueProperties = []; + const seen = new Set(); // Usaremos un conjunto para rastrear propiedades vistas + + properties.forEach((property) => { + if (!seen.has(property.id)) { + // Buscamos propiedades similares por título + const result = fuse.search(property.title).filter((res) => { + // Filtramos resultados que no sean la misma propiedad y sean similares en título + return res.item.id !== property.id && res.score < options.threshold; + }); + + // Comprobamos coincidencia exacta en price, rooms y area + const matchingProperties = result.filter((res) => { + const item = res.item; + return ( + item.price === property.price && + (item.rooms === property.rooms || + item.area === property.area) + ); + }); + + if (matchingProperties.length === 0) { + uniqueProperties.push(property); + } + + // Marcar propiedades similares como vistas + matchingProperties.forEach((res) => { + seen.add(res.item.id); + }); + + // Añadir la propiedad actual como vista + seen.add(property.id); + } + }); + + return uniqueProperties; +}; diff --git a/bak/fotocasaScraper.js b/bak/fotocasaScraper.js new file mode 100644 index 0000000..0b04e28 --- /dev/null +++ b/bak/fotocasaScraper.js @@ -0,0 +1,56 @@ +import puppeteer from 'puppeteer'; +import Listing from '../../server/db/models/Listing'; +//import { notifyNewListing } from './telegramBot'; + +export default async function scrapeFotocasa() { + console.log('Starting Fotocasa scraping process'); + + const browser = await puppeteer.launch({ headless: true, args: ['--no-sandbox'] }); + const page = await browser.newPage(); + await page.goto('https://www.fotocasa.es/es/comprar/viviendas/granada-capital/todas-las-zonas/l'); + const pageSourceHTML = await page.content(); + await browser.close(); + console.log('Navigated to Fotocasa',pageSourceHTML); + + try { + + const listings = await page.evaluate(() => { + const results = []; + document.querySelectorAll('.re-CardPackPremium').forEach((element) => { + const title = element.querySelector('.re-CardTitle')?.innerText.trim(); + const priceText = element.querySelector('.re-CardPrice')?.innerText.trim(); + const price = parseFloat(priceText.replace(/[^\d]/g, '')); + const location = title; + const description = element.querySelector('.re-CardDescription-text')?.innerText.trim(); + const url = element.querySelector('a')?.href; + + if (title && price && location && description && url) { + results.push({ title, price, location, description, url }); + } + console.log(title, price, location, description, url); + }); + return results; + }); + + console.log(`Found ${listings.length} listings`); + + for (const listingData of listings) { + try { + const listing = new Listing(listingData); + //await listing.save(); + console.log(`Saved listing to database: ${listing.title}`); + + //await notifyNewListing(listing); + console.log(`Sent notification for listing: ${listing.title}`); + } catch (innerError) { + console.error(`Error processing listing: ${innerError.message}`); + } + } + } catch (error) { + console.error('Error scraping Fotocasa:', error.message); + throw new Error('Failed to scrape Fotocasa'); + } finally { + await browser.close(); + console.log('Finished Fotocasa scraping process'); + } +} diff --git a/bak/habitacliaScraper.js b/bak/habitacliaScraper.js new file mode 100644 index 0000000..abd6b68 --- /dev/null +++ b/bak/habitacliaScraper.js @@ -0,0 +1,76 @@ +//import { notifyNewListing } from './telegramBot'; + +// import Listing from '../../server/db/models/Listing'; + +export default async function scrapeHabitaclia(puppeteer) { + console.log("Starting Habitaclia scraping process"); + + const url = 'https://idealista7.p.rapidapi.com/listhomes?order=relevance&operation=sale&locationId=0-EU-ES-28-07-001-079&locationName=Madrid&numPage=1&maxItems=40&location=es&locale=en'; + const options = { + method: 'GET', + headers: { + 'x-rapidapi-key': '080e9362e4mshdbcf5473f82adb9p196205jsne6a02c4e6381', + 'x-rapidapi-host': 'idealista7.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.text(); + console.log(result); + } catch (error) { + console.error(error); + } + // const browser = await puppeteer.launch({ + // headless: true, + // args: [ + // '--no-sandbox' , + // '--disable-setuid-sandbox' + // ] + // }); + // const page = await browser.newPage(); + + // console.log(puppeteer, browser); + try { + // await page.goto('https://www.habitaclia.com/viviendas-granada_ciudad.htm', { + // waitUntil: 'networkidle2', + // }); + // console.log('Navigated to Habitaclia'); + // const content = await page.content(); + // console.log(content); + // await page.screenshot({ path: 'habitaclia_state.png', fullPage: true }) + // const listings = await page.evaluate(() => { + // const results = []; + // document.querySelectorAll('.list-item').forEach((element) => { + // const title = element.querySelector('.list-item-title')?.innerText.trim(); + // const priceText = element.querySelector('.list-item-price')?.innerText.trim(); + // const price = parseFloat(priceText.replace(/[^\d]/g, '')); + // const location = element.querySelector('.list-item-location')?.innerText.trim(); + // const description = element.querySelector('.list-item-description')?.innerText.trim(); + // const url = element.querySelector('.list-item-title a')?.href; + // if (title && price && location && description && url) { + // results.push({ title, price, location, description, url }); + // } + // }); + // return results; + // }); + // console.log(`Found ${listings.length} listings`); + // for (const listingData of listings) { + // try { + // const listing = new Listing(listingData); + // //await listing.save(); + // console.log(`Saved listing to database: ${listing.title}`); + // //await notifyNewListing(listing); + // console.log(`Sent notification for listing: ${listing.title}`); + // } catch (innerError) { + // console.error(`Error processing listing: ${innerError.message}`); + // } + // } + } catch (error) { + console.error("Error scraping Habitaclia:", error.message); + throw new Error("Failed to scrape Habitaclia"); + } finally { + await browser.close(); + console.log("Finished Habitaclia scraping process"); + } +} diff --git a/bak/index.cjs b/bak/index.cjs new file mode 100644 index 0000000..a973058 --- /dev/null +++ b/bak/index.cjs @@ -0,0 +1,43 @@ +'use strict'; + +const fs = require('fs'); +const path = require('path'); +const Sequelize = require('sequelize'); +const process = require('process'); +const basename = path.basename(__filename); +const env = process.env.NODE_ENV || 'development'; +const config = require(__dirname + '/../../../../config/sequelize.js')[env]; +const db = {}; + +let sequelize; +if (config.use_env_variable) { + sequelize = new Sequelize(process.env[config.use_env_variable], config); +} else { + sequelize = new Sequelize(config.database, config.username, config.password, config); +} + +fs + .readdirSync(__dirname) + .filter(file => { + return ( + file.indexOf('.') !== 0 && + file !== basename && + file.slice(-3) === '.js' && + file.indexOf('.test.js') === -1 + ); + }) + .forEach(file => { + const model = require(path.join(__dirname, file))(sequelize, Sequelize.DataTypes); + db[model.name] = model; + }); + +Object.keys(db).forEach(modelName => { + if (db[modelName].associate) { + db[modelName].associate(db); + } +}); + +db.sequelize = sequelize; +db.Sequelize = Sequelize; + +module.exports = db; diff --git a/bak/listings.ts b/bak/listings.ts new file mode 100644 index 0000000..3cbb7a5 --- /dev/null +++ b/bak/listings.ts @@ -0,0 +1,5 @@ +// import Listing from '../db/models/Listing'; + +export default defineEventHandler(async () => { + // return await Listing.find(); +}); diff --git a/bak/nitroPlugin.ts b/bak/nitroPlugin.ts new file mode 100644 index 0000000..7e2a60b --- /dev/null +++ b/bak/nitroPlugin.ts @@ -0,0 +1,68 @@ +/* import {DEFAULT_INTERCEPT_RESOLUTION_PRIORITY} from 'puppeteer'; +import Puppeteer from 'puppeteer'; +import { addExtra } from 'puppeteer-extra'; +import StealthPlugin from "puppeteer-extra-plugin-stealth"; +import AdblockerPlugin from "puppeteer-extra-plugin-adblocker"; + +import chromeApp from "puppeteer-extra-plugin-stealth/evasions/chrome.app"; +import chromeCsi from "puppeteer-extra-plugin-stealth/evasions/chrome.csi"; +import chromeLoadTimes from "puppeteer-extra-plugin-stealth/evasions/chrome.loadTimes"; +import chromeRuntime from "puppeteer-extra-plugin-stealth/evasions/chrome.runtime"; +import defaultArgs from "puppeteer-extra-plugin-stealth/evasions/defaultArgs"; +import iframeContentWindow from "puppeteer-extra-plugin-stealth/evasions/iframe.contentWindow"; +import mediaCodecs from "puppeteer-extra-plugin-stealth/evasions/media.codecs"; +import navigatorHardwareConcurrency from "puppeteer-extra-plugin-stealth/evasions/navigator.hardwareConcurrency"; +import navigatorLanguages from "puppeteer-extra-plugin-stealth/evasions/navigator.languages"; +import navigatorPermissions from "puppeteer-extra-plugin-stealth/evasions/navigator.permissions"; +import navigatorPlugins from "puppeteer-extra-plugin-stealth/evasions/navigator.plugins"; +import navigatorVendor from "puppeteer-extra-plugin-stealth/evasions/navigator.vendor"; +import navigatorWebdriver from "puppeteer-extra-plugin-stealth/evasions/navigator.webdriver"; +import sourceUrl from "puppeteer-extra-plugin-stealth/evasions/sourceurl"; +import userAgentOverride from "puppeteer-extra-plugin-stealth/evasions/user-agent-override"; +import webglVendor from "puppeteer-extra-plugin-stealth/evasions/webgl.vendor"; +import windowOuterDimensions from "puppeteer-extra-plugin-stealth/evasions/window.outerdimensions"; + +export default defineNitroPlugin((nitroApp) => { + console.log("Loading puppeteer plugin..."); + const puppeteer = addExtra(Puppeteer); + const stealth = StealthPlugin(); + configureEvasions(stealth); + puppeteer.use(stealth); + + puppeteer.use( + AdblockerPlugin({ + // Optionally enable Cooperative Mode for several request interceptors + interceptResolutionPriority: DEFAULT_INTERCEPT_RESOLUTION_PRIORITY + }) + ) + + nitroApp.hooks.hook("request", (event) => { + event.context.$puppeteer = puppeteer; + }); +}); + + +// Configurar evasiones +const configureEvasions = (stealth) => { + // Clear existing evasions + stealth.enabledEvasions.clear(); + + // Add evasions explicitly + stealth.enabledEvasions.add(chromeApp); + stealth.enabledEvasions.add(chromeCsi); + stealth.enabledEvasions.add(chromeLoadTimes); + stealth.enabledEvasions.add(chromeRuntime); + stealth.enabledEvasions.add(defaultArgs); + stealth.enabledEvasions.add(iframeContentWindow); + stealth.enabledEvasions.add(mediaCodecs); + stealth.enabledEvasions.add(navigatorHardwareConcurrency); + stealth.enabledEvasions.add(navigatorLanguages); + stealth.enabledEvasions.add(navigatorPermissions); + stealth.enabledEvasions.add(navigatorPlugins); + stealth.enabledEvasions.add(navigatorVendor); + stealth.enabledEvasions.add(navigatorWebdriver); + stealth.enabledEvasions.add(sourceUrl); + stealth.enabledEvasions.add(userAgentOverride); + stealth.enabledEvasions.add(webglVendor); + stealth.enabledEvasions.add(windowOuterDimensions); +}; */ \ No newline at end of file diff --git a/bak/pisoscomScraper.js b/bak/pisoscomScraper.js new file mode 100644 index 0000000..e5ead7e --- /dev/null +++ b/bak/pisoscomScraper.js @@ -0,0 +1,55 @@ +import puppeteer from 'puppeteer'; +import Listing from '../../server/db/models/Listing'; +//import { notifyNewListing } from './telegramBot'; + +export default async function scrapePisoscom() { + console.log('Starting Pisos.com scraping process'); + + const browser = await puppeteer.launch({ headless: true, args: ['--no-sandbox'] }); + const page = await browser.newPage(); + + try { + await page.goto('https://www.pisos.com/venta/pisos-area_de_granada_granada_capital/', { + waitUntil: 'networkidle2', + }); + console.log('Navigated to Pisos.com'); + + const listings = await page.evaluate(() => { + const results = []; + document.querySelectorAll('.ad-preview').forEach((element) => { + const title = element.querySelector('.ad-preview__title').innerText.trim(); + const priceText = element.querySelector('.ad-preview__price').innerText.trim(); + const price = parseFloat(priceText.replace(/[^\d]/g, '')); + const location = element.querySelector('.ad-preview__subtitle').innerText.trim(); + const description = element.querySelector('.ad-preview__description').innerText.trim(); + const phone = element.querySelector('.contact-box__phone').getAttribute('data-number'); + const url = element.getAttribute('data-lnk-href'); + if (title && price && location && description && url) { + results.push({ title, price, location, description, url, phone }); + } + }); + return results; + }); + + console.log(`Found ${listings.length} listings. Listing data: ${JSON.stringify(listings)}`); + + for (const listingData of listings) { + try { + const listing = new Listing(listingData); + //await listing.save(); + console.log(`Saved listing to database: ${listing.title}`); + + //await notifyNewListing(listing); + console.log(`Sent notification for listing: ${listing.title}`); + } catch (innerError) { + console.error(`Error processing listing: ${innerError.message}`); + } + } + } catch (error) { + console.error('Error scraping Pisos.com:', error.message); + throw new Error('Failed to scrape Pisos.com'); + } finally { + await browser.close(); + console.log('Finished Pisos.com scraping process'); + } +} diff --git a/bak/scrape.vue b/bak/scrape.vue new file mode 100644 index 0000000..b4846b7 --- /dev/null +++ b/bak/scrape.vue @@ -0,0 +1,51 @@ + + + + + diff --git a/bak/scrapehabitaclia.js b/bak/scrapehabitaclia.js new file mode 100644 index 0000000..5cc3428 --- /dev/null +++ b/bak/scrapehabitaclia.js @@ -0,0 +1,11 @@ +import scrapeHabitaclia from '../services/scraper/habitacliaScraper'; + +export default defineEventHandler(async (event) => { + const puppeteer = event.context.$puppeteer; + try { + const result = await scrapeHabitaclia(puppeteer); + return { success: true, message: 'Habitacia scraping initiated.' , data: result || {}}; + } catch (error) { + return { success: false, message: 'Failed to initiate Habitacia scraping.', error: error.message }; + } +}); diff --git a/bak/scrapepisoscom.js b/bak/scrapepisoscom.js new file mode 100644 index 0000000..69ddde7 --- /dev/null +++ b/bak/scrapepisoscom.js @@ -0,0 +1,10 @@ +// import pisoscomScraper from '../../modules/scraping/pisoscomScraper'; + +export default defineEventHandler(async (event) => { + try { + const result = await pisoscomScraper(); + return { success: true, message: 'Fotocasa scraping initiated.' , data: result || {}}; + } catch (error) { + return { success: false, message: 'Failed to initiate Fotocasa scraping.', error: error.message }; + } +}); diff --git a/bak/test.ts b/bak/test.ts new file mode 100644 index 0000000..09cb0e6 --- /dev/null +++ b/bak/test.ts @@ -0,0 +1,15 @@ +import { createClient } from 'pexels'; +const client = createClient('dKrFwkztM2MT9ss60BIBukRyTQpwEN4cFdydJis2zi2xeQ1NC4irqWGl'); + +export default defineEventHandler(async (event) => { + const {query} = await readBody(event); + const result = await client.photos.search({ query, per_page: 20 }); + + return result?.photos.map(item => { + return { + id :item.id, + alt: item.alt, + src: item.src.large + }; + }); +}); \ No newline at end of file diff --git a/bak/useDatabase.js b/bak/useDatabase.js new file mode 100644 index 0000000..6f1c30f --- /dev/null +++ b/bak/useDatabase.js @@ -0,0 +1,9 @@ +import mongoose from 'mongoose'; + +export const useDatabase = () => { + const config = useRuntimeConfig(); + + mongoose.connect(config.mongodbUri, { useNewUrlParser: true, useUnifiedTopology: true }); + + return mongoose; +} diff --git a/components/Card.vue b/components/Card.vue new file mode 100644 index 0000000..3309ae4 --- /dev/null +++ b/components/Card.vue @@ -0,0 +1,115 @@ + + + + + diff --git a/config/sequelize.js b/config/sequelize.js new file mode 100644 index 0000000..8dfcea7 --- /dev/null +++ b/config/sequelize.js @@ -0,0 +1,29 @@ +import dotenv from 'dotenv'; + +dotenv.config(); + +const sequelizeConfig = { + development: { + username: process.env.MYSQL_USER, + password: process.env.MYSQL_PASSWORD , + database: process.env.MYSQL_DATABASE, + host: "thax.es", + dialect: 'mysql', + }, + test: { + username: process.env.MYSQL_USER, + password: process.env.MYSQL_PASSWORD , + database: process.env.MYSQL_DATABASE, + host: process.env.MYSQL_HOST, + dialect: 'mysql', + }, + production: { + username: process.env.MYSQL_USER, + password: process.env.MYSQL_PASSWORD , + database: process.env.MYSQL_DATABASE, + host: process.env.MYSQL_HOST, + dialect: 'mysql', + }, +}; + +export default sequelizeConfig; \ No newline at end of file diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..934c3a1 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,6 @@ +// @ts-check +import withNuxt from './.nuxt/eslint.config.mjs' + +export default withNuxt( + // Your custom configs here +) diff --git a/nuxt.config.ts b/nuxt.config.ts new file mode 100644 index 0000000..6c63d0d --- /dev/null +++ b/nuxt.config.ts @@ -0,0 +1,40 @@ +//import scrapingModule from './modules/scraping'; +// https://nuxt.com/docs/api/configuration/nuxt-config +import path from 'path'; + +export default defineNuxtConfig({ + alias: { + }, + colorMode: { + preference: 'light' + }, + devtools: { enabled: true }, + modules: [ + "@nuxt/ui", + "@nuxtjs/color-mode", + "@nuxtjs/tailwindcss", + "@nuxt/eslint", + ], + components: { + global: true, + dirs: ["~/components"], + }, + runtimeConfig: { + mongodbUri: process.env.MONGODB_URI, + telegramBotToken: process.env.TELEGRAM_BOT_TOKEN, + telegramChatId: process.env.TELEGRAM_CHAT_ID, + mysqlHost: process.env.MYSQL_HOST, + mysqlUser: process.env.MYSQL_USER, + mysqlPassword: process.env.MYSQL_PASSWORD, + mysqlDatabase: process.env.MYSQL_DATABASE, + }, + postcss: { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, + }, + nitro: { + //plugins: ['/server/plugins/db/init.ts'] + }, +}); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..c81e8eb --- /dev/null +++ b/package-lock.json @@ -0,0 +1,18864 @@ +{ + "name": "nuxt-app", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "nuxt-app", + "hasInstallScript": true, + "dependencies": { + "@nuxt/eslint": "^0.3.12", + "@nuxt/kit": "^3.11.2", + "@nuxt/ui": "^2.14.2", + "@rollup/plugin-commonjs": "^25.0.8", + "@rollup/plugin-node-resolve": "^15.2.3", + "axios": "^0.21.1", + "cheerio": "^1.0.0-rc.10", + "d2l-intl": "^2.1.0", + "fuse.js": "^7.0.0", + "mongoose": "^5.12.3", + "mysql2": "^3.10.0", + "node-cron": "^3.0.0", + "node-telegram-bot-api": "^0.66.0", + "nuxt": "^3.11.1", + "pexels": "^1.4.0", + "puppeteer": "^22.10.0", + "puppeteer-extra": "^3.3.6", + "puppeteer-extra-plugin-adblocker": "^2.13.6", + "puppeteer-extra-plugin-anonymize-ua": "^2.4.6", + "puppeteer-extra-plugin-block-resources": "^2.4.3", + "puppeteer-extra-plugin-recaptcha": "^3.6.8", + "puppeteer-extra-plugin-stealth": "^2.11.2", + "sequelize": "^6.37.3", + "sequelize-mig": "^3.1.3", + "string-similarity": "^4.0.4", + "vue": "^3.4.21", + "vue-router": "^4.3.0" + }, + "devDependencies": { + "@nuxtjs/tailwindcss": "^6.11.4", + "@types/cheerio": "^0.22.35", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "prettier": "^3.2.5", + "prettier-plugin-tailwindcss": "^0.5.12", + "sequelize-auto-migrations": "^1.0.3", + "sequelize-cli": "^6.6.2", + "typescript": "^5.4.5", + "vue-tsc": "^1.8.27" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@antfu/install-pkg": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.1.1.tgz", + "integrity": "sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==", + "dependencies": { + "execa": "^5.1.1", + "find-up": "^5.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/install-pkg/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/@antfu/install-pkg/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/@antfu/install-pkg/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@antfu/install-pkg/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@antfu/install-pkg/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/install-pkg/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@antfu/install-pkg/node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@antfu/install-pkg/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@antfu/utils": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.8.tgz", + "integrity": "sha512-rWQkqXRESdjXtc+7NRfK9lASQjpXJu1ayp7qi1d23zZorY+wBHVLHHoVcMsEnkqEBWTFqbztO7/QdJFzyEcLTg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@apidevtools/json-schema-ref-parser": { + "version": "11.6.2", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.6.2.tgz", + "integrity": "sha512-ENUdLLT04aDbbHCRwfKf8gR67AhV0CdFrOAtk+FcakBAgaq6ds3HLK9X0BCyiFUz8pK9uP+k6YZyJaGG7Mt7vQ==", + "dependencies": { + "@jsdevtools/ono": "^7.1.3", + "@types/json-schema": "^7.0.15", + "js-yaml": "^4.1.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/philsturgeon" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.6.tgz", + "integrity": "sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==", + "dependencies": { + "@babel/highlight": "^7.24.6", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.6.tgz", + "integrity": "sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz", + "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.6", + "@babel/generator": "^7.24.6", + "@babel/helper-compilation-targets": "^7.24.6", + "@babel/helper-module-transforms": "^7.24.6", + "@babel/helpers": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/template": "^7.24.6", + "@babel/traverse": "^7.24.6", + "@babel/types": "^7.24.6", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.6.tgz", + "integrity": "sha512-S7m4eNa6YAPJRHmKsLHIDJhNAGNKoWNiWefz1MBbpnt8g9lvMDl1hir4P9bo/57bQEmuwEhnRU/AMWsD0G/Fbg==", + "dependencies": { + "@babel/types": "^7.24.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.6.tgz", + "integrity": "sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.6.tgz", + "integrity": "sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==", + "dependencies": { + "@babel/compat-data": "^7.24.6", + "@babel/helper-validator-option": "^7.24.6", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.6.tgz", + "integrity": "sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.6", + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-function-name": "^7.24.6", + "@babel/helper-member-expression-to-functions": "^7.24.6", + "@babel/helper-optimise-call-expression": "^7.24.6", + "@babel/helper-replace-supers": "^7.24.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz", + "integrity": "sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.6.tgz", + "integrity": "sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==", + "dependencies": { + "@babel/template": "^7.24.6", + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.6.tgz", + "integrity": "sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.6.tgz", + "integrity": "sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz", + "integrity": "sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz", + "integrity": "sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-module-imports": "^7.24.6", + "@babel/helper-simple-access": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.6.tgz", + "integrity": "sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.6.tgz", + "integrity": "sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.6.tgz", + "integrity": "sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-member-expression-to-functions": "^7.24.6", + "@babel/helper-optimise-call-expression": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz", + "integrity": "sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.6.tgz", + "integrity": "sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz", + "integrity": "sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==", + "dependencies": { + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz", + "integrity": "sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", + "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.6.tgz", + "integrity": "sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.6.tgz", + "integrity": "sha512-V2PI+NqnyFu1i0GyTd/O/cTpxzQCYioSkUIRmgo7gFEHKKCg5w46+r/A6WeUR1+P3TeQ49dspGPNd/E3n9AnnA==", + "dependencies": { + "@babel/template": "^7.24.6", + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.6.tgz", + "integrity": "sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.6", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", + "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.6.tgz", + "integrity": "sha512-8DjR0/DzlBhz2SVi9a19/N2U5+C3y3rseXuyoKL9SP8vnbewscj1eHZtL6kpEn4UCuUmqEo0mvqyDYRFoN2gpA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.6", + "@babel/helper-plugin-utils": "^7.24.6", + "@babel/plugin-syntax-decorators": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.24.6.tgz", + "integrity": "sha512-gInH8LEqBp+wkwTVihCd/qf+4s28g81FZyvlIbAurHk9eSiItEKG7E0uNK2UdpgsD79aJVAW3R3c85h0YJ0jsw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.6.tgz", + "integrity": "sha512-D+CfsVZousPXIdudSII7RGy52+dYRtbyKAZcvtQKq/NpsivyMVduepzcLqG5pMBugtMdedxdC8Ramdpcne9ZWQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.6.tgz", + "integrity": "sha512-lWfvAIFNWMlCsU0DRUun2GpFwZdGTukLaHJqRh1JRb80NdAP5Sb1HDHB5X9P9OtgZHQl089UzQkpYlBq2VTPRw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.6.tgz", + "integrity": "sha512-TzCtxGgVTEJWWwcYwQhCIQ6WaKlo80/B+Onsk4RRCcYqpYGFcG9etPW94VToGte5AAcxRrhjPUFvUS3Y2qKi4A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.6.tgz", + "integrity": "sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw==", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.24.6", + "@babel/helper-plugin-utils": "^7.24.6", + "@babel/helper-simple-access": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.6.tgz", + "integrity": "sha512-H0i+hDLmaYYSt6KU9cZE0gb3Cbssa/oxWis7PX4ofQzbvsfix9Lbh8SRk7LCPDlLWJHUiFeHU0qRRpF/4Zv7mQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.6", + "@babel/helper-create-class-features-plugin": "^7.24.6", + "@babel/helper-plugin-utils": "^7.24.6", + "@babel/plugin-syntax-typescript": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.6.tgz", + "integrity": "sha512-U10aHPDnokCFRXgyT/MaIRTivUu2K/mu0vJlwRS9LxJmJet+PFQNKpggPyFCUtC6zWSBPjvxjnpNkAn3Uw2m5w==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.6", + "@babel/helper-validator-option": "^7.24.6", + "@babel/plugin-syntax-jsx": "^7.24.6", + "@babel/plugin-transform-modules-commonjs": "^7.24.6", + "@babel/plugin-transform-typescript": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.6.tgz", + "integrity": "sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/standalone": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.24.6.tgz", + "integrity": "sha512-ch8nbtobUPLvSLKdG2s8pVAqS1zUc+mt7UE9k8/xpupvETbAFOaoqo0QcpgVD/f0xkMkbUnqedVY5eeVWOqtjw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.6.tgz", + "integrity": "sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==", + "dependencies": { + "@babel/code-frame": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.6.tgz", + "integrity": "sha512-OsNjaJwT9Zn8ozxcfoBc+RaHdj3gFmCmYoQLUII1o6ZrUwku0BMg80FoOTPx+Gi6XhcQxAYE4xyjPTo4SxEQqw==", + "dependencies": { + "@babel/code-frame": "^7.24.6", + "@babel/generator": "^7.24.6", + "@babel/helper-environment-visitor": "^7.24.6", + "@babel/helper-function-name": "^7.24.6", + "@babel/helper-hoist-variables": "^7.24.6", + "@babel/helper-split-export-declaration": "^7.24.6", + "@babel/parser": "^7.24.6", + "@babel/types": "^7.24.6", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.24.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.6.tgz", + "integrity": "sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==", + "dependencies": { + "@babel/helper-string-parser": "^7.24.6", + "@babel/helper-validator-identifier": "^7.24.6", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@cliqz/adblocker": { + "version": "1.27.4", + "resolved": "https://registry.npmjs.org/@cliqz/adblocker/-/adblocker-1.27.4.tgz", + "integrity": "sha512-Mq+MU+084lsYL7cCjlqqlzHa3jGeYCK61PTHRaT31ywQhnD8z8s6XZnGntou/JrQ9mmQTiwkuJsyf6+0mMEo2w==", + "dependencies": { + "@cliqz/adblocker-content": "^1.27.4", + "@cliqz/adblocker-extended-selectors": "^1.27.4", + "@remusao/guess-url-type": "^1.2.1", + "@remusao/small": "^1.2.1", + "@remusao/smaz": "^1.9.1", + "@types/chrome": "^0.0.268", + "@types/firefox-webext-browser": "^120.0.0", + "tldts-experimental": "^6.0.14" + } + }, + "node_modules/@cliqz/adblocker-content": { + "version": "1.27.4", + "resolved": "https://registry.npmjs.org/@cliqz/adblocker-content/-/adblocker-content-1.27.4.tgz", + "integrity": "sha512-SE4gq+ez4xmqjKsmOg/QP7phU6pf1sq9R75eJOeOT3sTyobGPrJB+/Sf/jwJ8TJS2AWlz1fP0Ywpr+UNql4Sew==", + "dependencies": { + "@cliqz/adblocker-extended-selectors": "^1.27.4" + } + }, + "node_modules/@cliqz/adblocker-extended-selectors": { + "version": "1.27.4", + "resolved": "https://registry.npmjs.org/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.27.4.tgz", + "integrity": "sha512-u5CQRi8j6I/8HNzBtyvw8TO6hgpd/7seddmUsBvIs2hfrZmFe5PmxjaJE/kcZ6AZe6o7xDh2ybrm4WjpsRCqXA==" + }, + "node_modules/@cliqz/adblocker-puppeteer": { + "version": "1.23.8", + "resolved": "https://registry.npmjs.org/@cliqz/adblocker-puppeteer/-/adblocker-puppeteer-1.23.8.tgz", + "integrity": "sha512-Ca1/DBqQXsOpKTFVAHX6OpLTSEupXmUkUWHj6iXhLLleC7RPISN5B0b801VDmaGRqoC5zKRxn0vYbIfpgCWVug==", + "dependencies": { + "@cliqz/adblocker": "^1.23.8", + "@cliqz/adblocker-content": "^1.23.8", + "tldts-experimental": "^5.6.21" + }, + "peerDependencies": { + "puppeteer": ">5" + } + }, + "node_modules/@cliqz/adblocker/node_modules/tldts-core": { + "version": "6.1.23", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.23.tgz", + "integrity": "sha512-NoYYa06h5WN9BU4wjpVK/bKg3fw2BlhZSB1omr+CkEygSzhe5Ojp8mTFae93eVV2mv7d/ootxPqVhW1GoCeogw==" + }, + "node_modules/@cliqz/adblocker/node_modules/tldts-experimental": { + "version": "6.1.23", + "resolved": "https://registry.npmjs.org/tldts-experimental/-/tldts-experimental-6.1.23.tgz", + "integrity": "sha512-a0fMfXlxWx1UpKhtSljWV6GQUbeKujIE0TFxDar5oVVQlBE/78SLtL+GHGDCfLZpAM0l9lM20CsZHA0f8RHkpA==", + "dependencies": { + "tldts-core": "^6.1.23" + } + }, + "node_modules/@cloudflare/kv-asset-handler": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.3.2.tgz", + "integrity": "sha512-EeEjMobfuJrwoctj7FA1y1KEbM0+Q1xSjobIEyie9k4haVEBB7vkDvsasw1pM3rO39mL2akxIAzLMUAtrMHZhA==", + "dependencies": { + "mime": "^3.0.0" + }, + "engines": { + "node": ">=16.13" + } + }, + "node_modules/@cloudflare/kv-asset-handler/node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@cypress/request": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.1.tgz", + "integrity": "sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "http-signature": "~1.3.6", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "6.10.4", + "safe-buffer": "^5.1.2", + "tough-cookie": "^4.1.3", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@cypress/request-promise": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@cypress/request-promise/-/request-promise-5.0.0.tgz", + "integrity": "sha512-eKdYVpa9cBEw2kTBlHeu1PP16Blwtum6QHg/u9s/MoHkZfuo1pRGka1VlUHXF5kdew82BvOJVVGk0x8X0nbp+w==", + "dependencies": { + "bluebird": "^3.5.0", + "request-promise-core": "1.1.3", + "stealthy-require": "^1.1.1", + "tough-cookie": "^4.1.3" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "@cypress/request": "^3.0.0" + } + }, + "node_modules/@egoist/tailwindcss-icons": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@egoist/tailwindcss-icons/-/tailwindcss-icons-1.8.0.tgz", + "integrity": "sha512-75LfllKL2lq0sGH+wcpsn/sLtJ0kMkDWmcZTLAB76QLDTmfsFu4QHwZVbtCD2woGyKl9c8KvtOUW9JSjRqOVtA==", + "dependencies": { + "@iconify/utils": "^2.1.23" + }, + "peerDependencies": { + "tailwindcss": "*" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.43.0.tgz", + "integrity": "sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ==", + "dependencies": { + "@types/eslint": "^8.56.5", + "@types/estree": "^1.0.5", + "@typescript-eslint/types": "^7.2.0", + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-inspector": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/@eslint/config-inspector/-/config-inspector-0.4.8.tgz", + "integrity": "sha512-gzsz5b4HII4l7JcbUlu4HPBojLOfsJG31hJqUdxD4Eg9tHZLOQ24+/qruzzGNjgaLWA7I9wINPkceNHfFsvgAQ==", + "dependencies": { + "bundle-require": "^4.0.4", + "cac": "^6.7.14", + "chokidar": "^3.6.0", + "esbuild": "^0.20.2", + "fast-glob": "^3.3.2", + "find-up": "^7.0.0", + "get-port-please": "^3.1.2", + "h3": "^1.11.1", + "minimatch": "^9.0.4", + "mrmime": "^2.0.0", + "open": "^10.1.0", + "picocolors": "^1.0.0", + "ws": "^8.17.0" + }, + "bin": { + "config-inspector": "bin.mjs", + "eslint-config-inspector": "bin.mjs" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^8.50.0 || ^9.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.3.0.tgz", + "integrity": "sha512-niBqk8iwv96+yuTwjM6bWg8ovzAPF9qkICsGtcoa5/dmqcEMfdwNAX7+/OHcJHc7wj7XqPxH98oAHytFYlw6Sw==", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@fastify/busboy": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", + "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.2.tgz", + "integrity": "sha512-+2XpQV9LLZeanU4ZevzRnGFg2neDeKHgFLjP6YLW+tly0IvrhqT4u8enLGjLH3qeh85g19xY5rsAusfwTdn5lg==", + "peer": true, + "dependencies": { + "@floating-ui/utils": "^0.2.0" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.1.1.tgz", + "integrity": "sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw==", + "peer": true, + "dependencies": { + "@floating-ui/core": "^1.1.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.2.tgz", + "integrity": "sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw==", + "peer": true + }, + "node_modules/@headlessui/tailwindcss": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@headlessui/tailwindcss/-/tailwindcss-0.2.0.tgz", + "integrity": "sha512-fpL830Fln1SykOCboExsWr3JIVeQKieLJ3XytLe/tt1A0XzqUthOftDmjcCYLW62w7mQI7wXcoPXr3tZ9QfGxw==", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "tailwindcss": "^3.0" + } + }, + "node_modules/@headlessui/vue": { + "version": "1.7.22", + "resolved": "https://registry.npmjs.org/@headlessui/vue/-/vue-1.7.22.tgz", + "integrity": "sha512-Hoffjoolq1rY+LOfJ+B/OvkhuBXXBFgd8oBlN+l1TApma2dB0En0ucFZrwQtb33SmcCqd32EQd0y07oziXWNYg==", + "dependencies": { + "@tanstack/vue-virtual": "^3.0.0-beta.60" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==" + }, + "node_modules/@iconify-json/heroicons": { + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/@iconify-json/heroicons/-/heroicons-1.1.21.tgz", + "integrity": "sha512-A+3L4KN+TjH3V8fQ2N2dkOOnLLxMgMBzO8RDT0P9YL+YzvLMIbe/lkDLSB8NB8x0DKWmkvTimoo1l4DKMwi7Zg==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/collections": { + "version": "1.0.426", + "resolved": "https://registry.npmjs.org/@iconify/collections/-/collections-1.0.426.tgz", + "integrity": "sha512-Px3Pu56fii+KaCvrj6DC6u2/nrnXsSUXKdmOdAEgIJVCnxeNu81JSkLF6v5UF39fD7wbdOnxRZyD54tzyNnzkg==", + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==" + }, + "node_modules/@iconify/utils": { + "version": "2.1.23", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.1.23.tgz", + "integrity": "sha512-YGNbHKM5tyDvdWZ92y2mIkrfvm5Fvhe6WJSkWu7vvOFhMtYDP0casZpoRz0XEHZCrYsR4stdGT3cZ52yp5qZdQ==", + "dependencies": { + "@antfu/install-pkg": "^0.1.1", + "@antfu/utils": "^0.7.7", + "@iconify/types": "^2.0.0", + "debug": "^4.3.4", + "kolorist": "^1.8.0", + "local-pkg": "^0.5.0", + "mlly": "^1.6.1" + } + }, + "node_modules/@iconify/vue": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@iconify/vue/-/vue-4.1.2.tgz", + "integrity": "sha512-CQnYqLiQD5LOAaXhBrmj1mdL2/NCJvwcC4jtW2Z8ukhThiFkLDkutarTOV2trfc9EXqUqRs0KqXOL9pZ/IyysA==", + "dependencies": { + "@iconify/types": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/cyberalien" + }, + "peerDependencies": { + "vue": ">=3" + } + }, + "node_modules/@ioredis/commands": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", + "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, + "node_modules/@koa/router": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.1.tgz", + "integrity": "sha512-ribfPYfHb+Uw3b27Eiw6NPqjhIhTpVFzEWLwyc/1Xp+DCdwRRyIlAUODX+9bPARF6aQtUu1+/PHzdNvRzcs/+Q==", + "dependencies": { + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.2.1" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@kwsites/file-exists": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", + "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", + "dependencies": { + "debug": "^4.1.1" + } + }, + "node_modules/@kwsites/promise-deferred": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", + "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==" + }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", + "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", + "dependencies": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@netlify/functions": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-2.7.0.tgz", + "integrity": "sha512-4pXC/fuj3eGQ86wbgPiM4zY8+AsNrdz6vcv6FEdUJnZW+LqF8IWjQcY3S0d1hLeLKODYOqq4CkrzGyCpce63Nw==", + "dependencies": { + "@netlify/serverless-functions-api": "1.18.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@netlify/node-cookies": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@netlify/node-cookies/-/node-cookies-0.1.0.tgz", + "integrity": "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==", + "engines": { + "node": "^14.16.0 || >=16.0.0" + } + }, + "node_modules/@netlify/serverless-functions-api": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/@netlify/serverless-functions-api/-/serverless-functions-api-1.18.1.tgz", + "integrity": "sha512-DrSvivchuwsuQW03zbVPT3nxCQa5tn7m4aoPOsQKibuJXIuSbfxzCBxPLz0+LchU5ds7YyOaCc9872Y32ngYzg==", + "dependencies": { + "@netlify/node-cookies": "^0.1.0", + "@opentelemetry/core": "^1.23.0", + "@opentelemetry/otlp-transformer": "^0.50.0", + "@opentelemetry/resources": "^1.23.0", + "@opentelemetry/sdk-trace-base": "^1.23.0", + "@opentelemetry/semantic-conventions": "^1.23.0", + "urlpattern-polyfill": "8.0.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.7.tgz", + "integrity": "sha512-WaOVvto604d5IpdCRV2KjQu8PzkfE96d50CQGKgywXh2GxXmDeUO5EWcBC4V57uFyrNqx83+MewuJh3WTR3xPA==", + "dependencies": { + "@npmcli/promise-spawn": "^7.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", + "proc-log": "^4.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/package-json": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.1.0.tgz", + "integrity": "sha512-1aL4TuVrLS9sf8quCLerU3H9J4vtCtgu8VauYozrmEyU57i/EdKleCnsQ7vpnABIH6c9mnTxcH5sFkO3BlV8wQ==", + "dependencies": { + "@npmcli/git": "^5.0.0", + "glob": "^10.2.2", + "hosted-git-info": "^7.0.0", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^6.0.0", + "proc-log": "^4.0.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/package-json/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz", + "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==", + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/redact": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.0.tgz", + "integrity": "sha512-SEjCPAVHWYUIQR+Yn03kJmrJjZDtJLYpj300m3HV9OTRZNpC5YpbMsM3eTkECyT4aWj8lDr9WeY6TWefpubtYQ==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz", + "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==", + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^5.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", + "proc-log": "^4.0.0", + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/@nuxt/devalue": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nuxt/devalue/-/devalue-2.0.2.tgz", + "integrity": "sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==" + }, + "node_modules/@nuxt/devtools": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-1.3.2.tgz", + "integrity": "sha512-ozIicBZZEr0eDtR8VsuIsAvEhXAjw5JvAhHnbcXY+ajYdJ9uFGF7rTjqgTL0VrCJcCUJ/UA6qTWb7/MdTCs4GQ==", + "dependencies": { + "@antfu/utils": "^0.7.8", + "@nuxt/devtools-kit": "1.3.2", + "@nuxt/devtools-wizard": "1.3.2", + "@nuxt/kit": "^3.11.2", + "@vue/devtools-applet": "^7.1.3", + "@vue/devtools-core": "^7.1.3", + "@vue/devtools-kit": "^7.1.3", + "birpc": "^0.2.17", + "consola": "^3.2.3", + "cronstrue": "^2.50.0", + "destr": "^2.0.3", + "error-stack-parser-es": "^0.1.1", + "execa": "^7.2.0", + "fast-glob": "^3.3.2", + "flatted": "^3.3.1", + "get-port-please": "^3.1.2", + "hookable": "^5.5.3", + "image-meta": "^0.2.0", + "is-installed-globally": "^1.0.0", + "launch-editor": "^2.6.1", + "local-pkg": "^0.5.0", + "magicast": "^0.3.4", + "nypm": "^0.3.8", + "ohash": "^1.1.3", + "pacote": "^18.0.6", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.1.1", + "rc9": "^2.1.2", + "scule": "^1.3.0", + "semver": "^7.6.2", + "simple-git": "^3.24.0", + "sirv": "^2.0.4", + "unimport": "^3.7.1", + "vite-plugin-inspect": "^0.8.4", + "vite-plugin-vue-inspector": "^5.1.0", + "which": "^3.0.1", + "ws": "^8.17.0" + }, + "bin": { + "devtools": "cli.mjs" + }, + "peerDependencies": { + "nuxt": "^3.9.0", + "vite": "*" + } + }, + "node_modules/@nuxt/devtools-kit": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@nuxt/devtools-kit/-/devtools-kit-1.3.2.tgz", + "integrity": "sha512-ZLEFiUYFSIpQnJ4km8DSE7F7+XIZVslfa/ipFlri9VMffTCRN2Pb1Te9Av35jV9ldc7PYiM70Hs+QLXTJOLE6g==", + "dependencies": { + "@nuxt/kit": "^3.11.2", + "@nuxt/schema": "^3.11.2", + "execa": "^7.2.0" + }, + "peerDependencies": { + "nuxt": "^3.9.0", + "vite": "*" + } + }, + "node_modules/@nuxt/devtools-wizard": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@nuxt/devtools-wizard/-/devtools-wizard-1.3.2.tgz", + "integrity": "sha512-Oihdsk/aaWa59yO/DSogndVyCOuYf6tr0pKiOn1blFXtAGOvNmcm0h34bX/DV3Z17D95yUFY3nrcnFznG9mFxg==", + "dependencies": { + "consola": "^3.2.3", + "diff": "^5.2.0", + "execa": "^7.2.0", + "global-directory": "^4.0.1", + "magicast": "^0.3.4", + "pathe": "^1.1.2", + "pkg-types": "^1.1.1", + "prompts": "^2.4.2", + "rc9": "^2.1.2", + "semver": "^7.6.2" + }, + "bin": { + "devtools-wizard": "cli.mjs" + } + }, + "node_modules/@nuxt/devtools/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@nuxt/eslint": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@nuxt/eslint/-/eslint-0.3.13.tgz", + "integrity": "sha512-3NSD713MVLlHuwXDSqNOS1KUj0L+CP/3a1vwdOpdTJd8h3vdZaJAQ3XBtsvV33fvNDgZ5DEHSMc/+5/xDh3Xpw==", + "dependencies": { + "@eslint/config-inspector": "^0.4.8", + "@nuxt/devtools-kit": "^1.3.1", + "@nuxt/eslint-config": "0.3.13", + "@nuxt/eslint-plugin": "0.3.13", + "@nuxt/kit": "^3.11.2", + "chokidar": "^3.6.0", + "eslint-flat-config-utils": "^0.2.4", + "eslint-typegen": "^0.2.4", + "find-up": "^7.0.0", + "get-port-please": "^3.1.2", + "mlly": "^1.7.0", + "pathe": "^1.1.2", + "unimport": "^3.7.1" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "eslint-webpack-plugin": "^4.1.0", + "vite-plugin-eslint2": "^4.4.0" + }, + "peerDependenciesMeta": { + "eslint-webpack-plugin": { + "optional": true + }, + "vite-plugin-eslint2": { + "optional": true + } + } + }, + "node_modules/@nuxt/eslint-config": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@nuxt/eslint-config/-/eslint-config-0.3.13.tgz", + "integrity": "sha512-xnMkcrz9vFjtIuKsfOPhNOKFVD51JZClj/16raciHVOK9eiqZuQjbxaf60b7ffk7cmD1EDhlQhbSxaLAJm/QYg==", + "dependencies": { + "@eslint/js": "^9.2.0", + "@nuxt/eslint-plugin": "0.3.13", + "@rushstack/eslint-patch": "^1.10.3", + "@stylistic/eslint-plugin": "^2.1.0", + "@typescript-eslint/eslint-plugin": "^7.9.0", + "@typescript-eslint/parser": "^7.9.0", + "eslint-config-flat-gitignore": "^0.1.5", + "eslint-flat-config-utils": "^0.2.5", + "eslint-plugin-import-x": "^0.5.0", + "eslint-plugin-jsdoc": "^48.2.5", + "eslint-plugin-regexp": "^2.5.0", + "eslint-plugin-unicorn": "^53.0.0", + "eslint-plugin-vue": "^9.26.0", + "globals": "^15.2.0", + "pathe": "^1.1.2", + "tslib": "^2.6.2", + "vue-eslint-parser": "^9.4.2" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0" + } + }, + "node_modules/@nuxt/eslint-plugin": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@nuxt/eslint-plugin/-/eslint-plugin-0.3.13.tgz", + "integrity": "sha512-8LW9QJgVSARgO7QZmRy6vmWjDdHiAy/GNN3zKFPBetQxj5ECXsK0Ggfn8RiSi9rgqJSQjXDvMMHFpHiDETXgSQ==", + "dependencies": { + "@typescript-eslint/types": "^7.9.0", + "@typescript-eslint/utils": "^7.9.0" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0" + } + }, + "node_modules/@nuxt/kit": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.11.2.tgz", + "integrity": "sha512-yiYKP0ZWMW7T3TCmsv4H8+jEsB/nFriRAR8bKoSqSV9bkVYWPE36sf7JDux30dQ91jSlQG6LQkB3vCHYTS2cIg==", + "dependencies": { + "@nuxt/schema": "3.11.2", + "c12": "^1.10.0", + "consola": "^3.2.3", + "defu": "^6.1.4", + "globby": "^14.0.1", + "hash-sum": "^2.0.0", + "ignore": "^5.3.1", + "jiti": "^1.21.0", + "knitwork": "^1.1.0", + "mlly": "^1.6.1", + "pathe": "^1.1.2", + "pkg-types": "^1.0.3", + "scule": "^1.3.0", + "semver": "^7.6.0", + "ufo": "^1.5.3", + "unctx": "^2.3.1", + "unimport": "^3.7.1", + "untyped": "^1.4.2" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/schema": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.11.2.tgz", + "integrity": "sha512-Z0bx7N08itD5edtpkstImLctWMNvxTArsKXzS35ZuqyAyKBPcRjO1CU01slH0ahO30Gg9kbck3/RKNZPwfOjJg==", + "dependencies": { + "@nuxt/ui-templates": "^1.3.2", + "consola": "^3.2.3", + "defu": "^6.1.4", + "hookable": "^5.5.3", + "pathe": "^1.1.2", + "pkg-types": "^1.0.3", + "scule": "^1.3.0", + "std-env": "^3.7.0", + "ufo": "^1.5.3", + "unimport": "^3.7.1", + "untyped": "^1.4.2" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/telemetry": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-2.5.4.tgz", + "integrity": "sha512-KH6wxzsNys69daSO0xUv0LEBAfhwwjK1M+0Cdi1/vxmifCslMIY7lN11B4eywSfscbyVPAYJvANyc7XiVPImBQ==", + "dependencies": { + "@nuxt/kit": "^3.11.2", + "ci-info": "^4.0.0", + "consola": "^3.2.3", + "create-require": "^1.1.1", + "defu": "^6.1.4", + "destr": "^2.0.3", + "dotenv": "^16.4.5", + "git-url-parse": "^14.0.0", + "is-docker": "^3.0.0", + "jiti": "^1.21.0", + "mri": "^1.2.0", + "nanoid": "^5.0.7", + "ofetch": "^1.3.4", + "parse-git-config": "^3.0.0", + "pathe": "^1.1.2", + "rc9": "^2.1.2", + "std-env": "^3.7.0" + }, + "bin": { + "nuxt-telemetry": "bin/nuxt-telemetry.mjs" + } + }, + "node_modules/@nuxt/ui": { + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/@nuxt/ui/-/ui-2.16.0.tgz", + "integrity": "sha512-yHBZjFaN8/Zst+jTv+DfZS2Ep6UhgKlXL3/b6OX1ICwij3Yw7E4qVNCE9f1SO8DUaLigLURUYYoHG6kLb1qyBg==", + "dependencies": { + "@egoist/tailwindcss-icons": "^1.8.0", + "@headlessui/tailwindcss": "^0.2.0", + "@headlessui/vue": "^1.7.21", + "@iconify-json/heroicons": "^1.1.21", + "@nuxt/kit": "^3.11.2", + "@nuxtjs/color-mode": "^3.4.1", + "@nuxtjs/tailwindcss": "^6.12.0", + "@popperjs/core": "^2.11.8", + "@tailwindcss/aspect-ratio": "^0.4.2", + "@tailwindcss/container-queries": "^0.1.1", + "@tailwindcss/forms": "^0.5.7", + "@tailwindcss/typography": "^0.5.13", + "@vueuse/core": "^10.9.0", + "@vueuse/integrations": "^10.9.0", + "@vueuse/math": "^10.9.0", + "defu": "^6.1.4", + "fuse.js": "^6.6.2", + "nuxt-icon": "^0.6.10", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "scule": "^1.3.0", + "tailwind-merge": "^2.3.0", + "tailwindcss": "^3.4.3" + }, + "engines": { + "node": ">=v16.20.2" + } + }, + "node_modules/@nuxt/ui-templates": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@nuxt/ui-templates/-/ui-templates-1.3.4.tgz", + "integrity": "sha512-zjuslnkj5zboZGis5QpmR5gvRTx5N8Ha/Rll+RRT8YZhXVNBincifhZ9apUQ9f6T0xJE8IHPyVyPx6WokomdYw==" + }, + "node_modules/@nuxt/ui/node_modules/fuse.js": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-6.6.2.tgz", + "integrity": "sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@nuxt/vite-builder": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-3.11.2.tgz", + "integrity": "sha512-eXTZsAAN4dPz4eA2UD5YU2kD/DqgfyQp1UYsIdCe6+PAVe1ifkUboBjbc0piR5+3qI/S/eqk3nzxRGbiYF7Ccg==", + "dependencies": { + "@nuxt/kit": "3.11.2", + "@rollup/plugin-replace": "^5.0.5", + "@vitejs/plugin-vue": "^5.0.4", + "@vitejs/plugin-vue-jsx": "^3.1.0", + "autoprefixer": "^10.4.19", + "clear": "^0.1.0", + "consola": "^3.2.3", + "cssnano": "^6.1.2", + "defu": "^6.1.4", + "esbuild": "^0.20.2", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "externality": "^1.0.2", + "fs-extra": "^11.2.0", + "get-port-please": "^3.1.2", + "h3": "^1.11.1", + "knitwork": "^1.1.0", + "magic-string": "^0.30.9", + "mlly": "^1.6.1", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "postcss": "^8.4.38", + "rollup-plugin-visualizer": "^5.12.0", + "std-env": "^3.7.0", + "strip-literal": "^2.1.0", + "ufo": "^1.5.3", + "unenv": "^1.9.0", + "unplugin": "^1.10.1", + "vite": "^5.2.8", + "vite-node": "^1.4.0", + "vite-plugin-checker": "^0.6.4", + "vue-bundle-renderer": "^2.0.0" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + }, + "peerDependencies": { + "vue": "^3.3.4" + } + }, + "node_modules/@nuxt/vite-builder/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/vite-builder/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/@nuxtjs/color-mode": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@nuxtjs/color-mode/-/color-mode-3.4.1.tgz", + "integrity": "sha512-vZgJqDstxInGw3RGSWbLoCLXtU1mvh1LLeuEA/X3a++DYA4ifwSbNoiSiOyb9qZHFEwz1Xr99H71sXV4IhOaEg==", + "dependencies": { + "@nuxt/kit": "^3.11.2", + "pathe": "^1.1.2", + "pkg-types": "^1.1.0", + "semver": "^7.6.0" + } + }, + "node_modules/@nuxtjs/tailwindcss": { + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/@nuxtjs/tailwindcss/-/tailwindcss-6.12.0.tgz", + "integrity": "sha512-vXvEq8z177TQcx0tc10mw3O6T9WeN0iTL8hIKGDfidmr+HKReexJU01aPgHefFrCu4LJB70egYFYnywzB9lMyQ==", + "dependencies": { + "@nuxt/kit": "^3.11.2", + "autoprefixer": "^10.4.19", + "consola": "^3.2.3", + "defu": "^6.1.4", + "h3": "^1.11.1", + "pathe": "^1.1.2", + "postcss": "^8.4.38", + "postcss-nesting": "^12.1.1", + "tailwind-config-viewer": "^2.0.1", + "tailwindcss": "~3.4.3", + "ufo": "^1.5.3", + "unctx": "^2.3.1" + } + }, + "node_modules/@one-ini/wasm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", + "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", + "dev": true + }, + "node_modules/@opentelemetry/api": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.8.0.tgz", + "integrity": "sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@opentelemetry/api-logs": { + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.50.0.tgz", + "integrity": "sha512-JdZuKrhOYggqOpUljAq4WWNi5nB10PmgoF0y2CvedLGXd0kSawb/UBnWT8gg1ND3bHCNHStAIVT0ELlxJJRqrA==", + "dependencies": { + "@opentelemetry/api": "^1.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@opentelemetry/core": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.24.1.tgz", + "integrity": "sha512-wMSGfsdmibI88K9wB498zXY04yThPexo8jvwNNlm542HZB7XrrMRBbAyKJqG8qDRJwIBdBrPMi4V9ZPW/sqrcg==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.24.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer": { + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.50.0.tgz", + "integrity": "sha512-s0sl1Yfqd5q1Kjrf6DqXPWzErL+XHhrXOfejh4Vc/SMTNqC902xDsC8JQxbjuramWt/+hibfguIvi7Ns8VLolA==", + "dependencies": { + "@opentelemetry/api-logs": "0.50.0", + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/sdk-logs": "0.50.0", + "@opentelemetry/sdk-metrics": "1.23.0", + "@opentelemetry/sdk-trace-base": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz", + "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@opentelemetry/resources": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.24.1.tgz", + "integrity": "sha512-cyv0MwAaPF7O86x5hk3NNgenMObeejZFLJJDVuSeSMIsknlsj3oOZzRv3qSzlwYomXsICfBeFFlxwHQte5mGXQ==", + "dependencies": { + "@opentelemetry/core": "1.24.1", + "@opentelemetry/semantic-conventions": "1.24.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-logs": { + "version": "0.50.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.50.0.tgz", + "integrity": "sha512-PeUEupBB29p9nlPNqXoa1PUWNLsZnxG0DCDj3sHqzae+8y76B/A5hvZjg03ulWdnvBLYpnJslqzylG9E0IL87g==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.4.0 <1.9.0", + "@opentelemetry/api-logs": ">=0.39.1" + } + }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@opentelemetry/sdk-metrics": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz", + "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/resources": "1.23.0", + "lodash.merge": "^4.6.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.3.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz", + "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/resources": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz", + "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==", + "dependencies": { + "@opentelemetry/core": "1.23.0", + "@opentelemetry/semantic-conventions": "1.23.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz", + "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.24.1.tgz", + "integrity": "sha512-zz+N423IcySgjihl2NfjBf0qw1RWe11XIAWVrTNOSSI6dtSPJiVom2zipFB2AEEtJWpv0Iz6DY6+TjnyTV5pWg==", + "dependencies": { + "@opentelemetry/core": "1.24.1", + "@opentelemetry/resources": "1.24.1", + "@opentelemetry/semantic-conventions": "1.24.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.9.0" + } + }, + "node_modules/@opentelemetry/semantic-conventions": { + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.24.1.tgz", + "integrity": "sha512-VkliWlS4/+GHLLW7J/rVBA00uXus1SWvwFvcUDxDwmFxYfg/2VI6ekwdXS28cjI8Qz2ky2BzG8OUHo+WeYIWqw==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.4.1.tgz", + "integrity": "sha512-/ZR0RxqxU/xxDGzbzosMjh4W6NdYFMqq2nvo2b8SLi7rsl/4jkL8S5stIikorNkdR50oVDvqb/3JT05WM+CRRA==", + "bundleDependencies": [ + "napi-wasm" + ], + "dependencies": { + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "napi-wasm": "^1.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT" + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.25", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz", + "integrity": "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==" + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@puppeteer/browsers": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.2.3.tgz", + "integrity": "sha512-bJ0UBsk0ESOs6RFcLXOt99a3yTDcOKlzfjad+rhFwdaG1Lu/Wzq58GHYCDTlZ9z6mldf4g+NTb+TXEfe0PpnsQ==", + "dependencies": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.4.0", + "semver": "7.6.0", + "tar-fs": "3.0.5", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.2" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@puppeteer/browsers/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@puppeteer/browsers/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@puppeteer/browsers/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@remusao/guess-url-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@remusao/guess-url-type/-/guess-url-type-1.2.1.tgz", + "integrity": "sha512-rbOqre2jW8STjheOsOaQHLgYBaBZ9Owbdt8NO7WvNZftJlaG3y/K9oOkl8ZUpuFBisIhmBuMEW6c+YrQl5inRA==" + }, + "node_modules/@remusao/small": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@remusao/small/-/small-1.2.1.tgz", + "integrity": "sha512-7MjoGt0TJMVw1GPKgWq6SJPws1SLsUXQRa43Umht+nkyw2jnpy3WpiLNqGdwo5rHr5Wp9B2W/Pm5RQp656UJdw==" + }, + "node_modules/@remusao/smaz": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@remusao/smaz/-/smaz-1.9.1.tgz", + "integrity": "sha512-e6BLuP8oaXCZ9+v46Is4ilAZ/Vq6YLgmBP204Ixgk1qTjXmqvFYG7+AS7v9nsZdGOy96r9DWGFbbDVgMxwu1rA==", + "dependencies": { + "@remusao/smaz-compress": "^1.9.1", + "@remusao/smaz-decompress": "^1.9.1" + } + }, + "node_modules/@remusao/smaz-compress": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@remusao/smaz-compress/-/smaz-compress-1.9.1.tgz", + "integrity": "sha512-E2f48TwloQu3r6BdLOGF2aczeH7bJ/32oJGqvzT9SKur0cuUnLcZ7ZXP874E2fwmdE+cXzfC7bKzp79cDnmeyw==", + "dependencies": { + "@remusao/trie": "^1.4.1" + } + }, + "node_modules/@remusao/smaz-decompress": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@remusao/smaz-decompress/-/smaz-decompress-1.9.1.tgz", + "integrity": "sha512-TfjKKprYe3n47od8auhvJ/Ikj9kQTbDTe71ynKlxslrvvUhlIV3VQSuwYuMWMbdz1fIs0H/fxCN1Z8/H3km6/A==" + }, + "node_modules/@remusao/trie": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@remusao/trie/-/trie-1.4.1.tgz", + "integrity": "sha512-yvwa+aCyYI/UjeD39BnpMypG8N06l86wIDW1/PAc6ihBRnodIfZDwccxQN3n1t74wduzaz74m4ZMHZnB06567Q==" + }, + "node_modules/@rollup/plugin-alias": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.1.0.tgz", + "integrity": "sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==", + "dependencies": { + "slash": "^4.0.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-alias/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.8", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.8.tgz", + "integrity": "sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", + "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-json": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", + "integrity": "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==", + "dependencies": { + "@rollup/pluginutils": "^5.1.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.2.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz", + "integrity": "sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.2.1", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-replace": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-5.0.5.tgz", + "integrity": "sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-terser": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", + "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", + "dependencies": { + "serialize-javascript": "^6.0.1", + "smob": "^1.0.0", + "terser": "^5.17.4" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", + "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", + "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", + "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", + "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", + "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", + "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", + "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", + "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", + "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", + "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", + "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", + "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", + "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", + "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", + "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", + "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.3.tgz", + "integrity": "sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==" + }, + "node_modules/@shikijs/core": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.5.2.tgz", + "integrity": "sha512-wSAOgaz48GmhILFElMCeQypSZmj6Ru6DttOOtl3KNkdJ17ApQuGNCfzpk4cClasVrnIu45++2DBwG4LNMQAfaA==" + }, + "node_modules/@sigstore/bundle": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz", + "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==", + "dependencies": { + "@sigstore/protobuf-specs": "^0.3.2" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/core": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz", + "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz", + "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz", + "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==", + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "make-fetch-happen": "^13.0.1", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/tuf": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz", + "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==", + "dependencies": { + "@sigstore/protobuf-specs": "^0.3.2", + "tuf-js": "^2.2.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/verify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz", + "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==", + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.1.0", + "@sigstore/protobuf-specs": "^0.3.2" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", + "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@stylistic/eslint-plugin": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-2.1.0.tgz", + "integrity": "sha512-cBBowKP2u/+uE5CzgH5w8pE9VKqcM7BXdIDPIbGt2rmLJGnA6MJPr9vYGaqgMoJFs7R/FzsMQerMvvEP40g2uw==", + "dependencies": { + "@stylistic/eslint-plugin-js": "2.1.0", + "@stylistic/eslint-plugin-jsx": "2.1.0", + "@stylistic/eslint-plugin-plus": "2.1.0", + "@stylistic/eslint-plugin-ts": "2.1.0", + "@types/eslint": "^8.56.10" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=8.40.0" + } + }, + "node_modules/@stylistic/eslint-plugin-js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.1.0.tgz", + "integrity": "sha512-gdXUjGNSsnY6nPyqxu6lmDTtVrwCOjun4x8PUn0x04d5ucLI74N3MT1Q0UhdcOR9No3bo5PGDyBgXK+KmD787A==", + "dependencies": { + "@types/eslint": "^8.56.10", + "acorn": "^8.11.3", + "eslint-visitor-keys": "^4.0.0", + "espree": "^10.0.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=8.40.0" + } + }, + "node_modules/@stylistic/eslint-plugin-jsx": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-jsx/-/eslint-plugin-jsx-2.1.0.tgz", + "integrity": "sha512-mMD7S+IndZo2vxmwpHVTCwx2O1VdtE5tmpeNwgaEcXODzWV1WTWpnsc/PECQKIr/mkLPFWiSIqcuYNhQ/3l6AQ==", + "dependencies": { + "@stylistic/eslint-plugin-js": "^2.1.0", + "@types/eslint": "^8.56.10", + "estraverse": "^5.3.0", + "picomatch": "^4.0.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=8.40.0" + } + }, + "node_modules/@stylistic/eslint-plugin-jsx/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@stylistic/eslint-plugin-plus": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-plus/-/eslint-plugin-plus-2.1.0.tgz", + "integrity": "sha512-S5QAlgYXESJaSBFhBSBLZy9o36gXrXQwWSt6QkO+F0SrT9vpV5JF/VKoh+ojO7tHzd8Ckmyouq02TT9Sv2B0zQ==", + "dependencies": { + "@types/eslint": "^8.56.10", + "@typescript-eslint/utils": "^7.8.0" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@stylistic/eslint-plugin-ts": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-ts/-/eslint-plugin-ts-2.1.0.tgz", + "integrity": "sha512-2ioFibufHYBALx2TBrU4KXovCkN8qCqcb9yIHc0fyOfTaO5jw4d56WW7YRcF3Zgde6qFyXwAN6z/+w4pnmos1g==", + "dependencies": { + "@stylistic/eslint-plugin-js": "2.1.0", + "@types/eslint": "^8.56.10", + "@typescript-eslint/utils": "^7.8.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=8.40.0" + } + }, + "node_modules/@tailwindcss/aspect-ratio": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@tailwindcss/aspect-ratio/-/aspect-ratio-0.4.2.tgz", + "integrity": "sha512-8QPrypskfBa7QIMuKHg2TA7BqES6vhBrDLOv8Unb6FcFyd3TjKbc6lcmb9UPQHxfl24sXoJ41ux/H7qQQvfaSQ==", + "peerDependencies": { + "tailwindcss": ">=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1" + } + }, + "node_modules/@tailwindcss/container-queries": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/container-queries/-/container-queries-0.1.1.tgz", + "integrity": "sha512-p18dswChx6WnTSaJCSGx6lTmrGzNNvm2FtXmiO6AuA1V4U5REyoqwmT6kgAsIMdjo07QdAfYXHJ4hnMtfHzWgA==", + "peerDependencies": { + "tailwindcss": ">=3.2.0" + } + }, + "node_modules/@tailwindcss/forms": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.7.tgz", + "integrity": "sha512-QE7X69iQI+ZXwldE+rzasvbJiyV/ju1FGHH0Qn2W3FKbuYtqp8LKcy6iSw79fVUT5/Vvf+0XgLCeYVG+UV6hOw==", + "dependencies": { + "mini-svg-data-uri": "^1.2.3" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1" + } + }, + "node_modules/@tailwindcss/typography": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.13.tgz", + "integrity": "sha512-ADGcJ8dX21dVVHIwTRgzrcunY6YY9uSlAHHGVKvkA+vLc5qLwEszvKts40lx7z0qc4clpjclwLeK5rVCV2P/uw==", + "dependencies": { + "lodash.castarray": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "postcss-selector-parser": "6.0.10" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders" + } + }, + "node_modules/@tanstack/virtual-core": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.5.0.tgz", + "integrity": "sha512-KnPRCkQTyqhanNC0K63GBG3wA8I+D1fQuVnAvcBF8f13akOKeQp1gSbu6f77zCxhEk727iV5oQnbHLYzHrECLg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/vue-virtual": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tanstack/vue-virtual/-/vue-virtual-3.5.0.tgz", + "integrity": "sha512-wvRQ8sFxn/NDr3WvI5XabhFovZ5MBmpEck2GHpTxYunmV63Ovpl30lRu6W5BPQo35a1GqDZ+Pvzlz6WDWRNqqw==", + "dependencies": { + "@tanstack/virtual-core": "3.5.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "vue": "^2.7.0 || ^3.0.0" + } + }, + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==" + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@tufjs/canonical-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz", + "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==", + "dependencies": { + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@types/bson": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz", + "integrity": "sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cheerio": { + "version": "0.22.35", + "resolved": "https://registry.npmjs.org/@types/cheerio/-/cheerio-0.22.35.tgz", + "integrity": "sha512-yD57BchKRvTV+JD53UZ6PD8KWY5g5rvvMLRnZR3EQBCZXiDT/HR+pKpMzFGlWNhFrXlo7VPZXtKvIEwZkAWOIA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/chrome": { + "version": "0.0.268", + "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.268.tgz", + "integrity": "sha512-7N1QH9buudSJ7sI8Pe4mBHJr5oZ48s0hcanI9w3wgijAlv1OZNUZve9JR4x42dn5lJ5Sm87V1JNfnoh10EnQlA==", + "dependencies": { + "@types/filesystem": "*", + "@types/har-format": "*" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + }, + "node_modules/@types/filesystem": { + "version": "0.0.36", + "resolved": "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.36.tgz", + "integrity": "sha512-vPDXOZuannb9FZdxgHnqSwAG/jvdGM8Wq+6N4D/d80z+D4HWH+bItqsZaVRQykAn6WEVeEkLm2oQigyHtgb0RA==", + "dependencies": { + "@types/filewriter": "*" + } + }, + "node_modules/@types/filewriter": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.33.tgz", + "integrity": "sha512-xFU8ZXTw4gd358lb2jw25nxY9QAgqn2+bKKjKOYfNCzN4DKCFetK7sPtrlpg66Ywe3vWY9FNxprZawAh9wfJ3g==" + }, + "node_modules/@types/firefox-webext-browser": { + "version": "120.0.3", + "resolved": "https://registry.npmjs.org/@types/firefox-webext-browser/-/firefox-webext-browser-120.0.3.tgz", + "integrity": "sha512-APbBSxOvFMbKwXy/4YrEVa5Di6N0C9yl4w0WA0xzdkOrChAfPQ/KlcC8QLyhemHCHpF1CB/zHy52+oUQurViOg==" + }, + "node_modules/@types/geojson": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-1.0.6.tgz", + "integrity": "sha512-Xqg/lIZMrUd0VRmSRbCAewtwGZiAk3mEUDvV4op1tGl+LvyPcb/MIOSxTl9z+9+J+R4/vpjiCAT4xeKzH9ji1w==", + "dev": true + }, + "node_modules/@types/har-format": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.15.tgz", + "integrity": "sha512-RpQH4rXLuvTXKR0zqHq3go0RVXYv/YVqv4TnPH95VbwUxZdQlK1EtcMvQvMpDngHbt13Csh9Z4qT9AbkiQH5BA==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/mongodb": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", + "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", + "dependencies": { + "@types/bson": "*", + "@types/node": "*" + } + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/node": { + "version": "20.12.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", + "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==" + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "node_modules/@types/validator": { + "version": "13.11.10", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.10.tgz", + "integrity": "sha512-e2PNXoXLr6Z+dbfx5zSh9TRlXJrELycxiaXznp4S5+D2M3b9bqJEitNHA5923jhnB2zzFiZHa2f0SI1HoIahpg==" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", + "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==" + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.11.0.tgz", + "integrity": "sha512-P+qEahbgeHW4JQ/87FuItjBj8O3MYv5gELDzr8QaQ7fsll1gSMTYb6j87MYyxwf3DtD7uGFB9ShwgmCJB5KmaQ==", + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "7.11.0", + "@typescript-eslint/type-utils": "7.11.0", + "@typescript-eslint/utils": "7.11.0", + "@typescript-eslint/visitor-keys": "7.11.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.11.0.tgz", + "integrity": "sha512-yimw99teuaXVWsBcPO1Ais02kwJ1jmNA1KxE7ng0aT7ndr1pT1wqj0OJnsYVGKKlc4QJai86l/025L6z8CljOg==", + "dependencies": { + "@typescript-eslint/scope-manager": "7.11.0", + "@typescript-eslint/types": "7.11.0", + "@typescript-eslint/typescript-estree": "7.11.0", + "@typescript-eslint/visitor-keys": "7.11.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.11.0.tgz", + "integrity": "sha512-27tGdVEiutD4POirLZX4YzT180vevUURJl4wJGmm6TrQoiYwuxTIY98PBp6L2oN+JQxzE0URvYlzJaBHIekXAw==", + "dependencies": { + "@typescript-eslint/types": "7.11.0", + "@typescript-eslint/visitor-keys": "7.11.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.11.0.tgz", + "integrity": "sha512-WmppUEgYy+y1NTseNMJ6mCFxt03/7jTOy08bcg7bxJJdsM4nuhnchyBbE8vryveaJUf62noH7LodPSo5Z0WUCg==", + "dependencies": { + "@typescript-eslint/typescript-estree": "7.11.0", + "@typescript-eslint/utils": "7.11.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.11.0.tgz", + "integrity": "sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w==", + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.11.0.tgz", + "integrity": "sha512-cxkhZ2C/iyi3/6U9EPc5y+a6csqHItndvN/CzbNXTNrsC3/ASoYQZEt9uMaEp+xFNjasqQyszp5TumAVKKvJeQ==", + "dependencies": { + "@typescript-eslint/types": "7.11.0", + "@typescript-eslint/visitor-keys": "7.11.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.11.0.tgz", + "integrity": "sha512-xlAWwPleNRHwF37AhrZurOxA1wyXowW4PqVXZVUNCLjB48CqdPJoJWkrpH2nij9Q3Lb7rtWindtoXwxjxlKKCA==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "7.11.0", + "@typescript-eslint/types": "7.11.0", + "@typescript-eslint/typescript-estree": "7.11.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.11.0.tgz", + "integrity": "sha512-7syYk4MzjxTEk0g/w3iqtgxnFQspDJfn6QKD36xMuuhTzjcxY7F8EmBLnALjVyaOF1/bVocu3bS/2/F7rXrveQ==", + "dependencies": { + "@typescript-eslint/types": "7.11.0", + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, + "node_modules/@unhead/dom": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/@unhead/dom/-/dom-1.9.11.tgz", + "integrity": "sha512-mg8DuqPcm+JWSN3SIPa9lbNtFhdQ1M7K2TJe8icI4bK56GSj4eUgJZrbphZAUWPAUAS1UFyFFGJG7N9Y31LKOw==", + "dependencies": { + "@unhead/schema": "1.9.11", + "@unhead/shared": "1.9.11" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/schema": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/@unhead/schema/-/schema-1.9.11.tgz", + "integrity": "sha512-hvIGl20wpQQImyHvAMv2tPgccKLGEwMn8KYQdImUkiCLdQw2Jw9jH7syE/u+TPSqwOQIwsvPja5sK+SChL1KNw==", + "dependencies": { + "hookable": "^5.5.3", + "zhead": "^2.2.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/shared": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/@unhead/shared/-/shared-1.9.11.tgz", + "integrity": "sha512-jgpQ/cPfXzQA7c4F4PKyPXxS9POXAMrJ0QUBMTQYNOW6t6KlljjK89n6nUEmGuiyO4jdJGooZNVS1fXVaKIgYQ==", + "dependencies": { + "@unhead/schema": "1.9.11" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/ssr": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/@unhead/ssr/-/ssr-1.9.11.tgz", + "integrity": "sha512-qp7a1uRxzYGr1nRYtkbrYmbUOMZaxIErYDg3ZXA4cc4AZ90OFqb6CfRvk79ywWdatfavsfSj29K1NMgKQyH9ZQ==", + "dependencies": { + "@unhead/schema": "1.9.11", + "@unhead/shared": "1.9.11" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/@unhead/vue": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/@unhead/vue/-/vue-1.9.11.tgz", + "integrity": "sha512-7gCEJGTSnpLcHGQ2j/IsBTz2nIUWbTlqUbbNiwPFgEksJbh8Pz8WduTvLC4ANlnnFy6PDG7yrZcaKJMOrNruoQ==", + "dependencies": { + "@unhead/schema": "1.9.11", + "@unhead/shared": "1.9.11", + "hookable": "^5.5.3", + "unhead": "1.9.11" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + }, + "peerDependencies": { + "vue": ">=2.7 || >=3" + } + }, + "node_modules/@unocss/astro": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/astro/-/astro-0.60.3.tgz", + "integrity": "sha512-duFuyVhqYqQ15JZqx41UNgIxndqYRbOwDkJ7Y+R5N+u59a27vImz8B9eOFkHaZCFBWyH5jywkT8LVK1sfddFaw==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/reset": "0.60.3", + "@unocss/vite": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/@unocss/cli": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/cli/-/cli-0.60.3.tgz", + "integrity": "sha512-bN829zn6k4hrvDTLnUcI2uAJnSevHwlkOCaYxN/C+v11uGxIewk5Xum6Vm5kZ8JTpCR1jEu/i7wIBNde3XKN5g==", + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/pluginutils": "^5.1.0", + "@unocss/config": "0.60.3", + "@unocss/core": "0.60.3", + "@unocss/preset-uno": "0.60.3", + "cac": "^6.7.14", + "chokidar": "^3.6.0", + "colorette": "^2.0.20", + "consola": "^3.2.3", + "fast-glob": "^3.3.2", + "magic-string": "^0.30.10", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0" + }, + "bin": { + "unocss": "bin/unocss.mjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/config": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/config/-/config-0.60.3.tgz", + "integrity": "sha512-3RGD7h3bS4qZA/Khcqhn1EgLgyPc85FSz5rubdywHRdHlpY9sdmuGEJahvqSLMN4MmdYQDmqEIEAJjENrdgZeQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "unconfig": "^0.3.13" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/core": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.60.3.tgz", + "integrity": "sha512-4bBX1pavDl2DSCozEII7bxYGT0IkyO7kKlUuCtooTePWyLjf2F7essdzHkJ00EpNR64kkebR9V0lqBMBo07VPw==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/extractor-arbitrary-variants": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-0.60.3.tgz", + "integrity": "sha512-PnwNwkeAHmbJbrf5XN0xQG1KT1VQEye8neYn5yz1MHnT8Cj2nqjrqoCRGLCLhpOUg3/MNj+bpiA7hGnFbXWaCQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/inspector/-/inspector-0.60.3.tgz", + "integrity": "sha512-2cXAPA1yddB79mmpMXxPpSpizn4TskAsB7aSocbprOTYIU2Ff53gfkkijnLixrBvbG8xw91d9oPuI5Hm9GCyMQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/rule-utils": "0.60.3", + "gzip-size": "^6.0.0", + "sirv": "^2.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector/node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "peer": true, + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@unocss/postcss": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/postcss/-/postcss-0.60.3.tgz", + "integrity": "sha512-7jRsKgMz4wr3Rvnr/RpK/7g6o8bMrqjTb01imgHeaw7cmQsa9sH1HPCp+4lvHh2/QKKLwwRAC+fdnNmsf8JKjA==", + "peer": true, + "dependencies": { + "@unocss/config": "0.60.3", + "@unocss/core": "0.60.3", + "@unocss/rule-utils": "0.60.3", + "css-tree": "^2.3.1", + "fast-glob": "^3.3.2", + "magic-string": "^0.30.10", + "postcss": "^8.4.38" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/@unocss/preset-attributify": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-attributify/-/preset-attributify-0.60.3.tgz", + "integrity": "sha512-G/Lx9xq/tVKvjp/CcACyLU+p3mcrpgkMvy+Z3NSHfBAZAmbieBMFhwROxt5R8Bny66q3fYDtxxx+likpokpOAQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-icons": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-icons/-/preset-icons-0.60.3.tgz", + "integrity": "sha512-L3Ecr36xC+Y8v5WMQcNsGoOzu0HpgNLh5RlC2abs8OyBDGn1k3UqdEFdrhRt3bXpln9b8JkstHO7ZwYPgr2/Cg==", + "peer": true, + "dependencies": { + "@iconify/utils": "^2.1.23", + "@unocss/core": "0.60.3", + "ofetch": "^1.3.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-mini/-/preset-mini-0.60.3.tgz", + "integrity": "sha512-7en8KBX3lN1Y6eCprbzA1QVfyXZD03B+oAxFXH8QPv5jRIL8Lm8sbXqE+VTsSME/OVp4DnS6LdGtDAm9mvIOSw==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/extractor-arbitrary-variants": "0.60.3", + "@unocss/rule-utils": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-tagify": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-tagify/-/preset-tagify-0.60.3.tgz", + "integrity": "sha512-pzD6bgtGuIk7M1n/JQiR6EpwnVvafSTHoM70Jhf+T8MSuatDb+KFJCn3VELV2v38aikcUY5cTf95jqHQdzOAhQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-typography/-/preset-typography-0.60.3.tgz", + "integrity": "sha512-cOXOnxkgH0ZiYg/oHBbabzXi1q6oTZWgQ4fqrVxGI2CD4oiWYaPU/wzKsx930D6uBSIlBVDX/cov2j0dPWjgJg==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/preset-mini": "0.60.3" + } + }, + "node_modules/@unocss/preset-uno": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-uno/-/preset-uno-0.60.3.tgz", + "integrity": "sha512-PJSR78uaIRTsD9RFSQLwsrGAsjQoW5nWenU4n4GyZeskDsyQVgOcaKtvh+0aYjYdWBa1UvxeUL8Y+m29K4HnAA==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/preset-mini": "0.60.3", + "@unocss/preset-wind": "0.60.3", + "@unocss/rule-utils": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-web-fonts": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-web-fonts/-/preset-web-fonts-0.60.3.tgz", + "integrity": "sha512-uYHvnqgLDawG3o9oBbasPWbSZ93kzk2JQBcH6xmHh7xqYtRdHqVbUjVU1zIqSjXm19SxFriSrNTl4ct2+/pJIg==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "ofetch": "^1.3.4" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/preset-wind/-/preset-wind-0.60.3.tgz", + "integrity": "sha512-q7yDJ/SyEkPmPBJvIeHd9Bt50LAu65q7WwKxJYfJkjfJvJUMj6DO8FgPnpeiwBeJh9897m2Ap6zoQ3JqBjPLHQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/preset-mini": "0.60.3", + "@unocss/rule-utils": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/reset": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/reset/-/reset-0.60.3.tgz", + "integrity": "sha512-EuC8gkh8L8WvPOcjS/KqprEJXIKcpBPm+ou5G9D6WgDmJ+TgQrri5oR+QUmOmEnueQkVL7bnkFkIKeg71SJLFA==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/rule-utils": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/rule-utils/-/rule-utils-0.60.3.tgz", + "integrity": "sha512-I47/DcKQ2z12W80+Ffth0K6LzNvqcQPYRWk7KwVemVoEiGYamMV8/s+SbB26Fk9KUFjh+Ns/pGAo4iJZo0ueUQ==", + "peer": true, + "dependencies": { + "@unocss/core": "^0.60.3", + "magic-string": "^0.30.10" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/scope": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/scope/-/scope-0.60.3.tgz", + "integrity": "sha512-uDUcBkFe8nRwNiU4YQyrOCjY7/+qFJI/Qr0eouMPOSEsQ6uIXQEWjykqUBJg2fvm0S2vbfBGO9tO/wCDIk5O3w==", + "peer": true + }, + "node_modules/@unocss/transformer-attributify-jsx": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.60.3.tgz", + "integrity": "sha512-zcPu4tUm/1EnqcFpf6+XzUzfb2BzJBcfNMkFzl/5BSTMECEDgdj4QGBWxnTuSlSZs4digRABGtuAHUO7k1qfgA==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-attributify-jsx-babel": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/transformer-attributify-jsx-babel/-/transformer-attributify-jsx-babel-0.60.3.tgz", + "integrity": "sha512-6WcEFPSaxscGR22dRUcNqY0ippC3/Q/LBVFVSCJh++hoIPVCZbxF505cPq/bOdF2bpNzj9yXW0OJt03nB505Hg==", + "peer": true, + "dependencies": { + "@babel/core": "^7.24.5", + "@babel/plugin-syntax-jsx": "^7.24.1", + "@babel/preset-typescript": "^7.24.1", + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-compile-class": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/transformer-compile-class/-/transformer-compile-class-0.60.3.tgz", + "integrity": "sha512-j6wiYgtNqMlrctaZUuN4S+vANW0DMb9wW3KbJ2XvB7lXftfY1bbZ3IKenAyFp0ZLdKs69B6irJbCbIS5OAKKXQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/transformer-directives/-/transformer-directives-0.60.3.tgz", + "integrity": "sha512-JuFpxyB1yvS2YoiguO5+8Ou6k9yyojZCnnDYXXZqMGLp1KdLiDcAPZQyShoD5HLzPGHtAbQELUz9TcX3VMLEoQ==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3", + "@unocss/rule-utils": "0.60.3", + "css-tree": "^2.3.1" + } + }, + "node_modules/@unocss/transformer-variant-group": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/transformer-variant-group/-/transformer-variant-group-0.60.3.tgz", + "integrity": "sha512-jQg0+W49jA7Z+4mRQbZWZKV6aXJXQfAHRC3oo4C9vEyTXL2jb952K12XVcJhXnbLYpnUKwytR+vbshXMIHWZwA==", + "peer": true, + "dependencies": { + "@unocss/core": "0.60.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/vite": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/@unocss/vite/-/vite-0.60.3.tgz", + "integrity": "sha512-I3EOR3g245IGDp3DS17AQAMwNQrh6L6kIlXG3+wt5IZ1zu1ahZmKA8/xxh6oo2TNdu4rI6nQbcLIRn+8eSyfQw==", + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/pluginutils": "^5.1.0", + "@unocss/config": "0.60.3", + "@unocss/core": "0.60.3", + "@unocss/inspector": "0.60.3", + "@unocss/scope": "0.60.3", + "@unocss/transformer-directives": "0.60.3", + "chokidar": "^3.6.0", + "fast-glob": "^3.3.2", + "magic-string": "^0.30.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0" + } + }, + "node_modules/@vercel/nft": { + "version": "0.26.5", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.5.tgz", + "integrity": "sha512-NHxohEqad6Ra/r4lGknO52uc/GrWILXAMs1BB4401GTqww0fw1bAqzpG1XHuDO+dprg4GvsD9ZLLSsdo78p9hQ==", + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.5", + "@rollup/pluginutils": "^4.0.0", + "acorn": "^8.6.0", + "acorn-import-attributes": "^1.9.2", + "async-sema": "^3.1.1", + "bindings": "^1.4.0", + "estree-walker": "2.0.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.2", + "node-gyp-build": "^4.2.2", + "resolve-from": "^5.0.0" + }, + "bin": { + "nft": "out/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@vercel/nft/node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/@vercel/nft/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@vercel/nft/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vercel/nft/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@vercel/nft/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz", + "integrity": "sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz", + "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==", + "dependencies": { + "@babel/core": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3", + "@vue/babel-plugin-jsx": "^1.1.5" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "devOptional": true, + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "devOptional": true, + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "devOptional": true, + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vue-macros/common": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.10.4.tgz", + "integrity": "sha512-akO6Bd6U4jP0+ZKbHq6mbYkw1coOrJpLeVmkuMlUsT5wZRi11BjauGcZHusBSzUjgCBsa1kZTyipxrxrWB54Hw==", + "dependencies": { + "@babel/types": "^7.24.5", + "@rollup/pluginutils": "^5.1.0", + "@vue/compiler-sfc": "^3.4.27", + "ast-kit": "^0.12.1", + "local-pkg": "^0.5.0", + "magic-string-ast": "^0.6.0" + }, + "engines": { + "node": ">=16.14.0" + }, + "peerDependencies": { + "vue": "^2.7.0 || ^3.2.25" + }, + "peerDependenciesMeta": { + "vue": { + "optional": true + } + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.2.tgz", + "integrity": "sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw==" + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.2.tgz", + "integrity": "sha512-nYTkZUVTu4nhP199UoORePsql0l+wj7v/oyQjtThUVhJl1U+6qHuoVhIvR3bf7eVKjbCK+Cs2AWd7mi9Mpz9rA==", + "dependencies": { + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", + "@vue/babel-helper-vue-transform-on": "1.2.2", + "@vue/babel-plugin-resolve-type": "1.2.2", + "camelcase": "^6.3.0", + "html-tags": "^3.3.1", + "svg-tags": "^1.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-jsx/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.2.tgz", + "integrity": "sha512-EntyroPwNg5IPVdUJupqs0CFzuf6lUrVvCspmv2J1FITLeGnUCuoGNNk78dgCusxEiYj6RMkTJflGSxk5aIC4A==", + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/parser": "^7.23.9", + "@vue/compiler-sfc": "^3.4.15" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz", + "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==", + "dependencies": { + "@babel/parser": "^7.24.4", + "@vue/shared": "3.4.27", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz", + "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==", + "dependencies": { + "@vue/compiler-core": "3.4.27", + "@vue/shared": "3.4.27" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz", + "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==", + "dependencies": { + "@babel/parser": "^7.24.4", + "@vue/compiler-core": "3.4.27", + "@vue/compiler-dom": "3.4.27", + "@vue/compiler-ssr": "3.4.27", + "@vue/shared": "3.4.27", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.10", + "postcss": "^8.4.38", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz", + "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==", + "dependencies": { + "@vue/compiler-dom": "3.4.27", + "@vue/shared": "3.4.27" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.1.tgz", + "integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA==" + }, + "node_modules/@vue/devtools-applet": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-applet/-/devtools-applet-7.2.1.tgz", + "integrity": "sha512-WGFXgMaph+9aT6ApN0ZQEjjAEeVN/o6DuoXOI5lJzpvXGxRpVWonziNlIcXW9PG/xVuZVWAEST7CQpXs4kzmdg==", + "dependencies": { + "@vue/devtools-core": "^7.2.1", + "@vue/devtools-kit": "^7.2.1", + "@vue/devtools-shared": "^7.2.1", + "@vue/devtools-ui": "^7.2.1", + "lodash-es": "^4.17.21", + "perfect-debounce": "^1.0.0", + "shiki": "1.5.2", + "splitpanes": "^3.1.5", + "vue-virtual-scroller": "2.0.0-beta.8" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/@vue/devtools-core": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.2.1.tgz", + "integrity": "sha512-OyWl455UnJIVgZ6lo5WQ79WbDMoXtSRwyNKp9WzCZ0HhuQywIk4qv59KtLRe75uVmtGBde4hXNaSyRm+x9bY6g==", + "dependencies": { + "@vue/devtools-kit": "^7.2.1", + "@vue/devtools-shared": "^7.2.1", + "mitt": "^3.0.1", + "nanoid": "^3.3.4", + "pathe": "^1.1.2", + "vite-hot-client": "^0.2.3" + } + }, + "node_modules/@vue/devtools-core/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.2.1.tgz", + "integrity": "sha512-Wak/fin1X0Q8LLIfCAHBrdaaB+R6IdpSXsDByPHbQ3BmkCP0/cIo/oEGp9i0U2+gEqD4L3V9RDjNf1S34DTzQQ==", + "dependencies": { + "@vue/devtools-shared": "^7.2.1", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.2.1.tgz", + "integrity": "sha512-PCJF4UknJmOal68+X9XHyVeQ+idv0LFujkTOIW30+GaMJqwFVN9LkQKX4gLqn61KkGMdJTzQ1bt7EJag3TI6AA==", + "dependencies": { + "rfdc": "^1.3.1" + } + }, + "node_modules/@vue/devtools-ui": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-ui/-/devtools-ui-7.2.1.tgz", + "integrity": "sha512-3XwW6uTn5noXKN4T4T9rpFlQR0B050ebwUO+Y8HsWHv8XZ451xk+A89y00s1Zx7P2SRkDqeJgbi4kYSHnXkxbg==", + "dependencies": { + "@vue/devtools-shared": "7.2.1", + "@vueuse/components": "^10.9.0", + "@vueuse/core": "^10.9.0", + "@vueuse/integrations": "^10.9.0", + "colord": "^2.9.3", + "focus-trap": "^7.5.4" + }, + "peerDependencies": { + "@unocss/reset": ">=0.50.0-0", + "floating-vue": ">=2.0.0-0", + "unocss": ">=0.50.0-0", + "vue": ">=3.0.0-0" + } + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "devOptional": true, + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/reactivity": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz", + "integrity": "sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==", + "dependencies": { + "@vue/shared": "3.4.27" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.27.tgz", + "integrity": "sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==", + "dependencies": { + "@vue/reactivity": "3.4.27", + "@vue/shared": "3.4.27" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz", + "integrity": "sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==", + "dependencies": { + "@vue/runtime-core": "3.4.27", + "@vue/shared": "3.4.27", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.27.tgz", + "integrity": "sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==", + "dependencies": { + "@vue/compiler-ssr": "3.4.27", + "@vue/shared": "3.4.27" + }, + "peerDependencies": { + "vue": "3.4.27" + } + }, + "node_modules/@vue/shared": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", + "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==" + }, + "node_modules/@vueuse/components": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-10.10.0.tgz", + "integrity": "sha512-HiA10NQ9HJAGnju+8ZK4TyA8LIc0a6BnJmVWDa/k+TRhaYCVacSDU04k0BQ2otV+gghUDdwu98upf6TDRXpoeg==", + "dependencies": { + "@vueuse/core": "10.10.0", + "@vueuse/shared": "10.10.0", + "vue-demi": ">=0.14.7" + } + }, + "node_modules/@vueuse/components/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/core": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.10.0.tgz", + "integrity": "sha512-vexJ/YXYs2S42B783rI95lMt3GzEwkxzC8Hb0Ndpd8rD+p+Lk/Za4bd797Ym7yq4jXqdSyj3JLChunF/vyYjUw==", + "dependencies": { + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "10.10.0", + "@vueuse/shared": "10.10.0", + "vue-demi": ">=0.14.7" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/integrations": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.10.0.tgz", + "integrity": "sha512-vHGeK7X6mkdkpcm1eE9t3Cpm21pNVfZRwrjwwbrEs9XftnSgszF4831G2rei8Dt9cIYJIfFV+iyx/29muimJPQ==", + "dependencies": { + "@vueuse/core": "10.10.0", + "@vueuse/shared": "10.10.0", + "vue-demi": ">=0.14.7" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "async-validator": "*", + "axios": "*", + "change-case": "*", + "drauu": "*", + "focus-trap": "*", + "fuse.js": "*", + "idb-keyval": "*", + "jwt-decode": "*", + "nprogress": "*", + "qrcode": "*", + "sortablejs": "*", + "universal-cookie": "*" + }, + "peerDependenciesMeta": { + "async-validator": { + "optional": true + }, + "axios": { + "optional": true + }, + "change-case": { + "optional": true + }, + "drauu": { + "optional": true + }, + "focus-trap": { + "optional": true + }, + "fuse.js": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "jwt-decode": { + "optional": true + }, + "nprogress": { + "optional": true + }, + "qrcode": { + "optional": true + }, + "sortablejs": { + "optional": true + }, + "universal-cookie": { + "optional": true + } + } + }, + "node_modules/@vueuse/integrations/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/math": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/math/-/math-10.10.0.tgz", + "integrity": "sha512-+jAA7wla5T400VcMLLRMMozAkoL/3LGJE8qNoteX1YHsvpDSN0UR0DkgCmu9UakhK3JWpX4SURXtwd98rDtMyA==", + "dependencies": { + "@vueuse/shared": "10.10.0", + "vue-demi": ">=0.14.7" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/math/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.10.0.tgz", + "integrity": "sha512-UNAo2sTCAW5ge6OErPEHb5z7NEAg3XcO9Cj7OK45aZXfLLH1QkexDcZD77HBi5zvEiLOm1An+p/4b5K3Worpug==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "10.10.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.10.0.tgz", + "integrity": "sha512-2aW33Ac0Uk0U+9yo3Ypg9s5KcR42cuehRWl7vnUHadQyFvCktseyxxEPBi1Eiq4D2yBGACOnqLZpx1eMc7g5Og==", + "dependencies": { + "vue-demi": ">=0.14.7" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "node_modules/archiver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-7.0.1.tgz", + "integrity": "sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ==", + "dependencies": { + "archiver-utils": "^5.0.2", + "async": "^3.2.4", + "buffer-crc32": "^1.0.0", + "readable-stream": "^4.0.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^3.0.0", + "zip-stream": "^6.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/archiver-utils": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-5.0.2.tgz", + "integrity": "sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==", + "dependencies": { + "glob": "^10.0.0", + "graceful-fs": "^4.2.0", + "is-stream": "^2.0.1", + "lazystream": "^1.0.0", + "lodash": "^4.17.15", + "normalize-path": "^3.0.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/archiver-utils/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/archiver-utils/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/archiver-utils/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/archiver/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/archiver/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/archiver/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "engines": { + "node": ">=14" + } + }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findindex": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findindex/-/array.prototype.findindex-2.2.3.tgz", + "integrity": "sha512-Saz3pStJ2X5bg27GTWWLyhJrcwbMVLsnbho2zUVQFW2Pgrh0mSKKvAeZr6BPww7E1AygK33cX7w0W1YERC1RHA==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ast-kit": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.12.1.tgz", + "integrity": "sha512-O+33g7x6irsESUcd47KdfWUrS2F6aGp9KeVJFGj0YjIznfXpBxVGjA0w+y/1OKqX4mFOfmZ9Xpf1ixPT4n9xxw==", + "dependencies": { + "@babel/parser": "^7.23.9", + "pathe": "^1.1.2" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ast-walker-scope": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.5.0.tgz", + "integrity": "sha512-NsyHMxBh4dmdEHjBo1/TBZvCKxffmZxRYhmclfu0PP6Aftre47jOHYaYaNqJcV0bxihxFXhDkzLHUwHc0ocd0Q==", + "dependencies": { + "@babel/parser": "^7.22.7", + "ast-kit": "^0.9.4" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/ast-walker-scope/node_modules/ast-kit": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.9.5.tgz", + "integrity": "sha512-kbL7ERlqjXubdDd+szuwdlQ1xUxEz9mCz1+m07ftNVStgwRb2RWw+U6oKo08PAvOishMxiqz1mlJyLl8yQx2Qg==", + "dependencies": { + "@babel/parser": "^7.22.7", + "@rollup/pluginutils": "^5.0.2", + "pathe": "^1.1.1" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" + }, + "node_modules/async-sema": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", + "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.19", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001599", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==" + }, + "node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/b4a": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", + "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/bare-events": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", + "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", + "optional": true + }, + "node_modules/bare-fs": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.0.tgz", + "integrity": "sha512-TNFqa1B4N99pds2a5NYHR15o0ZpdNKbAeKTE/+G6ED/UeOavv8RY3dr/Fu99HW3zU3pXpo2kDNO8Sjsm2esfOw==", + "optional": true, + "dependencies": { + "bare-events": "^2.0.0", + "bare-path": "^2.0.0", + "bare-stream": "^1.0.0" + } + }, + "node_modules/bare-os": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.3.0.tgz", + "integrity": "sha512-oPb8oMM1xZbhRQBngTgpcQ5gXw6kjOaRsSWsIeNyRxGed2w/ARyP7ScBYpWR1qfX2E5rS3gBw6OWcSQo+s+kUg==", + "optional": true + }, + "node_modules/bare-path": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-2.1.3.tgz", + "integrity": "sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==", + "optional": true, + "dependencies": { + "bare-os": "^2.1.0" + } + }, + "node_modules/bare-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-1.0.0.tgz", + "integrity": "sha512-KhNUoDL40iP4gFaLSsoGE479t0jHijfYdIcxRn/XtezA2BaUD0NRf/JGRpsMq6dMNM+SrCrB0YSSo/5wBY4rOQ==", + "optional": true, + "dependencies": { + "streamx": "^2.16.1" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/basic-ftp": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", + "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/birpc": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.17.tgz", + "integrity": "sha512-+hkTxhot+dWsLpp3gia5AkVHIsKlZybNT5gIYiDlNzJrmYPcTM9k5/w2uaj3IPpd7LlEYpmCj4Jj1nC41VhDFg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/bl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bson": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", + "integrity": "sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-1.0.0.tgz", + "integrity": "sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bundle-name": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", + "dependencies": { + "run-applescript": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bundle-require": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.1.0.tgz", + "integrity": "sha512-FeArRFM+ziGkRViKRnSTbHZc35dgmR9yNog05Kn0+ItI59pOAISGvnnIwW1WgFZQW59IxD9QpJnUPkdIPfZuXg==", + "dependencies": { + "load-tsconfig": "^0.2.3" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "peerDependencies": { + "esbuild": ">=0.17" + } + }, + "node_modules/c12": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/c12/-/c12-1.10.0.tgz", + "integrity": "sha512-0SsG7UDhoRWcuSvKWHaXmu5uNjDCDN3nkQLRL4Q42IlFy+ze58FcCoI3uPwINXinkz7ZinbhEgyzYFw9u9ZV8g==", + "dependencies": { + "chokidar": "^3.6.0", + "confbox": "^0.1.3", + "defu": "^6.1.4", + "dotenv": "^16.4.5", + "giget": "^1.2.1", + "jiti": "^1.21.0", + "mlly": "^1.6.1", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "rc9": "^2.1.1" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cacache": { + "version": "18.0.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.3.tgz", + "integrity": "sha512-qXCd4rh6I07cnDqh8V48/94Tc/WSfj+o3Gn6NZ0aZovS255bUx8O13uKxRFd2eWG0xgsco7+YItQNPaa5E85hg==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dependencies": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001624", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001624.tgz", + "integrity": "sha512-0dWnQG87UevOCPYaOR49CBcLBwoZLpws+k6W37nLjWUhumP1Isusj0p2u+3KhjNloRWK9OKMgjBBzPujQHw4nA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-bidi": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.5.19.tgz", + "integrity": "sha512-UA6zL77b7RYCjJkZBsZ0wlvCTD+jTjllZ8f6wdO4buevXgTZYjV+XLB9CiEa2OuuTGGTLnI7eN9I60YxuALGQg==", + "dependencies": { + "mitt": "3.0.1", + "urlpattern-polyfill": "10.0.0", + "zod": "3.22.4" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/chromium-bidi/node_modules/urlpattern-polyfill": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", + "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==" + }, + "node_modules/ci-info": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz", + "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/citty": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", + "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", + "dependencies": { + "consola": "^3.2.3" + } + }, + "node_modules/clean-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz", + "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/clean-regexp/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/clear": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clear/-/clear-0.1.0.tgz", + "integrity": "sha512-qMjRnoL+JDPJHeLePZJuao6+8orzHMGP04A8CdwCNsKhRbOnKRjefxONR7bwILT3MHecxKBjHkKL/tkZ8r4Uzw==", + "engines": { + "node": "*" + } + }, + "node_modules/cli-color": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-2.0.4.tgz", + "integrity": "sha512-zlnpg0jNcibNrO7GG9IeHH7maWFeCz+Ja1wx/7tZNU5ASSSSZ+/qZciM0/LHCYxSdqv5h2sdbQ/PXYdOuetXvA==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.64", + "es6-iterator": "^2.0.3", + "memoizee": "^0.4.15", + "timers-ext": "^0.1.7" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/clipboardy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", + "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", + "dependencies": { + "execa": "^8.0.1", + "is-wsl": "^3.1.0", + "is64bit": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/clipboardy/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/clipboardy/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha512-we+NuQo2DHhSl+DP6jlUiAhyAjBQrYnpOk15rN6c6JSPScjiCLh8IbSU+VTcph6YS3o7mASE8a0+gbZ7ChLpgg==", + "dependencies": { + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cls-bluebird": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cls-bluebird/-/cls-bluebird-2.1.0.tgz", + "integrity": "sha512-XVb0RPmHQyy35Tz9z34gvtUcBKUK8A/1xkGCyeFc9B0C7Zr5SysgFaswRVdwI5NEMcO+3JKlIDGIOgERSn9NdA==", + "dev": true, + "dependencies": { + "is-bluebird": "^1.0.2", + "shimmer": "^1.1.0" + } + }, + "node_modules/cluster-key-slot": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", + "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "peer": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "dev": true, + "dependencies": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compress-commons": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-6.0.2.tgz", + "integrity": "sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==", + "dependencies": { + "crc-32": "^1.2.0", + "crc32-stream": "^6.0.0", + "is-stream": "^2.0.1", + "normalize-path": "^3.0.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/compress-commons/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/compress-commons/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/compress-commons/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/compress-commons/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "devOptional": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/confbox": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.7.tgz", + "integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==" + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/config-chain/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + }, + "node_modules/cookie-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.1.0.tgz", + "integrity": "sha512-L2rLOcK0wzWSfSDA33YR+PUHDG10a8px7rUHKWbGLP4YfbsMed2KFUw5fczvDPbT98DDe3LEzviswl810apTEw==" + }, + "node_modules/cookies": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", + "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", + "dependencies": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/core-js-compat": { + "version": "3.37.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", + "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", + "dependencies": { + "browserslist": "^4.23.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-6.0.0.tgz", + "integrity": "sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==", + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/crc32-stream/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/crc32-stream/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/crc32-stream/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, + "node_modules/croner": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/croner/-/croner-8.0.2.tgz", + "integrity": "sha512-HgSdlSUX8mIgDTTiQpWUP4qY4IFRMsduPCYdca34Pelt8MVdxdaDOzreFtCscA6R+cRZd7UbD1CD3uyx6J3X1A==", + "engines": { + "node": ">=18.0" + } + }, + "node_modules/cronstrue": { + "version": "2.50.0", + "resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.50.0.tgz", + "integrity": "sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==", + "bin": { + "cronstrue": "bin/cli.js" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crossws": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.2.4.tgz", + "integrity": "sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg==", + "peerDependencies": { + "uWebSockets.js": "*" + }, + "peerDependenciesMeta": { + "uWebSockets.js": { + "optional": true + } + } + }, + "node_modules/css-declaration-sorter": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", + "dependencies": { + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-preset-default": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", + "dependencies": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-utils": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "dependencies": { + "css-tree": "~2.2.0" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==" + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/d": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", + "dev": true, + "dependencies": { + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/d2l-intl": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/d2l-intl/-/d2l-intl-2.1.0.tgz", + "integrity": "sha512-mwKU0yn7YS8n7OAhfUPtGiWGnYNrR3b/kxmrp9hdwoDBTDWDObpIrxTkZBF1yaOSK4jDnd813t3gu2PkJmBysQ==" + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", + "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/db0": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/db0/-/db0-0.1.4.tgz", + "integrity": "sha512-Ft6eCwONYxlwLjBXSJxw0t0RYtA5gW9mq8JfBXn9TtC0nDPlqePAhpv9v4g9aONBi6JI1OXHTKKkUYGd+BOrCA==", + "peerDependencies": { + "@libsql/client": "^0.5.2", + "better-sqlite3": "^9.4.3", + "drizzle-orm": "^0.29.4" + }, + "peerDependenciesMeta": { + "@libsql/client": { + "optional": true + }, + "better-sqlite3": { + "optional": true + }, + "drizzle-orm": { + "optional": true + } + } + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "devOptional": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-diff": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz", + "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==", + "dev": true + }, + "node_modules/deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==" + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-browser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", + "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "dependencies": { + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser-id": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", + "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/defu": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==" + }, + "node_modules/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "dependencies": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" + }, + "node_modules/denque": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", + "integrity": "sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destr": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz", + "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==" + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/devalue": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.3.tgz", + "integrity": "sha512-UH8EL6H2ifcY8TbD2QsxwCC/pr5xSwPvv85LrLXVihmHVC3T3YqTCIwnR5ak0yO1KYqlxrPVOA/JVZJYPy2ATg==" + }, + "node_modules/devtools-protocol": { + "version": "0.0.1286932", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1286932.tgz", + "integrity": "sha512-wu58HMQll9voDjR4NlPyoDEw1syfzaBNHymMMZ/QOXiHRNluOnDgu9hp1yHOKYoMlxCh4lSSiugLITe6Fvu1eA==" + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + }, + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-prop": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-8.0.2.tgz", + "integrity": "sha512-xaBe6ZT4DHPkg0k4Ytbvn5xoxgpG0jOS1dYxSOwAHPuNLjP3/OzN0gH55SrLqpx8cBfSaVt91lXYkApjb+nYdQ==", + "dependencies": { + "type-fest": "^3.8.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dottie": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/dottie/-/dottie-2.0.6.tgz", + "integrity": "sha512-iGCHkfUc5kFekGiqhe8B/mdaurD+lakO9txNnTvKtA6PISrw86LgqHvRzWYPyoE2Ph5aMIrCw9/uko6XHTKCwA==" + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" + }, + "node_modules/editorconfig": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz", + "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==", + "dev": true, + "dependencies": { + "@one-ini/wasm": "0.1.1", + "commander": "^10.0.0", + "minimatch": "9.0.1", + "semver": "^7.5.3" + }, + "bin": { + "editorconfig": "bin/editorconfig" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.783", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", + "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.1.tgz", + "integrity": "sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser-es": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.4.tgz", + "integrity": "sha512-l0uy0kAoo6toCgVOYaAayqtPa2a1L15efxUMEnQebKwLQX2X0OpS6wMMQdc4juJXmxd9i40DuaUHq+mjIya9TQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", + "dev": true, + "dependencies": { + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-flat-gitignore": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-0.1.5.tgz", + "integrity": "sha512-hEZLwuZjDBGDERA49c2q7vxc8sCGv8EdBp6PQYzGOMcHIgrfG9YOM6s/4jx24zhD+wnK9AI8mgN5RxSss5nClQ==", + "dependencies": { + "find-up": "^7.0.0", + "parse-gitignore": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/eslint-config-prettier": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-flat-config-utils": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/eslint-flat-config-utils/-/eslint-flat-config-utils-0.2.5.tgz", + "integrity": "sha512-iO+yLZtC/LKgACerkpvsZ6NoRVB2sxT04mOpnNcEM1aTwKy+6TsT46PUvrML4y2uVBS6I67hRCd2JiKAPaL/Uw==", + "dependencies": { + "@types/eslint": "^8.56.10", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import-x": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import-x/-/eslint-plugin-import-x-0.5.1.tgz", + "integrity": "sha512-2JK8bbFOLes+gG6tgdnM8safCxMAj4u2wjX8X1BRFPfnY7Ct2hFYESoIcVwABX/DDcdpQFLGtKmzbNEWJZD9iQ==", + "dependencies": { + "@typescript-eslint/utils": "^7.4.0", + "debug": "^4.3.4", + "doctrine": "^3.0.0", + "eslint-import-resolver-node": "^0.3.9", + "get-tsconfig": "^4.7.3", + "is-glob": "^4.0.3", + "minimatch": "^9.0.3", + "semver": "^7.6.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "eslint": "^8.56.0 || ^9.0.0-0" + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "48.2.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.2.6.tgz", + "integrity": "sha512-GNk9jtpYmoEVeD/U6yYYmd6T8vSOoPs7CL8ZeX85iD8P3qifDdLQGze6+cw9boobDthmYnnxvIoHrhuSffj09g==", + "dependencies": { + "@es-joy/jsdoccomment": "~0.43.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.5.0", + "semver": "^7.6.1", + "spdx-expression-parse": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-regexp": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-regexp/-/eslint-plugin-regexp-2.6.0.tgz", + "integrity": "sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.9.1", + "comment-parser": "^1.4.0", + "jsdoc-type-pratt-parser": "^4.0.0", + "refa": "^0.12.1", + "regexp-ast-analysis": "^0.7.1", + "scslre": "^0.3.0" + }, + "engines": { + "node": "^18 || >=20" + }, + "peerDependencies": { + "eslint": ">=8.44.0" + } + }, + "node_modules/eslint-plugin-unicorn": { + "version": "53.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-53.0.0.tgz", + "integrity": "sha512-kuTcNo9IwwUCfyHGwQFOK/HjJAYzbODHN3wP0PgqbW+jbXqpNWxNVpVhj2tO9SixBwuAdmal8rVcWKBxwFnGuw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.5", + "@eslint-community/eslint-utils": "^4.4.0", + "@eslint/eslintrc": "^3.0.2", + "ci-info": "^4.0.0", + "clean-regexp": "^1.0.0", + "core-js-compat": "^3.37.0", + "esquery": "^1.5.0", + "indent-string": "^4.0.0", + "is-builtin-module": "^3.2.1", + "jsesc": "^3.0.2", + "pluralize": "^8.0.0", + "read-pkg-up": "^7.0.1", + "regexp-tree": "^0.1.27", + "regjsparser": "^0.10.0", + "semver": "^7.6.1", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=18.18" + }, + "funding": { + "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + }, + "peerDependencies": { + "eslint": ">=8.56.0" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/@eslint/eslintrc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", + "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.26.0.tgz", + "integrity": "sha512-eTvlxXgd4ijE1cdur850G6KalZqk65k1JKoOI2d1kT3hr8sPD07j1q98FRFdNnpxBELGPWxZmInxeHGF/GxtqQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "globals": "^13.24.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^6.0.15", + "semver": "^7.6.0", + "vue-eslint-parser": "^9.4.2", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-vue/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-vue/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-vue/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-typegen": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/eslint-typegen/-/eslint-typegen-0.2.4.tgz", + "integrity": "sha512-NQAsPiq7U8VT4Xue5JWu3/gP7O5M4M7OhF49Vpx3iuxEq6oyLmdVBFyB1u0QLiby7luGDHLrMl1wfqZClZU6eg==", + "dependencies": { + "@types/eslint": "^8.56.10", + "json-schema-to-typescript-lite": "^14.0.1", + "ohash": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "^8.45.0 || ^9.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", + "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "dev": true, + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/espree": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.0.1.tgz", + "integrity": "sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww==", + "dependencies": { + "acorn": "^8.11.3", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dev": true, + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dev": true, + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/externality": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/externality/-/externality-1.0.2.tgz", + "integrity": "sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==", + "dependencies": { + "enhanced-resolve": "^5.14.1", + "mlly": "^1.3.0", + "pathe": "^1.1.1", + "ufo": "^1.1.2" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extract-zip/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/extract-zip/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", + "dev": true, + "dependencies": { + "array-back": "^3.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/find-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz", + "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==", + "dependencies": { + "locate-path": "^7.2.0", + "path-exists": "^5.0.0", + "unicorn-magic": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==" + }, + "node_modules/floating-vue": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-5.2.2.tgz", + "integrity": "sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg==", + "peer": true, + "dependencies": { + "@floating-ui/dom": "~1.1.1", + "vue-resize": "^2.0.0-alpha.1" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.0", + "vue": "^3.2.0" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + } + } + }, + "node_modules/focus-trap": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", + "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", + "dependencies": { + "tabbable": "^6.2.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==", + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/fuse.js": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-7.0.0.tgz", + "integrity": "sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==", + "engines": { + "node": ">=10" + } + }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/generate-function": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "dependencies": { + "is-property": "^1.0.2" + } + }, + "node_modules/generic-pool": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.5.0.tgz", + "integrity": "sha512-dEkxmX+egB2o4NR80c/q+xzLLzLX+k68/K8xv81XprD+Sk7ZtP14VugeCz+fUwv5FzpWq40pPtAkzPRqT8ka9w==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-port-please": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", + "integrity": "sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==" + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz", + "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/get-uri": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", + "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", + "dependencies": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^6.0.2", + "debug": "^4.3.4", + "fs-extra": "^11.2.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/giget": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.3.tgz", + "integrity": "sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==", + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.2.3", + "defu": "^6.1.4", + "node-fetch-native": "^1.6.3", + "nypm": "^0.3.8", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "tar": "^6.2.0" + }, + "bin": { + "giget": "dist/cli.mjs" + } + }, + "node_modules/git-config-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-config-path/-/git-config-path-2.0.0.tgz", + "integrity": "sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/git-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", + "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", + "dependencies": { + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" + } + }, + "node_modules/git-url-parse": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz", + "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==", + "dependencies": { + "git-up": "^7.0.0" + } + }, + "node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", + "dependencies": { + "ini": "4.1.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globals": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.3.0.tgz", + "integrity": "sha512-cCdyVjIUVTtX8ZsPkq1oCsOsLmGIswqnjZYMJJTGaNApj1yHtLSymKhwH51ttirREn75z3p4k051clwg7rvNKA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", + "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", + "dependencies": { + "@sindresorhus/merge-streams": "^2.1.0", + "fast-glob": "^3.3.2", + "ignore": "^5.2.4", + "path-type": "^5.0.0", + "slash": "^5.1.0", + "unicorn-magic": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" + }, + "node_modules/gzip-size": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", + "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/h3": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.11.1.tgz", + "integrity": "sha512-AbaH6IDnZN6nmbnJOH72y3c5Wwh9P97soSVdGSBbcDACRdkC0FEWf25pzx4f/NuOCK6quHmW18yF2Wx+G4Zi1A==", + "dependencies": { + "cookie-es": "^1.0.0", + "crossws": "^0.2.2", + "defu": "^6.1.4", + "destr": "^2.0.3", + "iron-webcrypto": "^1.0.0", + "ohash": "^1.1.3", + "radix3": "^1.1.0", + "ufo": "^1.4.0", + "uncrypto": "^0.1.3", + "unenv": "^1.9.0" + } + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "peer": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==" + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "devOptional": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==" + }, + "node_modules/hosted-git-info": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", + "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.5.0.tgz", + "integrity": "sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==", + "dependencies": { + "deep-equal": "~1.0.1", + "http-errors": "~1.8.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-assert/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-assert/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-assert/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-shutdown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/http-shutdown/-/http-shutdown-1.2.2.tgz", + "integrity": "sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/http-signature": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz", + "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.14.1" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/httpxy": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.1.5.tgz", + "integrity": "sha512-hqLDO+rfststuyEUTWObQK6zHEEmZ/kaIP2/zclGGZn6X8h/ESTWg+WKecQ/e5k4nPswjzZD+q2VqZIbr15CoQ==" + }, + "node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "engines": { + "node": ">=14.18.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz", + "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==", + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/image-meta": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/image-meta/-/image-meta-0.2.0.tgz", + "integrity": "sha512-ZBGjl0ZMEMeOC3Ns0wUF/5UdUmr3qQhBSCniT0LxOgGGIRHiNFOkMtIHB7EOznRU47V2AxPgiVP+s+0/UCU0Hg==" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/inflection": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.13.4.tgz", + "integrity": "sha512-6I/HUDeYFfuNCVS3td055BaXBwKYuzw7K3ExVMStBowKo9oOAMJIXIHvdyR3iboTCp1b+1i5DSkIZTcwIktuDw==", + "engines": [ + "node >= 0.4.0" + ] + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", + "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ioredis": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.4.1.tgz", + "integrity": "sha512-2YZsvl7jopIa1gaePkeMtd9rAcSjOOjPtpcLlOeusyO+XH2SK5ZcT+UCrElPP+WVIInh2TzeI4XW9ENaSLVVHA==", + "dependencies": { + "@ioredis/commands": "^1.1.1", + "cluster-key-slot": "^1.1.0", + "debug": "^4.3.4", + "denque": "^2.1.0", + "lodash.defaults": "^4.2.0", + "lodash.isarguments": "^3.1.0", + "redis-errors": "^1.2.0", + "redis-parser": "^3.0.0", + "standard-as-callback": "^2.1.0" + }, + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ioredis" + } + }, + "node_modules/ioredis/node_modules/denque": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", + "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/iron-webcrypto": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.2.1.tgz", + "integrity": "sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==", + "funding": { + "url": "https://github.com/sponsors/brc-dd" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-bluebird": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-bluebird/-/is-bluebird-1.0.2.tgz", + "integrity": "sha512-PDRu1vVip5dGQg5tfn2qVCCyxbBYu5MhYUJwSfL/RoGBI97n1fxvilVazxzptZW0gcmsMH17H4EVZZI5E/RSeA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-installed-globally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-1.0.0.tgz", + "integrity": "sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==", + "dependencies": { + "global-directory": "^4.0.1", + "is-path-inside": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-installed-globally/node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-primitive": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-3.0.1.tgz", + "integrity": "sha512-GljRxhWvlCNRfZyORiH77FwdFwGcMO620o37EOYC0ORWdq+WYNVqW0w2Juzew4M+L81l6/QS3t5gkkihyRqv9w==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "node_modules/is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==" + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ssh": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", + "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", + "dependencies": { + "protocols": "^2.0.1" + } + }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is64bit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", + "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", + "dependencies": { + "system-architecture": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" + }, + "node_modules/jackspeak": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz", + "integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-beautify": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.1.tgz", + "integrity": "sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==", + "dev": true, + "dependencies": { + "config-chain": "^1.1.13", + "editorconfig": "^1.0.4", + "glob": "^10.3.3", + "js-cookie": "^3.0.5", + "nopt": "^7.2.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/js-beautify/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dev": true, + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", + "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-to-typescript-lite": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/json-schema-to-typescript-lite/-/json-schema-to-typescript-lite-14.0.1.tgz", + "integrity": "sha512-MhjvNC3MfEyYmKiC1rEzwDTCc22+hWU/2HKVfnklar4tifbkT8oZvvamEG1n550JeCmJ0V+2ly+5fF5K+lIExg==", + "dependencies": { + "@apidevtools/json-schema-ref-parser": "^11.6.0", + "@types/json-schema": "^7.0.15" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "node_modules/kareem": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz", + "integrity": "sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==" + }, + "node_modules/keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dependencies": { + "tsscmp": "1.0.6" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/knitwork": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.1.0.tgz", + "integrity": "sha512-oHnmiBUVHz1V+URE77PNot2lv3QiYU2zQf1JjOVkMt3YDKGbu8NAFr+c4mcNOhdsGrB/VpVbRwPwhiXrPhxQbw==" + }, + "node_modules/koa": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.3.tgz", + "integrity": "sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==", + "dependencies": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.9.0", + "debug": "^4.3.2", + "delegates": "^1.0.0", + "depd": "^2.0.0", + "destroy": "^1.0.4", + "encodeurl": "^1.0.2", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^2.0.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + }, + "engines": { + "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" + } + }, + "node_modules/koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==" + }, + "node_modules/koa-convert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-2.0.0.tgz", + "integrity": "sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==", + "dependencies": { + "co": "^4.6.0", + "koa-compose": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/koa-send": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz", + "integrity": "sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==", + "dependencies": { + "debug": "^4.1.1", + "http-errors": "^1.7.3", + "resolve-path": "^1.4.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/koa-send/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa-send/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa-send/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa-static": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz", + "integrity": "sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==", + "dependencies": { + "debug": "^3.1.0", + "koa-send": "^5.0.0" + }, + "engines": { + "node": ">= 7.6.0" + } + }, + "node_modules/koa-static/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/koa/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa/node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/koa/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==" + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/listhen": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.7.2.tgz", + "integrity": "sha512-7/HamOm5YD9Wb7CFgAZkKgVPA96WwhcTQoqtm2VTZGVbVVn3IWKRBTgrU7cchA3Q8k9iCsG8Osoi9GX4JsGM9g==", + "dependencies": { + "@parcel/watcher": "^2.4.1", + "@parcel/watcher-wasm": "^2.4.1", + "citty": "^0.1.6", + "clipboardy": "^4.0.0", + "consola": "^3.2.3", + "crossws": "^0.2.0", + "defu": "^6.1.4", + "get-port-please": "^3.1.2", + "h3": "^1.10.2", + "http-shutdown": "^1.2.2", + "jiti": "^1.21.0", + "mlly": "^1.6.1", + "node-forge": "^1.3.1", + "pathe": "^1.1.2", + "std-env": "^3.7.0", + "ufo": "^1.4.0", + "untun": "^0.1.3", + "uqr": "^0.1.2" + }, + "bin": { + "listen": "bin/listhen.mjs", + "listhen": "bin/listhen.mjs" + } + }, + "node_modules/load-tsconfig": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", + "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "node_modules/lodash.castarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz", + "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/long": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", + "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lru-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", + "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==", + "dev": true, + "dependencies": { + "es5-ext": "~0.10.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.10", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", + "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, + "node_modules/magic-string-ast": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/magic-string-ast/-/magic-string-ast-0.6.1.tgz", + "integrity": "sha512-eczKQUDaBpB/mcEqZZNGEUG1FQNsXCuk3uOrCpu6y7qTygIy6jnpqDa62j9MGKSoqlXhM1lCFQv1THuGDQtvUA==", + "dependencies": { + "magic-string": "^0.30.10" + }, + "engines": { + "node": ">=16.14.0" + } + }, + "node_modules/magicast": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.4.tgz", + "integrity": "sha512-TyDF/Pn36bBji9rWKHlZe+PZb6Mx5V8IHCSxk7X4aljM4e/vyDvZZYwHewdVaqiA0nb3ghfHU/6AUpDxWoER2Q==", + "dependencies": { + "@babel/parser": "^7.24.4", + "@babel/types": "^7.24.0", + "source-map-js": "^1.2.0" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memoizee": { + "version": "0.4.17", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.17.tgz", + "integrity": "sha512-DGqD7Hjpi/1or4F/aYAspXKNm5Yili0QDAFAY4QYvpqpgiY6+1jOfqpmByzjxbWd/T9mChbCArXAbDAsTm5oXA==", + "dev": true, + "dependencies": { + "d": "^1.0.2", + "es5-ext": "^0.10.64", + "es6-weak-map": "^2.0.3", + "event-emitter": "^0.3.5", + "is-promise": "^2.2.2", + "lru-queue": "^0.1.0", + "next-tick": "^1.1.0", + "timers-ext": "^0.1.7" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "node_modules/merge-deep": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz", + "integrity": "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==", + "dependencies": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-svg-data-uri": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", + "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==", + "bin": { + "mini-svg-data-uri": "cli.js" + } + }, + "node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==" + }, + "node_modules/mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha512-ALGF1Jt9ouehcaXaHhn6t1yGWRqGaHkPFndtFVHfZXOvkIZ/yoGaSi0AHVTafb3ZBGg4dr/bDwnaEKqCXzchMA==", + "dependencies": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha512-F0to7vbBSHP8E3l6dCjxNOLuSFAACIxFy3UehTUlG7svlXi37HHsDkyVcHo0Pq8QwrE+pXvWSVX3ZT1T9wAZ9g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mlly": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", + "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", + "dependencies": { + "acorn": "^8.11.3", + "pathe": "^1.1.2", + "pkg-types": "^1.1.0", + "ufo": "^1.5.3" + } + }, + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "engines": { + "node": "*" + } + }, + "node_modules/moment-timezone": { + "version": "0.5.45", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.45.tgz", + "integrity": "sha512-HIWmqA86KcmCAhnMAN0wuDOARV/525R2+lOLotuGFzn4HO+FH+/645z2wx0Dt3iDv6/p61SIvKnDstISainhLQ==", + "dependencies": { + "moment": "^2.29.4" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mongodb": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.4.tgz", + "integrity": "sha512-K5q8aBqEXMwWdVNh94UQTwZ6BejVbFhh1uB6c5FKtPE9eUMZPUO3sRZdgIEcHSrAWmxzpG/FeODDKL388sqRmw==", + "dependencies": { + "bl": "^2.2.1", + "bson": "^1.1.4", + "denque": "^1.4.1", + "optional-require": "^1.1.8", + "safe-buffer": "^5.1.2" + }, + "engines": { + "node": ">=4" + }, + "optionalDependencies": { + "saslprep": "^1.0.0" + }, + "peerDependenciesMeta": { + "aws4": { + "optional": true + }, + "bson-ext": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "mongodb-extjson": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/mongodb/node_modules/optional-require": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz", + "integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==", + "dependencies": { + "require-at": "^1.0.6" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mongoose": { + "version": "5.13.22", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.13.22.tgz", + "integrity": "sha512-p51k/c4X/MfqeQ3I1ranlDiggLzNumZrTDD9CeezHwZxt2/btf+YZD7MCe07RAY2NgFYVMayq6jMamw02Jmf9w==", + "dependencies": { + "@types/bson": "1.x || 4.0.x", + "@types/mongodb": "^3.5.27", + "bson": "^1.1.4", + "kareem": "2.3.2", + "mongodb": "3.7.4", + "mongoose-legacy-pluralize": "1.0.2", + "mpath": "0.8.4", + "mquery": "3.2.5", + "ms": "2.1.2", + "optional-require": "1.0.x", + "regexp-clone": "1.0.0", + "safe-buffer": "5.2.1", + "sift": "13.5.2", + "sliced": "1.0.1" + }, + "engines": { + "node": ">=4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose-legacy-pluralize": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz", + "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==", + "peerDependencies": { + "mongoose": "*" + } + }, + "node_modules/mpath": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz", + "integrity": "sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-3.2.5.tgz", + "integrity": "sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A==", + "dependencies": { + "bluebird": "3.5.1", + "debug": "3.1.0", + "regexp-clone": "^1.0.0", + "safe-buffer": "5.1.2", + "sliced": "1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/mquery/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/mquery/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/mrmime": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", + "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "devOptional": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/mysql2": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-3.10.0.tgz", + "integrity": "sha512-qx0mfWYt1DpTPkw8mAcHW/OwqqyNqBLBHvY5IjN8+icIYTjt6znrgYJ+gxqNNRpVknb5Wc/gcCM4XjbCR0j5tw==", + "dependencies": { + "denque": "^2.1.0", + "generate-function": "^2.3.1", + "iconv-lite": "^0.6.3", + "long": "^5.2.1", + "lru-cache": "^8.0.0", + "named-placeholders": "^1.1.3", + "seq-queue": "^0.0.5", + "sqlstring": "^2.3.2" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/mysql2/node_modules/denque": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", + "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/mysql2/node_modules/lru-cache": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-8.0.5.tgz", + "integrity": "sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==", + "engines": { + "node": ">=16.14" + } + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/named-placeholders": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz", + "integrity": "sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==", + "dependencies": { + "lru-cache": "^7.14.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/named-placeholders/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/nanoid": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.7.tgz", + "integrity": "sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "dev": true + }, + "node_modules/nitropack": { + "version": "2.9.6", + "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.9.6.tgz", + "integrity": "sha512-HP2PE0dREcDIBVkL8Zm6eVyrDd10/GI9hTL00PHvjUM8I9Y/2cv73wRDmxNyInfrx/CJKHATb2U/pQrqpzJyXA==", + "dependencies": { + "@cloudflare/kv-asset-handler": "^0.3.1", + "@netlify/functions": "^2.6.0", + "@rollup/plugin-alias": "^5.1.0", + "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-inject": "^5.0.5", + "@rollup/plugin-json": "^6.1.0", + "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-replace": "^5.0.5", + "@rollup/plugin-terser": "^0.4.4", + "@rollup/pluginutils": "^5.1.0", + "@types/http-proxy": "^1.17.14", + "@vercel/nft": "^0.26.4", + "archiver": "^7.0.1", + "c12": "^1.10.0", + "chalk": "^5.3.0", + "chokidar": "^3.6.0", + "citty": "^0.1.6", + "consola": "^3.2.3", + "cookie-es": "^1.1.0", + "croner": "^8.0.1", + "crossws": "^0.2.4", + "db0": "^0.1.4", + "defu": "^6.1.4", + "destr": "^2.0.3", + "dot-prop": "^8.0.2", + "esbuild": "^0.20.2", + "escape-string-regexp": "^5.0.0", + "etag": "^1.8.1", + "fs-extra": "^11.2.0", + "globby": "^14.0.1", + "gzip-size": "^7.0.0", + "h3": "^1.11.1", + "hookable": "^5.5.3", + "httpxy": "^0.1.5", + "ioredis": "^5.3.2", + "is-primitive": "^3.0.1", + "jiti": "^1.21.0", + "klona": "^2.0.6", + "knitwork": "^1.1.0", + "listhen": "^1.7.2", + "magic-string": "^0.30.8", + "mime": "^4.0.1", + "mlly": "^1.6.1", + "mri": "^1.2.0", + "node-fetch-native": "^1.6.4", + "ofetch": "^1.3.4", + "ohash": "^1.1.3", + "openapi-typescript": "^6.7.5", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "pretty-bytes": "^6.1.1", + "radix3": "^1.1.2", + "rollup": "^4.13.2", + "rollup-plugin-visualizer": "^5.12.0", + "scule": "^1.3.0", + "semver": "^7.6.0", + "serve-placeholder": "^2.0.1", + "serve-static": "^1.15.0", + "std-env": "^3.7.0", + "ufo": "^1.5.3", + "uncrypto": "^0.1.3", + "unctx": "^2.3.1", + "unenv": "^1.9.0", + "unimport": "^3.7.1", + "unstorage": "^1.10.2", + "unwasm": "^0.3.9" + }, + "bin": { + "nitro": "dist/cli/index.mjs", + "nitropack": "dist/cli/index.mjs" + }, + "engines": { + "node": "^16.11.0 || >=17.0.0" + }, + "peerDependencies": { + "xml2js": "^0.6.2" + }, + "peerDependenciesMeta": { + "xml2js": { + "optional": true + } + } + }, + "node_modules/nitropack/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/nitropack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nitropack/node_modules/mime": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mime/-/mime-4.0.3.tgz", + "integrity": "sha512-KgUb15Oorc0NEKPbvfa0wRU+PItIEZmiv+pyAO2i0oTIVTJhlzMclU7w4RXWQrSOVH5ax/p/CkIO7KI4OyFJTQ==", + "funding": [ + "https://github.com/sponsors/broofa" + ], + "bin": { + "mime": "bin/cli.js" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", + "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", + "engines": { + "node": "^16 || ^18 || >= 20" + } + }, + "node_modules/node-cron": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/node-cron/-/node-cron-3.0.3.tgz", + "integrity": "sha512-dOal67//nohNgYWb+nWmg5dkFdIwDm8EpeGYMekPMrngV3637lqnX0lbUcCtgibHTz6SEz7DAIjKvKDFYCnO1A==", + "dependencies": { + "uuid": "8.3.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch-native": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.4.tgz", + "integrity": "sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==" + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.1.0.tgz", + "integrity": "sha512-B4J5M1cABxPc5PwfjhbV5hoy2DP9p8lFXASnEN6hugXOa61416tnTZ29x9sSwAd0o99XNIcpvDDy1swAExsVKA==", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz", + "integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" + }, + "node_modules/node-telegram-bot-api": { + "version": "0.66.0", + "resolved": "https://registry.npmjs.org/node-telegram-bot-api/-/node-telegram-bot-api-0.66.0.tgz", + "integrity": "sha512-s4Hrg5q+VPl4/tJVG++pImxF6eb8tNJNj4KnDqAOKL6zGU34lo9RXmyAN158njwGN+v8hdNf8s9fWIYW9hPb5A==", + "dependencies": { + "@cypress/request": "^3.0.1", + "@cypress/request-promise": "^5.0.0", + "array.prototype.findindex": "^2.0.2", + "bl": "^1.2.3", + "debug": "^3.2.7", + "eventemitter3": "^3.0.0", + "file-type": "^3.9.0", + "mime": "^1.6.0", + "pump": "^2.0.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/node-telegram-bot-api/node_modules/bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/node-telegram-bot-api/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/normalize-package-data": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.1.tgz", + "integrity": "sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz", + "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==", + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz", + "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==", + "dependencies": { + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", + "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", + "dependencies": { + "ignore-walk": "^6.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.1.tgz", + "integrity": "sha512-Udm1f0l2nXb3wxDpKjfohwgdFUSV50UVwzEIpDXVsbDMXVIEF81a/i0UhuQbhrPMMmdiq3+YMFLFIRVLs3hxQw==", + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.0.1.tgz", + "integrity": "sha512-fLu9MTdZTlJAHUek/VLklE6EpIiP3VZpTiuN7OOMCt2Sd67NCpSEetMaxHHEZiZxllp8ZLsUpvbEszqTFEc+wA==", + "dependencies": { + "@npmcli/redact": "^2.0.0", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nuxi": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/nuxi/-/nuxi-3.11.1.tgz", + "integrity": "sha512-AW71TpxRHNg8MplQVju9tEFvXPvX42e0wPYknutSStDuAjV99vWTWYed4jxr/grk2FtKAuv2KvdJxcn2W59qyg==", + "bin": { + "nuxi": "bin/nuxi.mjs", + "nuxi-ng": "bin/nuxi.mjs", + "nuxt": "bin/nuxi.mjs", + "nuxt-cli": "bin/nuxi.mjs" + }, + "engines": { + "node": "^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/nuxt": { + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-3.11.2.tgz", + "integrity": "sha512-Be1d4oyFo60pdF+diBolYDcfNemoMYM3R8PDjhnGrs/w3xJoDH1YMUVWHXXY8WhSmYZI7dyBehx/6kTfGFliVA==", + "dependencies": { + "@nuxt/devalue": "^2.0.2", + "@nuxt/devtools": "^1.1.5", + "@nuxt/kit": "3.11.2", + "@nuxt/schema": "3.11.2", + "@nuxt/telemetry": "^2.5.3", + "@nuxt/ui-templates": "^1.3.2", + "@nuxt/vite-builder": "3.11.2", + "@unhead/dom": "^1.9.4", + "@unhead/ssr": "^1.9.4", + "@unhead/vue": "^1.9.4", + "@vue/shared": "^3.4.21", + "acorn": "8.11.3", + "c12": "^1.10.0", + "chokidar": "^3.6.0", + "cookie-es": "^1.1.0", + "defu": "^6.1.4", + "destr": "^2.0.3", + "devalue": "^4.3.2", + "esbuild": "^0.20.2", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fs-extra": "^11.2.0", + "globby": "^14.0.1", + "h3": "^1.11.1", + "hookable": "^5.5.3", + "jiti": "^1.21.0", + "klona": "^2.0.6", + "knitwork": "^1.1.0", + "magic-string": "^0.30.9", + "mlly": "^1.6.1", + "nitropack": "^2.9.6", + "nuxi": "^3.11.1", + "nypm": "^0.3.8", + "ofetch": "^1.3.4", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "radix3": "^1.1.2", + "scule": "^1.3.0", + "std-env": "^3.7.0", + "strip-literal": "^2.1.0", + "ufo": "^1.5.3", + "ultrahtml": "^1.5.3", + "uncrypto": "^0.1.3", + "unctx": "^2.3.1", + "unenv": "^1.9.0", + "unimport": "^3.7.1", + "unplugin": "^1.10.1", + "unplugin-vue-router": "^0.7.0", + "unstorage": "^1.10.2", + "untyped": "^1.4.2", + "vue": "^3.4.21", + "vue-bundle-renderer": "^2.0.0", + "vue-devtools-stub": "^0.1.0", + "vue-router": "^4.3.0" + }, + "bin": { + "nuxi": "bin/nuxt.mjs", + "nuxt": "bin/nuxt.mjs" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + }, + "peerDependencies": { + "@parcel/watcher": "^2.1.0", + "@types/node": "^14.18.0 || >=16.10.0" + }, + "peerDependenciesMeta": { + "@parcel/watcher": { + "optional": true + }, + "@types/node": { + "optional": true + } + } + }, + "node_modules/nuxt-icon": { + "version": "0.6.10", + "resolved": "https://registry.npmjs.org/nuxt-icon/-/nuxt-icon-0.6.10.tgz", + "integrity": "sha512-S9zHVA66ox4ZSpMWvCjqKZC4ZogC0s2z3vZs+M4D95YXGPEXwxDZu+insMKvkbe8+k7gvEmtTk0eq3KusKlxiw==", + "dependencies": { + "@iconify/collections": "^1.0.406", + "@iconify/vue": "^4.1.1", + "@nuxt/devtools-kit": "^1.1.1", + "@nuxt/kit": "^3.11.1" + } + }, + "node_modules/nuxt/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nuxt/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/nypm": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.3.8.tgz", + "integrity": "sha512-IGWlC6So2xv6V4cIDmoV0SwwWx7zLG086gyqkyumteH2fIgCAM4nDVFB2iDRszDvmdSVW9xb1N+2KjQ6C7d4og==", + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.2.3", + "execa": "^8.0.1", + "pathe": "^1.1.2", + "ufo": "^1.4.0" + }, + "bin": { + "nypm": "dist/cli.mjs" + }, + "engines": { + "node": "^14.16.0 || >=16.10.0" + } + }, + "node_modules/nypm/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/nypm/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nypm/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/nypm/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ofetch": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.4.tgz", + "integrity": "sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==", + "dependencies": { + "destr": "^2.0.3", + "node-fetch-native": "^1.6.3", + "ufo": "^1.5.3" + } + }, + "node_modules/ohash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-1.1.3.tgz", + "integrity": "sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==" + }, + "node_modules/open": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", + "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", + "dependencies": { + "default-browser": "^5.2.1", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "is-wsl": "^3.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/openapi-typescript": { + "version": "6.7.6", + "resolved": "https://registry.npmjs.org/openapi-typescript/-/openapi-typescript-6.7.6.tgz", + "integrity": "sha512-c/hfooPx+RBIOPM09GSxABOZhYPblDoyaGhqBkD/59vtpN21jEuWKDlM0KYTvqJVlSYjKs0tBcIdeXKChlSPtw==", + "dependencies": { + "ansi-colors": "^4.1.3", + "fast-glob": "^3.3.2", + "js-yaml": "^4.1.0", + "supports-color": "^9.4.0", + "undici": "^5.28.4", + "yargs-parser": "^21.1.1" + }, + "bin": { + "openapi-typescript": "bin/cli.js" + } + }, + "node_modules/openapi-typescript/node_modules/supports-color": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", + "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/optional-require": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz", + "integrity": "sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/ora/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pac-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", + "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "dependencies": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-resolver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", + "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", + "dependencies": { + "degenerator": "^5.0.0", + "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pacote": { + "version": "18.0.6", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz", + "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==", + "dependencies": { + "@npmcli/git": "^5.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/package-json": "^5.1.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^8.0.0", + "cacache": "^18.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^17.0.0", + "proc-log": "^4.0.0", + "promise-retry": "^2.0.1", + "sigstore": "^2.2.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "bin/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-git-config": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-3.0.0.tgz", + "integrity": "sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA==", + "dependencies": { + "git-config-path": "^2.0.0", + "ini": "^1.3.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parse-git-config/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/parse-gitignore": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-gitignore/-/parse-gitignore-2.0.0.tgz", + "integrity": "sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==", + "engines": { + "node": ">=14" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-json/node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/parse-path": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", + "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==", + "dependencies": { + "protocols": "^2.0.0" + } + }, + "node_modules/parse-url": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz", + "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==", + "dependencies": { + "parse-path": "^7.0.0" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "devOptional": true + }, + "node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-to-regexp": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", + "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==" + }, + "node_modules/path-type": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", + "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" + }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + }, + "node_modules/pexels": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/pexels/-/pexels-1.4.0.tgz", + "integrity": "sha512-akpLySokCtw9JHGx7yMavOIAHGVP5721rLUONR/cFKjWkLjUXsHrJ5jndMKss9mx7AEMZRXs7loxEb+vLJf6kA==", + "dependencies": { + "isomorphic-fetch": "^3.0.0" + } + }, + "node_modules/pg-connection-string": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.6.4.tgz", + "integrity": "sha512-v+Z7W/0EO707aNMaAEfiGnGL9sxxumwLl2fJvCQtMn9Fxsg+lPpPkdcyBSv/KFgpGdYkMfn+EI1Or2EHjpgLCA==" + }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-types": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.1.tgz", + "integrity": "sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==", + "dependencies": { + "confbox": "^0.1.7", + "mlly": "^1.7.0", + "pathe": "^1.1.2" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/portfinder": { + "version": "1.0.32", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz", + "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", + "dependencies": { + "async": "^2.6.4", + "debug": "^3.2.7", + "mkdirp": "^0.5.6" + }, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/portfinder/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-calc/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-colormin": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "colord": "^2.9.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-convert-values": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-comments": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-empty": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-merge-longhand": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", + "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^6.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", + "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", + "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", + "dependencies": { + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-params": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", + "dependencies": { + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", + "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-nested": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.11" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-nested/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-nesting": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-12.1.5.tgz", + "integrity": "sha512-N1NgI1PDCiAGWPTYrwqm8wpjv0bgDmkYHH72pNsqTCv9CObxjxftdYu6AKtGN+pnJa7FQjMm3v4sp8QJbFsYdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "dependencies": { + "@csstools/selector-resolve-nested": "^1.1.0", + "@csstools/selector-specificity": "^3.1.1", + "postcss-selector-parser": "^6.1.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-resolve-nested": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-1.1.0.tgz", + "integrity": "sha512-uWvSaeRcHyeNenKg8tp17EVDRkpflmdyvbE0DHo6D/GdBb6PDnCYYU6gRpXhtICMGMcahQmj2zGxwFM/WC8hCg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", + "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" + } + }, + "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-string": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-url": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-ordered-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", + "dependencies": { + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-svgo": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^3.2.0" + }, + "engines": { + "node": "^14 || ^16 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", + "dependencies": { + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-plugin-tailwindcss": { + "version": "0.5.14", + "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.5.14.tgz", + "integrity": "sha512-Puaz+wPUAhFp8Lo9HuciYKM2Y2XExESjeT+9NQoVFXZsPPnc9VYss2SpxdQ6vbatmt8/4+SN0oe0I1cPDABg9Q==", + "dev": true, + "engines": { + "node": ">=14.21.3" + }, + "peerDependencies": { + "@ianvs/prettier-plugin-sort-imports": "*", + "@prettier/plugin-pug": "*", + "@shopify/prettier-plugin-liquid": "*", + "@trivago/prettier-plugin-sort-imports": "*", + "@zackad/prettier-plugin-twig-melody": "*", + "prettier": "^3.0", + "prettier-plugin-astro": "*", + "prettier-plugin-css-order": "*", + "prettier-plugin-import-sort": "*", + "prettier-plugin-jsdoc": "*", + "prettier-plugin-marko": "*", + "prettier-plugin-organize-attributes": "*", + "prettier-plugin-organize-imports": "*", + "prettier-plugin-sort-imports": "*", + "prettier-plugin-style-order": "*", + "prettier-plugin-svelte": "*" + }, + "peerDependenciesMeta": { + "@ianvs/prettier-plugin-sort-imports": { + "optional": true + }, + "@prettier/plugin-pug": { + "optional": true + }, + "@shopify/prettier-plugin-liquid": { + "optional": true + }, + "@trivago/prettier-plugin-sort-imports": { + "optional": true + }, + "@zackad/prettier-plugin-twig-melody": { + "optional": true + }, + "prettier-plugin-astro": { + "optional": true + }, + "prettier-plugin-css-order": { + "optional": true + }, + "prettier-plugin-import-sort": { + "optional": true + }, + "prettier-plugin-jsdoc": { + "optional": true + }, + "prettier-plugin-marko": { + "optional": true + }, + "prettier-plugin-organize-attributes": { + "optional": true + }, + "prettier-plugin-organize-imports": { + "optional": true + }, + "prettier-plugin-sort-imports": { + "optional": true + }, + "prettier-plugin-style-order": { + "optional": true + }, + "prettier-plugin-svelte": { + "optional": true + } + } + }, + "node_modules/pretty-bytes": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz", + "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==", + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true + }, + "node_modules/protocols": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz", + "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==" + }, + "node_modules/proxy-agent": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", + "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.1", + "https-proxy-agent": "^7.0.3", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.1", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/puppeteer": { + "version": "22.10.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-22.10.0.tgz", + "integrity": "sha512-ZOkZd6a6t0BdKcWb0wAYHWQqCfdlN1PPnXOmg/XNrbo6gJhYWFX4qCNb6ahSn8TpAqBqLCoD4Q010F7GwOM7mA==", + "hasInstallScript": true, + "dependencies": { + "@puppeteer/browsers": "2.2.3", + "cosmiconfig": "9.0.0", + "devtools-protocol": "0.0.1286932", + "puppeteer-core": "22.10.0" + }, + "bin": { + "puppeteer": "lib/esm/puppeteer/node/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/puppeteer-core": { + "version": "22.10.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-22.10.0.tgz", + "integrity": "sha512-I54J4Vy4I07UHsgB1QSmuFoF7KNQjJWcvFBPhtY+ezMdBfwgGDr8dzYrJa11aPgP9kxIUHjhktcMmmfJkOAtTw==", + "dependencies": { + "@puppeteer/browsers": "2.2.3", + "chromium-bidi": "0.5.19", + "debug": "4.3.4", + "devtools-protocol": "0.0.1286932", + "ws": "8.17.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/puppeteer-extra": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/puppeteer-extra/-/puppeteer-extra-3.3.6.tgz", + "integrity": "sha512-rsLBE/6mMxAjlLd06LuGacrukP2bqbzKCLzV1vrhHFavqQE/taQ2UXv3H5P0Ls7nsrASa+6x3bDbXHpqMwq+7A==", + "dependencies": { + "@types/debug": "^4.1.0", + "debug": "^4.1.1", + "deepmerge": "^4.2.2" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "@types/puppeteer": "*", + "puppeteer": "*", + "puppeteer-core": "*" + }, + "peerDependenciesMeta": { + "@types/puppeteer": { + "optional": true + }, + "puppeteer": { + "optional": true + }, + "puppeteer-core": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin/-/puppeteer-extra-plugin-3.2.3.tgz", + "integrity": "sha512-6RNy0e6pH8vaS3akPIKGg28xcryKscczt4wIl0ePciZENGE2yoaQJNd17UiEbdmh5/6WW6dPcfRWT9lxBwCi2Q==", + "dependencies": { + "@types/debug": "^4.1.0", + "debug": "^4.1.1", + "merge-deep": "^3.0.1" + }, + "engines": { + "node": ">=9.11.2" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-adblocker": { + "version": "2.13.6", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-adblocker/-/puppeteer-extra-plugin-adblocker-2.13.6.tgz", + "integrity": "sha512-AftgnUZ1rg2RPe9RpX6rkYAxEohwp3iFeGIyjsAuTaIiw4VLZqOb1LSY8/S60vAxpeat60fbCajxoUetmLy4Dw==", + "dependencies": { + "@cliqz/adblocker-puppeteer": "1.23.8", + "debug": "^4.1.1", + "node-fetch": "^2.6.0", + "puppeteer-extra-plugin": "^3.2.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "puppeteer": "*", + "puppeteer-core": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "puppeteer": { + "optional": true + }, + "puppeteer-core": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-anonymize-ua": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-anonymize-ua/-/puppeteer-extra-plugin-anonymize-ua-2.4.6.tgz", + "integrity": "sha512-EasOjKpPYFn72Yk7/RXM2q/CDrdPzjTnx8GfHPrwVmhcnh8Ull1DnONP73KZFF2bdwhitaQ3zRZ0yI1yFM2rzQ==", + "dependencies": { + "debug": "^4.1.1", + "puppeteer-extra-plugin": "^3.2.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-block-resources": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-block-resources/-/puppeteer-extra-plugin-block-resources-2.4.3.tgz", + "integrity": "sha512-WLxkytm3Nn6D+3N8lFMIi9lL9lLA1mTRHZAflR+zDs9/d1oOYVy52pWPaiQaetOObgfHDpPlHBmzHE2Yhr3ZnQ==", + "dependencies": { + "debug": "^4.1.1", + "puppeteer-extra-plugin": "^3.2.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-recaptcha": { + "version": "3.6.8", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-recaptcha/-/puppeteer-extra-plugin-recaptcha-3.6.8.tgz", + "integrity": "sha512-AY2HG1ZFlSi4xs+Hy84LtRJ95DIfnbjR3Az64dJGVW8gr/hBAGEWRlXTMzea7YOmxO3Nc8Ak3CcUgjgp1gIu1w==", + "dependencies": { + "debug": "^4.1.1", + "merge-deep": "^3.0.2", + "puppeteer-extra-plugin": "^3.2.3" + }, + "engines": { + "node": ">=9.11.2" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-stealth": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.11.2.tgz", + "integrity": "sha512-bUemM5XmTj9i2ZerBzsk2AN5is0wHMNE6K0hXBzBXOzP5m5G3Wl0RHhiqKeHToe/uIH8AoZiGhc1tCkLZQPKTQ==", + "dependencies": { + "debug": "^4.1.1", + "puppeteer-extra-plugin": "^3.2.3", + "puppeteer-extra-plugin-user-preferences": "^2.4.1" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-user-data-dir": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-data-dir/-/puppeteer-extra-plugin-user-data-dir-2.4.1.tgz", + "integrity": "sha512-kH1GnCcqEDoBXO7epAse4TBPJh9tEpVEK/vkedKfjOVOhZAvLkHGc9swMs5ChrJbRnf8Hdpug6TJlEuimXNQ+g==", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^10.0.0", + "puppeteer-extra-plugin": "^3.2.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-user-data-dir/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/puppeteer-extra-plugin-user-preferences": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-preferences/-/puppeteer-extra-plugin-user-preferences-2.4.1.tgz", + "integrity": "sha512-i1oAZxRbc1bk8MZufKCruCEC3CCafO9RKMkkodZltI4OqibLFXF3tj6HZ4LZ9C5vCXZjYcDWazgtY69mnmrQ9A==", + "dependencies": { + "debug": "^4.1.1", + "deepmerge": "^4.2.2", + "puppeteer-extra-plugin": "^3.2.3", + "puppeteer-extra-plugin-user-data-dir": "^2.4.1" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, + "node_modules/qs": { + "version": "6.10.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz", + "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==" + }, + "node_modules/radix3": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.2.tgz", + "integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/rc9": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.2.tgz", + "integrity": "sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==", + "dependencies": { + "defu": "^6.1.4", + "destr": "^2.0.3" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/redis-errors": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz", + "integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/redis-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz", + "integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==", + "dependencies": { + "redis-errors": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/refa": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/refa/-/refa-0.12.1.tgz", + "integrity": "sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==", + "dependencies": { + "@eslint-community/regexpp": "^4.8.0" + }, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, + "node_modules/regexp-ast-analysis": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz", + "integrity": "sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==", + "dependencies": { + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.1" + }, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/regexp-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz", + "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw==" + }, + "node_modules/regexp-tree": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regjsparser": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.10.0.tgz", + "integrity": "sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/replace-in-file": { + "version": "6.3.5", + "resolved": "https://registry.npmjs.org/replace-in-file/-/replace-in-file-6.3.5.tgz", + "integrity": "sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==", + "dependencies": { + "chalk": "^4.1.2", + "glob": "^7.2.0", + "yargs": "^17.2.1" + }, + "bin": { + "replace-in-file": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/replace-in-file/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/replace-in-file/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/replace-in-file/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "peer": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request-promise-core": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", + "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", + "dependencies": { + "lodash": "^4.17.15" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "request": "^2.34" + } + }, + "node_modules/request/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "peer": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/request/node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "peer": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "peer": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "peer": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-path": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz", + "integrity": "sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==", + "dependencies": { + "http-errors": "~1.6.2", + "path-is-absolute": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/resolve-path/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/resolve-path/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/resolve-path/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/resolve-path/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/resolve-path/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/restore-cursor/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/restore-cursor/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/retry-as-promised": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-7.0.4.tgz", + "integrity": "sha512-XgmCoxKWkDofwH8WddD0w85ZfqYz+ZHlr5yo+3YUCfycWawU56T5ckWXsScsj5B8tqUcIG67DxXByo3VUgiAdA==" + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rollup": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-visualizer": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.12.0.tgz", + "integrity": "sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==", + "dependencies": { + "open": "^8.4.0", + "picomatch": "^2.3.1", + "source-map": "^0.7.4", + "yargs": "^17.5.1" + }, + "bin": { + "rollup-plugin-visualizer": "dist/bin/cli.js" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "rollup": "2.x || 3.x || 4.x" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/run-applescript": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", + "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/scslre": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/scslre/-/scslre-0.3.0.tgz", + "integrity": "sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==", + "dependencies": { + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.0", + "regexp-ast-analysis": "^0.7.0" + }, + "engines": { + "node": "^14.0.0 || >=16.0.0" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==" + }, + "node_modules/semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/seq-queue": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz", + "integrity": "sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==" + }, + "node_modules/sequelize": { + "version": "6.37.3", + "resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.37.3.tgz", + "integrity": "sha512-V2FTqYpdZjPy3VQrZvjTPnOoLm0KudCRXfGWp48QwhyPPp2yW8z0p0sCYZd/em847Tl2dVxJJ1DR+hF+O77T7A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/sequelize" + } + ], + "dependencies": { + "@types/debug": "^4.1.8", + "@types/validator": "^13.7.17", + "debug": "^4.3.4", + "dottie": "^2.0.6", + "inflection": "^1.13.4", + "lodash": "^4.17.21", + "moment": "^2.29.4", + "moment-timezone": "^0.5.43", + "pg-connection-string": "^2.6.1", + "retry-as-promised": "^7.0.4", + "semver": "^7.5.4", + "sequelize-pool": "^7.1.0", + "toposort-class": "^1.0.1", + "uuid": "^8.3.2", + "validator": "^13.9.0", + "wkx": "^0.5.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependenciesMeta": { + "ibm_db": { + "optional": true + }, + "mariadb": { + "optional": true + }, + "mysql2": { + "optional": true + }, + "oracledb": { + "optional": true + }, + "pg": { + "optional": true + }, + "pg-hstore": { + "optional": true + }, + "snowflake-sdk": { + "optional": true + }, + "sqlite3": { + "optional": true + }, + "tedious": { + "optional": true + } + } + }, + "node_modules/sequelize-auto-migrations": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sequelize-auto-migrations/-/sequelize-auto-migrations-1.0.3.tgz", + "integrity": "sha512-CTh8073gqrthit5xl/ls2lKPzUHzRP/GCY8z99+dlu27oOSmSiFv+NcNHJjmfZvLBSzfif8Nwp3FNtph09Gxew==", + "dev": true, + "dependencies": { + "async": "^2.5.1", + "command-line-args": "^5.0.2", + "deep-diff": "^0.3.8", + "js-beautify": "^1.8.9", + "lodash": "^4.17.11", + "object-hash": "^1.3.1", + "sequelize": "^4.42.0" + }, + "bin": { + "makemigration": "bin/makemigration.js", + "runmigration": "bin/runmigration.js" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/inflection": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz", + "integrity": "sha512-lRy4DxuIFWXlJU7ed8UiTJOSTqStqYdEb4CEbtXfNbkdj3nH1L+reUWiE10VWcJS2yR7tge8Z74pJjtBjNwj0w==", + "dev": true, + "engines": [ + "node >= 0.4.0" + ] + }, + "node_modules/sequelize-auto-migrations/node_modules/object-hash": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", + "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/retry-as-promised": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-2.3.2.tgz", + "integrity": "sha512-KZMPON7wEhqU4pyWzXw/Ti8NYTVk5+qQ5OfAq3+L/3gJ2Fv+YaLVHbFSK80XlIfI9WrdP8c73bDTrh14SvTSKw==", + "dev": true, + "dependencies": { + "bluebird": "^3.4.6", + "debug": "^2.6.9" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/retry-as-promised/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/retry-as-promised/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/sequelize-auto-migrations/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/sequelize": { + "version": "4.44.4", + "resolved": "https://registry.npmjs.org/sequelize/-/sequelize-4.44.4.tgz", + "integrity": "sha512-nkHmYkbwQK7uwpgW9VBalCBnQqQ8mslTdgcBthtJLORuPvAYRPlfkXZMVUU9TLLJt9CX+/y0MYg0DpcP6ywsEQ==", + "deprecated": "Please update to v6 or higher! A migration guide can be found here: https://sequelize.org/v6/manual/upgrade-to-v6.html", + "dev": true, + "dependencies": { + "bluebird": "^3.5.0", + "cls-bluebird": "^2.1.0", + "debug": "^3.1.0", + "depd": "^1.1.0", + "dottie": "^2.0.0", + "generic-pool": "3.5.0", + "inflection": "1.12.0", + "lodash": "^4.17.1", + "moment": "^2.20.0", + "moment-timezone": "^0.5.14", + "retry-as-promised": "^2.3.2", + "semver": "^5.5.0", + "terraformer-wkt-parser": "^1.1.2", + "toposort-class": "^1.0.1", + "uuid": "^3.2.1", + "validator": "^10.4.0", + "wkx": "^0.4.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/validator": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-10.11.0.tgz", + "integrity": "sha512-X/p3UZerAIsbBfN/IwahhYaBbY68EN/UQBWHtsbXGT5bfrH/p4NQzUCG1kF/rtKaNpnJ7jAu6NGTdSNtyNIXMw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/sequelize-auto-migrations/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/sequelize-cli": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/sequelize-cli/-/sequelize-cli-6.6.2.tgz", + "integrity": "sha512-V8Oh+XMz2+uquLZltZES6MVAD+yEnmMfwfn+gpXcDiwE3jyQygLt4xoI0zG8gKt6cRcs84hsKnXAKDQjG/JAgg==", + "dev": true, + "dependencies": { + "cli-color": "^2.0.3", + "fs-extra": "^9.1.0", + "js-beautify": "^1.14.5", + "lodash": "^4.17.21", + "resolve": "^1.22.1", + "umzug": "^2.3.0", + "yargs": "^16.2.0" + }, + "bin": { + "sequelize": "lib/sequelize", + "sequelize-cli": "lib/sequelize" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sequelize-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/sequelize-cli/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize-mig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/sequelize-mig/-/sequelize-mig-3.1.3.tgz", + "integrity": "sha512-mZJmMrZ3tsefsBrknwm4/AkfoGTUhIYvKmmPAgS+xCnDZh0whbJp+sgdiErrzaBnWB1fHNFH8/MJsVDfZFhvwA==", + "dependencies": { + "deep-diff": "^1.0.2", + "inquirer": "^8.0.0", + "object-hash": "^2.1.1", + "prettier": "^2.2.1", + "sequelize": "^6.4.0", + "yargs": "^16.2.0" + }, + "bin": { + "sequelize-mig": "bin/sequelize-mig.js" + }, + "engines": { + "node": ">=12.18.4" + } + }, + "node_modules/sequelize-mig/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/sequelize-mig/node_modules/deep-diff": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-1.0.2.tgz", + "integrity": "sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg==" + }, + "node_modules/sequelize-mig/node_modules/object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/sequelize-mig/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/sequelize-mig/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize-mig/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize-pool": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sequelize-pool/-/sequelize-pool-7.1.0.tgz", + "integrity": "sha512-G9c0qlIWQSK29pR/5U2JF5dDQeqqHRragoyahj/Nx4KOOQ3CPPfzxnfqFPCSB7x5UgjOgnZ61nSxz+fjDpRlJg==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-placeholder": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-2.0.1.tgz", + "integrity": "sha512-rUzLlXk4uPFnbEaIz3SW8VISTxMuONas88nYWjAWaM2W9VDbt9tyFOr3lq8RhVOFrT3XISoBw8vni5una8qMnQ==", + "dependencies": { + "defu": "^6.0.0" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==", + "dependencies": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha512-0u8i1NZ/mg0b+W3MGGw5I7+6Eib2nx72S/QvXa0hYjEkjTknYmEYQJwGu3mLC0BrhtJjtQafTkyRUQ75Kx0LVg==", + "dependencies": { + "is-buffer": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shiki": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.5.2.tgz", + "integrity": "sha512-fpPbuSaatinmdGijE7VYUD3hxLozR3ZZ+iAx8Iy2X6REmJGyF5hQl94SgmiUNTospq346nXUVZx0035dyGvIVw==", + "dependencies": { + "@shikijs/core": "1.5.2" + } + }, + "node_modules/shimmer": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", + "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==", + "dev": true + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sift": { + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz", + "integrity": "sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA==" + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/sigstore": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz", + "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==", + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/simple-git": { + "version": "3.24.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.24.0.tgz", + "integrity": "sha512-QqAKee9Twv+3k8IFOFfPB2hnk6as6Y6ACUpwCtQvRYBAes23Wv3SZlHVobAzqcE8gfsisCvPw3HGW3HYM+VYYw==", + "dependencies": { + "@kwsites/file-exists": "^1.1.1", + "@kwsites/promise-deferred": "^1.1.1", + "debug": "^4.3.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/steveukx/git-js?sponsor=1" + } + }, + "node_modules/sirv": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", + "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sliced": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", + "integrity": "sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==" + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/smob": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/smob/-/smob-1.5.0.tgz", + "integrity": "sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==" + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", + "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "dependencies": { + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-correct/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==" + }, + "node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==" + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/splitpanes": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-3.1.5.tgz", + "integrity": "sha512-r3Mq2ITFQ5a2VXLOy4/Sb2Ptp7OfEO8YIbhVJqJXoFc9hc5nTXXkCvtVDjIGbvC0vdE7tse+xTM9BMjsszP6bw==", + "funding": { + "url": "https://github.com/sponsors/antoniandre" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" + }, + "node_modules/sqlstring": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz", + "integrity": "sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" + }, + "node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/standard-as-callback": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", + "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==" + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==" + }, + "node_modules/stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/streamx": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", + "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", + "dependencies": { + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-similarity": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/string-similarity/-/string-similarity-4.0.4.tgz", + "integrity": "sha512-/q/8Q4Bl4ZKAPjj8WerIBJWALKkaPRfrvhfF8k/B23i4nzrlRj2/go1m90In7nG/3XDSbOo0+pu6RvCTM9RGMQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info." + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.0.tgz", + "integrity": "sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==", + "dependencies": { + "js-tokens": "^9.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.0.tgz", + "integrity": "sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==" + }, + "node_modules/stylehacks": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", + "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/stylehacks/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", + "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==" + }, + "node_modules/svgo": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz", + "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, + "node_modules/system-architecture": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", + "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, + "node_modules/tailwind-config-viewer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/tailwind-config-viewer/-/tailwind-config-viewer-2.0.2.tgz", + "integrity": "sha512-YkMEbWgvTyEp7J5S7qY9KGLHml6SLO8kQg4Q5xNM4tWJ+cFtSO/Rv2UKfYHYnE7UsY4Lb1LkHmNs3YSbU2mT2Q==", + "dependencies": { + "@koa/router": "^12.0.1", + "commander": "^6.0.0", + "fs-extra": "^9.0.1", + "koa": "^2.14.2", + "koa-static": "^5.0.0", + "open": "^7.0.4", + "portfinder": "^1.0.26", + "replace-in-file": "^6.1.0" + }, + "bin": { + "tailwind-config-viewer": "cli/index.js", + "tailwindcss-config-viewer": "cli/index.js" + }, + "engines": { + "node": ">=13" + }, + "peerDependencies": { + "tailwindcss": "1 || 2 || 2.0.1-compat || 3" + } + }, + "node_modules/tailwind-config-viewer/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/tailwind-config-viewer/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tailwind-config-viewer/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tailwind-config-viewer/node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tailwind-config-viewer/node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tailwind-merge": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.3.0.tgz", + "integrity": "sha512-vkYrLpIP+lgR0tQCG6AP7zZXCTLc1Lnv/CCRT3BqJ9CZ3ui2++GPaGb1x/ILsINIMSYqqvrpqjUFsMNLlW99EA==", + "dependencies": { + "@babel/runtime": "^7.24.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz", + "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.0", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/tailwindcss/node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/tailwindcss/node_modules/postcss-selector-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-fs": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.5.tgz", + "integrity": "sha512-JOgGAmZyMgbqpLwct7ZV8VzkEB6pxXFBVErLtb+XCOqzc6w1xiWKI9GVd6bwk68EX7eJ4DWmfXVmq8K2ziZTGg==", + "dependencies": { + "pump": "^3.0.0", + "tar-stream": "^3.1.5" + }, + "optionalDependencies": { + "bare-fs": "^2.1.1", + "bare-path": "^2.1.0" + } + }, + "node_modules/tar-fs/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/terraformer": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/terraformer/-/terraformer-1.0.12.tgz", + "integrity": "sha512-MokUp0+MFal4CmJDVL6VAO1bKegeXcBM2RnPVfqcFIp2IIv8EbPAjG0j/vEy/vuKB8NVMMSF2vfpVS/QLe4DBg==", + "deprecated": "terraformer is deprecated and no longer supported. Please use @terraformer/arcgis.", + "dev": true, + "engines": { + "node": ">=4.2.6" + }, + "optionalDependencies": { + "@types/geojson": "^7946.0.0 || ^1.0.0" + } + }, + "node_modules/terraformer-wkt-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/terraformer-wkt-parser/-/terraformer-wkt-parser-1.2.1.tgz", + "integrity": "sha512-+CJyNLWb3lJ9RsZMTM66BY0MT3yIo4l4l22Jd9CrZuwzk54fsu4Sc7zejuS9fCITTuTQy3p06d4MZMVI7v5wSg==", + "deprecated": "terraformer-wkt-parser is deprecated and no longer supported. Please use @terraformer/wkt.", + "dev": true, + "dependencies": { + "@types/geojson": "^1.0.0", + "terraformer": "~1.0.5" + }, + "engines": { + "node": ">=4.2.6" + } + }, + "node_modules/terser": { + "version": "5.31.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz", + "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "node_modules/timers-ext": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.8.tgz", + "integrity": "sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww==", + "dev": true, + "dependencies": { + "es5-ext": "^0.10.64", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==" + }, + "node_modules/tldts-core": { + "version": "5.7.112", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-5.7.112.tgz", + "integrity": "sha512-mutrEUgG2sp0e/MIAnv9TbSLR0IPbvmAImpzqul5O/HJ2XM1/I1sajchQ/fbj0fPdA31IiuWde8EUhfwyldY1Q==" + }, + "node_modules/tldts-experimental": { + "version": "5.7.112", + "resolved": "https://registry.npmjs.org/tldts-experimental/-/tldts-experimental-5.7.112.tgz", + "integrity": "sha512-Nq5qWN4OiLziAOOOEoSME7cZI4Hz8Srt+9q6cl8mZ5EAhCfmeE6l7K5XjuIKN+pySuGUvthE5aPiD185YU1/lg==", + "dependencies": { + "tldts-core": "^5.7.112" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/toposort-class": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toposort-class/-/toposort-class-1.0.1.tgz", + "integrity": "sha512-OsLcGGbYF3rMjPUf8oKktyvCiUxSbqMMS39m33MAjLTC1DVIH6x3WSt63/M77ihI09+Sdfk1AXvfhCEeUmC7mg==" + }, + "node_modules/totalist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "engines": { + "node": ">=0.6.x" + } + }, + "node_modules/tuf-js": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz", + "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==", + "dependencies": { + "@tufjs/models": "2.0.1", + "debug": "^4.3.4", + "make-fetch-happen": "^13.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" + }, + "node_modules/type": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", + "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ufo": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.3.tgz", + "integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==" + }, + "node_modules/ultrahtml": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.3.tgz", + "integrity": "sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==" + }, + "node_modules/umzug": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/umzug/-/umzug-2.3.0.tgz", + "integrity": "sha512-Z274K+e8goZK8QJxmbRPhl89HPO1K+ORFtm6rySPhFKfKc5GHhqdzD0SGhSWHkzoXasqJuItdhorSvY7/Cgflw==", + "dev": true, + "dependencies": { + "bluebird": "^3.7.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/umzug/node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/unconfig": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/unconfig/-/unconfig-0.3.13.tgz", + "integrity": "sha512-N9Ph5NC4+sqtcOjPfHrRcHekBCadCXWTBzp2VYYbySOHW0PfD9XLCeXshTXjkPYwLrBr9AtSeU0CZmkYECJhng==", + "peer": true, + "dependencies": { + "@antfu/utils": "^0.7.7", + "defu": "^6.1.4", + "jiti": "^1.21.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/uncrypto": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", + "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==" + }, + "node_modules/unctx": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unctx/-/unctx-2.3.1.tgz", + "integrity": "sha512-PhKke8ZYauiqh3FEMVNm7ljvzQiph0Mt3GBRve03IJm7ukfaON2OBK795tLwhbyfzknuRRkW0+Ze+CQUmzOZ+A==", + "dependencies": { + "acorn": "^8.8.2", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.0", + "unplugin": "^1.3.1" + } + }, + "node_modules/unctx/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/undici": { + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + }, + "node_modules/unenv": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.9.0.tgz", + "integrity": "sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==", + "dependencies": { + "consola": "^3.2.3", + "defu": "^6.1.3", + "mime": "^3.0.0", + "node-fetch-native": "^1.6.1", + "pathe": "^1.1.1" + } + }, + "node_modules/unenv/node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/unhead": { + "version": "1.9.11", + "resolved": "https://registry.npmjs.org/unhead/-/unhead-1.9.11.tgz", + "integrity": "sha512-AoX0hOBrpYM5ctX3rNPaKeHkhybIMrrirb+NlonRBMHy/YkodO5m6mretYEe17bu9mQoeU2rnEWRm36MXtG4OQ==", + "dependencies": { + "@unhead/dom": "1.9.11", + "@unhead/schema": "1.9.11", + "@unhead/shared": "1.9.11", + "hookable": "^5.5.3" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.7.2.tgz", + "integrity": "sha512-91mxcZTadgXyj3lFWmrGT8GyoRHWuE5fqPOjg5RVtF6vj+OfM5G6WCzXjuYtSgELE5ggB34RY4oiCSEP8I3AHw==", + "dependencies": { + "@rollup/pluginutils": "^5.1.0", + "acorn": "^8.11.3", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.2", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.10", + "mlly": "^1.7.0", + "pathe": "^1.1.2", + "pkg-types": "^1.1.1", + "scule": "^1.3.0", + "strip-literal": "^2.1.0", + "unplugin": "^1.10.1" + } + }, + "node_modules/unimport/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unocss": { + "version": "0.60.3", + "resolved": "https://registry.npmjs.org/unocss/-/unocss-0.60.3.tgz", + "integrity": "sha512-pUBbpgGRKCa6oB/LrGEFBWP2/2E1ZOY8XO7aVJKo2x10rqLS8tGykn1VoBUgbGJsv/8W8tskTVz+RFbCyKP+kA==", + "peer": true, + "dependencies": { + "@unocss/astro": "0.60.3", + "@unocss/cli": "0.60.3", + "@unocss/core": "0.60.3", + "@unocss/extractor-arbitrary-variants": "0.60.3", + "@unocss/postcss": "0.60.3", + "@unocss/preset-attributify": "0.60.3", + "@unocss/preset-icons": "0.60.3", + "@unocss/preset-mini": "0.60.3", + "@unocss/preset-tagify": "0.60.3", + "@unocss/preset-typography": "0.60.3", + "@unocss/preset-uno": "0.60.3", + "@unocss/preset-web-fonts": "0.60.3", + "@unocss/preset-wind": "0.60.3", + "@unocss/reset": "0.60.3", + "@unocss/transformer-attributify-jsx": "0.60.3", + "@unocss/transformer-attributify-jsx-babel": "0.60.3", + "@unocss/transformer-compile-class": "0.60.3", + "@unocss/transformer-directives": "0.60.3", + "@unocss/transformer-variant-group": "0.60.3", + "@unocss/vite": "0.60.3" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@unocss/webpack": "0.60.3", + "vite": "^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "@unocss/webpack": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/unplugin": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.10.1.tgz", + "integrity": "sha512-d6Mhq8RJeGA8UfKCu54Um4lFA0eSaRa3XxdAJg8tIdxbu1ubW0hBCZUL7yI2uGyYCRndvbK8FLHzqy2XKfeMsg==", + "dependencies": { + "acorn": "^8.11.3", + "chokidar": "^3.6.0", + "webpack-sources": "^3.2.3", + "webpack-virtual-modules": "^0.6.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/unplugin-vue-router": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/unplugin-vue-router/-/unplugin-vue-router-0.7.0.tgz", + "integrity": "sha512-ddRreGq0t5vlSB7OMy4e4cfU1w2AwBQCwmvW3oP/0IHQiokzbx4hd3TpwBu3eIAFVuhX2cwNQwp1U32UybTVCw==", + "dependencies": { + "@babel/types": "^7.22.19", + "@rollup/pluginutils": "^5.0.4", + "@vue-macros/common": "^1.8.0", + "ast-walker-scope": "^0.5.0", + "chokidar": "^3.5.3", + "fast-glob": "^3.3.1", + "json5": "^2.2.3", + "local-pkg": "^0.4.3", + "mlly": "^1.4.2", + "pathe": "^1.1.1", + "scule": "^1.0.0", + "unplugin": "^1.5.0", + "yaml": "^2.3.2" + }, + "peerDependencies": { + "vue-router": "^4.1.0" + }, + "peerDependenciesMeta": { + "vue-router": { + "optional": true + } + } + }, + "node_modules/unplugin-vue-router/node_modules/local-pkg": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", + "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unstorage": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.10.2.tgz", + "integrity": "sha512-cULBcwDqrS8UhlIysUJs2Dk0Mmt8h7B0E6mtR+relW9nZvsf/u4SkAYyNliPiPW7XtFNb5u3IUMkxGxFTTRTgQ==", + "dependencies": { + "anymatch": "^3.1.3", + "chokidar": "^3.6.0", + "destr": "^2.0.3", + "h3": "^1.11.1", + "listhen": "^1.7.2", + "lru-cache": "^10.2.0", + "mri": "^1.2.0", + "node-fetch-native": "^1.6.2", + "ofetch": "^1.3.3", + "ufo": "^1.4.0" + }, + "peerDependencies": { + "@azure/app-configuration": "^1.5.0", + "@azure/cosmos": "^4.0.0", + "@azure/data-tables": "^13.2.2", + "@azure/identity": "^4.0.1", + "@azure/keyvault-secrets": "^4.8.0", + "@azure/storage-blob": "^12.17.0", + "@capacitor/preferences": "^5.0.7", + "@netlify/blobs": "^6.5.0 || ^7.0.0", + "@planetscale/database": "^1.16.0", + "@upstash/redis": "^1.28.4", + "@vercel/kv": "^1.0.1", + "idb-keyval": "^6.2.1", + "ioredis": "^5.3.2" + }, + "peerDependenciesMeta": { + "@azure/app-configuration": { + "optional": true + }, + "@azure/cosmos": { + "optional": true + }, + "@azure/data-tables": { + "optional": true + }, + "@azure/identity": { + "optional": true + }, + "@azure/keyvault-secrets": { + "optional": true + }, + "@azure/storage-blob": { + "optional": true + }, + "@capacitor/preferences": { + "optional": true + }, + "@netlify/blobs": { + "optional": true + }, + "@planetscale/database": { + "optional": true + }, + "@upstash/redis": { + "optional": true + }, + "@vercel/kv": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "ioredis": { + "optional": true + } + } + }, + "node_modules/unstorage/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/untun": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.3.tgz", + "integrity": "sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==", + "dependencies": { + "citty": "^0.1.5", + "consola": "^3.2.3", + "pathe": "^1.1.1" + }, + "bin": { + "untun": "bin/untun.mjs" + } + }, + "node_modules/untyped": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/untyped/-/untyped-1.4.2.tgz", + "integrity": "sha512-nC5q0DnPEPVURPhfPQLahhSTnemVtPzdx7ofiRxXpOB2SYnb3MfdU3DVGyJdS8Lx+tBWeAePO8BfU/3EgksM7Q==", + "dependencies": { + "@babel/core": "^7.23.7", + "@babel/standalone": "^7.23.8", + "@babel/types": "^7.23.6", + "defu": "^6.1.4", + "jiti": "^1.21.0", + "mri": "^1.2.0", + "scule": "^1.2.0" + }, + "bin": { + "untyped": "dist/cli.mjs" + } + }, + "node_modules/unwasm": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/unwasm/-/unwasm-0.3.9.tgz", + "integrity": "sha512-LDxTx/2DkFURUd+BU1vUsF/moj0JsoTvl+2tcg2AUOiEzVturhGGx17/IMgGvKUYdZwr33EJHtChCJuhu9Ouvg==", + "dependencies": { + "knitwork": "^1.0.0", + "magic-string": "^0.30.8", + "mlly": "^1.6.1", + "pathe": "^1.1.2", + "pkg-types": "^1.0.3", + "unplugin": "^1.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", + "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uqr": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/uqr/-/uqr-0.1.2.tgz", + "integrity": "sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/urlpattern-polyfill": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-8.0.2.tgz", + "integrity": "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-license/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/validator": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/verror/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/vite": { + "version": "5.2.12", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.12.tgz", + "integrity": "sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==", + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-hot-client": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/vite-hot-client/-/vite-hot-client-0.2.3.tgz", + "integrity": "sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0" + } + }, + "node_modules/vite-node": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.6.0.tgz", + "integrity": "sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite-plugin-checker": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.6.4.tgz", + "integrity": "sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "ansi-escapes": "^4.3.0", + "chalk": "^4.1.1", + "chokidar": "^3.5.1", + "commander": "^8.0.0", + "fast-glob": "^3.2.7", + "fs-extra": "^11.1.0", + "npm-run-path": "^4.0.1", + "semver": "^7.5.0", + "strip-ansi": "^6.0.0", + "tiny-invariant": "^1.1.0", + "vscode-languageclient": "^7.0.0", + "vscode-languageserver": "^7.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-uri": "^3.0.2" + }, + "engines": { + "node": ">=14.16" + }, + "peerDependencies": { + "eslint": ">=7", + "meow": "^9.0.0", + "optionator": "^0.9.1", + "stylelint": ">=13", + "typescript": "*", + "vite": ">=2.0.0", + "vls": "*", + "vti": "*", + "vue-tsc": ">=1.3.9" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "meow": { + "optional": true + }, + "optionator": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vls": { + "optional": true + }, + "vti": { + "optional": true + }, + "vue-tsc": { + "optional": true + } + } + }, + "node_modules/vite-plugin-checker/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/vite-plugin-checker/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/vite-plugin-inspect": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.8.4.tgz", + "integrity": "sha512-G0N3rjfw+AiiwnGw50KlObIHYWfulVwaCBUBLh2xTW9G1eM9ocE5olXkEYUbwyTmX+azM8duubi+9w5awdCz+g==", + "dependencies": { + "@antfu/utils": "^0.7.7", + "@rollup/pluginutils": "^5.1.0", + "debug": "^4.3.4", + "error-stack-parser-es": "^0.1.1", + "fs-extra": "^11.2.0", + "open": "^10.1.0", + "perfect-debounce": "^1.0.0", + "picocolors": "^1.0.0", + "sirv": "^2.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + } + } + }, + "node_modules/vite-plugin-vue-inspector": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/vite-plugin-vue-inspector/-/vite-plugin-vue-inspector-5.1.2.tgz", + "integrity": "sha512-M+yH2LlQtVNzJAljQM+61CqDXBvHim8dU5ImGaQuwlo13tMDHue5D7IC20YwDJuWDODiYc/cZBUYspVlyPf2vQ==", + "dependencies": { + "@babel/core": "^7.23.0", + "@babel/plugin-proposal-decorators": "^7.23.0", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.22.15", + "@vue/babel-plugin-jsx": "^1.1.5", + "@vue/compiler-dom": "^3.3.4", + "kolorist": "^1.8.0", + "magic-string": "^0.30.4" + }, + "peerDependencies": { + "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0" + } + }, + "node_modules/vscode-jsonrpc": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", + "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", + "engines": { + "node": ">=8.0.0 || >=10.0.0" + } + }, + "node_modules/vscode-languageclient": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", + "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "dependencies": { + "minimatch": "^3.0.4", + "semver": "^7.3.4", + "vscode-languageserver-protocol": "3.16.0" + }, + "engines": { + "vscode": "^1.52.0" + } + }, + "node_modules/vscode-languageclient/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/vscode-languageclient/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/vscode-languageserver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", + "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "dependencies": { + "vscode-languageserver-protocol": "3.16.0" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", + "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", + "dependencies": { + "vscode-jsonrpc": "6.0.0", + "vscode-languageserver-types": "3.16.0" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz", + "integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" + }, + "node_modules/vscode-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" + }, + "node_modules/vue": { + "version": "3.4.27", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.27.tgz", + "integrity": "sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==", + "dependencies": { + "@vue/compiler-dom": "3.4.27", + "@vue/compiler-sfc": "3.4.27", + "@vue/runtime-dom": "3.4.27", + "@vue/server-renderer": "3.4.27", + "@vue/shared": "3.4.27" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-bundle-renderer": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/vue-bundle-renderer/-/vue-bundle-renderer-2.1.0.tgz", + "integrity": "sha512-uZ+5ZJdZ/b43gMblWtcpikY6spJd0nERaM/1RtgioXNfWFbjKlUwrS8HlrddN6T2xtptmOouWclxLUkpgcVX3Q==", + "dependencies": { + "ufo": "^1.5.3" + } + }, + "node_modules/vue-devtools-stub": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz", + "integrity": "sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ==" + }, + "node_modules/vue-eslint-parser": { + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.2.tgz", + "integrity": "sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==", + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/vue-eslint-parser/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/vue-observe-visibility": { + "version": "2.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/vue-observe-visibility/-/vue-observe-visibility-2.0.0-alpha.1.tgz", + "integrity": "sha512-flFbp/gs9pZniXR6fans8smv1kDScJ8RS7rEpMjhVabiKeq7Qz3D9+eGsypncjfIyyU84saU88XZ0zjbD6Gq/g==", + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-resize": { + "version": "2.0.0-alpha.1", + "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-2.0.0-alpha.1.tgz", + "integrity": "sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==", + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-router": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.3.2.tgz", + "integrity": "sha512-hKQJ1vDAZ5LVkKEnHhmm1f9pMiWIBNGF5AwU67PdH7TyXCj/a4hTccuUuYCAMgJK6rO/NVYtQIEN3yL8CECa7Q==", + "dependencies": { + "@vue/devtools-api": "^6.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "devOptional": true, + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "devOptional": true, + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-virtual-scroller": { + "version": "2.0.0-beta.8", + "resolved": "https://registry.npmjs.org/vue-virtual-scroller/-/vue-virtual-scroller-2.0.0-beta.8.tgz", + "integrity": "sha512-b8/f5NQ5nIEBRTNi6GcPItE4s7kxNHw2AIHLtDp+2QvqdTjVN0FgONwX9cr53jWRgnu+HRLPaWDOR2JPI5MTfQ==", + "dependencies": { + "mitt": "^2.1.0", + "vue-observe-visibility": "^2.0.0-alpha.1", + "vue-resize": "^2.0.0-alpha.1" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-virtual-scroller/node_modules/mitt": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-2.1.0.tgz", + "integrity": "sha512-ILj2TpLiysu2wkBbWjAmww7TkZb65aiQO+DkVdUTBpBXq+MHYiETENkKFMtsJZX1Lf4pe4QOrTSjIfUwN5lRdg==" + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.1.tgz", + "integrity": "sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==" + }, + "node_modules/whatwg-fetch": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", + "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yaml": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", + "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yauzl/node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "engines": { + "node": "*" + } + }, + "node_modules/ylru": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.4.0.tgz", + "integrity": "sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zhead": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/zhead/-/zhead-2.2.4.tgz", + "integrity": "sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==", + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + } + }, + "node_modules/zip-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", + "integrity": "sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==", + "dependencies": { + "archiver-utils": "^5.0.0", + "compress-commons": "^6.0.2", + "readable-stream": "^4.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/zip-stream/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/zip-stream/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/zip-stream/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/zod": { + "version": "3.22.4", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", + "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..8fc3988 --- /dev/null +++ b/package.json @@ -0,0 +1,55 @@ +{ + "name": "nuxt-app", + "private": true, + "type": "module", + "scripts": { + "build": "nuxt build", + "dev": "npm install && nuxt dev", + "generate": "nuxt generate", + "preview": "nuxt preview", + "postinstall": "nuxt prepare", + "lint": "eslint .", + "start": "node .output/server/index.mjs" + }, + "dependencies": { + "@nuxt/eslint": "^0.3.12", + "@nuxt/kit": "^3.11.2", + "@nuxt/ui": "^2.14.2", + "@rollup/plugin-commonjs": "^25.0.8", + "@rollup/plugin-node-resolve": "^15.2.3", + "axios": "^0.21.1", + "cheerio": "^1.0.0-rc.10", + "d2l-intl": "^2.1.0", + "fuse.js": "^7.0.0", + "mongoose": "^5.12.3", + "mysql2": "^3.10.0", + "node-cron": "^3.0.0", + "node-telegram-bot-api": "^0.66.0", + "nuxt": "^3.11.1", + "pexels": "^1.4.0", + "puppeteer": "^22.10.0", + "puppeteer-extra": "^3.3.6", + "puppeteer-extra-plugin-adblocker": "^2.13.6", + "puppeteer-extra-plugin-anonymize-ua": "^2.4.6", + "puppeteer-extra-plugin-block-resources": "^2.4.3", + "puppeteer-extra-plugin-recaptcha": "^3.6.8", + "puppeteer-extra-plugin-stealth": "^2.11.2", + "sequelize": "^6.37.3", + "sequelize-mig": "^3.1.3", + "string-similarity": "^4.0.4", + "vue": "^3.4.21", + "vue-router": "^4.3.0" + }, + "devDependencies": { + "@nuxtjs/tailwindcss": "^6.11.4", + "@types/cheerio": "^0.22.35", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "prettier": "^3.2.5", + "prettier-plugin-tailwindcss": "^0.5.12", + "sequelize-auto-migrations": "^1.0.3", + "sequelize-cli": "^6.6.2", + "typescript": "^5.4.5", + "vue-tsc": "^1.8.27" + } +} diff --git a/pages/index.vue b/pages/index.vue new file mode 100644 index 0000000..070f582 --- /dev/null +++ b/pages/index.vue @@ -0,0 +1,25 @@ + + + diff --git a/pages/list.vue b/pages/list.vue new file mode 100644 index 0000000..56bad08 --- /dev/null +++ b/pages/list.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/pages/parse.vue b/pages/parse.vue new file mode 100644 index 0000000..fd4acc6 --- /dev/null +++ b/pages/parse.vue @@ -0,0 +1,50 @@ + + + + + diff --git a/project.zip b/project.zip new file mode 100644 index 0000000000000000000000000000000000000000..5b37f4aebb88731195fea4d7a3e492215067049a GIT binary patch literal 174553 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%0Di_MYyLzLAGewCEzw$ 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 { + try { + const candidateHouses = await House.findAll(); + + const construeHouseCommandHandler = await ConstrueHouseCommandHandler.create( + ConstrueHouseCommand.create(candidateHouses) + ); + + return { success: true, data: construeHouseCommandHandler }; + } catch (error) { + console.error("Error listing houses:", error); + return { success: false, message: error.message }; + } + }); \ No newline at end of file diff --git a/server/api/house/list.get.ts b/server/api/house/list.get.ts new file mode 100644 index 0000000..655a32e --- /dev/null +++ b/server/api/house/list.get.ts @@ -0,0 +1,13 @@ +import { Property } from "../../db/mysql/db.config"; +import { groupSimilarProperties } from "../../services/fusejs/filterProperties"; + +export default defineEventHandler(async (event) => { + try { + const candidateProperties = await Property.findAll(); + const properties = groupSimilarProperties(candidateProperties); + return { success: true, properties }; + } catch (error) { + console.error("Error listing properties:", error); + return { success: false, message: error.message }; + } +}); diff --git a/server/api/house/parse.get.ts b/server/api/house/parse.get.ts new file mode 100644 index 0000000..0eefcf1 --- /dev/null +++ b/server/api/house/parse.get.ts @@ -0,0 +1,12 @@ +import { Property } from "../../db/mysql/db.config"; + +export default defineEventHandler(async (event) => { + try { + const body = await readBody(event); + const newProperty = await Property.create(body); + return { success: true, property: newProperty }; + } catch (error) { + console.error("Error creating property:", error); + return { success: false, message: error.message }; + } +}); diff --git a/server/application/command/house/HouseCommand.ts b/server/application/command/house/HouseCommand.ts new file mode 100644 index 0000000..684f8ce --- /dev/null +++ b/server/application/command/house/HouseCommand.ts @@ -0,0 +1,100 @@ +class CreateHouseCommand { + + private _id : string; + private _title : string; + private _url : string; + private _neighborhood: string; + private _area : string; + private _rooms : string; + private _price : string; + private _description : string; + private _pic : string; + private _baths : string; + private _level : string; + private _phone : string; + + + private constructor() { + return this; + } + + public static create( + id : string, + title : string, + url : string, + neighborhood: string, + area : string, + rooms : string, + price : string, + description : string, + pic : string, + baths : string, + level : string, + phone : string + ) { + const createHouseCommand = new CreateHouseCommand(); + createHouseCommand._id = id; + createHouseCommand._title = title; + createHouseCommand._url = url; + createHouseCommand._neighborhood = neighborhood; + createHouseCommand._area = area; + createHouseCommand._rooms = rooms; + createHouseCommand._price = price; + createHouseCommand._description = description; + createHouseCommand._pic = pic; + createHouseCommand._baths = baths; + createHouseCommand._level = level; + createHouseCommand._phone = phone; + + return createHouseCommand; + } + + public id() { + return this._id; + } + + public title() { + return this._title; + } + + public url() { + return this._url; + } + + public neighborhood() { + return this._neighborhood; + } + + public area() { + return this._area; + } + + public rooms() { + return this._rooms; + } + + public price() { + return this._price; + } + + public description() { + return this._description; + } + + public pic() { + return this._pic; + } + + public baths() { + return this._baths; + } + + public level() { + return this._level; + } + + public phone() { + return this._phone; + } + +} \ No newline at end of file diff --git a/server/application/command/house/construeHouseCommand.ts b/server/application/command/house/construeHouseCommand.ts new file mode 100644 index 0000000..2b5afe3 --- /dev/null +++ b/server/application/command/house/construeHouseCommand.ts @@ -0,0 +1,22 @@ +export class ConstrueHouseCommand { + + private _rawHouseList: object; + + private constructor() { + return this; + } + + public static create( + rawHouseList: object, + ) { + const construeHouseCommand = new ConstrueHouseCommand(); + construeHouseCommand._rawHouseList = rawHouseList; + + return construeHouseCommand; + } + + public rawHouseList() { + return this._rawHouseList; + } + +} \ No newline at end of file diff --git a/server/application/commandHandler/house/construeHouseCommandHandler.ts b/server/application/commandHandler/house/construeHouseCommandHandler.ts new file mode 100644 index 0000000..af4473c --- /dev/null +++ b/server/application/commandHandler/house/construeHouseCommandHandler.ts @@ -0,0 +1,173 @@ +import { Op, sequelize, House as Hou } from "../../../db/mysql/db.config"; +import { House } from "../../../domain/house"; +import type { ConstrueHouseCommand } from "../../command/house/construeHouseCommand"; + +export class ConstrueHouseCommandHandler { + private constructor() {} + + public static async create(construeHouseCommand: ConstrueHouseCommand) { + const houseCandidates: House[] = []; + let i = 0; + + construeHouseCommand.rawHouseList().forEach((houseCandidate: object) => { + houseCandidates.push( + House.create( + `${++i}`, + houseCandidate.title, + houseCandidate.url, + houseCandidate.neighborhood, + houseCandidate.area, + houseCandidate.rooms, + houseCandidate.price, + houseCandidate.description, + houseCandidate.pic, + houseCandidate.baths, + houseCandidate.level, + houseCandidate.phone + )); + }); + + const proposedHouses = ConstrueHouseCommandHandler.findHouseByTitleAndExactPriceAndRoomsAndBaths(houseCandidates); + + return proposedHouses; + } + + async execute(): Promise { + } + + private static async findHouseByTitleAndExactPriceAndRoomsAndBaths(houseCandidates: any): Promise { + const mergedHouses: any[] = []; + + // Usamos un bucle for normal para manejar bien el await dentro del ciclo + for (let i = 0; i < houseCandidates.length; i++) { + const houseCandidate = houseCandidates[i]; + const sanitizedTitle = houseCandidate.title.replace(/'/g, "\\'"); + + // Esperamos a que la búsqueda en la base de datos se resuelva + const matchingHouses = await Hou.findAll({ + where: { + [Op.and]: [ + { price: houseCandidate.rawPrice }, + { rooms: houseCandidate.rooms }, + { area: houseCandidate.area }, + { baths: houseCandidate.baths }, + sequelize.literal(`MATCH(title) AGAINST('${sanitizedTitle}' IN NATURAL LANGUAGE MODE)`) + ] + } + }); + + const resultHouse = ConstrueHouseCommandHandler.mergeHouseProperties(matchingHouses); + + // Si hay coincidencias, añadimos los resultados al array de casas encontradas + if (matchingHouses.length > 0) { + mergedHouses.push(resultHouse); + + // Eliminamos todas las casas que coincidan con los resultados obtenidos + houseCandidates = houseCandidates.filter((candidate: any) => { + return !matchingHouses.some((matchedHouse: any) => { + // Aquí puedes definir los criterios para eliminar la casa original. + // Por ejemplo, comparando el ID, precio, habitaciones, etc. + return ( + candidate.rawPrice === matchedHouse.price && + candidate.rooms === matchedHouse.rooms && + candidate.area === matchedHouse.area && + candidate.baths === matchedHouse.baths + ); + }); + }); + + // Como hemos modificado el array, restamos 1 al índice + i = -1; // Reiniciamos el índice para volver a iterar el array actualizado + } + } + + return mergedHouses; + + // const sanitizedTitle = house.title.replace(/'/g, "\\'"); + + // const matchingHouses = Hou.findAll({ + // where: { + // [Op.and]: [ + // {price: house.rawPrice}, + // {rooms: house.rooms}, + // {area: house.area}, + // {baths: house.baths}, + // sequelize.literal(`MATCH(title) AGAINST('${sanitizedTitle}' IN NATURAL LANGUAGE MODE)`) + // ] + // } + // }); + + // return matchingHouses; + } + + private static mergeHouseProperties(houses: any[]): any { + if (!Array.isArray(houses)) { + throw new Error("El parámetro 'houses' debe ser un array."); + } + + const mergedHouse = { + id: ConstrueHouseCommandHandler.getLongestString(houses.map(h => h.id)) || Math.floor(Math.random() * 100000000).toString().padStart(8, '0'), + title: ConstrueHouseCommandHandler.getLongestString(houses.map(h => h.title)), + url: ConstrueHouseCommandHandler.joinByComma(houses.map(h => h.url)), + neighborhood: ConstrueHouseCommandHandler.getLongestString(houses.map(h => h.neighborhood)), + area: houses[0]?.area || 0, // Asumo que el área es la misma en todos los duplicados + rooms: houses[0]?.rooms || 0, // Asumo que el número de habitaciones es el mismo + price: houses[0]?.price || 0, // Asumo que el precio es el mismo + description: ConstrueHouseCommandHandler.getLongestString(houses.map(h => h.description)), + pic: ConstrueHouseCommandHandler.joinByComma(houses.map(h => h.pic)), + baths: houses[0]?.baths || 0, // Asumo que el número de baños es el mismo + level: ConstrueHouseCommandHandler.getLongestString(houses.map(h => h.level)), + phone: ConstrueHouseCommandHandler.joinByComma(houses.map(h => h.phone)) // Concatenar los teléfonos + }; + + return mergedHouse; + } + + private static getLongestString(strings: string[]): string { + const preSelectedString = strings + .filter(str => str && !str.startsWith(' con el href y el contenido interno + const anchorTagRegex = /]*>(.*?)<\/a>/g; + let match; + let result = ""; + + while ((match = anchorTagRegex.exec(htmlString)) !== null) { + let urlPart = match[1]; // La parte que queremos desde el href + let innerText = match[2].trim(); // El texto dentro de las etiquetas + + // Si innerText está vacío, tomamos la parte de la URL + if (!innerText) { + result= ConstrueHouseCommandHandler.snakeToSpaceCase(urlPart); + } else { + result = innerText; + } + } + + return result; + } + + private static snakeToSpaceCase(snakeCaseString) { + // Reemplazar tanto los guiones bajos (_) como los guiones medios (-) por espacios + let spaceCaseString = snakeCaseString.replace(/[_-]/g, ' '); + + // Capitalizar la primera letra de cada palabra + spaceCaseString = spaceCaseString.split(' ').map(word => { + return word.charAt(0).toUpperCase() + word.slice(1); + }).join(' '); + + return spaceCaseString; +} + +} \ No newline at end of file diff --git a/server/db/mongo/index.js b/server/db/mongo/index.js new file mode 100644 index 0000000..cd8776d --- /dev/null +++ b/server/db/mongo/index.js @@ -0,0 +1,9 @@ +import mongoose from 'mongoose'; + +export default async () => { + const config = useRuntimeConfig(); + + await mongoose.connect(config.mongodbUri, { useNewUrlParser: true, useUnifiedTopology: true }); + + return mongoose; +} diff --git a/server/db/mongo/models/Property.js b/server/db/mongo/models/Property.js new file mode 100644 index 0000000..b3bb4af --- /dev/null +++ b/server/db/mongo/models/Property.js @@ -0,0 +1,20 @@ +import mongoose from "mongoose"; + +const propertySchema = new mongoose.Schema({ + id: { type: String, required: true, unique: true }, + title: { type: String, required: true }, + url: { type: String, required: true }, + price: { type: String, required: true }, + rooms: { type: Number, required: true }, + area: { type: Number, required: true }, + level: { type: String, required: true }, + description: { type: String }, + pic: { type: String }, + baths: { type: Number, required: true }, + neighborhood: { type: String, required: true }, + phone: { type: String, required: true }, +}); + +const Property = mongoose.model("Property", propertySchema); + +export default Property; diff --git a/server/db/mysql/db.config.js b/server/db/mysql/db.config.js new file mode 100644 index 0000000..5934fd2 --- /dev/null +++ b/server/db/mysql/db.config.js @@ -0,0 +1,27 @@ +import { Sequelize, Op } from 'sequelize'; +import sequelizeConfig from '~/config/sequelize'; +import defineProperty from "./models/Property"; +import defineHouse from "./models/House"; +import defineHome from "./models/Home"; + +const environmentConfig = sequelizeConfig["production"]; + +const sequelize = new Sequelize( + environmentConfig.database, + environmentConfig.username, + environmentConfig.password, + { + host: environmentConfig.host, + dialect: environmentConfig.dialect, + logging: false, + }); + +const Property = defineProperty(sequelize); +const House = defineHouse(sequelize); +const Home = defineHome(sequelize); + +sequelize.sync() + .then(() => console.log('Database & tables created!')) + .catch((error) => console.error('Error syncing database:', error)); + +export { sequelize, Op, House, Home, Property }; diff --git a/server/db/mysql/index.js b/server/db/mysql/index.js new file mode 100644 index 0000000..708c3ce --- /dev/null +++ b/server/db/mysql/index.js @@ -0,0 +1,13 @@ +import {sequelize} from "./db.config"; + +async function connectToDatabase() { + try { + await sequelize.authenticate(); + console.log('Connection to MySQL has been established successfully.'); + return sequelize; + } catch (error) { + console.error('Unable to connect to the MySQL database:', error); + } +} + +export default connectToDatabase; \ No newline at end of file diff --git a/server/db/mysql/migrations/20240614190129_noname.cjs b/server/db/mysql/migrations/20240614190129_noname.cjs new file mode 100644 index 0000000..75ecdd1 --- /dev/null +++ b/server/db/mysql/migrations/20240614190129_noname.cjs @@ -0,0 +1,103 @@ +const Sequelize = require("sequelize"); + +/** + * Actions summary: + * + * createTable() => "properties", deps: [] + * + */ + +const info = { + revision: 1, + name: "noname", + created: "2024-06-14T19:01:29.478Z", + comment: "", +}; + +const migrationCommands = (transaction) => [ + { + fn: "createTable", + params: [ + "properties", + { + id: { + type: Sequelize.STRING, + field: "id", + primaryKey: true, + unique: true, + allowNull: true, + }, + title: { type: Sequelize.STRING, field: "title", allowNull: true }, + url: { type: Sequelize.STRING, field: "url", allowNull: true }, + price: { type: Sequelize.STRING, field: "price", allowNull: true }, + rooms: { type: Sequelize.INTEGER, field: "rooms", allowNull: true }, + area: { type: Sequelize.INTEGER, field: "area", allowNull: true }, + level: { type: Sequelize.STRING, field: "level", allowNull: true }, + description: { + type: Sequelize.TEXT, + field: "description", + allowNull: true, + }, + pic: { type: Sequelize.TEXT, field: "pic", allowNull: true }, + baths: { type: Sequelize.INTEGER, field: "baths", allowNull: true }, + neighborhood: { + type: Sequelize.STRING, + field: "neighborhood", + allowNull: true, + }, + phone: { type: Sequelize.STRING, field: "phone", allowNull: true }, + createdAt: { + type: Sequelize.DATE, + field: "createdAt", + allowNull: false, + }, + updatedAt: { + type: Sequelize.DATE, + field: "updatedAt", + allowNull: false, + }, + }, + { transaction }, + ], + }, +]; + +const rollbackCommands = (transaction) => [ + { + fn: "dropTable", + params: ["properties", { transaction }], + }, +]; + +const pos = 0; +const useTransaction = true; + +const execute = (queryInterface, sequelize, _commands) => { + let index = pos; + const run = (transaction) => { + const commands = _commands(transaction); + return new Promise((resolve, reject) => { + const next = () => { + if (index < commands.length) { + const command = commands[index]; + console.log(`[#${index}] execute: ${command.fn}`); + index++; + queryInterface[command.fn](...command.params).then(next, reject); + } else resolve(); + }; + next(); + }); + }; + if (useTransaction) return queryInterface.sequelize.transaction(run); + return run(null); +}; + +module.exports = { + pos, + useTransaction, + up: (queryInterface, sequelize) => + execute(queryInterface, sequelize, migrationCommands), + down: (queryInterface, sequelize) => + execute(queryInterface, sequelize, rollbackCommands), + info, +}; diff --git a/server/db/mysql/migrations/_current.json b/server/db/mysql/migrations/_current.json new file mode 100644 index 0000000..2488426 --- /dev/null +++ b/server/db/mysql/migrations/_current.json @@ -0,0 +1,86 @@ +{ + "tables": { + "properties": { + "tableName": "properties", + "schema": { + "id": { + "allowNull": true, + "unique": true, + "primaryKey": true, + "field": "id", + "seqType": "Sequelize.STRING" + }, + "title": { + "allowNull": true, + "field": "title", + "seqType": "Sequelize.STRING" + }, + "url": { + "allowNull": true, + "field": "url", + "seqType": "Sequelize.STRING" + }, + "price": { + "allowNull": true, + "field": "price", + "seqType": "Sequelize.STRING" + }, + "rooms": { + "allowNull": true, + "field": "rooms", + "seqType": "Sequelize.INTEGER" + }, + "area": { + "allowNull": true, + "field": "area", + "seqType": "Sequelize.INTEGER" + }, + "level": { + "allowNull": true, + "field": "level", + "seqType": "Sequelize.STRING" + }, + "description": { + "allowNull": true, + "field": "description", + "seqType": "Sequelize.TEXT" + }, + "pic": { + "allowNull": true, + "field": "pic", + "seqType": "Sequelize.TEXT" + }, + "baths": { + "allowNull": true, + "field": "baths", + "seqType": "Sequelize.INTEGER" + }, + "neighborhood": { + "allowNull": true, + "field": "neighborhood", + "seqType": "Sequelize.STRING" + }, + "phone": { + "allowNull": true, + "field": "phone", + "seqType": "Sequelize.STRING" + }, + "createdAt": { + "allowNull": false, + "field": "createdAt", + "seqType": "Sequelize.DATE" + }, + "updatedAt": { + "allowNull": false, + "field": "updatedAt", + "seqType": "Sequelize.DATE" + } + }, + "indexes": [] + } + }, + "path": "Z:\\webs\\hometify\\server\\db\\mysql\\migrations\\_current.json", + "backupPath": "Z:\\webs\\hometify\\server\\db\\mysql\\migrations\\_current_bak.json", + "exists": false, + "revision": 1 +} \ No newline at end of file diff --git a/server/db/mysql/models/Home.js b/server/db/mysql/models/Home.js new file mode 100644 index 0000000..bd15732 --- /dev/null +++ b/server/db/mysql/models/Home.js @@ -0,0 +1,65 @@ +// server/models/Home.js +import { DataTypes } from "sequelize"; + +export default function House (sequelize) { + return sequelize.define( + "Home", + { + id: { + type: DataTypes.STRING, + allowNull: true, + unique: true, + primaryKey: true, + }, + title: { + type: DataTypes.STRING, + allowNull: true, + }, + url: { + type: DataTypes.STRING, + allowNull: true, + }, + neighborhood: { + type: DataTypes.STRING, + allowNull: true, + }, + area: { + type: DataTypes.INTEGER, + allowNull: true, + }, + rooms: { + type: DataTypes.INTEGER, + allowNull: true, + }, + price: { + type: DataTypes.STRING, + allowNull: true, + }, + description: { + type: DataTypes.TEXT, + allowNull: true, + }, + pic: { + type: DataTypes.TEXT, + allowNull: true, + }, + baths: { + type: DataTypes.INTEGER, + allowNull: true, + }, + level: { + type: DataTypes.STRING, + allowNull: true, + }, + phone: { + type: DataTypes.STRING, + allowNull: true, + }, + }, + { + tableName: "home", + timestamps: false, // createdAt y updatedAt + } + ); +}; + diff --git a/server/db/mysql/models/House.js b/server/db/mysql/models/House.js new file mode 100644 index 0000000..8d09cbf --- /dev/null +++ b/server/db/mysql/models/House.js @@ -0,0 +1,64 @@ +// server/models/Property.js +import { DataTypes } from "sequelize"; + +export default function House (sequelize) { + return sequelize.define( + "House", + { + id: { + type: DataTypes.STRING, + allowNull: true, + unique: true, + primaryKey: true, + }, + title: { + type: DataTypes.STRING, + allowNull: true, + }, + url: { + type: DataTypes.STRING, + allowNull: true, + }, + neighborhood: { + type: DataTypes.STRING, + allowNull: true, + }, + area: { + type: DataTypes.INTEGER, + allowNull: true, + }, + rooms: { + type: DataTypes.INTEGER, + allowNull: true, + }, + price: { + type: DataTypes.STRING, + allowNull: true, + }, + description: { + type: DataTypes.TEXT, + allowNull: true, + }, + pic: { + type: DataTypes.TEXT, + allowNull: true, + }, + baths: { + type: DataTypes.INTEGER, + allowNull: true, + }, + level: { + type: DataTypes.STRING, + allowNull: true, + }, + phone: { + type: DataTypes.STRING, + allowNull: true, + }, + }, + { + tableName: "house", + timestamps: false, // createdAt y updatedAt + } + ); +}; \ No newline at end of file diff --git a/server/db/mysql/models/Property.js b/server/db/mysql/models/Property.js new file mode 100644 index 0000000..9e445d3 --- /dev/null +++ b/server/db/mysql/models/Property.js @@ -0,0 +1,64 @@ +// server/models/Property.js +import { DataTypes } from "sequelize"; + +export default function Property (sequelize) { + return sequelize.define( + "Property", + { + id: { + type: DataTypes.STRING, + allowNull: true, + unique: true, + primaryKey: true, + }, + title: { + type: DataTypes.STRING, + allowNull: true, + }, + url: { + type: DataTypes.STRING, + allowNull: true, + }, + price: { + type: DataTypes.STRING, + allowNull: true, + }, + rooms: { + type: DataTypes.INTEGER, + allowNull: true, + }, + area: { + type: DataTypes.INTEGER, + allowNull: true, + }, + level: { + type: DataTypes.STRING, + allowNull: true, + }, + description: { + type: DataTypes.TEXT, + allowNull: true, + }, + pic: { + type: DataTypes.TEXT, + allowNull: true, + }, + baths: { + type: DataTypes.INTEGER, + allowNull: true, + }, + neighborhood: { + type: DataTypes.STRING, + allowNull: true, + }, + phone: { + type: DataTypes.STRING, + allowNull: true, + }, + }, + { + tableName: "properties", + timestamps: true, // Incluye createdAt y updatedAt + } + ); +}; \ No newline at end of file diff --git a/server/db/mysql/models/index.js b/server/db/mysql/models/index.js new file mode 100644 index 0000000..2ff5d7c --- /dev/null +++ b/server/db/mysql/models/index.js @@ -0,0 +1,63 @@ +'use strict'; + +// Importar módulos necesarios +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath, pathToFileURL } from 'url'; +import { Sequelize, DataTypes } from 'sequelize'; +import process from 'process'; +import configFile from '../../../../config/sequelize.js'; + +// Definir __filename y __dirname en ES Modules +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +// Variables necesarias +const basename = path.basename(__filename); +const env = process.env.NODE_ENV || 'development'; +const config = configFile[env]; +const db = {}; + +// Configuración de Sequelize +let sequelize; +if (config.use_env_variable) { + sequelize = new Sequelize(process.env[config.use_env_variable], config); +} else { + sequelize = new Sequelize(config.database, config.username, config.password, config); +} + +// Función para cargar modelos de forma asíncrona +const loadModels = async () => { + const files = fs.readdirSync(__dirname).filter(file => { + return ( + file.indexOf('.') !== 0 && + file !== basename && + file.slice(-3) === '.js' && + file.indexOf('.test.js') === -1 + ); + }); + + for (const file of files) { + const modelPath = path.join(__dirname, file); + const modelURL = pathToFileURL(modelPath).href; // Convertir a una URL válida con esquema file:// + const { default: modelDef } = await import(modelURL); + const model = modelDef(sequelize, DataTypes); + db[model.name] = model; + } +}; + +// Ejecutar la carga de modelos +await loadModels(); + +// Asociar modelos +Object.keys(db).forEach(modelName => { + if (db[modelName].associate) { + db[modelName].associate(db); + } +}); + +// Exportar la instancia de Sequelize y modelos +db.sequelize = sequelize; +db.Sequelize = Sequelize; + +export default db; diff --git a/server/db/mysql/repository/HomeRepository.ts b/server/db/mysql/repository/HomeRepository.ts new file mode 100644 index 0000000..0c87c31 --- /dev/null +++ b/server/db/mysql/repository/HomeRepository.ts @@ -0,0 +1,6 @@ +import { sequelize, Op, Home } from "../db.config"; + +async function insertOrUpdateHome(home: any) { + await Home.create(home); + console.log('Nueva casa insertada:', home.id); +} diff --git a/server/db/mysql/repository/HouseRepository.ts b/server/db/mysql/repository/HouseRepository.ts new file mode 100644 index 0000000..ffb75a3 --- /dev/null +++ b/server/db/mysql/repository/HouseRepository.ts @@ -0,0 +1,18 @@ +import { sequelize, Op, House } from "../db.config"; + +export async function findHouseByTitleAndExactPriceAndRoomsAndBaths(house: any) { + //const sanitizedTitle = house.title.replace(/'/g, "\\'"); + + return "pollas"; + + const matchingHouses = await House.findAll({ + where: { + price: house.price, + rooms: house.rooms, + baths: house.baths, + [Op.and]: sequelize.literal(`MATCH(title) AGAINST('${sanitizedTitle}' IN NATURAL LANGUAGE MODE)`) + } + }); + + return matchingHouses; +} diff --git a/server/domain/house.ts b/server/domain/house.ts new file mode 100644 index 0000000..f47d1bf --- /dev/null +++ b/server/domain/house.ts @@ -0,0 +1,107 @@ +export class House { + _id: string; + _title: string | null; + _url: string | null; + _neighborhood: string | null; + _area: number | null; + _rooms: number | null; + _price: number | null; + _rawPrice: string | null; + _description: string| null; + _pic: string | null; + _baths: number | null; + _level: string | null; + _phone: string | null; + + private constructor() {} + + public static create( + id : string, + title : string, + url : string, + neighborhood: string, + area : number | string, + rooms : number | string, + price : number | string, + description : string, + pic : string, + baths : number | string, + level : string, + phone : string +) { + const house = new House(); + house._id = id; + house._title = title?.trim() || ""; + house._url = url?.trim() || ""; + house._neighborhood = neighborhood?.trim() || ""; + house._area = area ? parseInt(area.toString()) : 0; + house._rooms = rooms ? parseInt(rooms.toString()) : 0; + house._price = price ? parseInt(price.toString()?.replace(/\./g,'')) : 0; + house._rawPrice = price.toString() || ""; + house._description = description?.trim() || ""; + house._pic = pic?.trim() || ""; + house._baths = baths ? parseInt(baths.toString()) : 0; + house._level = level?.trim() || ""; + house._phone = phone?.trim() || ""; + + return house; +} + + + // Método para verificar coincidencia exacta en habitaciones, baños y precio + matchesExact(other: House): boolean { + return this.rooms === other.rooms && this.baths === other.baths && this.price === other.price; + } + +public get id() { + return this._id; +} + +public get title() { + return this._title; +} + +public get url() { + return this._url; +} + +public get neighborhood() { + return this._neighborhood; +} + +public get area() { + return this._area; +} + +public get rooms() { + return this._rooms; +} + +public get price() { + return this._price; +} + +public get rawPrice() { + return this._rawPrice; +} + +public get description() { + return this._description; +} + +public get pic() { + return this._pic; +} + +public get baths() { + return this._baths; +} + +public get level() { + return this._level; +} + +public get phone() { + return this._phone; +} +} diff --git a/server/plugins/db/init.ts b/server/plugins/db/init.ts new file mode 100644 index 0000000..41a4501 --- /dev/null +++ b/server/plugins/db/init.ts @@ -0,0 +1,19 @@ +import { defineEventHandler } from "h3"; +import connectToDatabase from "~/server/db/mysql"; +import Property from "~/server/db/mysql/models/Property"; + +// Inicializar Sequelize con las configuraciones de Nuxt +export default defineEventHandler(async (event) => { + const sequelize = await connectToDatabase(); + + // Definir el modelo Property + Property(sequelize); + + // Sincronizar la base de datos + try { + await sequelize?.sync({ alter: false }); // O usa { alter: true } para no perder datos existentes. + console.log("Database synchronized successfully."); + } catch (error) { + console.error("Error synchronizing database:", error); + } +}); diff --git a/server/services/cron/cron.js b/server/services/cron/cron.js new file mode 100644 index 0000000..a46223e --- /dev/null +++ b/server/services/cron/cron.js @@ -0,0 +1,12 @@ +//import cron from "node-cron"; +//import fotocasaScraper from "./fotocasaScraper"; +// Import other scrapers similarly +//import { notifyNewListing } from './telegramBot'; // Ensure the bot is initialized + +export default function (moduleOptions) { + // Schedule scraping tasks + //cron.schedule("0 0 * * *", () => { + //fotocasaScraper(); + // Call other scrapers similarly + //}); +} diff --git a/server/services/fusejs/filterProperties.js b/server/services/fusejs/filterProperties.js new file mode 100644 index 0000000..9754629 --- /dev/null +++ b/server/services/fusejs/filterProperties.js @@ -0,0 +1,100 @@ +// utils/filterProperties.js +import Fuse from 'fuse.js'; + +export const filterSimilarProperties = (properties) => { + const options = { + keys: ['_title'], // Solo buscamos similitud en el título + threshold: 0.55, // 0.6 es un umbral para 40% de similitud + includeScore: true // Incluye la puntuación de similitud + }; + + const fuse = new Fuse(properties, options); + const uniqueProperties = []; + const seen = new Set(); // Usaremos un conjunto para rastrear propiedades vistas + + properties.forEach((property) => { + const propertyData = property; + if (!seen.has(propertyData._id)) { + // Inicializa el array para IDs similares en dataValues + propertyData.similarIds = []; + + // Buscamos propiedades similares por título + const result = fuse.search(propertyData._title).filter((res) => { + const similarProperty = res.item; + // Filtramos resultados que no sean la misma propiedad y sean similares en título + const isSimilar = res.item._id !== propertyData._id && res.score < options.threshold; + + if (isSimilar) { + propertyData.similarIds.push(similarProperty._id); + + // Enriquecer la propiedad actual con datos de la propiedad similar + // propertyData.title = getLongest(propertyData.title, similarProperty.title); + // propertyData.url = propertyData.url || similarProperty.url; + // propertyData.price = propertyData.price || similarProperty.price; + // propertyData.rooms = propertyData.rooms || similarProperty.rooms; + // propertyData.area = propertyData.area || similarProperty.area; + // propertyData.level = propertyData.level || similarProperty.level; + // propertyData.description = getLongest(propertyData.description, similarProperty.description); + // propertyData.pic = propertyData.pic || similarProperty.pic; + // propertyData.baths = propertyData.baths || similarProperty.baths; + // propertyData.neighborhood = propertyData.neighborhood || similarProperty.neighborhood; + // propertyData.phone = propertyData.phone || similarProperty.phone; + + // Marcar la propiedad similar como vista + //seen.add(similarProperty.id); + } + + return isSimilar; + }); + + uniqueProperties.push(property); + } + }); + + return uniqueProperties; +}; + +export const groupSimilarProperties = (properties) => { + const filteredProperties = filterSimilarProperties(properties); + const groups = []; + const visited = new Set(); + + filteredProperties.forEach((property) => { + const propertyId = property._id; + if (!visited.has(propertyId)) { + const group = [property]; + visited.add(propertyId); + + const queue = [...property.similarIds]; + while (queue.length > 0) { + const currentId = queue.shift(); + if (!visited.has(currentId)) { + const similarProperty = filteredProperties.find(prop => prop._id === currentId); + if (similarProperty) { + group.push(similarProperty); + visited.add(currentId); + queue.push(...similarProperty.similarIds.filter(id => !visited.has(id))); + } + } + } + + groups.push(group); + } + }); + + // Convert groups to desired output format + const groupedProperties = groups.reduce((acc, group, index) => { + acc[index] = group; + return acc; + }, {}); + + return groupedProperties; +}; + + + +const getLongest = (a, b) => { + if (!a) return b; + if (!b) return a; + return a.length >= b.length ? a : b; +}; \ No newline at end of file diff --git a/server/services/fuzzySearch/fuzzySearchService.ts b/server/services/fuzzySearch/fuzzySearchService.ts new file mode 100644 index 0000000..78c1532 --- /dev/null +++ b/server/services/fuzzySearch/fuzzySearchService.ts @@ -0,0 +1,66 @@ +import stringSimilarity from 'string-similarity'; + +export class FuzzySearchService { + _data: any = []; + _threshold: number; + + private constructor(data, threshold) { + this._data = data; + this._threshold = threshold; + } + + public static create(data, threshold = 0.7) { + return new FuzzySearchService(data, threshold); + } + + matchSimilarProperty(property) { + const groupedData: Map = new Map(); + + this.data.forEach((obj) => { + let found = false; + + for (const [key, group] of groupedData.entries()) { + const representativeObj: any = group[0]; + + if ( + this.isPropertySimilar(representativeObj[property], obj[property]) + ) { + group.push(obj); + groupedData.set(key, group); + found = true; + break; + } + } + + if (!found) { + // Crea una nueva clave en el mapa para un nuevo grupo + groupedData.set(obj.id, [obj]); + } + }); + + return groupedData; + } + + matchExactProperty(property) { + // Implement your exact property matching logic here + // Return the matched property + } + + matchExactProperties(properties) { + // Implement your exact properties matching logic here + // Return the matched properties + } + + isPropertySimilar(property, otherProperty: string): boolean { + const similarity = stringSimilarity.compareTwoStrings(property, otherProperty); + return similarity >= this.threshold; + } + + get data() { + return this._data; + } + + get threshold() { + return this._threshold; + } +} \ No newline at end of file diff --git a/server/services/telegram/telegramBot.js b/server/services/telegram/telegramBot.js new file mode 100644 index 0000000..f4b8715 --- /dev/null +++ b/server/services/telegram/telegramBot.js @@ -0,0 +1,21 @@ +import TelegramBot from 'node-telegram-bot-api'; +import Listing from '../../server/db/models/Listing'; + +const botToken = process.env.TELEGRAM_BOT_TOKEN; +const chatId = process.env.TELEGRAM_CHAT_ID; +const bot = new TelegramBot(botToken, { polling: true }); + +export const notifyNewListing = async (listing) => { + const message = ` + New Listing: + Title: ${listing.title} + Price: ${listing.price} + Location: ${listing.location} + Description: ${listing.description} + URL: ${listing.url} + `; + + await bot.sendMessage(chatId, message); +}; + +export default bot; diff --git a/server/tsconfig.json b/server/tsconfig.json new file mode 100644 index 0000000..e9d8a96 --- /dev/null +++ b/server/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../.nuxt/tsconfig.server.json", + "include": [ + "./node_modules/puppeteer-extra/*.d.ts", + "./node_modules/puppeteer-extra-*/*.d.ts", + "./node_modules/@types/puppeteer/index.d.ts" + ] +} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..b861d63 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,10 @@ +{ + // https://nuxt.com/docs/guide/concepts/typescript + + "extends": "./.nuxt/tsconfig.json", + "compilerOptions": { + "types": [ + "./types/index" + ] + }, +} diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 0000000..62fe966 --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,8 @@ +// types/index.d.ts +import 'nuxt' + +declare module 'nuxt' { + interface Context { + $puppeteer: typeof import('puppeteer-extra') + } +} \ No newline at end of file