diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 2c58e58..c28d8da 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -44,5 +44,5 @@ jobs: github_token: ${{ secrets.GITHUB_TOKEN }} personal_token: ${{ secrets.PERSONAL_TOKEN }} publish_dir: .vitepress/dist - user_name: 幺幺灵久 + user_name: 幺幺零玖 user_email: gmj413966791@163.com diff --git a/.vitepress/config.mts b/.vitepress/config.mts index c8b6510..fca7aca 100644 --- a/.vitepress/config.mts +++ b/.vitepress/config.mts @@ -5,7 +5,7 @@ import { getPosts } from './theme/serverUtils' const navize = 10 export default defineConfig({ - title: '幺幺灵久', + title: '幺幺零玖', description: 'A VitePress Site', themeConfig: { outline: { diff --git a/.vitepress/theme/components/Copyright.vue b/.vitepress/theme/components/Copyright.vue index 4af4cb8..951ee76 100755 --- a/.vitepress/theme/components/Copyright.vue +++ b/.vitepress/theme/components/Copyright.vue @@ -1,9 +1,3 @@ - + + diff --git a/.vitepress/theme/custom.css b/.vitepress/theme/custom.css deleted file mode 100755 index add8903..0000000 --- a/.vitepress/theme/custom.css +++ /dev/null @@ -1,191 +0,0 @@ -:root { - --vp-c-brand: #2563eb !important; - --vp-c-brand-light: var(--vp-c-brand); - --vp-c-brand-lighter: var(--vp-c-brand); - --vp-c-brand-dark: var(--vp-c-brand); - --vp-c-brand-darker: var(--vp-c-brand); - - --vp-font-family-base: 'PingFang SC', 'Microsoft Yahei', sans-serif; - - /* pure theme color */ - --li-dot-color: var(--vp-c-brand); - --date-color: var(--vp-c-text-2); - --date-font-family: Georgia, sans-serif; -} -.dark { - --vp-c-brand: #3b82f6; -} - -/* theme reset start */ - -.Layout { - min-height: calc(100vh - 78px) !important; /* reduce copyright */ -} - -.vp-doc a { - color: var(--vp-c-text-1); - font-weight: 500; - text-decoration: none; -} -.vp-doc p { - font-size: 0.9375rem; -} -.title { - color: var(--vp-c-text-1); - font-size: 1.5rem !important; - letter-spacing: 1px; - font-weight: 600 !important; - text-transform: uppercase; - font-family: var(--date-font-family); -} - -.content a[rel~='noreferrer']:link, -a[rel~='noreferrer']:visited { - color: var(--vp-c-brand); - font-weight: 500 !important; - border-bottom: 1px solid var(--vp-c-brand); -} -.content a[rel~='noreferrer']:hover { - color: #888; -} - -h1 { - font-size: 1.5rem !important; - font-weight: 500 !important; -} - -h2 { - font-size: 1.125rem !important; - font-weight: 500 !important; - border-bottom: 1px solid var(--vp-c-divider-light); - border-top: none !important; - margin: inherit !important; -} - -h3 { - font-size: 1rem !important; - font-weight: 500 !important; -} - -/* for aside start */ -.aside { - position: fixed !important; - right: 24px; -} -.VPDoc { - padding-top: 10px !important; -} -.container { - max-width: 60rem !important; -} -.VPContent .container { - max-width: 60rem !important; - display: block !important; - position: relative; -} -/* content maxWidth*/ -.VPDoc.has-aside .content-container { - max-width: 60rem !important; -} - -@media (min-width: 768px) { - .VPDoc { - padding-top: 10px !important; - } -} -@media (min-width: 960px) { - .VPDoc { - padding-top: 10px !important; - } - - .VPDoc:not(.has-sidebar) .content { - max-width: inherit !important; - } - .VPDocAsideOutline .content { - padding-left: 14px !important; - } - .content { - padding: 0 !important; - } -} -/* when witdh less 1440 hide the aside 小于1440就到下一挡*/ -@media (min-width: 1280px) { - .VPDoc .aside { - display: none !important; - } -} - -@media (min-width: 1440px) { - .VPDoc .aside { - display: block !important; - } -} - -/*mobile*/ -@media screen and (max-width: 768px) { - .VPDoc { - padding-top: 10px !important; - padding-bottom: 20px !important; - } - .vp-doc h1 { - font-size: 1.25rem !important; - } - .posts { - padding: 4px; - } - .post-dot { - margin-right: 4px; - } - .post-container { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - width: 16.5em; - } -} - -/* for aside end */ -/* theme reset end */ - -/*tags and archives page style*/ -.posts { - padding: 4px 0 4px 25px; - display: flex; - justify-content: space-between; - align-items: center; -} -.post-dot { - display: inline-block; - margin-right: 10px; - margin-bottom: 3px; - width: 4px; - height: 4px; - border-radius: 50%; - background-color: var(--li-dot-color); -} - -.post-container { - color: var(--vp-c-text-2); - font-size: 0.9375rem; - font-weight: 400; -} -.post-container:hover { - color: var(--vp-c-brand); -} -.date { - color: var(--date-color); - font-family: var(--date-font-family); -} - -.post-info { - font-size: 12px; -} -.post-info span { - display: inline-block; - padding: 0 8px; - background-color: var(--vp-c-bg-alt); - margin-right: 10px; - transition: 0.4s; - border-radius: 2px; - color: var(--vp-c-text-1); -} diff --git a/.vitepress/theme/index.js b/.vitepress/theme/index.js index 2fd084b..a516028 100755 --- a/.vitepress/theme/index.js +++ b/.vitepress/theme/index.js @@ -7,17 +7,17 @@ import Tags from './components/Tags.vue' import Page from './components/Page.vue' import Comment from './components/Comment.vue' -import './custom.css' +import './style.scss' export default { - ...DefaultTheme, - Layout: NewLayout, - enhanceApp({ app }) { - // register global compoment - app.component('Tags', Tags) - app.component('Category', Category) - app.component('Archives', Archives) - app.component('Page', Page) - app.component('Comment', Comment) - } + ...DefaultTheme, + Layout: NewLayout, + enhanceApp({ app }) { + // register global compoment + app.component('Tags', Tags) + app.component('Category', Category) + app.component('Archives', Archives) + app.component('Page', Page) + app.component('Comment', Comment) + }, } diff --git a/.vitepress/theme/style.scss b/.vitepress/theme/style.scss new file mode 100755 index 0000000..a86dbf3 --- /dev/null +++ b/.vitepress/theme/style.scss @@ -0,0 +1,167 @@ +:root { + --vp-font-family-base: 'PingFang SC', 'Microsoft Yahei', sans-serif; + + /* pure theme color */ + --li-dot-color: var(--vp-c-brand); + --date-color: var(--vp-c-text-2); + --date-font-family: Georgia, sans-serif; + + --side-bar-bg-color: #fafafa; + --control-text-color: #777; +} + +.dark { + --vp-c-brand: #3b82f6; +} + +.vp-doc { + h1, + h2, + h3, + h4, + h5, + h6 { + position: relative; + margin-top: 1rem; + margin-bottom: 1rem; + font-weight: bold; + line-height: 1.4; + cursor: text; + border: none !important; + } + h1:hover a.anchor, + h2:hover a.anchor, + h3:hover a.anchor, + h4:hover a.anchor, + h5:hover a.anchor, + h6:hover a.anchor { + text-decoration: none; + } + h1 tt, + h1 code { + font-size: inherit; + } + h2 tt, + h2 code { + font-size: inherit; + } + h3 tt, + h3 code { + font-size: inherit; + } + h4 tt, + h4 code { + font-size: inherit; + } + h5 tt, + h5 code { + font-size: inherit; + } + h6 tt, + h6 code { + font-size: inherit; + } + h1 { + font-size: 2.25em; + line-height: 1.2; + border-bottom: 1px solid #eee; + } + h2 { + font-size: 1.75em; + line-height: 1.225; + border-bottom: 1px solid #eee; + } + + h3 { + font-size: 1.5em; + line-height: 1.43; + } + + h4 { + font-size: 1.25em; + } + + h5 { + font-size: 1em; + } + + h6 { + font-size: 1em; + color: #777; + } + +} + +.vp-doc a { + color: var(--vp-c-text-1); + font-weight: 500; + text-decoration: none; +} + +.vp-doc p { + font-size: 0.9375rem; +} + +.title { + color: var(--vp-c-text-1); + font-size: 1.5rem !important; + letter-spacing: 1px; + font-weight: 600 !important; + text-transform: uppercase; + font-family: var(--date-font-family); +} + +.content a[rel~='noreferrer']:link, a[rel~='noreferrer']:visited { + color: var(--vp-c-brand); + font-weight: 500 !important; + border-bottom: 1px solid var(--vp-c-brand); +} +.content a[rel~='noreferrer']:hover { + color: #888; +} + +/*tags and archives page style*/ +.posts { + padding: 4px 0 4px 25px; + display: flex; + justify-content: space-between; + align-items: center; +} +.post-dot { + display: inline-block; + margin-right: 10px; + margin-bottom: 3px; + width: 4px; + height: 4px; + border-radius: 50%; + background-color: var(--li-dot-color); +} + +.post-container { + color: var(--vp-c-text-2); + font-size: 0.9375rem; + font-weight: 400; +} + +.post-container:hover { + color: var(--vp-c-brand); +} + +.date { + color: var(--date-color); + font-family: var(--date-font-family); +} + +.post-info { + font-size: 12px; +} + +.post-info span { + display: inline-block; + padding: 0 8px; + background-color: var(--vp-c-bg-alt); + margin-right: 10px; + transition: 0.4s; + border-radius: 2px; + color: var(--vp-c-text-1); +} \ No newline at end of file diff --git a/frontend/css.md b/frontend/css.md index 855bd60..23f86fd 100644 --- a/frontend/css.md +++ b/frontend/css.md @@ -1,6 +1,6 @@ # css -## BFC +## 🔸 BFC 难度:★★☆☆☆ @@ -21,4 +21,4 @@ - overflow:当一个元素的 `overflow` 属性值不是 visible、clip 时。比如:overflow: hidden、overflow: auto。 - float:即 `float` 属性值不为 none。 - position:即 `position` 属性值是 absolute 或 fixed。 -- display:当一个元素的 `display` 属性设置成 flex-root、flex、grid、inline-block、table、table-cell、table-caption。 +- display:当一个元素的 `display` 属性设置成 flow-root、flex、grid、inline-block、table、table-cell、table-caption。 diff --git a/frontend/img/javaScript/closure-simple.png b/frontend/img/javaScript/closure-simple.png new file mode 100644 index 0000000..237e521 Binary files /dev/null and b/frontend/img/javaScript/closure-simple.png differ diff --git a/frontend/img/javaScript/no-closure.png b/frontend/img/javaScript/no-closure.png new file mode 100644 index 0000000..660e7e2 Binary files /dev/null and b/frontend/img/javaScript/no-closure.png differ diff --git a/frontend/img/JavaScript/proto.png b/frontend/img/javaScript/proto.png similarity index 100% rename from frontend/img/JavaScript/proto.png rename to frontend/img/javaScript/proto.png diff --git a/frontend/javaScript.md b/frontend/javaScript.md index dae9595..f2395b4 100644 --- a/frontend/javaScript.md +++ b/frontend/javaScript.md @@ -1,5 +1,9 @@ # javaScript +::: tip 本文使用的浏览器 +Chrome 版本 124.0.6367.208(正式版本) (arm64) +::: + ## 🔸 数据类型 难度:★☆☆☆☆ @@ -144,7 +148,7 @@ JavaScript 是基于原型的语言。当我们访问一个对象的属性时, - constructor: 相比于普通对象的属性,prototype 属性本身会有一个属性 constructor,该属性的值为 prototype 所在的函数。 - \_\_proto\_\_: 每一个对象都有一个 \_\_proto\_\_ 属性(不同对象之间的桥梁),该属性指向对象(实例)所属构造函数(类)的原型 prototype。应该为 [[Prototype]],主流浏览器实现为 \_\_proto\_\_。 -![__proto__](./img/JavaScript/proto.png) +![__proto__](./img/javaScript/proto.png) - 一切对象都是继承自 Object 对象,Object 对象直接继承根源对象 null。 - 一切的函数对象(包括 Object 对象),都是继承自 Function 对象。 @@ -255,18 +259,17 @@ console.log(objCreate.hasOwnProperty) // undefined 对象字面量 < Object.create < new -::: tip 测试浏览器 -Chrome 版本 124.0.6367.208(正式版本) (arm64) -::: - ## 🔸 this +难度:★☆☆☆☆ + 根据不同的使用场合,this 有不同的值,主要分为下面几种情况: - 默认绑定 - 隐式绑定 - new 绑定 - 显示绑定 +- 箭头函数 ### 默认绑定 @@ -360,6 +363,24 @@ console.log(person.name) // undefined 参考 [bind、call、apply](/frontend/javaScript.html#bind、call、apply) +### 箭头函数 + +箭头函数绑定父级作用域的上下文 + +```ts +const obj = { + name: 'zs', + fn() { + console.log(this.name) + }, + arrowFn: () => { + console.log(this) + } +} +obj.fn() // zs +obj.arrowFn() // this 指向 严格模式 undefined,非严格模式 window +``` + ## 🔸 bind、call、apply 难度:★☆☆☆☆ @@ -370,12 +391,12 @@ console.log(person.name) // undefined const obj = { name: 'zs', say(...args) { - console.log(this.name, 'hello', ...args) + console.log(this.name, 'Hello world', ...args) } } -setTimeout(obj.say, 0) // '' 'hello' this === window -setTimeout(obj.say.bind(obj, 1, 2), 0) // zs hello 1 2 +setTimeout(obj.say, 0) // '' 'Hello world' this === window +setTimeout(obj.say.bind(obj, 1, 2), 0) // zs Hello world 1 2 const bindFn = obj.say.bind(obj, 1, 2) @@ -424,11 +445,321 @@ fn(1, 2) // this 指向 严格模式 undefined,非严格模式 window 围绕原始数据类型创建一个显式包装器对象从 ECMAScript 6 开始不再被支持。然而,现有的原始包装器对象,如 new Boolean、new String以及new Number,因为遗留原因仍可被创建。 ::: -### 实现一个 myBind(TODO) +### 实现一个 myBind 1. 修改 `this` 指向 2. 动态传递参数 3. 兼容 `new` 关键字 - +🪡 TODO + +## 🔸 闭包 + +难度:★★★☆☆ + +闭包(closure)是一个函数以及其捆绑的周边环境状态(lexical environment,词法环境)的引用的组合。换而言之,闭包让开发者可以从内部函数访问外部函数的作用域。在 JavaScript 中,闭包会随着函数的创建而被同时创建。 + +> 简单理解:闭包 = 函数 + 函数外部变量。 + +### 形成闭包的条件 + +1. 外部函数 +2. 外部函数变量 +3. 内部函数 +4. 内部函数引用外部函数变量 +5. 返回内部函数或通过其他方式保持对内部函数的引用 + +### 闭包作用 + +- 封装模块、创建私有变量 +- 函数记忆、状态保持、延迟执行函数 +- 回调函数 + +### 闭包的缺陷 + +- 内存占用:闭包会导致外部函数的变量无法被垃圾回收,从而增加内存占用。如果闭包会长时间存在,那么外部变量将无法被释放,可能导致内存泄漏。 +- 性能损耗:闭包涉及到作用域链的查找过程,会带来一定的性能损耗。在性能要求高的场景下,需要注意闭包的使用。 + +::: tip + +- 闭包是 `javaScript` 语言特性 +- 闭包不一定需要 `return` +- 闭包不一定会造成内存泄露 +- 将闭包引用变量置为 `null`,可手动释放 `闭包` 占用的内存 + +::: + +### 最简单的闭包 + +```ts +function outer() { + const count = 0 + function inner() { + console.log(count) + } + inner() +} +outer() +``` + +在浏览器下可以看到 `count` 变量和 `inner` 函数形成了 `闭包`,后续没有任何引用,`outer()` 执行完毕后生命周期结束。 + +![简单的闭包示例](./img/javaScript/closure-simple.png) + +把 `count` 放到 `inner` 里面看一下效果。 + +```ts +function outer() { + function inner() { + const count = 0 + console.log(count) + } + inner() +} +outer() +``` + +![不是闭包示例](./img/javaScript/no-closure.png) + +### 闭包的应用 + +#### 函数记忆 + +##### 不使用闭包实现 + +```ts +let count = 0 +function sum() { + count++ + console.log(count) +} +sum() +``` + +缺点 + +- `count` 为全局公共变量,容易被污染 + +**使用 `闭包` 实现** + +```ts +function sum() { + let count = 0 + return function () { + count++ + console.log(count) + } +} +const foo = sum() +foo() +foo() +foo() +// 1 +// 2 +// 3 +const bar = sum() +bar() +bar() +bar() +// 1 +// 2 +// 3 +``` + +优点 + +- `count` 变量私有化 + +缺点 + +- `foo`、`bar` 为全局变量,每次 `sum()` 开辟新的内存,使用完需及时销毁 `foo`、`bar` 变量,否则闭包内的环境会一直占用内存。 + +**使用 `class` 实现**,使用 `class` 实现性能优于 `闭包`。 + +```ts +console.time('class') +class Counter { + constructor() { + this.count = 0 + } + + add() { + this.count++ + console.log(this.count) + } +} +const c = new Counter() +c.add() +c.add() +c.add() +// 1 +// 2 +// 3 +console.timeEnd('class') // class: 0.072998046875 ms + +console.time('closure') +function counter() { + let count = 0 + return function () { + count++ + console.log(count) + } +} +const foo = counter() +foo() +foo() +foo() +// 1 +// 2 +// 3 +console.timeEnd('closure') // closure: 0.1240234375 ms +``` + +#### 私有变量和方法 + +**使用 `class` 实现** + +```ts +class Person { + #name = 'zs' + #say() { + console.log(this.#name, 'Hello world') + } + + constructor() { + this.#say() + } +} +const person = new Person() +// person.#name 报错 +// person.#say() 报错 +``` + +**使用 `闭包` 实现** + +```ts +function Person() { + const _name = 'zs' + const _say = function () { + console.log(_name, 'Hello world') + } + this.say = function () { + _say() + } +} + +const person = new Person() +person.say() +``` + +#### 单例模式 + +**使用 `class` 实现** + +```ts +class Singleton { + constructor() { + if (Singleton.instance) { + return Singleton.instance + } + this.text = 'Hello world' + // 只执行一次 + console.log(this.text) + Singleton.instance = this + } + + say() { + console.log('say', this.text) + } +} +const instance1 = new Singleton() +const instance2 = new Singleton() +instance1.say() +instance2.say() +console.log(instance1 === instance2) +// Hello world +// say Hello world +// say Hello world +// true +``` + +**使用 `闭包` 实现** + +```ts +const say = (function () { + const text = 'Hello world' + // 只执行一次 + console.log(text) + function _say() { + console.log('say', text) + } + return _say +})() +say() +say() +// Hello world +// say Hello world +// say Hello world +``` + +#### 回调函数 + +通过回调函数方式防止 `var` 变量提升。 + +**变量提升** + +```ts +const list = [] +// eslint-disable-next-line vars-on-top, no-var +for (var i = 0; i < 3; i++) { + list[i] = function () { + console.log(i) + } +} +list[0]() +list[1]() +list[2]() +// 3 +// 3 +// 3 +``` + +**使用 `闭包` 防止变量提升** + +```ts +const list = [] +// eslint-disable-next-line vars-on-top, no-var +for (var i = 0; i < 3; i++) { + (function (i) { + list[i] = function () { + console.log(i) + } + })(i) +} +list[0]() +list[1]() +list[2]() +// 0 +// 1 +// 2 +``` + +#### 延迟执行函数 + +```ts +function delay(message, time) { + return function () { + setTimeout(() => { + console.log(message) + }, time) + } +} +const fn = delay('Hello world', 1000) +fn() +``` + +#### 柯里化函数 + +🪡 TODO + + diff --git a/nav/about.md b/nav/about.md index 718ab1b..00b9c8d 100755 --- a/nav/about.md +++ b/nav/about.md @@ -10,3 +10,5 @@ aside: false 一名 `web前端开发工程师`,2015年从事该行业,现居杭州。 2024 年一股行业寒流逼近,开启了重新做一名 `web前端开发工程师` 计划。 + +温故而知新,可以为师矣。 diff --git a/package.json b/package.json index 56d1509..d69c0f7 100644 --- a/package.json +++ b/package.json @@ -9,13 +9,16 @@ "lint:fix": "eslint . --fix" }, "devDependencies": { - "@antfu/eslint-config": "^2.18.0", - "eslint": "^9.2.0", + "@antfu/eslint-config": "^2.19.0", + "autoprefixer": "^10.4.19", + "eslint": "^9.3.0", "eslint-plugin-format": "^0.1.1", "fs-extra": "^11.2.0", "globby": "^14.0.1", "gray-matter": "^4.0.3", "prettier": "^3.2.5", - "vitepress": "^1.2.0" + "sass": "^1.77.2", + "tailwindcss": "^3.4.3", + "vitepress": "^1.2.2" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6120212..7a4e265 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,14 +9,17 @@ importers: .: devDependencies: '@antfu/eslint-config': - specifier: ^2.18.0 - version: 2.18.0(@vue/compiler-sfc@3.4.27)(eslint-plugin-format@0.1.1(eslint@9.2.0))(eslint@9.2.0)(typescript@5.4.5) + specifier: ^2.19.0 + version: 2.19.0(@vue/compiler-sfc@3.4.27)(eslint-plugin-format@0.1.1(eslint@9.3.0))(eslint@9.3.0)(typescript@5.4.5) + autoprefixer: + specifier: ^10.4.19 + version: 10.4.19(postcss@8.4.38) eslint: - specifier: ^9.2.0 - version: 9.2.0 + specifier: ^9.3.0 + version: 9.3.0 eslint-plugin-format: specifier: ^0.1.1 - version: 0.1.1(eslint@9.2.0) + version: 0.1.1(eslint@9.3.0) fs-extra: specifier: ^11.2.0 version: 11.2.0 @@ -29,9 +32,15 @@ importers: prettier: specifier: ^3.2.5 version: 3.2.5 + sass: + specifier: ^1.77.2 + version: 1.77.2 + tailwindcss: + specifier: ^3.4.3 + version: 3.4.3 vitepress: - specifier: ^1.2.0 - version: 1.2.0(@algolia/client-search@4.23.3)(postcss@8.4.38)(search-insights@2.13.0)(typescript@5.4.5) + specifier: ^1.2.2 + version: 1.2.2(@algolia/client-search@4.23.3)(postcss@8.4.38)(sass@1.77.2)(search-insights@2.13.0)(typescript@5.4.5) packages: @@ -100,8 +109,12 @@ packages: '@algolia/transporter@4.23.3': resolution: {integrity: sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ==} - '@antfu/eslint-config@2.18.0': - resolution: {integrity: sha512-aK9xjU8jnOfEO449A34wypCUiAz9S4/d0Tvup6FS7IsR3Y1xtF3KQI4OYYM2OqFLHEsRLrGAcE9FbUb+oC6EiA==} + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@antfu/eslint-config@2.19.0': + resolution: {integrity: sha512-TFwYzzzFRov6jjFHd903dNKRzDoveImqSPQGHUOt5eFp2rHkoNC/seJht9S9tYcPYPdKq64Uu8KHL2iE2NMSpg==} hasBin: true peerDependencies: '@eslint-react/eslint-plugin': ^1.5.8 @@ -152,29 +165,29 @@ packages: '@antfu/utils@0.7.8': resolution: {integrity: sha512-rWQkqXRESdjXtc+7NRfK9lASQjpXJu1ayp7qi1d23zZorY+wBHVLHHoVcMsEnkqEBWTFqbztO7/QdJFzyEcLTg==} - '@babel/code-frame@7.24.2': - resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} + '@babel/code-frame@7.24.6': + resolution: {integrity: sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.1': - resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} + '@babel/helper-string-parser@7.24.6': + resolution: {integrity: sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.5': - resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} + '@babel/helper-validator-identifier@7.24.6': + resolution: {integrity: sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.5': - resolution: {integrity: sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==} + '@babel/highlight@7.24.6': + resolution: {integrity: sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==} engines: {node: '>=6.9.0'} - '@babel/parser@7.24.5': - resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} + '@babel/parser@7.24.6': + resolution: {integrity: sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.24.5': - resolution: {integrity: sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==} + '@babel/types@7.24.6': + resolution: {integrity: sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==} engines: {node: '>=6.9.0'} '@clack/core@0.3.4': @@ -214,8 +227,8 @@ packages: '@dprint/markdown@0.16.4': resolution: {integrity: sha512-WjsC4yLybR5/76+d/2s36nOBGjETe+jJR//ddFHohDXKdis+FTUv7dJ00kmd6g0AKQwDITayM1Nid10gFNG0Yg==} - '@dprint/toml@0.6.1': - resolution: {integrity: sha512-1fmGui+BNLKNonG3fvjT+thtL8u0pL1GsIuRbhgRnP+UOkcfPgoUsgNFctDmOE13y6MX4TVvxXKKrMY/qwXqkA==} + '@dprint/toml@0.6.2': + resolution: {integrity: sha512-Mk5unEANsL/L+WHYU3NpDXt1ARU5bNU5k5OZELxaJodDycKG6RoRnSlZXpW6+7UN2PSnETAFVUdKrh937ZwtHA==} '@es-joy/jsdoccomment@0.43.0': resolution: {integrity: sha512-Q1CnsQrytI3TlCB1IVWXWeqUIPGVEKGaE7IbVdt13Nq/3i0JESAkQQERrfiQkmlpijl+++qyqPgaS31Bvc1jRQ==} @@ -369,16 +382,12 @@ packages: resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/eslintrc@3.0.2': - resolution: {integrity: sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg==} + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.2.0': - resolution: {integrity: sha512-ESiIudvhoYni+MdsI8oD7skpprZ89qKocwRM2KEvhhBJ9nl5MRh7BXU5GTod7Mdygq+AUl+QzId6iWJKR/wABA==} + '@eslint/js@9.3.0': + resolution: {integrity: sha512-niBqk8iwv96+yuTwjM6bWg8ovzAPF9qkICsGtcoa5/dmqcEMfdwNAX7+/OHcJHc7wj7XqPxH98oAHytFYlw6Sw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@humanwhocodes/config-array@0.13.0': @@ -392,13 +401,32 @@ packages: '@humanwhocodes/object-schema@2.0.3': resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - '@humanwhocodes/retry@0.2.4': - resolution: {integrity: sha512-Ttl/jHpxfS3st5sxwICYfk4pOH0WrLI1SpW283GgQL7sCWU7EHIOhX4b4fkIxr3tkfzwg8+FNojtzsIEE7Ecgg==} + '@humanwhocodes/retry@0.3.0': + resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} engines: {node: '>=18.18'} + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.5': + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + '@jridgewell/sourcemap-codec@1.4.15': resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jsdevtools/ez-spawn@3.0.4': resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==} engines: {node: '>=10'} @@ -415,104 +443,108 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + '@pkgr/core@0.1.1': resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - '@rollup/rollup-android-arm-eabi@4.17.2': - resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==} + '@rollup/rollup-android-arm-eabi@4.18.0': + resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.17.2': - resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} + '@rollup/rollup-android-arm64@4.18.0': + resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.17.2': - resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} + '@rollup/rollup-darwin-arm64@4.18.0': + resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.17.2': - resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} + '@rollup/rollup-darwin-x64@4.18.0': + resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} cpu: [x64] os: [darwin] - '@rollup/rollup-linux-arm-gnueabihf@4.17.2': - resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} cpu: [arm] os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm-musleabihf@4.17.2': - resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} + '@rollup/rollup-linux-arm-musleabihf@4.18.0': + resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} cpu: [arm] os: [linux] libc: [musl] - '@rollup/rollup-linux-arm64-gnu@4.17.2': - resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} + '@rollup/rollup-linux-arm64-gnu@4.18.0': + resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} cpu: [arm64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm64-musl@4.17.2': - resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} + '@rollup/rollup-linux-arm64-musl@4.18.0': + resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} cpu: [arm64] os: [linux] libc: [musl] - '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': - resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} cpu: [ppc64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-riscv64-gnu@4.17.2': - resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} + '@rollup/rollup-linux-riscv64-gnu@4.18.0': + resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} cpu: [riscv64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-s390x-gnu@4.17.2': - resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} + '@rollup/rollup-linux-s390x-gnu@4.18.0': + resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} cpu: [s390x] os: [linux] libc: [glibc] - '@rollup/rollup-linux-x64-gnu@4.17.2': - resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} + '@rollup/rollup-linux-x64-gnu@4.18.0': + resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} cpu: [x64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-x64-musl@4.17.2': - resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} + '@rollup/rollup-linux-x64-musl@4.18.0': + resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} cpu: [x64] os: [linux] libc: [musl] - '@rollup/rollup-win32-arm64-msvc@4.17.2': - resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} + '@rollup/rollup-win32-arm64-msvc@4.18.0': + resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.17.2': - resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} + '@rollup/rollup-win32-ia32-msvc@4.18.0': + resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.17.2': - resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} + '@rollup/rollup-win32-x64-msvc@4.18.0': + resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} cpu: [x64] os: [win32] - '@shikijs/core@1.5.2': - resolution: {integrity: sha512-wSAOgaz48GmhILFElMCeQypSZmj6Ru6DttOOtl3KNkdJ17ApQuGNCfzpk4cClasVrnIu45++2DBwG4LNMQAfaA==} + '@shikijs/core@1.6.0': + resolution: {integrity: sha512-NIEAi5U5R7BLkbW1pG/ZKu3eb1lzc3/+jD0lFsuxMT7zjaf9bbNwdNyMr7zh/Zl8EXQtQ+MYBAt5G+JLu+5DlA==} - '@shikijs/transformers@1.5.2': - resolution: {integrity: sha512-/Sh64rKOFGMQLCvtHeL1Y7EExdq8LLxcdVkvoGx2aMHsYMOn8DckYl2gYKMHRBu/YUt1C38/Amd1Jdh48tWHgw==} + '@shikijs/transformers@1.6.0': + resolution: {integrity: sha512-qGfHe1ECiqfE2STPWvfogIj/9Q0SK+MCRJdoITkW7AmFuB7DmbFnBT2US84+zklJOB51MzNO8RUXZiauWssJlQ==} '@sindresorhus/merge-streams@2.3.0': resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} @@ -577,8 +609,8 @@ packages: '@types/web-bluetooth@0.0.20': resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} - '@typescript-eslint/eslint-plugin@7.9.0': - resolution: {integrity: sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==} + '@typescript-eslint/eslint-plugin@7.11.0': + resolution: {integrity: sha512-P+qEahbgeHW4JQ/87FuItjBj8O3MYv5gELDzr8QaQ7fsll1gSMTYb6j87MYyxwf3DtD7uGFB9ShwgmCJB5KmaQ==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: '@typescript-eslint/parser': ^7.0.0 @@ -588,8 +620,8 @@ packages: typescript: optional: true - '@typescript-eslint/parser@7.9.0': - resolution: {integrity: sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==} + '@typescript-eslint/parser@7.11.0': + resolution: {integrity: sha512-yimw99teuaXVWsBcPO1Ais02kwJ1jmNA1KxE7ng0aT7ndr1pT1wqj0OJnsYVGKKlc4QJai86l/025L6z8CljOg==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -598,12 +630,12 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@7.9.0': - resolution: {integrity: sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==} + '@typescript-eslint/scope-manager@7.11.0': + resolution: {integrity: sha512-27tGdVEiutD4POirLZX4YzT180vevUURJl4wJGmm6TrQoiYwuxTIY98PBp6L2oN+JQxzE0URvYlzJaBHIekXAw==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/type-utils@7.9.0': - resolution: {integrity: sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==} + '@typescript-eslint/type-utils@7.11.0': + resolution: {integrity: sha512-WmppUEgYy+y1NTseNMJ6mCFxt03/7jTOy08bcg7bxJJdsM4nuhnchyBbE8vryveaJUf62noH7LodPSo5Z0WUCg==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -612,12 +644,12 @@ packages: typescript: optional: true - '@typescript-eslint/types@7.9.0': - resolution: {integrity: sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==} + '@typescript-eslint/types@7.11.0': + resolution: {integrity: sha512-MPEsDRZTyCiXkD4vd3zywDCifi7tatc4K37KqTprCvaXptP7Xlpdw0NR2hRJTetG5TxbWDB79Ys4kLmHliEo/w==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/typescript-estree@7.9.0': - resolution: {integrity: sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==} + '@typescript-eslint/typescript-estree@7.11.0': + resolution: {integrity: sha512-cxkhZ2C/iyi3/6U9EPc5y+a6csqHItndvN/CzbNXTNrsC3/ASoYQZEt9uMaEp+xFNjasqQyszp5TumAVKKvJeQ==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: typescript: '*' @@ -625,14 +657,14 @@ packages: typescript: optional: true - '@typescript-eslint/utils@7.9.0': - resolution: {integrity: sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==} + '@typescript-eslint/utils@7.11.0': + resolution: {integrity: sha512-xlAWwPleNRHwF37AhrZurOxA1wyXowW4PqVXZVUNCLjB48CqdPJoJWkrpH2nij9Q3Lb7rtWindtoXwxjxlKKCA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/visitor-keys@7.9.0': - resolution: {integrity: sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==} + '@typescript-eslint/visitor-keys@7.11.0': + resolution: {integrity: sha512-7syYk4MzjxTEk0g/w3iqtgxnFQspDJfn6QKD36xMuuhTzjcxY7F8EmBLnALjVyaOF1/bVocu3bS/2/F7rXrveQ==} engines: {node: ^18.18.0 || >=20.0.0} '@vitejs/plugin-vue@5.0.4': @@ -654,16 +686,16 @@ packages: '@vue/compiler-ssr@3.4.27': resolution: {integrity: sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==} - '@vue/devtools-api@7.2.0': - resolution: {integrity: sha512-92RsjyH9WKNFO6U/dECUMakq4dm2CeqEDJYLJ8wZ81AnCifpXE7d4jPIjK34ENsPaapA6BSfIZdH/qzLOHiepA==} + '@vue/devtools-api@7.2.1': + resolution: {integrity: sha512-6oNCtyFOrNdqm6GUkFujsCgFlpbsHLnZqq7edeM/+cxAbMyCWvsaCsIMUaz7AiluKLccCGEM8fhOsjaKgBvb7g==} - '@vue/devtools-kit@7.2.0': - resolution: {integrity: sha512-Kx+U0QiQg/g714euYKfnCdhTcOycSlH1oyTE57D0sAmisdsRCNLfXcnnIwcFY2jdCpuz9DNbuE0VWQuYF5zAZQ==} + '@vue/devtools-kit@7.2.1': + resolution: {integrity: sha512-Wak/fin1X0Q8LLIfCAHBrdaaB+R6IdpSXsDByPHbQ3BmkCP0/cIo/oEGp9i0U2+gEqD4L3V9RDjNf1S34DTzQQ==} peerDependencies: vue: ^3.0.0 - '@vue/devtools-shared@7.2.0': - resolution: {integrity: sha512-gVr3IjKjU7axNvclRgICgy1gq/TDnF1hhBAEox+l5mMXZiTIFVIm1zpcIPssc0HxMDgzy+lXqOVsY4DGyZ+ZeA==} + '@vue/devtools-shared@7.2.1': + resolution: {integrity: sha512-PCJF4UknJmOal68+X9XHyVeQ+idv0LFujkTOIW30+GaMJqwFVN9LkQKX4gLqn61KkGMdJTzQ1bt7EJag3TI6AA==} '@vue/reactivity@3.4.27': resolution: {integrity: sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==} @@ -682,11 +714,11 @@ packages: '@vue/shared@3.4.27': resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==} - '@vueuse/core@10.9.0': - resolution: {integrity: sha512-/1vjTol8SXnx6xewDEKfS0Ra//ncg4Hb0DaZiwKf7drgfMsKFExQ+FnnENcN6efPen+1kIzhLQoGSy0eDUVOMg==} + '@vueuse/core@10.10.0': + resolution: {integrity: sha512-vexJ/YXYs2S42B783rI95lMt3GzEwkxzC8Hb0Ndpd8rD+p+Lk/Za4bd797Ym7yq4jXqdSyj3JLChunF/vyYjUw==} - '@vueuse/integrations@10.9.0': - resolution: {integrity: sha512-acK+A01AYdWSvL4BZmCoJAcyHJ6EqhmkQEXbQLwev1MY7NBnS+hcEMx/BzVoR9zKI+UqEPMD9u6PsyAuiTRT4Q==} + '@vueuse/integrations@10.10.0': + resolution: {integrity: sha512-vHGeK7X6mkdkpcm1eE9t3Cpm21pNVfZRwrjwwbrEs9XftnSgszF4831G2rei8Dt9cIYJIfFV+iyx/29muimJPQ==} peerDependencies: async-validator: '*' axios: '*' @@ -726,11 +758,11 @@ packages: universal-cookie: optional: true - '@vueuse/metadata@10.9.0': - resolution: {integrity: sha512-iddNbg3yZM0X7qFY2sAotomgdHK7YJ6sKUvQqbvwnf7TmaVPxS4EJydcNsVejNdS8iWCtDk+fYXr7E32nyTnGA==} + '@vueuse/metadata@10.10.0': + resolution: {integrity: sha512-UNAo2sTCAW5ge6OErPEHb5z7NEAg3XcO9Cj7OK45aZXfLLH1QkexDcZD77HBi5zvEiLOm1An+p/4b5K3Worpug==} - '@vueuse/shared@10.9.0': - resolution: {integrity: sha512-Uud2IWncmAfJvRaFYzv5OHDli+FbOzxiVEQdLCKQKLyhz94PIyFC3CHcH7EDMwIn8NPtD06+PNbC/PiO0LGLtw==} + '@vueuse/shared@10.10.0': + resolution: {integrity: sha512-2aW33Ac0Uk0U+9yo3Ypg9s5KcR42cuehRWl7vnUHadQyFvCktseyxxEPBi1Eiq4D2yBGACOnqLZpx1eMc7g5Og==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -752,6 +784,10 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -760,10 +796,24 @@ packages: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + are-docs-informative@0.0.2: resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} engines: {node: '>=14'} + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -774,9 +824,20 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + autoprefixer@10.4.19: + resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -786,8 +847,8 @@ packages: brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} browserslist@4.23.0: @@ -806,8 +867,12 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - caniuse-lite@1.0.30001620: - resolution: {integrity: sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==} + camelcase-css@2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + + caniuse-lite@1.0.30001623: + resolution: {integrity: sha512-X/XhAVKlpIxWPpgRTnlgZssJrF0m6YtRA0QDWgsBNT12uZM6LPRydR7ip405Y3t1LamD8cP2TZFEDZFBf5ApcA==} chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} @@ -826,6 +891,10 @@ packages: character-reference-invalid@1.1.4: resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + ci-info@4.0.0: resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} engines: {node: '>=8'} @@ -851,6 +920,10 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + comment-parser@1.4.1: resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} engines: {node: '>= 12.0.0'} @@ -896,20 +969,32 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + didyoumean@1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} + dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} - electron-to-chromium@1.4.773: - resolution: {integrity: sha512-87eHF+h3PlCRwbxVEAw9KtK3v7lWfc/sUDr0W76955AdYTG4bV/k0zrl585Qnj/skRMH2qOSiE+kqMeOQ+LOpw==} + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + electron-to-chromium@1.4.783: + resolution: {integrity: sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + enhanced-resolve@5.16.1: resolution: {integrity: sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==} engines: {node: '>=10.13.0'} @@ -947,8 +1032,8 @@ packages: eslint-config-flat-gitignore@0.1.5: resolution: {integrity: sha512-hEZLwuZjDBGDERA49c2q7vxc8sCGv8EdBp6PQYzGOMcHIgrfG9YOM6s/4jx24zhD+wnK9AI8mgN5RxSss5nClQ==} - eslint-flat-config-utils@0.2.4: - resolution: {integrity: sha512-k7MJkSIfF0bs5eQu1KXyV0AhsvdsqSt1pQfZNLwf6qkozuHQV6aNHg5f8+3Ya+WTzpB+e7I3hMhs4qBwx7nEkw==} + eslint-flat-config-utils@0.2.5: + resolution: {integrity: sha512-iO+yLZtC/LKgACerkpvsZ6NoRVB2sxT04mOpnNcEM1aTwKy+6TsT46PUvrML4y2uVBS6I67hRCd2JiKAPaL/Uw==} eslint-formatting-reporter@0.0.0: resolution: {integrity: sha512-k9RdyTqxqN/wNYVaTk/ds5B5rA8lgoAmvceYN7bcZMBwU7TuXx5ntewJv81eF3pIL/CiJE+pJZm36llG8yhyyw==} @@ -966,13 +1051,13 @@ packages: eslint-parser-plain@0.1.0: resolution: {integrity: sha512-oOeA6FWU0UJT/Rxc3XF5Cq0nbIZbylm7j8+plqq0CZoE6m4u32OXJrR+9iy4srGMmF6v6pmgvP1zPxSRIGh3sg==} - eslint-plugin-antfu@2.2.0: - resolution: {integrity: sha512-QHzHYP+fyfhSkIdcuT9JZ4rCPuJOoHRE27gglPYHlJ6lxB7pO9i45yAy4aurx/rleBuEC27U4c//1Nwtbasj4Q==} + eslint-plugin-antfu@2.3.0: + resolution: {integrity: sha512-Swf63oV4wq4/b0UvhVPcN+6xbH+O+HMUM6tPPf8ECVktEj5kqYSVS6RARw9dyKD1blnuCKNtxNATlI8WzqREuA==} peerDependencies: eslint: '*' - eslint-plugin-command@0.2.1: - resolution: {integrity: sha512-dA44MFCzjNpGlKa1xRA+qi2bTbpf5+zr2JgWUp9IFPteN+qCIS8DHu4EGmPs1680STcwQPvYBANFudpvIOeCYA==} + eslint-plugin-command@0.2.3: + resolution: {integrity: sha512-1bBYNfjZg60N2ZpLV5ATYSYyueIJ+zl5yKrTs0UFDdnyu07dNSZ7Xplnc+Wb6SXTdc1sIaoIrnuyhvztcltX6A==} peerDependencies: eslint: '*' @@ -993,20 +1078,20 @@ packages: peerDependencies: eslint: ^8.40.0 || ^9.0.0 - eslint-plugin-import-x@0.5.0: - resolution: {integrity: sha512-C7R8Z4IzxmsoOPMtSzwuOBW5FH6iRlxHR6iTks+MzVlrk3r3TUxokkWTx3ypdj9nGOEP+CG/5e6ebZzHbxgbbQ==} + eslint-plugin-import-x@0.5.1: + resolution: {integrity: sha512-2JK8bbFOLes+gG6tgdnM8safCxMAj4u2wjX8X1BRFPfnY7Ct2hFYESoIcVwABX/DDcdpQFLGtKmzbNEWJZD9iQ==} engines: {node: '>=16'} peerDependencies: eslint: ^8.56.0 || ^9.0.0-0 - eslint-plugin-jsdoc@48.2.5: - resolution: {integrity: sha512-ZeTfKV474W1N9niWfawpwsXGu+ZoMXu4417eBROX31d7ZuOk8zyG66SO77DpJ2+A9Wa2scw/jRqBPnnQo7VbcQ==} + eslint-plugin-jsdoc@48.2.6: + resolution: {integrity: sha512-GNk9jtpYmoEVeD/U6yYYmd6T8vSOoPs7CL8ZeX85iD8P3qifDdLQGze6+cw9boobDthmYnnxvIoHrhuSffj09g==} engines: {node: '>=18'} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - eslint-plugin-jsonc@2.15.1: - resolution: {integrity: sha512-PVFrqIJa8BbM/e828RSn0SwB/Z5ye+2LDuy2XqG6AymNgPsfApRRcznsbxP7VrjdLEU4Nb+g9n/d6opyp0jp9A==} + eslint-plugin-jsonc@2.16.0: + resolution: {integrity: sha512-Af/ZL5mgfb8FFNleH6KlO4/VdmDuTqmM+SPnWcdoWywTetv7kq+vQe99UyQb9XO3b0OWLVuTH7H0d/PXYCMdSg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' @@ -1045,8 +1130,8 @@ packages: vue-eslint-parser: optional: true - eslint-plugin-regexp@2.5.0: - resolution: {integrity: sha512-I7vKcP0o75WS5SHiVNXN+Eshq49sbrweMQIuqSL3AId9AwDe9Dhbfug65vw64LxmOd4v+yf5l5Xt41y9puiq0g==} + eslint-plugin-regexp@2.6.0: + resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==} engines: {node: ^18 || >=20} peerDependencies: eslint: '>=8.44.0' @@ -1057,9 +1142,9 @@ packages: peerDependencies: eslint: '>=6.0.0' - eslint-plugin-unicorn@52.0.0: - resolution: {integrity: sha512-1Yzm7/m+0R4djH0tjDjfVei/ju2w3AzUGjG6q8JnuNIL5xIwsflyCooW5sfBvQp2pMYQFSWWCFONsjCax1EHng==} - engines: {node: '>=16'} + eslint-plugin-unicorn@53.0.0: + resolution: {integrity: sha512-kuTcNo9IwwUCfyHGwQFOK/HjJAYzbODHN3wP0PgqbW+jbXqpNWxNVpVhj2tO9SixBwuAdmal8rVcWKBxwFnGuw==} + engines: {node: '>=18.18'} peerDependencies: eslint: '>=8.56.0' @@ -1124,8 +1209,8 @@ packages: resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.2.0: - resolution: {integrity: sha512-0n/I88vZpCOzO+PQpt0lbsqmn9AsnsJAQseIqhZFI8ibQT0U1AkEKRxA3EVMos0BoHSXDQvCXY25TUjB5tr8Og==} + eslint@9.3.0: + resolution: {integrity: sha512-5Iv4CsZW030lpUqHBapdPo3MJetAPtejVW8B84GIcIIv8+ohFaddXsrn1Gn8uD9ijDb+kcYKFUVmC8qG8B2ORQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true @@ -1188,8 +1273,8 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} find-up@4.1.0: @@ -1214,6 +1299,13 @@ packages: focus-trap@7.5.4: resolution: {integrity: sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==} + foreground-child@3.1.1: + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} + + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + fs-extra@11.2.0: resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} engines: {node: '>=14.14'} @@ -1241,6 +1333,11 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} + glob@10.4.1: + resolution: {integrity: sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==} + engines: {node: '>=16 || 14 >=14.18'} + hasBin: true + globals@13.24.0: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} @@ -1249,8 +1346,8 @@ packages: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} - globals@15.2.0: - resolution: {integrity: sha512-FQ5YwCHZM3nCmtb5FzEWwdUc9K5d3V/w9mzcz8iGD1gC/aOTHc6PouYu0kkKipNJqHAT7m51sqzQjEjIP+cK0A==} + globals@15.3.0: + resolution: {integrity: sha512-cCdyVjIUVTtX8ZsPkq1oCsOsLmGIswqnjZYMJJTGaNApj1yHtLSymKhwH51ttirREn75z3p4k051clwg7rvNKA==} engines: {node: '>=18'} globby@11.1.0: @@ -1293,6 +1390,9 @@ packages: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} + immutable@4.3.6: + resolution: {integrity: sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==} + import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -1314,6 +1414,10 @@ packages: is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + is-builtin-module@3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} @@ -1354,6 +1458,14 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + jackspeak@3.1.2: + resolution: {integrity: sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==} + engines: {node: '>=14'} + + jiti@1.21.0: + resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} + hasBin: true + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -1408,6 +1520,14 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} + + lilconfig@3.1.1: + resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} + engines: {node: '>=14'} + lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -1433,6 +1553,10 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + lru-cache@10.2.2: + resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} + engines: {node: 14 || >=16.14} + magic-string@0.30.10: resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} @@ -1452,8 +1576,8 @@ packages: micromark@2.11.4: resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} min-indent@1.0.1: @@ -1467,6 +1591,10 @@ packages: resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} engines: {node: '>=16 || 14 >=14.17'} + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + minisearch@6.3.0: resolution: {integrity: sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ==} @@ -1482,6 +1610,9 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -1499,9 +1630,25 @@ packages: normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} @@ -1564,6 +1711,10 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -1589,6 +1740,14 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + pkg-types@1.1.1: resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} @@ -1596,10 +1755,43 @@ packages: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - postcss-selector-parser@6.0.16: - resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} + postcss-import@15.1.0: + resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} + engines: {node: '>=14.0.0'} + peerDependencies: + postcss: ^8.0.0 + + postcss-js@4.0.1: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + + postcss-load-config@4.0.2: + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + + postcss-nested@6.0.1: + resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + + postcss-selector-parser@6.1.0: + resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==} engines: {node: '>=4'} + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + postcss@8.4.38: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} @@ -1627,6 +1819,9 @@ packages: queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + read-cache@1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + read-pkg-up@7.0.1: resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} engines: {node: '>=8'} @@ -1635,6 +1830,10 @@ packages: resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} engines: {node: '>=8'} + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + refa@0.12.1: resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -1673,14 +1872,19 @@ packages: rfdc@1.3.1: resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==} - rollup@4.17.2: - resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==} + rollup@4.18.0: + resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + sass@1.77.2: + resolution: {integrity: sha512-eb4GZt1C3avsX3heBNlrc7I09nyT00IUuo4eFhAbeXWU2fvA7oXI53SxODVAA+zgZCk9aunAZgO+losjR3fAwA==} + engines: {node: '>=14.0.0'} + hasBin: true + scslre@0.3.0: resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} engines: {node: ^14.0.0 || >=16.0.0} @@ -1709,8 +1913,12 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.5.2: - resolution: {integrity: sha512-fpPbuSaatinmdGijE7VYUD3hxLozR3ZZ+iAx8Iy2X6REmJGyF5hQl94SgmiUNTospq346nXUVZx0035dyGvIVw==} + shiki@1.6.0: + resolution: {integrity: sha512-P31ROeXcVgW/k3Z+vUUErcxoTah7ZRaimctOpzGuqAntqnnSmx1HOsvnbAB8Z2qfXPRhw61yptAzCsuKOhTHwQ==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -1739,8 +1947,8 @@ packages: spdx-expression-parse@4.0.0: resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==} - spdx-license-ids@3.0.17: - resolution: {integrity: sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==} + spdx-license-ids@3.0.18: + resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==} speakingurl@14.0.1: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} @@ -1757,10 +1965,18 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + strip-bom-string@1.0.0: resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} engines: {node: '>=0.10.0'} @@ -1773,6 +1989,11 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} engines: {node: '>=4'} @@ -1796,6 +2017,11 @@ packages: tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + tailwindcss@3.4.3: + resolution: {integrity: sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==} + engines: {node: '>=14.0.0'} + hasBin: true + tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} @@ -1803,6 +2029,13 @@ packages: text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + + thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -1821,6 +2054,9 @@ packages: peerDependencies: typescript: '>=4.2.0' + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} @@ -1906,8 +2142,8 @@ packages: terser: optional: true - vitepress@1.2.0: - resolution: {integrity: sha512-m/4PAQVyPBvKHV7sFKwcmNmrsoSxdjnw/Eg40YyuBSaBHhrro9ubnfWk5GT0xGfE98LqjZkHCWKNJlR6G/7Ayg==} + vitepress@1.2.2: + resolution: {integrity: sha512-uZ3nXR5NY4nYj3RJWCo5jev9qlNZAQo5SUXu1U0QSUx84cUm/o7hCTDVjZ4njVSVui+PsV1oAbdQOg8ygbaf4w==} hasBin: true peerDependencies: markdown-it-mathjax3: ^4 @@ -1956,6 +2192,10 @@ packages: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + xml-name-validator@4.0.0: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} engines: {node: '>=12'} @@ -1964,8 +2204,8 @@ packages: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - yaml-eslint-parser@1.2.2: - resolution: {integrity: sha512-pEwzfsKbTrB8G3xc/sN7aw1v6A6c/pKxLAkjclnAyo5g5qOh6eL9WGu0o3cSDQZKrTNk4KL4lQSwZW+nBkANEg==} + yaml-eslint-parser@1.2.3: + resolution: {integrity: sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==} engines: {node: ^14.17.0 || >=16.0.0} yaml@2.4.2: @@ -2095,46 +2335,48 @@ snapshots: '@algolia/logger-common': 4.23.3 '@algolia/requester-common': 4.23.3 - '@antfu/eslint-config@2.18.0(@vue/compiler-sfc@3.4.27)(eslint-plugin-format@0.1.1(eslint@9.2.0))(eslint@9.2.0)(typescript@5.4.5)': + '@alloc/quick-lru@5.2.0': {} + + '@antfu/eslint-config@2.19.0(@vue/compiler-sfc@3.4.27)(eslint-plugin-format@0.1.1(eslint@9.3.0))(eslint@9.3.0)(typescript@5.4.5)': dependencies: '@antfu/install-pkg': 0.3.3 '@clack/prompts': 0.7.0 - '@stylistic/eslint-plugin': 2.1.0(eslint@9.2.0)(typescript@5.4.5) - '@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5) - '@typescript-eslint/parser': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - eslint: 9.2.0 + '@stylistic/eslint-plugin': 2.1.0(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/eslint-plugin': 7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/parser': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + eslint: 9.3.0 eslint-config-flat-gitignore: 0.1.5 - eslint-flat-config-utils: 0.2.4 - eslint-merge-processors: 0.1.0(eslint@9.2.0) - eslint-plugin-antfu: 2.2.0(eslint@9.2.0) - eslint-plugin-command: 0.2.1(eslint@9.2.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@9.2.0) - eslint-plugin-import-x: 0.5.0(eslint@9.2.0)(typescript@5.4.5) - eslint-plugin-jsdoc: 48.2.5(eslint@9.2.0) - eslint-plugin-jsonc: 2.15.1(eslint@9.2.0) - eslint-plugin-markdown: 5.0.0(eslint@9.2.0) - eslint-plugin-n: 17.7.0(eslint@9.2.0) + eslint-flat-config-utils: 0.2.5 + eslint-merge-processors: 0.1.0(eslint@9.3.0) + eslint-plugin-antfu: 2.3.0(eslint@9.3.0) + eslint-plugin-command: 0.2.3(eslint@9.3.0) + eslint-plugin-eslint-comments: 3.2.0(eslint@9.3.0) + eslint-plugin-import-x: 0.5.1(eslint@9.3.0)(typescript@5.4.5) + eslint-plugin-jsdoc: 48.2.6(eslint@9.3.0) + eslint-plugin-jsonc: 2.16.0(eslint@9.3.0) + eslint-plugin-markdown: 5.0.0(eslint@9.3.0) + eslint-plugin-n: 17.7.0(eslint@9.3.0) eslint-plugin-no-only-tests: 3.1.0 - eslint-plugin-perfectionist: 2.10.0(eslint@9.2.0)(typescript@5.4.5)(vue-eslint-parser@9.4.2(eslint@9.2.0)) - eslint-plugin-regexp: 2.5.0(eslint@9.2.0) - eslint-plugin-toml: 0.11.0(eslint@9.2.0) - eslint-plugin-unicorn: 52.0.0(eslint@9.2.0) - eslint-plugin-unused-imports: 3.2.0(@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0) - eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5) - eslint-plugin-vue: 9.26.0(eslint@9.2.0) - eslint-plugin-yml: 1.14.0(eslint@9.2.0) - eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.2.0) - globals: 15.2.0 + eslint-plugin-perfectionist: 2.10.0(eslint@9.3.0)(typescript@5.4.5)(vue-eslint-parser@9.4.2(eslint@9.3.0)) + eslint-plugin-regexp: 2.6.0(eslint@9.3.0) + eslint-plugin-toml: 0.11.0(eslint@9.3.0) + eslint-plugin-unicorn: 53.0.0(eslint@9.3.0) + eslint-plugin-unused-imports: 3.2.0(@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0) + eslint-plugin-vitest: 0.5.4(@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) + eslint-plugin-vue: 9.26.0(eslint@9.3.0) + eslint-plugin-yml: 1.14.0(eslint@9.3.0) + eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.3.0) + globals: 15.3.0 jsonc-eslint-parser: 2.4.0 local-pkg: 0.5.0 parse-gitignore: 2.0.0 picocolors: 1.0.1 toml-eslint-parser: 0.9.3 - vue-eslint-parser: 9.4.2(eslint@9.2.0) - yaml-eslint-parser: 1.2.2 + vue-eslint-parser: 9.4.2(eslint@9.3.0) + yaml-eslint-parser: 1.2.3 yargs: 17.7.2 optionalDependencies: - eslint-plugin-format: 0.1.1(eslint@9.2.0) + eslint-plugin-format: 0.1.1(eslint@9.3.0) transitivePeerDependencies: - '@vue/compiler-sfc' - supports-color @@ -2148,30 +2390,30 @@ snapshots: '@antfu/utils@0.7.8': {} - '@babel/code-frame@7.24.2': + '@babel/code-frame@7.24.6': dependencies: - '@babel/highlight': 7.24.5 + '@babel/highlight': 7.24.6 picocolors: 1.0.1 - '@babel/helper-string-parser@7.24.1': {} + '@babel/helper-string-parser@7.24.6': {} - '@babel/helper-validator-identifier@7.24.5': {} + '@babel/helper-validator-identifier@7.24.6': {} - '@babel/highlight@7.24.5': + '@babel/highlight@7.24.6': dependencies: - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-validator-identifier': 7.24.6 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.1 - '@babel/parser@7.24.5': + '@babel/parser@7.24.6': dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.24.6 - '@babel/types@7.24.5': + '@babel/types@7.24.6': dependencies: - '@babel/helper-string-parser': 7.24.1 - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-string-parser': 7.24.6 + '@babel/helper-validator-identifier': 7.24.6 to-fast-properties: 2.0.0 '@clack/core@0.3.4': @@ -2213,13 +2455,13 @@ snapshots: '@dprint/markdown@0.16.4': {} - '@dprint/toml@0.6.1': {} + '@dprint/toml@0.6.2': {} '@es-joy/jsdoccomment@0.43.0': dependencies: '@types/eslint': 8.56.10 '@types/estree': 1.0.5 - '@typescript-eslint/types': 7.9.0 + '@typescript-eslint/types': 7.11.0 comment-parser: 1.4.1 esquery: 1.5.0 jsdoc-type-pratt-parser: 4.0.0 @@ -2293,28 +2535,14 @@ snapshots: '@esbuild/win32-x64@0.20.2': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@9.2.0)': + '@eslint-community/eslint-utils@4.4.0(eslint@9.3.0)': dependencies: - eslint: 9.2.0 + eslint: 9.3.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.10.0': {} - '@eslint/eslintrc@2.1.4': - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.1 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/eslintrc@3.0.2': + '@eslint/eslintrc@3.1.0': dependencies: ajv: 6.12.6 debug: 4.3.4 @@ -2328,7 +2556,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.2.0': {} + '@eslint/js@9.3.0': {} '@humanwhocodes/config-array@0.13.0': dependencies: @@ -2342,10 +2570,34 @@ snapshots: '@humanwhocodes/object-schema@2.0.3': {} - '@humanwhocodes/retry@0.2.4': {} + '@humanwhocodes/retry@0.3.0': {} + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jridgewell/gen-mapping@0.3.5': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} '@jridgewell/sourcemap-codec@1.4.15': {} + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jsdevtools/ez-spawn@3.0.4': dependencies: call-me-maybe: 1.0.2 @@ -2365,107 +2617,110 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@pkgjs/parseargs@0.11.0': + optional: true + '@pkgr/core@0.1.1': {} - '@rollup/rollup-android-arm-eabi@4.17.2': + '@rollup/rollup-android-arm-eabi@4.18.0': optional: true - '@rollup/rollup-android-arm64@4.17.2': + '@rollup/rollup-android-arm64@4.18.0': optional: true - '@rollup/rollup-darwin-arm64@4.17.2': + '@rollup/rollup-darwin-arm64@4.18.0': optional: true - '@rollup/rollup-darwin-x64@4.17.2': + '@rollup/rollup-darwin-x64@4.18.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.17.2': + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.17.2': + '@rollup/rollup-linux-arm-musleabihf@4.18.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.17.2': + '@rollup/rollup-linux-arm64-gnu@4.18.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.17.2': + '@rollup/rollup-linux-arm64-musl@4.18.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.17.2': + '@rollup/rollup-linux-riscv64-gnu@4.18.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.17.2': + '@rollup/rollup-linux-s390x-gnu@4.18.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.17.2': + '@rollup/rollup-linux-x64-gnu@4.18.0': optional: true - '@rollup/rollup-linux-x64-musl@4.17.2': + '@rollup/rollup-linux-x64-musl@4.18.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.17.2': + '@rollup/rollup-win32-arm64-msvc@4.18.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.17.2': + '@rollup/rollup-win32-ia32-msvc@4.18.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.17.2': + '@rollup/rollup-win32-x64-msvc@4.18.0': optional: true - '@shikijs/core@1.5.2': {} + '@shikijs/core@1.6.0': {} - '@shikijs/transformers@1.5.2': + '@shikijs/transformers@1.6.0': dependencies: - shiki: 1.5.2 + shiki: 1.6.0 '@sindresorhus/merge-streams@2.3.0': {} - '@stylistic/eslint-plugin-js@2.1.0(eslint@9.2.0)': + '@stylistic/eslint-plugin-js@2.1.0(eslint@9.3.0)': dependencies: '@types/eslint': 8.56.10 acorn: 8.11.3 - eslint: 9.2.0 + eslint: 9.3.0 eslint-visitor-keys: 4.0.0 espree: 10.0.1 - '@stylistic/eslint-plugin-jsx@2.1.0(eslint@9.2.0)': + '@stylistic/eslint-plugin-jsx@2.1.0(eslint@9.3.0)': dependencies: - '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.2.0) + '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.3.0) '@types/eslint': 8.56.10 - eslint: 9.2.0 + eslint: 9.3.0 estraverse: 5.3.0 picomatch: 4.0.2 - '@stylistic/eslint-plugin-plus@2.1.0(eslint@9.2.0)(typescript@5.4.5)': + '@stylistic/eslint-plugin-plus@2.1.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: '@types/eslint': 8.56.10 - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - eslint: 9.2.0 + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + eslint: 9.3.0 transitivePeerDependencies: - supports-color - typescript - '@stylistic/eslint-plugin-ts@2.1.0(eslint@9.2.0)(typescript@5.4.5)': + '@stylistic/eslint-plugin-ts@2.1.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.2.0) + '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.3.0) '@types/eslint': 8.56.10 - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - eslint: 9.2.0 + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + eslint: 9.3.0 transitivePeerDependencies: - supports-color - typescript - '@stylistic/eslint-plugin@2.1.0(eslint@9.2.0)(typescript@5.4.5)': + '@stylistic/eslint-plugin@2.1.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.2.0) - '@stylistic/eslint-plugin-jsx': 2.1.0(eslint@9.2.0) - '@stylistic/eslint-plugin-plus': 2.1.0(eslint@9.2.0)(typescript@5.4.5) - '@stylistic/eslint-plugin-ts': 2.1.0(eslint@9.2.0)(typescript@5.4.5) + '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.3.0) + '@stylistic/eslint-plugin-jsx': 2.1.0(eslint@9.3.0) + '@stylistic/eslint-plugin-plus': 2.1.0(eslint@9.3.0)(typescript@5.4.5) + '@stylistic/eslint-plugin-ts': 2.1.0(eslint@9.3.0)(typescript@5.4.5) '@types/eslint': 8.56.10 - eslint: 9.2.0 + eslint: 9.3.0 transitivePeerDependencies: - supports-color - typescript @@ -2498,15 +2753,15 @@ snapshots: '@types/web-bluetooth@0.0.20': {} - '@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5)': + '@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5)': dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - '@typescript-eslint/scope-manager': 7.9.0 - '@typescript-eslint/type-utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - '@typescript-eslint/visitor-keys': 7.9.0 - eslint: 9.2.0 + '@typescript-eslint/parser': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/scope-manager': 7.11.0 + '@typescript-eslint/type-utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.11.0 + eslint: 9.3.0 graphemer: 1.4.0 ignore: 5.3.1 natural-compare: 1.4.0 @@ -2516,42 +2771,42 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5)': + '@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@typescript-eslint/scope-manager': 7.9.0 - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) - '@typescript-eslint/visitor-keys': 7.9.0 + '@typescript-eslint/scope-manager': 7.11.0 + '@typescript-eslint/types': 7.11.0 + '@typescript-eslint/typescript-estree': 7.11.0(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.11.0 debug: 4.3.4 - eslint: 9.2.0 + eslint: 9.3.0 optionalDependencies: typescript: 5.4.5 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.9.0': + '@typescript-eslint/scope-manager@7.11.0': dependencies: - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/visitor-keys': 7.9.0 + '@typescript-eslint/types': 7.11.0 + '@typescript-eslint/visitor-keys': 7.11.0 - '@typescript-eslint/type-utils@7.9.0(eslint@9.2.0)(typescript@5.4.5)': + '@typescript-eslint/type-utils@7.11.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 7.11.0(typescript@5.4.5) + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) debug: 4.3.4 - eslint: 9.2.0 + eslint: 9.3.0 ts-api-utils: 1.3.0(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@7.9.0': {} + '@typescript-eslint/types@7.11.0': {} - '@typescript-eslint/typescript-estree@7.9.0(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@7.11.0(typescript@5.4.5)': dependencies: - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/visitor-keys': 7.9.0 + '@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 @@ -2563,30 +2818,30 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.9.0(eslint@9.2.0)(typescript@5.4.5)': + '@typescript-eslint/utils@7.11.0(eslint@9.3.0)(typescript@5.4.5)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) - '@typescript-eslint/scope-manager': 7.9.0 - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) - eslint: 9.2.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) + '@typescript-eslint/scope-manager': 7.11.0 + '@typescript-eslint/types': 7.11.0 + '@typescript-eslint/typescript-estree': 7.11.0(typescript@5.4.5) + eslint: 9.3.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@7.9.0': + '@typescript-eslint/visitor-keys@7.11.0': dependencies: - '@typescript-eslint/types': 7.9.0 + '@typescript-eslint/types': 7.11.0 eslint-visitor-keys: 3.4.3 - '@vitejs/plugin-vue@5.0.4(vite@5.2.11)(vue@3.4.27(typescript@5.4.5))': + '@vitejs/plugin-vue@5.0.4(vite@5.2.11(sass@1.77.2))(vue@3.4.27(typescript@5.4.5))': dependencies: - vite: 5.2.11 + vite: 5.2.11(sass@1.77.2) vue: 3.4.27(typescript@5.4.5) '@vue/compiler-core@3.4.27': dependencies: - '@babel/parser': 7.24.5 + '@babel/parser': 7.24.6 '@vue/shared': 3.4.27 entities: 4.5.0 estree-walker: 2.0.2 @@ -2599,7 +2854,7 @@ snapshots: '@vue/compiler-sfc@3.4.27': dependencies: - '@babel/parser': 7.24.5 + '@babel/parser': 7.24.6 '@vue/compiler-core': 3.4.27 '@vue/compiler-dom': 3.4.27 '@vue/compiler-ssr': 3.4.27 @@ -2614,22 +2869,22 @@ snapshots: '@vue/compiler-dom': 3.4.27 '@vue/shared': 3.4.27 - '@vue/devtools-api@7.2.0(vue@3.4.27(typescript@5.4.5))': + '@vue/devtools-api@7.2.1(vue@3.4.27(typescript@5.4.5))': dependencies: - '@vue/devtools-kit': 7.2.0(vue@3.4.27(typescript@5.4.5)) + '@vue/devtools-kit': 7.2.1(vue@3.4.27(typescript@5.4.5)) transitivePeerDependencies: - vue - '@vue/devtools-kit@7.2.0(vue@3.4.27(typescript@5.4.5))': + '@vue/devtools-kit@7.2.1(vue@3.4.27(typescript@5.4.5))': dependencies: - '@vue/devtools-shared': 7.2.0 + '@vue/devtools-shared': 7.2.1 hookable: 5.5.3 mitt: 3.0.1 perfect-debounce: 1.0.0 speakingurl: 14.0.1 vue: 3.4.27(typescript@5.4.5) - '@vue/devtools-shared@7.2.0': + '@vue/devtools-shared@7.2.1': dependencies: rfdc: 1.3.1 @@ -2656,20 +2911,20 @@ snapshots: '@vue/shared@3.4.27': {} - '@vueuse/core@10.9.0(vue@3.4.27(typescript@5.4.5))': + '@vueuse/core@10.10.0(vue@3.4.27(typescript@5.4.5))': dependencies: '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 10.9.0 - '@vueuse/shared': 10.9.0(vue@3.4.27(typescript@5.4.5)) + '@vueuse/metadata': 10.10.0 + '@vueuse/shared': 10.10.0(vue@3.4.27(typescript@5.4.5)) vue-demi: 0.14.7(vue@3.4.27(typescript@5.4.5)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/integrations@10.9.0(focus-trap@7.5.4)(vue@3.4.27(typescript@5.4.5))': + '@vueuse/integrations@10.10.0(focus-trap@7.5.4)(vue@3.4.27(typescript@5.4.5))': dependencies: - '@vueuse/core': 10.9.0(vue@3.4.27(typescript@5.4.5)) - '@vueuse/shared': 10.9.0(vue@3.4.27(typescript@5.4.5)) + '@vueuse/core': 10.10.0(vue@3.4.27(typescript@5.4.5)) + '@vueuse/shared': 10.10.0(vue@3.4.27(typescript@5.4.5)) vue-demi: 0.14.7(vue@3.4.27(typescript@5.4.5)) optionalDependencies: focus-trap: 7.5.4 @@ -2677,9 +2932,9 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/metadata@10.9.0': {} + '@vueuse/metadata@10.10.0': {} - '@vueuse/shared@10.9.0(vue@3.4.27(typescript@5.4.5))': + '@vueuse/shared@10.10.0(vue@3.4.27(typescript@5.4.5))': dependencies: vue-demi: 0.14.7(vue@3.4.27(typescript@5.4.5)) transitivePeerDependencies: @@ -2719,6 +2974,8 @@ snapshots: ansi-regex@5.0.1: {} + ansi-regex@6.0.1: {} + ansi-styles@3.2.1: dependencies: color-convert: 1.9.3 @@ -2727,8 +2984,19 @@ snapshots: dependencies: color-convert: 2.0.1 + ansi-styles@6.2.1: {} + + any-promise@1.3.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + are-docs-informative@0.0.2: {} + arg@5.0.2: {} + argparse@1.0.10: dependencies: sprintf-js: 1.0.3 @@ -2737,8 +3005,20 @@ snapshots: array-union@2.1.0: {} + autoprefixer@10.4.19(postcss@8.4.38): + dependencies: + browserslist: 4.23.0 + caniuse-lite: 1.0.30001623 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.0.1 + postcss: 8.4.38 + postcss-value-parser: 4.2.0 + balanced-match@1.0.2: {} + binary-extensions@2.3.0: {} + boolbase@1.0.0: {} brace-expansion@1.1.11: @@ -2750,14 +3030,14 @@ snapshots: dependencies: balanced-match: 1.0.2 - braces@3.0.2: + braces@3.0.3: dependencies: - fill-range: 7.0.1 + fill-range: 7.1.1 browserslist@4.23.0: dependencies: - caniuse-lite: 1.0.30001620 - electron-to-chromium: 1.4.773 + caniuse-lite: 1.0.30001623 + electron-to-chromium: 1.4.783 node-releases: 2.0.14 update-browserslist-db: 1.0.16(browserslist@4.23.0) @@ -2767,7 +3047,9 @@ snapshots: callsites@3.1.0: {} - caniuse-lite@1.0.30001620: {} + camelcase-css@2.0.1: {} + + caniuse-lite@1.0.30001623: {} chalk@2.4.2: dependencies: @@ -2786,6 +3068,18 @@ snapshots: character-reference-invalid@1.1.4: {} + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + ci-info@4.0.0: {} clean-regexp@1.0.0: @@ -2810,6 +3104,8 @@ snapshots: color-name@1.1.4: {} + commander@4.1.1: {} + comment-parser@1.4.1: {} concat-map@0.0.1: {} @@ -2840,18 +3136,26 @@ snapshots: deep-is@0.1.4: {} + didyoumean@1.2.2: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 + dlv@1.1.3: {} + doctrine@3.0.0: dependencies: esutils: 2.0.3 - electron-to-chromium@1.4.773: {} + eastasianwidth@0.2.0: {} + + electron-to-chromium@1.4.783: {} emoji-regex@8.0.0: {} + emoji-regex@9.2.2: {} + enhanced-resolve@5.16.1: dependencies: graceful-fs: 4.2.11 @@ -2895,9 +3199,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-compat-utils@0.5.0(eslint@9.2.0): + eslint-compat-utils@0.5.0(eslint@9.3.0): dependencies: - eslint: 9.2.0 + eslint: 9.3.0 semver: 7.6.2 eslint-config-flat-gitignore@0.1.5: @@ -2905,14 +3209,14 @@ snapshots: find-up: 7.0.0 parse-gitignore: 2.0.0 - eslint-flat-config-utils@0.2.4: + eslint-flat-config-utils@0.2.5: dependencies: '@types/eslint': 8.56.10 pathe: 1.1.2 - eslint-formatting-reporter@0.0.0(eslint@9.2.0): + eslint-formatting-reporter@0.0.0(eslint@9.3.0): dependencies: - eslint: 9.2.0 + eslint: 9.3.0 prettier-linter-helpers: 1.0.0 eslint-import-resolver-node@0.3.9: @@ -2923,150 +3227,150 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-merge-processors@0.1.0(eslint@9.2.0): + eslint-merge-processors@0.1.0(eslint@9.3.0): dependencies: - eslint: 9.2.0 + eslint: 9.3.0 eslint-parser-plain@0.1.0: {} - eslint-plugin-antfu@2.2.0(eslint@9.2.0): + eslint-plugin-antfu@2.3.0(eslint@9.3.0): dependencies: '@antfu/utils': 0.7.8 - eslint: 9.2.0 + eslint: 9.3.0 - eslint-plugin-command@0.2.1(eslint@9.2.0): + eslint-plugin-command@0.2.3(eslint@9.3.0): dependencies: '@es-joy/jsdoccomment': 0.43.0 - eslint: 9.2.0 + eslint: 9.3.0 - eslint-plugin-es-x@7.6.0(eslint@9.2.0): + eslint-plugin-es-x@7.6.0(eslint@9.3.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) '@eslint-community/regexpp': 4.10.0 - eslint: 9.2.0 - eslint-compat-utils: 0.5.0(eslint@9.2.0) + eslint: 9.3.0 + eslint-compat-utils: 0.5.0(eslint@9.3.0) - eslint-plugin-eslint-comments@3.2.0(eslint@9.2.0): + eslint-plugin-eslint-comments@3.2.0(eslint@9.3.0): dependencies: escape-string-regexp: 1.0.5 - eslint: 9.2.0 + eslint: 9.3.0 ignore: 5.3.1 - eslint-plugin-format@0.1.1(eslint@9.2.0): + eslint-plugin-format@0.1.1(eslint@9.3.0): dependencies: '@dprint/formatter': 0.2.1 '@dprint/markdown': 0.16.4 - '@dprint/toml': 0.6.1 - eslint: 9.2.0 - eslint-formatting-reporter: 0.0.0(eslint@9.2.0) + '@dprint/toml': 0.6.2 + eslint: 9.3.0 + eslint-formatting-reporter: 0.0.0(eslint@9.3.0) eslint-parser-plain: 0.1.0 prettier: 3.2.5 synckit: 0.9.0 - eslint-plugin-import-x@0.5.0(eslint@9.2.0)(typescript@5.4.5): + eslint-plugin-import-x@0.5.1(eslint@9.3.0)(typescript@5.4.5): dependencies: - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) debug: 4.3.4 doctrine: 3.0.0 - eslint: 9.2.0 + eslint: 9.3.0 eslint-import-resolver-node: 0.3.9 get-tsconfig: 4.7.5 is-glob: 4.0.3 minimatch: 9.0.4 semver: 7.6.2 + tslib: 2.6.2 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-jsdoc@48.2.5(eslint@9.2.0): + eslint-plugin-jsdoc@48.2.6(eslint@9.3.0): 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 - eslint: 9.2.0 + eslint: 9.3.0 esquery: 1.5.0 - is-builtin-module: 3.2.1 semver: 7.6.2 spdx-expression-parse: 4.0.0 transitivePeerDependencies: - supports-color - eslint-plugin-jsonc@2.15.1(eslint@9.2.0): + eslint-plugin-jsonc@2.16.0(eslint@9.3.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) - eslint: 9.2.0 - eslint-compat-utils: 0.5.0(eslint@9.2.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) + eslint: 9.3.0 + eslint-compat-utils: 0.5.0(eslint@9.3.0) espree: 9.6.1 graphemer: 1.4.0 jsonc-eslint-parser: 2.4.0 natural-compare: 1.4.0 synckit: 0.6.2 - eslint-plugin-markdown@5.0.0(eslint@9.2.0): + eslint-plugin-markdown@5.0.0(eslint@9.3.0): dependencies: - eslint: 9.2.0 + eslint: 9.3.0 mdast-util-from-markdown: 0.8.5 transitivePeerDependencies: - supports-color - eslint-plugin-n@17.7.0(eslint@9.2.0): + eslint-plugin-n@17.7.0(eslint@9.3.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) enhanced-resolve: 5.16.1 - eslint: 9.2.0 - eslint-plugin-es-x: 7.6.0(eslint@9.2.0) + eslint: 9.3.0 + eslint-plugin-es-x: 7.6.0(eslint@9.3.0) get-tsconfig: 4.7.5 - globals: 15.2.0 + globals: 15.3.0 ignore: 5.3.1 minimatch: 9.0.4 semver: 7.6.2 eslint-plugin-no-only-tests@3.1.0: {} - eslint-plugin-perfectionist@2.10.0(eslint@9.2.0)(typescript@5.4.5)(vue-eslint-parser@9.4.2(eslint@9.2.0)): + eslint-plugin-perfectionist@2.10.0(eslint@9.3.0)(typescript@5.4.5)(vue-eslint-parser@9.4.2(eslint@9.3.0)): dependencies: - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - eslint: 9.2.0 + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + eslint: 9.3.0 minimatch: 9.0.4 natural-compare-lite: 1.4.0 optionalDependencies: - vue-eslint-parser: 9.4.2(eslint@9.2.0) + vue-eslint-parser: 9.4.2(eslint@9.3.0) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-regexp@2.5.0(eslint@9.2.0): + eslint-plugin-regexp@2.6.0(eslint@9.3.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) '@eslint-community/regexpp': 4.10.0 comment-parser: 1.4.1 - eslint: 9.2.0 + eslint: 9.3.0 jsdoc-type-pratt-parser: 4.0.0 refa: 0.12.1 regexp-ast-analysis: 0.7.1 scslre: 0.3.0 - eslint-plugin-toml@0.11.0(eslint@9.2.0): + eslint-plugin-toml@0.11.0(eslint@9.3.0): dependencies: debug: 4.3.4 - eslint: 9.2.0 - eslint-compat-utils: 0.5.0(eslint@9.2.0) + eslint: 9.3.0 + eslint-compat-utils: 0.5.0(eslint@9.3.0) lodash: 4.17.21 toml-eslint-parser: 0.9.3 transitivePeerDependencies: - supports-color - eslint-plugin-unicorn@52.0.0(eslint@9.2.0): + eslint-plugin-unicorn@53.0.0(eslint@9.3.0): dependencies: - '@babel/helper-validator-identifier': 7.24.5 - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) - '@eslint/eslintrc': 2.1.4 + '@babel/helper-validator-identifier': 7.24.6 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) + '@eslint/eslintrc': 3.1.0 ci-info: 4.0.0 clean-regexp: 1.0.0 core-js-compat: 3.37.1 - eslint: 9.2.0 + eslint: 9.3.0 esquery: 1.5.0 indent-string: 4.0.0 is-builtin-module: 3.2.1 @@ -3080,52 +3384,52 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-unused-imports@3.2.0(@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0): + eslint-plugin-unused-imports@3.2.0(@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0): dependencies: - eslint: 9.2.0 + eslint: 9.3.0 eslint-rule-composer: 0.3.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5) + '@typescript-eslint/eslint-plugin': 7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) - eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5): + eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5): dependencies: - '@typescript-eslint/utils': 7.9.0(eslint@9.2.0)(typescript@5.4.5) - eslint: 9.2.0 + '@typescript-eslint/utils': 7.11.0(eslint@9.3.0)(typescript@5.4.5) + eslint: 9.3.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0(eslint@9.2.0)(typescript@5.4.5))(eslint@9.2.0)(typescript@5.4.5) + '@typescript-eslint/eslint-plugin': 7.11.0(@typescript-eslint/parser@7.11.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-vue@9.26.0(eslint@9.2.0): + eslint-plugin-vue@9.26.0(eslint@9.3.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) - eslint: 9.2.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) + eslint: 9.3.0 globals: 13.24.0 natural-compare: 1.4.0 nth-check: 2.1.1 - postcss-selector-parser: 6.0.16 + postcss-selector-parser: 6.1.0 semver: 7.6.2 - vue-eslint-parser: 9.4.2(eslint@9.2.0) + vue-eslint-parser: 9.4.2(eslint@9.3.0) xml-name-validator: 4.0.0 transitivePeerDependencies: - supports-color - eslint-plugin-yml@1.14.0(eslint@9.2.0): + eslint-plugin-yml@1.14.0(eslint@9.3.0): dependencies: debug: 4.3.4 - eslint: 9.2.0 - eslint-compat-utils: 0.5.0(eslint@9.2.0) + eslint: 9.3.0 + eslint-compat-utils: 0.5.0(eslint@9.3.0) lodash: 4.17.21 natural-compare: 1.4.0 - yaml-eslint-parser: 1.2.2 + yaml-eslint-parser: 1.2.3 transitivePeerDependencies: - supports-color - eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.2.0): + eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.3.0): dependencies: '@vue/compiler-sfc': 3.4.27 - eslint: 9.2.0 + eslint: 9.3.0 eslint-rule-composer@0.3.0: {} @@ -3143,15 +3447,15 @@ snapshots: eslint-visitor-keys@4.0.0: {} - eslint@9.2.0: + eslint@9.3.0: dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.3.0) '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 3.0.2 - '@eslint/js': 9.2.0 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.3.0 '@humanwhocodes/config-array': 0.13.0 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.2.4 + '@humanwhocodes/retry': 0.3.0 '@nodelib/fs.walk': 1.2.8 ajv: 6.12.6 chalk: 4.1.2 @@ -3224,7 +3528,7 @@ snapshots: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.5 + micromatch: 4.0.7 fast-json-stable-stringify@2.1.0: {} @@ -3238,7 +3542,7 @@ snapshots: dependencies: flat-cache: 4.0.1 - fill-range@7.0.1: + fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -3269,6 +3573,13 @@ snapshots: dependencies: tabbable: 6.2.0 + foreground-child@3.1.1: + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.1.0 + + fraction.js@4.3.7: {} + fs-extra@11.2.0: dependencies: graceful-fs: 4.2.11 @@ -3294,13 +3605,21 @@ snapshots: dependencies: is-glob: 4.0.3 + glob@10.4.1: + dependencies: + foreground-child: 3.1.1 + jackspeak: 3.1.2 + minimatch: 9.0.4 + minipass: 7.1.2 + path-scurry: 1.11.1 + globals@13.24.0: dependencies: type-fest: 0.20.2 globals@14.0.0: {} - globals@15.2.0: {} + globals@15.3.0: {} globby@11.1.0: dependencies: @@ -3345,6 +3664,8 @@ snapshots: ignore@5.3.1: {} + immutable@4.3.6: {} + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 @@ -3363,6 +3684,10 @@ snapshots: is-arrayish@0.2.1: {} + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + is-builtin-module@3.2.1: dependencies: builtin-modules: 3.3.0 @@ -3391,6 +3716,14 @@ snapshots: isexe@2.0.0: {} + jackspeak@3.1.2: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + jiti@1.21.0: {} + js-tokens@4.0.0: {} js-yaml@3.14.1: @@ -3440,6 +3773,10 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lilconfig@2.1.0: {} + + lilconfig@3.1.1: {} + lines-and-columns@1.2.4: {} local-pkg@0.5.0: @@ -3463,6 +3800,8 @@ snapshots: lodash@4.17.21: {} + lru-cache@10.2.2: {} + magic-string@0.30.10: dependencies: '@jridgewell/sourcemap-codec': 1.4.15 @@ -3490,9 +3829,9 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.5: + micromatch@4.0.7: dependencies: - braces: 3.0.2 + braces: 3.0.3 picomatch: 2.3.1 min-indent@1.0.1: {} @@ -3505,6 +3844,8 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minipass@7.1.2: {} + minisearch@6.3.0: {} mitt@3.0.1: {} @@ -3520,6 +3861,12 @@ snapshots: ms@2.1.3: {} + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + nanoid@3.3.7: {} natural-compare-lite@1.4.0: {} @@ -3535,10 +3882,18 @@ snapshots: semver: 5.7.2 validate-npm-package-license: 3.0.4 + normalize-path@3.0.0: {} + + normalize-range@0.1.2: {} + nth-check@2.1.1: dependencies: boolbase: 1.0.0 + object-assign@4.1.1: {} + + object-hash@3.0.0: {} + optionator@0.9.4: dependencies: deep-is: 0.1.4 @@ -3591,7 +3946,7 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.24.2 + '@babel/code-frame': 7.24.6 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -3604,6 +3959,11 @@ snapshots: path-parse@1.0.7: {} + path-scurry@1.11.1: + dependencies: + lru-cache: 10.2.2 + minipass: 7.1.2 + path-type@4.0.0: {} path-type@5.0.0: {} @@ -3618,6 +3978,10 @@ snapshots: picomatch@4.0.2: {} + pify@2.3.0: {} + + pirates@4.0.6: {} + pkg-types@1.1.1: dependencies: confbox: 0.1.7 @@ -3626,11 +3990,37 @@ snapshots: pluralize@8.0.0: {} - postcss-selector-parser@6.0.16: + postcss-import@15.1.0(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.8 + + postcss-js@4.0.1(postcss@8.4.38): + dependencies: + camelcase-css: 2.0.1 + postcss: 8.4.38 + + postcss-load-config@4.0.2(postcss@8.4.38): + dependencies: + lilconfig: 3.1.1 + yaml: 2.4.2 + optionalDependencies: + postcss: 8.4.38 + + postcss-nested@6.0.1(postcss@8.4.38): + dependencies: + postcss: 8.4.38 + postcss-selector-parser: 6.1.0 + + postcss-selector-parser@6.1.0: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 + postcss-value-parser@4.2.0: {} + postcss@8.4.38: dependencies: nanoid: 3.3.7 @@ -3651,6 +4041,10 @@ snapshots: queue-microtask@1.2.3: {} + read-cache@1.0.0: + dependencies: + pify: 2.3.0 + read-pkg-up@7.0.1: dependencies: find-up: 4.1.0 @@ -3664,6 +4058,10 @@ snapshots: parse-json: 5.2.0 type-fest: 0.6.0 + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + refa@0.12.1: dependencies: '@eslint-community/regexpp': 4.10.0 @@ -3695,32 +4093,38 @@ snapshots: rfdc@1.3.1: {} - rollup@4.17.2: + rollup@4.18.0: dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.17.2 - '@rollup/rollup-android-arm64': 4.17.2 - '@rollup/rollup-darwin-arm64': 4.17.2 - '@rollup/rollup-darwin-x64': 4.17.2 - '@rollup/rollup-linux-arm-gnueabihf': 4.17.2 - '@rollup/rollup-linux-arm-musleabihf': 4.17.2 - '@rollup/rollup-linux-arm64-gnu': 4.17.2 - '@rollup/rollup-linux-arm64-musl': 4.17.2 - '@rollup/rollup-linux-powerpc64le-gnu': 4.17.2 - '@rollup/rollup-linux-riscv64-gnu': 4.17.2 - '@rollup/rollup-linux-s390x-gnu': 4.17.2 - '@rollup/rollup-linux-x64-gnu': 4.17.2 - '@rollup/rollup-linux-x64-musl': 4.17.2 - '@rollup/rollup-win32-arm64-msvc': 4.17.2 - '@rollup/rollup-win32-ia32-msvc': 4.17.2 - '@rollup/rollup-win32-x64-msvc': 4.17.2 + '@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.3 run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 + sass@1.77.2: + dependencies: + chokidar: 3.6.0 + immutable: 4.3.6 + source-map-js: 1.2.0 + scslre@0.3.0: dependencies: '@eslint-community/regexpp': 4.10.0 @@ -3744,9 +4148,11 @@ snapshots: shebang-regex@3.0.0: {} - shiki@1.5.2: + shiki@1.6.0: dependencies: - '@shikijs/core': 1.5.2 + '@shikijs/core': 1.6.0 + + signal-exit@4.1.0: {} sisteransi@1.0.5: {} @@ -3759,21 +4165,21 @@ snapshots: spdx-correct@3.2.0: dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.17 + spdx-license-ids: 3.0.18 spdx-exceptions@2.5.0: {} spdx-expression-parse@3.0.1: dependencies: spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.17 + spdx-license-ids: 3.0.18 spdx-expression-parse@4.0.0: dependencies: spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.17 + spdx-license-ids: 3.0.18 - spdx-license-ids@3.0.17: {} + spdx-license-ids@3.0.18: {} speakingurl@14.0.1: {} @@ -3787,10 +4193,20 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.0.1 + strip-bom-string@1.0.0: {} strip-indent@3.0.0: @@ -3799,6 +4215,16 @@ snapshots: strip-json-comments@3.1.1: {} + sucrase@3.35.0: + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + commander: 4.1.1 + glob: 10.4.1 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + supports-color@5.5.0: dependencies: has-flag: 3.0.0 @@ -3820,10 +4246,45 @@ snapshots: tabbable@6.2.0: {} + tailwindcss@3.4.3: + dependencies: + '@alloc/quick-lru': 5.2.0 + arg: 5.0.2 + chokidar: 3.6.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.3.2 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.0 + lilconfig: 2.1.0 + micromatch: 4.0.7 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.0.1 + postcss: 8.4.38 + postcss-import: 15.1.0(postcss@8.4.38) + postcss-js: 4.0.1(postcss@8.4.38) + postcss-load-config: 4.0.2(postcss@8.4.38) + postcss-nested: 6.0.1(postcss@8.4.38) + postcss-selector-parser: 6.1.0 + resolve: 1.22.8 + sucrase: 3.35.0 + transitivePeerDependencies: + - ts-node + tapable@2.2.1: {} text-table@0.2.0: {} + thenify-all@1.6.0: + dependencies: + thenify: 3.3.1 + + thenify@3.3.1: + dependencies: + any-promise: 1.3.0 + to-fast-properties@2.0.0: {} to-regex-range@5.0.1: @@ -3838,6 +4299,8 @@ snapshots: dependencies: typescript: 5.4.5 + ts-interface-checker@0.1.13: {} + tslib@2.6.2: {} type-check@0.4.0: @@ -3881,31 +4344,32 @@ snapshots: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 - vite@5.2.11: + vite@5.2.11(sass@1.77.2): dependencies: esbuild: 0.20.2 postcss: 8.4.38 - rollup: 4.17.2 + rollup: 4.18.0 optionalDependencies: fsevents: 2.3.3 + sass: 1.77.2 - vitepress@1.2.0(@algolia/client-search@4.23.3)(postcss@8.4.38)(search-insights@2.13.0)(typescript@5.4.5): + vitepress@1.2.2(@algolia/client-search@4.23.3)(postcss@8.4.38)(sass@1.77.2)(search-insights@2.13.0)(typescript@5.4.5): dependencies: '@docsearch/css': 3.6.0 '@docsearch/js': 3.6.0(@algolia/client-search@4.23.3)(search-insights@2.13.0) - '@shikijs/core': 1.5.2 - '@shikijs/transformers': 1.5.2 + '@shikijs/core': 1.6.0 + '@shikijs/transformers': 1.6.0 '@types/markdown-it': 14.1.1 - '@vitejs/plugin-vue': 5.0.4(vite@5.2.11)(vue@3.4.27(typescript@5.4.5)) - '@vue/devtools-api': 7.2.0(vue@3.4.27(typescript@5.4.5)) + '@vitejs/plugin-vue': 5.0.4(vite@5.2.11(sass@1.77.2))(vue@3.4.27(typescript@5.4.5)) + '@vue/devtools-api': 7.2.1(vue@3.4.27(typescript@5.4.5)) '@vue/shared': 3.4.27 - '@vueuse/core': 10.9.0(vue@3.4.27(typescript@5.4.5)) - '@vueuse/integrations': 10.9.0(focus-trap@7.5.4)(vue@3.4.27(typescript@5.4.5)) + '@vueuse/core': 10.10.0(vue@3.4.27(typescript@5.4.5)) + '@vueuse/integrations': 10.10.0(focus-trap@7.5.4)(vue@3.4.27(typescript@5.4.5)) focus-trap: 7.5.4 mark.js: 8.11.1 minisearch: 6.3.0 - shiki: 1.5.2 - vite: 5.2.11 + shiki: 1.6.0 + vite: 5.2.11(sass@1.77.2) vue: 3.4.27(typescript@5.4.5) optionalDependencies: postcss: 8.4.38 @@ -3940,10 +4404,10 @@ snapshots: dependencies: vue: 3.4.27(typescript@5.4.5) - vue-eslint-parser@9.4.2(eslint@9.2.0): + vue-eslint-parser@9.4.2(eslint@9.3.0): dependencies: debug: 4.3.4 - eslint: 9.2.0 + eslint: 9.3.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 @@ -3975,11 +4439,17 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + xml-name-validator@4.0.0: {} y18n@5.0.8: {} - yaml-eslint-parser@1.2.2: + yaml-eslint-parser@1.2.3: dependencies: eslint-visitor-keys: 3.4.3 lodash: 4.17.21 diff --git a/postcss.config.mjs b/postcss.config.mjs new file mode 100644 index 0000000..2e7af2b --- /dev/null +++ b/postcss.config.mjs @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/tailwind.config.mjs b/tailwind.config.mjs new file mode 100644 index 0000000..b87b0c6 --- /dev/null +++ b/tailwind.config.mjs @@ -0,0 +1,9 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: ['**/*.{css,ts,js,vue}'], + darkMode: 'class', + theme: { + extend: {}, + }, + plugins: [], +}