diff --git a/README.md b/README.md index 1f1a8459a..311855f70 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![pnpm](https://img.shields.io/badge/maintained%20with-pnpm-cc00ff.svg?style=for-the-badge&logo=pnpm)](https://pnpm.io/) [![turborepo](https://img.shields.io/badge/built%20with-turborepo-cc00ff.svg?style=for-the-badge&logo=turborepo)](https://turborepo.org/) -[![combined-downloads](https://img.shields.io/endpoint?style=for-the-badge&url=https://combined-npm-downloads.deno.dev/@solid-primitives/utils,@solid-primitives/broadcast-channel,@solid-primitives/context,@solid-primitives/devices,@solid-primitives/event-dispatcher,@solid-primitives/event-props,@solid-primitives/fetch,@solid-primitives/filesystem,@solid-primitives/flux-store,@solid-primitives/i18n,@solid-primitives/idle,@solid-primitives/input-mask,@solid-primitives/keyed,@solid-primitives/lifecycle,@solid-primitives/list,@solid-primitives/marker,@solid-primitives/mutable,@solid-primitives/permission,@solid-primitives/platform,@solid-primitives/resource,@solid-primitives/scheduled,@solid-primitives/script-loader,@solid-primitives/selection,@solid-primitives/share,@solid-primitives/spring,@solid-primitives/start,@solid-primitives/state-machine,@solid-primitives/timer,@solid-primitives/transition-group,@solid-primitives/tween,@solid-primitives/virtual,@solid-primitives/websocket,@solid-primitives/workers)](https://dash.deno.com/playground/combined-npm-downloads) +[![combined-downloads](https://img.shields.io/endpoint?style=for-the-badge&url=https://combined-npm-downloads.deno.dev/@solid-primitives/utils,@solid-primitives/broadcast-channel,@solid-primitives/context,@solid-primitives/cookies,@solid-primitives/devices,@solid-primitives/event-dispatcher,@solid-primitives/event-props,@solid-primitives/fetch,@solid-primitives/filesystem,@solid-primitives/flux-store,@solid-primitives/i18n,@solid-primitives/idle,@solid-primitives/input-mask,@solid-primitives/keyed,@solid-primitives/lifecycle,@solid-primitives/list,@solid-primitives/marker,@solid-primitives/mutable,@solid-primitives/permission,@solid-primitives/platform,@solid-primitives/resource,@solid-primitives/scheduled,@solid-primitives/script-loader,@solid-primitives/selection,@solid-primitives/share,@solid-primitives/spring,@solid-primitives/state-machine,@solid-primitives/timer,@solid-primitives/transition-group,@solid-primitives/tween,@solid-primitives/websocket,@solid-primitives/workers)](https://dash.deno.com/playground/combined-npm-downloads) A project that strives to develop high-quality, community contributed Solid primitives. All utilities are well tested and continuously maintained. Every contribution to the repository is checked for quality and maintained to the highest degree of excellence. The ultimate goal is to extend Solid's primary and secondary primitives with a set of tertiary primitives. @@ -57,6 +57,7 @@ The goal of Solid Primitives is to wrap client and server side functionality to |[workers](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createWorker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createworker)
[createWorkerPool](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createworkerpool)
[createSignaledWorker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/workers#createsignaledworker)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/workers?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/workers)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/workers?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/workers)| |

*Network*

| |[connectivity](https://github.com/solidjs-community/solid-primitives/tree/main/packages/connectivity#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createConnectivitySignal](https://github.com/solidjs-community/solid-primitives/tree/main/packages/connectivity#createconnectivitysignal)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/connectivity?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/connectivity)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/connectivity?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/connectivity)| +|[cookies](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createServerCookie](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#createservercookie)
[createUserTheme](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#createusertheme)
[getCookiesString](https://github.com/solidjs-community/solid-primitives/tree/main/packages/cookies#getcookiesstring)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/cookies?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/cookies)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/cookies?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/cookies)| |[fetch](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fetch#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createFetch](https://github.com/solidjs-community/solid-primitives/tree/main/packages/fetch#createfetch)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/fetch?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/fetch)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/fetch?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/fetch)| |[graphql](https://github.com/solidjs-community/solid-primitives/tree/main/packages/graphql#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createGraphQLClient](https://github.com/solidjs-community/solid-primitives/tree/main/packages/graphql#creategraphqlclient)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/graphql?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/graphql)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/graphql?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/graphql)| |[stream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createstream)
[createAmplitudeStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createamplitudestream)
[createMediaPermissionRequest](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createmediapermissionrequest)
[createAmplitudeFromStream](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createamplitudefromstream)
[createScreen](https://github.com/solidjs-community/solid-primitives/tree/main/packages/stream#createscreen)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/stream?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/stream)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/stream?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/stream)| @@ -102,14 +103,12 @@ The goal of Solid Primitives is to wrap client and server side functionality to |[marker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/marker#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-1.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMarker](https://github.com/solidjs-community/solid-primitives/tree/main/packages/marker#createmarker)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/marker?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/marker)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/marker?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/marker)| |[masonry](https://github.com/solidjs-community/solid-primitives/tree/main/packages/masonry#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createMasonry](https://github.com/solidjs-community/solid-primitives/tree/main/packages/masonry#createmasonry)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/masonry?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/masonry)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/masonry?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/masonry)| |[pagination](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPagination](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#createpagination)
[createInfiniteScroll](https://github.com/solidjs-community/solid-primitives/tree/main/packages/pagination#createinfinitescroll)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/pagination?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/pagination)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/pagination?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/pagination)| -|[virtual](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[VirtualList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#virtuallist)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/virtual?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/virtual)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/virtual?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/virtual)| +|[virtual](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createVirutalList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#createvirutallist)
[VirtualList](https://github.com/solidjs-community/solid-primitives/tree/main/packages/virtual#virtuallist)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/virtual?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/virtual)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/virtual?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/virtual)| |

*Animation*

| |[presence](https://github.com/solidjs-community/solid-primitives/tree/main/packages/presence#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createPresence](https://github.com/solidjs-community/solid-primitives/tree/main/packages/presence#createpresence)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/presence?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/presence)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/presence?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/presence)| |[raf](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createRAF](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#createraf)
[createMs](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#createms)
[targetFPS](https://github.com/solidjs-community/solid-primitives/tree/main/packages/raf#targetfps)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/raf?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/raf)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/raf?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/raf)| |[spring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSpring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#createspring)
[createDerivedSpring](https://github.com/solidjs-community/solid-primitives/tree/main/packages/spring#createderivedspring)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/spring?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/spring)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/spring?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/spring)| |[transition-group](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-2.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createSwitchTransition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#createswitchtransition)
[createListTransition](https://github.com/solidjs-community/solid-primitives/tree/main/packages/transition-group#createlisttransition)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/transition-group?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/transition-group)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/transition-group?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/transition-group)| |[tween](https://github.com/solidjs-community/solid-primitives/tree/main/packages/tween#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-3.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createTween](https://github.com/solidjs-community/solid-primitives/tree/main/packages/tween#createtween)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/tween?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/tween)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/tween?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/tween)| -|

*Solid Start*

| -|[start](https://github.com/solidjs-community/solid-primitives/tree/main/packages/start#readme)|[![STAGE](https://img.shields.io/endpoint?style=for-the-badge&label=&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives/blob/main/CONTRIBUTING.md#contribution-process)|[createServerCookie](https://github.com/solidjs-community/solid-primitives/tree/main/packages/start#createservercookie)
[createUserTheme](https://github.com/solidjs-community/solid-primitives/tree/main/packages/start#createusertheme)|[![SIZE](https://img.shields.io/bundlephobia/minzip/@solid-primitives/start?style=for-the-badge&label=)](https://bundlephobia.com/package/@solid-primitives/start)|[![VERSION](https://img.shields.io/npm/v/@solid-primitives/start?style=for-the-badge&label=)](https://www.npmjs.com/package/@solid-primitives/start)| diff --git a/eslint.config.mjs b/eslint.config.mjs index e8ba5de59..ecb337067 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -3,9 +3,12 @@ import noOnlyTests from "eslint-plugin-no-only-tests"; import eslintComments from "eslint-plugin-eslint-comments"; import tsParser from "@typescript-eslint/parser"; -export default [{ - ignores: ["packages/*/dist/**/*", "packages/*/dev/**/*", "**/*/__snapshots__/**/*"], -}, { +/** @type {import("eslint").Linter.Config} */ +export default { + + files: ["**/*.{js,mjs,jsx,ts,tsx}"], + ignores: ["**/{dist,node_modules,__snapshots__}/**/*", "packages/*/dev/**/*", "site/**/*"], + plugins: { "@typescript-eslint": typescriptEslint, "no-only-tests": noOnlyTests, @@ -44,4 +47,4 @@ export default [{ "eslint-comments/no-unused-disable": "warn", "no-only-tests/no-only-tests": "warn", }, -}]; \ No newline at end of file +}; diff --git a/package.json b/package.json index 57dd797a6..e50ce3611 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,8 @@ "scripts": { "dev": "pnpm -dir site run dev", "format": "prettier --cache -w {site,packages,scripts,template}/**/*.{js,ts,json,css,tsx,jsx,md,html} --ignore-path .gitignore", - "lint:packages": "echo \"DISABLED: eslint --max-warnings 0 packages/*/src/**/*\"", - "lint:tests": "echo \"DISABLED: eslint packages/*/test/** --rule \"no-only-tests/no-only-tests: error\"\"", + "lint:packages": "eslint --max-warnings 0 \"packages/*/src/**/*\"", + "lint:tests": "eslint \"packages/*/test/**\" --rule \"no-only-tests/no-only-tests: error\"", "lint": "pnpm run \"/^lint:.*/\"", "test:client": "vitest -c ./configs/vitest.config.ts", "test:ssr": "pnpm run test:client --mode ssr", @@ -37,7 +37,6 @@ "eslint": "^9.10.0", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-no-only-tests": "^3.3.0", - "gzip-size": "^7.0.0", "jsdom": "^25.0.0", "json-to-markdown-table": "^1.0.0", "prettier": "^3.3.3", diff --git a/packages/start/LICENSE b/packages/cookies/LICENSE similarity index 100% rename from packages/start/LICENSE rename to packages/cookies/LICENSE diff --git a/packages/cookies/README.md b/packages/cookies/README.md new file mode 100644 index 000000000..29d7adae4 --- /dev/null +++ b/packages/cookies/README.md @@ -0,0 +1,98 @@ +

+ Solid Primitives cookies +

+ +# @solid-primitives/cookies + +[![turborepo](https://img.shields.io/badge/built%20with-turborepo-cc00ff.svg?style=for-the-badge&logo=turborepo)](https://turborepo.org/) +[![size](https://img.shields.io/bundlephobia/minzip/@solid-primitives/cookies?style=for-the-badge&label=size)](https://bundlephobia.com/package/@solid-primitives/cookies) +[![version](https://img.shields.io/npm/v/@solid-primitives/cookies?style=for-the-badge)](https://www.npmjs.com/package/@solid-primitives/cookies) +[![stage](https://img.shields.io/endpoint?style=for-the-badge&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives#contribution-process) + +A set of primitives for handling cookies in solid + +- [`createServerCookie`](#createservercookie) - Provides a getter and setter for a reactive cookie, which works isomorphically. +- [`createUserTheme`](#createusertheme) - Creates a Server Cookie providing a type safe way to store a theme and access it on the server or client. +- [`getCookiesString`](#getCookiesString) - A primitive that allows for the cookie string to be accessed isomorphically on the client, or on the server + +## Installation + +```bash +npm install @solid-primitives/cookies +# or +yarn add @solid-primitives/cookies +# or +pnpm add @solid-primitives/cookies +``` + +## How to use it + +## `createServerCookie` + +A primitive for creating a cookie that can be accessed isomorphically on the client, or the server. + +```ts +import { createServerCookie } from "@solid-primitives/cookies"; + +const [cookie, setCookie] = createServerCookie("cookieName"); + +cookie(); // => string | undefined +``` + +### Custom serialization + +Custom cookie serializers and deserializers can also be implemented + +```ts +import { createServerCookie } from "@solid-primitives/cookies"; + +const [serverCookie, setServerCookie] = createServerCookie("coolCookie", { + deserialize: str => (str ? str.split(" ") : []), // Deserializes cookie into a string[] + serialize: val => (val ? val.join(" ") : ""), // serializes the value back into a string +}); + +serverCookie(); // => string[] +``` + +## `createUserTheme` + +Composes `createServerCookie` to provide a type safe way to store a theme and access it on the server or client. + +```ts +import { createUserTheme } from "@solid-primitives/cookies"; + +const [theme, setTheme] = createUserTheme("cookieName"); + +theme(); // => "light" | "dark" | undefined + +// with default value +const [theme, setTheme] = createUserTheme("cookieName", { + defaultValue: "light", +}); + +theme(); // => "light" | "dark" +``` + +## `getCookiesString` + +A primitive that allows for the cookie string to be accessed isomorphically on the client, or on the server. +Uses `getRequestEvent` on the server and `document.cookie` on the client. + +```ts +import { getCookiesString, parseCookie } from "@solid-primitives/cookies"; + +const string = getCookiesString(); +const cookie = parseCookie(string, "cookie_name"); +``` + +## Examples + +PRs welcome :) + +## Demo + +You can view a demo of this primitive here: + +## Changelog + +See [CHANGELOG.md](./CHANGELOG.md) diff --git a/packages/start/dev/index.tsx b/packages/cookies/dev/index.tsx similarity index 68% rename from packages/start/dev/index.tsx rename to packages/cookies/dev/index.tsx index 340378c0f..a989a0e9c 100644 --- a/packages/start/dev/index.tsx +++ b/packages/cookies/dev/index.tsx @@ -1,8 +1,9 @@ -import { Component, createSignal } from "solid-js"; +import { Component } from "solid-js"; +import { createUserTheme } from "../src/index.js"; const App: Component = () => { - const [count, setCount] = createSignal(0); - const increment = () => setCount(count() + 1); + const [theme, setTheme] = createUserTheme(); + const increment = () => setTheme(theme() === "light" ? "dark" : "light"); return (
@@ -10,7 +11,7 @@ const App: Component = () => {

Counter component

it's very important...

diff --git a/packages/start/package.json b/packages/cookies/package.json similarity index 69% rename from packages/start/package.json rename to packages/cookies/package.json index d5f58a782..e031f5030 100644 --- a/packages/start/package.json +++ b/packages/cookies/package.json @@ -1,13 +1,14 @@ { - "name": "@solid-primitives/start", - "version": "0.0.4", - "description": "A set of primitives for Solid Start", - "author": "Thomas", + "name": "@solid-primitives/cookies", + "version": "0.0.1", + "description": "A set of primitives for handling cookies in solid", + "author": "Thomas Beer (https://github.com/Tommypop2)", "contributors": [ - "Damian Tarnawski " + "Damian Tarnawski ", + "Seth Murphy (https://github.com/eagerestwolf)" ], "license": "MIT", - "homepage": "https://primitives.solidjs.community/package/start", + "homepage": "https://primitives.solidjs.community/package/cookies", "repository": { "type": "git", "url": "git+https://github.com/solidjs-community/solid-primitives.git" @@ -16,18 +17,18 @@ "url": "https://github.com/solidjs-community/solid-primitives/issues" }, "primitive": { - "name": "start", + "name": "cookies", "stage": 0, "list": [ "createServerCookie", - "createUserTheme" + "createUserTheme", + "getCookiesString" ], - "category": "Solid Start" + "category": "Network" }, "keywords": [ "solid", "primitives", - "solid-start", "ssr" ], "private": false, @@ -59,11 +60,9 @@ "test:ssr": "pnpm run vitest --mode ssr" }, "peerDependencies": { - "solid-js": "^1.6.12", - "solid-start": ">=0.2.26" + "solid-js": "^1.8.18" }, "devDependencies": { - "solid-js": "^1.8.7", - "solid-start": "^0.3.10" + "solid-js": "^1.8.18" } } diff --git a/packages/start/src/index.ts b/packages/cookies/src/index.ts similarity index 64% rename from packages/start/src/index.ts rename to packages/cookies/src/index.ts index 529df7a99..e5797cce1 100644 --- a/packages/start/src/index.ts +++ b/packages/cookies/src/index.ts @@ -1,28 +1,43 @@ import { createSignal, createEffect, Signal } from "solid-js"; -import { isServer } from "solid-js/web"; -import { parseCookie } from "solid-start"; -import { useRequest } from "solid-start/server/ServerContext.jsx"; +import { getRequestEvent, isServer } from "solid-js/web"; + +const YEAR = 365 * 24 * 60 * 60; + +/* + Original code by Chakra UI + MIT Licensed, Copyright (c) 2019 Segun Adebayo. + + Credits to the Chakra UI team: + https://github.com/chakra-ui/chakra-ui/blob/%40chakra-ui/toast%401.2.0/packages/color-mode/src/storage-manager.ts +*/ + +export function parseCookie(cookie: string, key: string): string | undefined { + return cookie.match(new RegExp(`(^| )${key}=([^;]+)`))?.[2]; +} + +/** + * A primitive that allows for the cookie string to be accessed isomorphically on the client, or on the server + * @return Returns the cookie string + */ +export function getCookiesString(): string { + if (isServer) { + return getRequestEvent()?.request.headers.get("cookie") ?? ""; + } + return document.cookie; +} export type MaxAgeOptions = { - /** - * The maximum age of the cookie in seconds. Defaults to 1 year. - */ + /** The maximum age of the cookie in seconds. Defaults to 1 year. */ cookieMaxAge?: number; }; export type ServerCookieOptions = MaxAgeOptions & { - /** - * A function to deserialize the cookie value to be used as signal value - */ + /** A function to deserialize the cookie value to be used as signal value */ deserialize?: (str: string | undefined) => T; - /** - * A function to serialize the signal value to be used as cookie value - */ + /** A function to serialize the signal value to be used as cookie value */ serialize?: (value: T) => string; }; -const YEAR = 365 * 24 * 60 * 60; - /** * A primitive for creating a cookie that can be accessed isomorphically on the client, or the server * @@ -51,13 +66,7 @@ export function createServerCookie( cookieMaxAge = YEAR, } = options ?? {}; - const [cookie, setCookie] = createSignal( - deserialize( - parseCookie(isServer ? (useRequest().request.headers.get("cookie") ?? "") : document.cookie)[ - name - ], - ), - ); + const [cookie, setCookie] = createSignal(deserialize(parseCookie(getCookiesString(), name))); createEffect(p => { const string = serialize(cookie()); @@ -91,10 +100,10 @@ export function createUserTheme( name?: string, options?: UserThemeOptions, ): Signal; -export function createUserTheme(name = "theme", options?: UserThemeOptions): Signal { - const defaultValue = options?.defaultValue; +export function createUserTheme(name = "theme", options: UserThemeOptions = {}): Signal { + const { defaultValue, cookieMaxAge } = options; return createServerCookie(name, { - ...options, + cookieMaxAge, deserialize: str => (str === "light" || str === "dark" ? str : defaultValue), serialize: String, }); diff --git a/packages/start/tsconfig.json b/packages/cookies/tsconfig.json similarity index 100% rename from packages/start/tsconfig.json rename to packages/cookies/tsconfig.json diff --git a/packages/date/CHANGELOG.md b/packages/date/CHANGELOG.md index 620e773e1..437718c7c 100644 --- a/packages/date/CHANGELOG.md +++ b/packages/date/CHANGELOG.md @@ -1,5 +1,11 @@ # @solid-primitives/date +## 2.0.24 + +### Patch Changes + +- @solid-primitives/memo@1.3.10 + ## 2.0.23 ### Patch Changes diff --git a/packages/date/package.json b/packages/date/package.json index 3c1745f18..bbb5d1a6d 100644 --- a/packages/date/package.json +++ b/packages/date/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/date", - "version": "2.0.23", + "version": "2.0.24", "description": "Collection of reactive primitives and utility functions, providing easier ways to deal with dates in SolidJS", "author": "Damian Tarnawski @thetarnav ", "license": "MIT", diff --git a/packages/deep/CHANGELOG.md b/packages/deep/CHANGELOG.md index 4602633d1..859e82e7c 100644 --- a/packages/deep/CHANGELOG.md +++ b/packages/deep/CHANGELOG.md @@ -1,5 +1,11 @@ # @solid-primitives/deep +## 0.2.10 + +### Patch Changes + +- @solid-primitives/memo@1.3.10 + ## 0.2.9 ### Patch Changes diff --git a/packages/deep/package.json b/packages/deep/package.json index 33062e887..f6fac9144 100644 --- a/packages/deep/package.json +++ b/packages/deep/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/deep", - "version": "0.2.9", + "version": "0.2.10", "description": "Primitives for tracking and observing nested reactive objects in Solid.", "author": "Samuel Burbano ", "contributors": [ diff --git a/packages/filesystem/src/adapter-vfs.ts b/packages/filesystem/src/adapter-vfs.ts index 0a55c0f0f..f752c2330 100644 --- a/packages/filesystem/src/adapter-vfs.ts +++ b/packages/filesystem/src/adapter-vfs.ts @@ -21,7 +21,7 @@ export const makeVirtualFileSystem = ( const storageValue = storage?.getItem(key); try { storedValue = JSON.parse(typeof storageValue === "string" ? storageValue : "null"); - } catch (e) {} + } catch (_) {} let fs = storedValue || initial || {}; if ((storageValue as unknown) instanceof Promise) { (storageValue as unknown as Promise).then(storedValue => { @@ -57,7 +57,7 @@ export const makeVirtualFileSystem = ( typeof ref === "object" && Object.keys(ref).forEach((item: string) => typeof ref[item] === "string" - ? files.push(filter(`${path}${item}`, ref[item] as string)) + ? files.push(filter(`${path}${item}`, ref[item])) : walker(ref[item], `${path}${item}/`), ); }; @@ -181,7 +181,7 @@ export const makeVirtualFileSystem = ( get: path => { try { return ofs.readFile(path); - } catch (e) {} + } catch (_) {} }, has: path => ofs.getType(path) === "file", keys: () => getFiles(path => path)[Symbol.iterator](), diff --git a/packages/immutable/CHANGELOG.md b/packages/immutable/CHANGELOG.md index 4d230c732..b0eb9b26f 100644 --- a/packages/immutable/CHANGELOG.md +++ b/packages/immutable/CHANGELOG.md @@ -1,5 +1,12 @@ # @solid-primitives/immutable +## 1.0.10 + +### Patch Changes + +- Updated dependencies [9749071] + - @solid-primitives/keyed@1.2.3 + ## 1.0.9 ### Patch Changes diff --git a/packages/immutable/package.json b/packages/immutable/package.json index ded0ed0cf..d4c6cb521 100644 --- a/packages/immutable/package.json +++ b/packages/immutable/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/immutable", - "version": "1.0.9", + "version": "1.0.10", "description": "Primitive for rectifying immutable values and dealing with immutability in Solid.", "author": "Damian Tarnawski ", "contributors": [], diff --git a/packages/input-mask/dev/index.tsx b/packages/input-mask/dev/index.tsx index 96d215c62..e9a6de473 100644 --- a/packages/input-mask/dev/index.tsx +++ b/packages/input-mask/dev/index.tsx @@ -40,6 +40,37 @@ const App: Component = () => { const hexMask = maskArrayToFn(["#", /[0-9a-f]{0,6}/i]); const hexHandler = createMaskPattern(createInputMask(hexMask), () => "#000000"); + const moveSelection = (sel: Selection, pos: number, dist: number): Selection => [ + sel[0] > pos ? sel[0] + dist : sel[0], + sel[1] > pos ? sel[1] + dist : sel[1], + ]; + // Monetary amount + const moneyMask = (value: string, sel: Selection): [string, Selection] => { + value = value + .replace(/\D/g, (_: string, pos: number) => { + sel = moveSelection(sel, pos, -1); + return ""; + }) + .replace(/^0+/, ""); + if (value.length < 3) { + sel = moveSelection(sel, 0, 3 - value.length); + value = value.padStart(3, "0"); + } + for (let i = value.length - 1; i >= 0; i--) { + if (value.length - i === 2) { + value = `${value.slice(0, i)},${value.slice(i)}`; + sel = moveSelection(sel, i, 1); + } + if (value.length > 6 && (value.length - i - 6) % 4 === 1) { + value = `${value.slice(0, i + 1)}.${value.slice(i + 1)}`; + sel = moveSelection(sel, i + 1, 1); + } + } + sel = [Math.min(sel[0], value.length), Math.min(sel[1], value.length)]; + return [value + " €", sel]; + }; + const moneyInputHandler = createInputMask(moneyMask); + return (
@@ -111,6 +142,18 @@ const App: Component = () => { />

+ +
+ + +
+
); diff --git a/packages/keyed/CHANGELOG.md b/packages/keyed/CHANGELOG.md index 8249d021a..ad373b6b7 100644 --- a/packages/keyed/CHANGELOG.md +++ b/packages/keyed/CHANGELOG.md @@ -1,5 +1,11 @@ # @solid-primitives/keyed +## 1.2.3 + +### Patch Changes + +- 9749071: Makes Entries take key's type as a generic + ## 1.2.2 ### Patch Changes diff --git a/packages/keyed/package.json b/packages/keyed/package.json index 2af60c244..a6c5f1969 100644 --- a/packages/keyed/package.json +++ b/packages/keyed/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/keyed", - "version": "1.2.2", + "version": "1.2.3", "description": "Control Flow primitives and components that require specifying explicit keys to identify or rerender elements.", "author": "Damian Tarnawski @thetarnav ", "license": "MIT", diff --git a/packages/keyed/src/index.ts b/packages/keyed/src/index.ts index 585139ba3..342a86795 100644 --- a/packages/keyed/src/index.ts +++ b/packages/keyed/src/index.ts @@ -176,10 +176,14 @@ export function Key(props: { * * @see https://github.com/solidjs-community/solid-primitives/tree/main/packages/keyed#Entries */ -export function Entries(props: { - of: Record | ArrayLike | undefined | null | false; +export function Entries(props: { + of: Record | ArrayLike | undefined | null | false; fallback?: JSX.Element; - children: (key: string, v: Accessor, i: Accessor) => JSX.Element; + children: ( + key: K extends number ? string : K, + v: Accessor, + i: Accessor, + ) => JSX.Element; }): JSX.Element { const mapFn = props.children; return createMemo( @@ -191,7 +195,7 @@ export function Entries(props: { key, () => props.of![key as never], ) - : (key, i) => mapFn(key, () => props.of![key as never], i), + : (key, i) => mapFn(key as never, () => props.of![key as never], i), "fallback" in props ? { fallback: () => props.fallback } : undefined, ), ) as unknown as JSX.Element; diff --git a/packages/memo/CHANGELOG.md b/packages/memo/CHANGELOG.md index 9cfdd552a..e1e793b58 100644 --- a/packages/memo/CHANGELOG.md +++ b/packages/memo/CHANGELOG.md @@ -1,5 +1,12 @@ # @solid-primitives/memo +## 1.3.10 + +### Patch Changes + +- Updated dependencies [57a3078] + - @solid-primitives/scheduled@1.4.4 + ## 1.3.9 ### Patch Changes diff --git a/packages/memo/package.json b/packages/memo/package.json index e40ed7f50..18c6a5a19 100644 --- a/packages/memo/package.json +++ b/packages/memo/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/memo", - "version": "1.3.9", + "version": "1.3.10", "description": "Collection of custom memo primitives. They extend Solid's createMemo functionality while keeping the usage similar.", "author": "Damian Tarnawski @thetarnav ", "contributors": [], diff --git a/packages/mutable/src/index.ts b/packages/mutable/src/index.ts index 61eabe715..3a0f3cec2 100644 --- a/packages/mutable/src/index.ts +++ b/packages/mutable/src/index.ts @@ -241,11 +241,10 @@ function wrap(value: T): T { const desc = Object.getOwnPropertyDescriptors(value); for (const prop of Object.keys(value)) { - if (desc[prop]!.get) - Object.defineProperty(value, prop, { get: desc[prop]!.get!.bind(proxy) }); + if (desc[prop]!.get) Object.defineProperty(value, prop, { get: desc[prop]!.get.bind(proxy) }); if (desc[prop]!.set) { - const og = desc[prop]!.set!; + const og = desc[prop]!.set; Object.defineProperty(value, prop, { set: v => solid.batch(() => og.call(proxy, v)) }); } diff --git a/packages/props/src/combineProps.ts b/packages/props/src/combineProps.ts index 0b789ce3c..fb416b8c3 100644 --- a/packages/props/src/combineProps.ts +++ b/packages/props/src/combineProps.ts @@ -143,7 +143,7 @@ export function combineProps[]>( : void 0; if (callback) - listeners[name] ? listeners[name]!.push(callback) : (listeners[name] = [callback]); + listeners[name] ? listeners[name].push(callback) : (listeners[name] = [callback]); else delete listeners[name]; } } diff --git a/packages/resource/src/index.ts b/packages/resource/src/index.ts index e30070c90..b5da335e5 100644 --- a/packages/resource/src/index.ts +++ b/packages/resource/src/index.ts @@ -152,7 +152,7 @@ export function makeCache( const save = () => { try { options?.storage?.setItem(key, serialize(localCache)); - } catch (e) { + } catch (_) { /**/ } }; @@ -163,7 +163,7 @@ export function makeCache( if (options?.storage) { try { Object.assign(localCache, deserialize(options.storage.getItem(key) || "{}")); - } catch (e) { + } catch (_) { /**/ } } diff --git a/packages/scheduled/CHANGELOG.md b/packages/scheduled/CHANGELOG.md index 90e256e95..4596d4e64 100644 --- a/packages/scheduled/CHANGELOG.md +++ b/packages/scheduled/CHANGELOG.md @@ -1,5 +1,11 @@ # @solid-primitives/scheduled +## 1.4.4 + +### Patch Changes + +- 57a3078: Add check for typeof window, fallback to throttle if undefined + ## 1.4.3 ### Patch Changes diff --git a/packages/scheduled/package.json b/packages/scheduled/package.json index b8f53ac0e..29fcbacf4 100644 --- a/packages/scheduled/package.json +++ b/packages/scheduled/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/scheduled", - "version": "1.4.3", + "version": "1.4.4", "description": "Primitives for creating scheduled — throttled or debounced — callbacks.", "contributors": [ "David Di Biase ", diff --git a/packages/scheduled/src/index.ts b/packages/scheduled/src/index.ts index 65e676437..083a884fa 100644 --- a/packages/scheduled/src/index.ts +++ b/packages/scheduled/src/index.ts @@ -112,7 +112,7 @@ export const throttle: ScheduleCallback = (callback, wait) => { export const scheduleIdle: ScheduleCallback = isServer ? () => Object.assign(() => void 0, { clear: () => void 0 }) : // requestIdleCallback is not supported in Safari - (window.requestIdleCallback as typeof window.requestIdleCallback | undefined) + typeof requestIdleCallback !== "undefined" ? (callback, maxWait) => { let isDeferred = false, id: ReturnType, diff --git a/packages/script-loader/src/index.ts b/packages/script-loader/src/index.ts index 11b8e0cb5..de7017b4b 100644 --- a/packages/script-loader/src/index.ts +++ b/packages/script-loader/src/index.ts @@ -62,7 +62,7 @@ export function createScriptLoader(props: ScriptProps): HTMLScriptElement | unde }); Array.isArray(handler) ? handler[0](handler[1], ev) - : typeof handler === "function" && handler?.call(null, Object.assign(ev)); + : typeof handler === "function" && handler.call(null, Object.assign(ev)); }, ), ); diff --git a/packages/spring/src/index.ts b/packages/spring/src/index.ts index 5376130aa..5d68947e8 100644 --- a/packages/spring/src/index.ts +++ b/packages/spring/src/index.ts @@ -86,7 +86,7 @@ export function createSpring( return [ signal as any, ((param: any, opts: SpringSetterOptions = {}) => { - if (opts.hard || signal() == null || (stiffness >= 1 && damping >= 1)) { + if (opts.hard || (stiffness >= 1 && damping >= 1)) { setSignal(param); return Promise.resolve(); } @@ -119,10 +119,11 @@ export function createSpring( inv_mass = Math.min(inv_mass + inv_mass_recovery_rate, 1); settled = true; - let new_value = tick(value_last, value_current, value_target); + const new_value = tick(value_last, value_current, value_target); value_last = value_current; setSignal((value_current = new_value)); + // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition if (settled) { cleanup(); } else { diff --git a/packages/start/CHANGELOG.md b/packages/start/CHANGELOG.md deleted file mode 100644 index 6e4aeb109..000000000 --- a/packages/start/CHANGELOG.md +++ /dev/null @@ -1,19 +0,0 @@ -# @solid-primitives/start - -## 0.0.4 - -### Patch Changes - -- 74db287: Correct the "homepage" field in package.json - -## 0.0.3 - -### Patch Changes - -- d23dd74: Add type exports for cjs - -## 0.0.2 - -### Patch Changes - -- a5f01c30: Loosen solid-start peer dependency diff --git a/packages/start/README.md b/packages/start/README.md deleted file mode 100644 index c08e95051..000000000 --- a/packages/start/README.md +++ /dev/null @@ -1,184 +0,0 @@ -

- Solid Primitives start -

- -# @solid-primitives/start - -[![turborepo](https://img.shields.io/badge/built%20with-turborepo-cc00ff.svg?style=for-the-badge&logo=turborepo)](https://turborepo.org/) -[![size](https://img.shields.io/bundlephobia/minzip/@solid-primitives/start?style=for-the-badge&label=size)](https://bundlephobia.com/package/@solid-primitives/start) -[![version](https://img.shields.io/npm/v/@solid-primitives/start?style=for-the-badge)](https://www.npmjs.com/package/@solid-primitives/start) -[![stage](https://img.shields.io/endpoint?style=for-the-badge&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives#contribution-process) - -A set of primitives for Solid Start - -- [`createServerCookie`](#createservercookie) - Provides a getter and setter for a reactive cookie, which works isomorphically. -- [`createUserTheme`](#createusertheme) - Creates a Server Cookie providing a type safe way to store a theme and access it on the server or client. - -## Installation - -```bash -npm install @solid-primitives/start -# or -yarn add @solid-primitives/start -# or -pnpm add @solid-primitives/start -``` - -## How to use it - -## `createServerCookie` - -A primitive for creating a cookie that can be accessed isomorphically on the client, or the server. - -```ts -const [cookie, setCookie] = createServerCookie("cookieName"); - -cookie(); // => string | undefined -``` - -### Custom serialization - -Custom cookie serializers and deserializers can also be implemented - -```ts -const [serverCookie, setServerCookie] = createServerCookie("coolCookie", { - deserialize: str => (str ? str.split(" ") : []), // Deserializes cookie into a string[] - serialize: val => (val ? val.join(" ") : ""), // serializes the value back into a string -}); - -serverCookie(); // => string[] -``` - -## `createUserTheme` - -Composes `createServerCookie` to provide a type safe way to store a theme and access it on the server or client. - -```ts -const [theme, setTheme] = createUserTheme("cookieName"); - -theme(); // => "light" | "dark" | undefined - -// with default value -const [theme, setTheme] = createUserTheme("cookieName", { - defaultValue: "light", -}); - -theme(); // => "light" | "dark" -``` - -## Examples - -### `root.tsx` - -This is the main entry file for SolidStart demonstrating usage of the `createUserTheme` function. - -- Initializes the theme with the `createUserTheme` function. -- Toggles between the "dark" and "light" themes using a button. -- Sets the `data-theme` attribute adding compatibility between `createUserTheme` and libraries like [DaisyUI](https://daisyui.com/). -- Includes a clean implementation of theming through a `Body` class. -- Provides additional examples on using variant classes to style components. - -```tsx -import { Suspense } from "solid-js"; -import { - A, - Body, - ErrorBoundary, - FileRoutes, - Head, - Html, - Meta, - Routes, - Scripts, - Title, -} from "solid-start"; -import Counter from "./components/Counter"; -import "./root.css"; -import { createUserTheme } from "~/primitives/start"; - -export default function Root() { - const [theme, setTheme] = createUserTheme("dark-light-theme", { defaultValue: "dark" }); - const toggleTheme = () => setTheme(currentTheme => (currentTheme === "dark" ? "light" : "dark")); - - return ( - // Set data-theme when using libraries like Daisyui: - - - SolidStart - Bare - - - - // Apply theme as a class to the Body element: - -
- - -
- - - - ); -} -``` - -### `root.css` - -Here is an absolute basic CSS file to demonstrate styling with the themes. - -- The `body` selector has general styles. -- The `.dark` and `.light` classes provide specific styles for each theme. -- The `.dark span` and `.light span` selectors show how to style specific elements based on the theme. - -```css -body { - font-family: Gordita, Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; - height: "100vh"; - width: "100vh"; -} - -body.dark { - background-color: black; - color: aliceblue; -} -body.light { - background-color: aliceblue; - color: black; -} - -.dark span { - color: #b1d4ff; -} -.light span { - color: #003677; -} -``` - -### `Counter.css` - -Continuation of the basic CSS scoped to the component using variant classes. - -```css -.dark-variant { - border: 2px solid #569cf3; -} - -.light-variant { - border: 2px solid #05ff22; -} -``` - -## Demo - -You can view a demo of this primitive here: - -## Changelog - -See [CHANGELOG.md](./CHANGELOG.md) diff --git a/packages/storage/src/persisted.ts b/packages/storage/src/persisted.ts index 396db317f..a8f26a1ba 100644 --- a/packages/storage/src/persisted.ts +++ b/packages/storage/src/persisted.ts @@ -134,6 +134,7 @@ export function makePersisted< const value = deserialize(data); (signal[1] as any)(() => value); } catch (e) { + // eslint-disable-next-line no-console if (isDev) console.warn(e); } } @@ -142,6 +143,7 @@ export function makePersisted< const value = deserialize(data); (signal[1] as any)(reconcile(value)); } catch (e) { + // eslint-disable-next-line no-console if (isDev) console.warn(e); } }; @@ -229,6 +231,7 @@ export const wsSync = (ws: WebSocket, warnOnError: boolean = isDev): Persistence subscriber(data); } } catch (e) { + // eslint-disable-next-line no-console if (warnOnError) console.warn(e); } }), diff --git a/packages/storage/src/tauri.ts b/packages/storage/src/tauri.ts index 5679fb045..b6d6e554b 100644 --- a/packages/storage/src/tauri.ts +++ b/packages/storage/src/tauri.ts @@ -15,6 +15,7 @@ export function tauriStorage(name = "solid-storage.dat") { const api: AsyncStorage = { _store: null, _getStore: async () => + // @ts-ignore api._store || (api._store = new (await import("@tauri-apps/plugin-store")).Store(name)), getItem: async (key: string) => (await (await api._getStore()).get(key)) ?? null, setItem: async (key: string, value: string) => await (await api._getStore()).set(key, value), diff --git a/packages/storage/src/tools.ts b/packages/storage/src/tools.ts index 9aae79191..fdb004291 100644 --- a/packages/storage/src/tools.ts +++ b/packages/storage/src/tools.ts @@ -100,7 +100,7 @@ export const multiplexStorage: StorageMultiplexer = (...storages) => ({ storage => storage.length, ); const isAsync = lengths.some( - len => len && typeof len === "object" && typeof len?.then === "function", + len => len && typeof len === "object" && typeof len.then === "function", ); return (isAsync ? Promise.all(lengths).then(lens => Math.max(...lens.filter(isNumber))) diff --git a/packages/stream/src/index.ts b/packages/stream/src/index.ts index ee8e3bf4d..1a1cebd50 100644 --- a/packages/stream/src/index.ts +++ b/packages/stream/src/index.ts @@ -29,10 +29,10 @@ const constraintsFromDevice = ( }; const stop = (stream: MediaStream | undefined) => - stream?.getTracks()?.forEach(track => track.stop()); + stream?.getTracks().forEach(track => track.stop()); const mute = (stream: MediaStream | undefined, muted?: boolean) => - stream?.getTracks()?.forEach(track => { + stream?.getTracks().forEach(track => { track.enabled = muted === false; }); diff --git a/packages/trigger/src/index.ts b/packages/trigger/src/index.ts index d370e67ed..3790fb0f7 100644 --- a/packages/trigger/src/index.ts +++ b/packages/trigger/src/index.ts @@ -64,9 +64,9 @@ export class TriggerCache { } else trigger.n++; onCleanup(() => { // remove the trigger when no one is listening to it - if (trigger!.n-- === 1) + if (--trigger.n === 0) // microtask is to avoid removing the trigger used by a single listener - queueMicrotask(() => trigger!.n === 0 && this.#map.delete(key)); + queueMicrotask(() => trigger.n === 0 && this.#map.delete(key)); }); trigger.$(); } diff --git a/packages/virtual/CHANGELOG.md b/packages/virtual/CHANGELOG.md new file mode 100644 index 000000000..5cab098cd --- /dev/null +++ b/packages/virtual/CHANGELOG.md @@ -0,0 +1,7 @@ +# @solid-primitives/virtual + +## 0.1.0 + +### Minor Changes + +- e1ebe61: Add a headless virtual list primitive: `createVirtualList` in #702 diff --git a/packages/virtual/README.md b/packages/virtual/README.md index 23af11d6c..80f3a4c40 100644 --- a/packages/virtual/README.md +++ b/packages/virtual/README.md @@ -9,7 +9,8 @@ [![version](https://img.shields.io/npm/v/@solid-primitives/virtual?style=for-the-badge)](https://www.npmjs.com/package/@solid-primitives/virtual) [![stage](https://img.shields.io/endpoint?style=for-the-badge&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsolidjs-community%2Fsolid-primitives%2Fmain%2Fassets%2Fbadges%2Fstage-0.json)](https://github.com/solidjs-community/solid-primitives#contribution-process) -A basic [virtualized list](https://www.patterns.dev/vanilla/virtual-lists/) component for improving performance when rendering very large lists +- [`createVirtualList`](#createvirtuallist) - A headless utility function for [virtualized lists](https://www.patterns.dev/vanilla/virtual-lists/) +- [`VirtualList`](#virtuallist) - a basic, unstyled component based on `createVirtualList` ## Installation @@ -23,18 +24,80 @@ pnpm add @solid-primitives/virtual ## How to use it +### `createVirtualList` + +`createVirtualList` is a headless utility for constructing your own virtualized list components with maximum flexibility. + +```tsx +function MyComp(): JSX.Element { + const items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; + const rootHeight = 20; + const rowHeight = 10; + const overscanCount = 5; + + const [{ containerHeight, viewerTop, visibleItems }, onScroll] = createVirtualList({ + // the list of items - can be a signal + items, + // the height of the root element of the virtualizedList - can be a signal + rootHeight, + // the height of individual rows in the virtualizedList - can be a signal + rowHeight, + // the number of elements to render both before and after the visible section of the list, so passing 5 will render 5 items before the list, and 5 items after. Defaults to 1, cannot be set to zero. This is necessary to hide the blank space around list items when scrolling - can be a signal + overscanCount, + }); + + return ( +
+
+
+ {/* only visibleItems() are ultimately rendered */} + + {item =>
{item}
} +
+
+
+
+ ); +} +``` + +### `` + +`` is a basic, unstyled virtual list component you can drop into projects without modification. + ```tsx No items} // the number of elements to render both before and after the visible section of the list, so passing 5 will render 5 items before the list, and 5 items after. Defaults to 1, cannot be set to zero. This is necessary to hide the blank space around list items when scrolling overscanCount={5} // the height of the root element of the virtualizedList itself rootHeight={20} // the height of individual rows in the virtualizedList rowHeight={10} - // the class applied to the root element of the virtualizedList - class={"my-class-name"} > { // the flowComponent that will be used to transform the items into rows in the list @@ -43,12 +106,12 @@ pnpm add @solid-primitives/virtual ``` -The tests describe the component's exact behavior and how overscanCount handles the start/end of the list in more detail. +The tests describe the exact behavior and how overscanCount handles the start/end of the list in more detail. Note that the component only handles vertical lists where the number of items is known and the height of an individual item is fixed. ## Demo -You can see the VirtualizedList in action in the following sandbox: https://primitives.solidjs.community/playground/virtual +You can see the VirtualList in action in the following sandbox: https://primitives.solidjs.community/playground/virtual ## Changelog diff --git a/packages/virtual/dev/index.tsx b/packages/virtual/dev/index.tsx index 1f4bab098..36f865147 100644 --- a/packages/virtual/dev/index.tsx +++ b/packages/virtual/dev/index.tsx @@ -22,7 +22,7 @@ const App: Component = () => { { View the devtools console for log of items being added and removed from the visible list - - {item => } - +
+ no items
} + overscanCount={overscanCount()} + rootHeight={rootHeight()} + rowHeight={rowHeight()} + > + {item => } +
+ ); }; diff --git a/packages/virtual/package.json b/packages/virtual/package.json index bca03da44..dbd89ebb8 100644 --- a/packages/virtual/package.json +++ b/packages/virtual/package.json @@ -1,6 +1,6 @@ { "name": "@solid-primitives/virtual", - "version": "0.0.1", + "version": "0.1.0", "description": "A virtualized list component for performantly rendering lists with many elements", "author": "Spencer Whitehead ", "contributors": [], @@ -17,6 +17,7 @@ "name": "virtual", "stage": 0, "list": [ + "createVirutalList", "VirtualList" ], "category": "UI Patterns" @@ -54,6 +55,9 @@ "test": "pnpm run vitest", "test:ssr": "pnpm run vitest --mode ssr" }, + "dependencies": { + "@solid-primitives/utils": "workspace:^" + }, "peerDependencies": { "solid-js": "^1.6.12" } diff --git a/packages/virtual/src/index.tsx b/packages/virtual/src/index.tsx index e81e14728..dbebd2b4c 100644 --- a/packages/virtual/src/index.tsx +++ b/packages/virtual/src/index.tsx @@ -1,71 +1,119 @@ import { For, createSignal } from "solid-js"; import type { Accessor, JSX } from "solid-js"; +import { access } from "@solid-primitives/utils"; +import type { MaybeAccessor } from "@solid-primitives/utils"; + +type VirtualListConfig = { + items: MaybeAccessor; + rootHeight: MaybeAccessor; + rowHeight: MaybeAccessor; + overscanCount?: MaybeAccessor; +}; + +type VirtualListReturn = [ + Accessor<{ + containerHeight: number; + viewerTop: number; + visibleItems: T; + }>, + onScroll: (e: Event) => void, +]; /** - * A basic virtualized list (see https://www.patterns.dev/vanilla/virtual-lists/) component for improving performance when rendering very large lists + * A headless virtualized list (see https://www.patterns.dev/vanilla/virtual-lists/) utility for constructing your own virtualized list components with maximum flexibility. * - * @param children the flowComponent that will be used to transform the items into rows in the list - * @param class the class applied to the root element of the virtualizedList - * @param each the list of items - * @param overscanCount the number of elements to render both before and after the visible section of the list, so passing 5 will render 5 items before the list, and 5 items after. Defaults to 1, cannot be set to zero. This is necessary to hide the blank space around list items when scrolling - * @param rootHeight the height of the root element of the virtualizedList itself + * @param items the list of items + * @param rootHeight the height of the root element of the virtualizedList * @param rowHeight the height of individual rows in the virtualizedList - * @return virtualized list component + * @param overscanCount the number of elements to render both before and after the visible section of the list, so passing 5 will render 5 items before the list, and 5 items after. Defaults to 1, cannot be set to zero. This is necessary to hide the blank space around list items when scrolling + * @returns {VirtualListReturn} to use in the list's jsx */ -export function VirtualList(props: { - children: (item: T[number], index: Accessor) => U; - fallback?: JSX.Element; - class?: string; - each: T | undefined | null | false; - overscanCount?: number; - rootHeight: number; - rowHeight: number; -}): JSX.Element { - let rootElement!: HTMLDivElement; +export function createVirtualList({ + items, + rootHeight, + rowHeight, + overscanCount, +}: VirtualListConfig): VirtualListReturn { + items = access(items) || ([] as any as T); + rootHeight = access(rootHeight); + rowHeight = access(rowHeight); + overscanCount = access(overscanCount) || 1; const [offset, setOffset] = createSignal(0); - const items = () => props.each || ([] as any as T); - const getFirstIdx = () => - Math.max(0, Math.floor(offset() / props.rowHeight) - (props.overscanCount || 1)); + const getFirstIdx = () => Math.max(0, Math.floor(offset() / rowHeight) - overscanCount); const getLastIdx = () => Math.min( - items().length, - Math.floor(offset() / props.rowHeight) + - Math.ceil(props.rootHeight / props.rowHeight) + - (props.overscanCount || 1), + items.length, + Math.floor(offset() / rowHeight) + Math.ceil(rootHeight / rowHeight) + overscanCount, ); + return [ + () => ({ + containerHeight: items.length * rowHeight, + viewerTop: getFirstIdx() * rowHeight, + visibleItems: items.slice(getFirstIdx(), getLastIdx()) as unknown as T, + }), + e => { + // @ts-expect-error + if (e.target?.scrollTop !== undefined) setOffset(e.target.scrollTop); + }, + ]; +} + +type VirtualListProps = { + children: (item: T[number], index: Accessor) => U; + each: T | undefined | null | false; + fallback?: JSX.Element; + overscanCount?: number; + rootHeight: number; + rowHeight: number; +}; + +/** + * A basic, unstyled virtualized list (see https://www.patterns.dev/vanilla/virtual-lists/) component you can drop into projects without modification + * + * @param children the flowComponent that will be used to transform the items into rows in the list + * @param each the list of items + * @param fallback the optional fallback to display if the list of items to display is empty + * @param overscanCount the number of elements to render both before and after the visible section of the list, so passing 5 will render 5 items before the list, and 5 items after. Defaults to 1, cannot be set to zero. This is necessary to hide the blank space around list items when scrolling + * @param rootHeight the height of the root element of the virtualizedList itself + * @param rowHeight the height of individual rows in the virtualizedList + * @returns virtualized list component + */ +export function VirtualList( + props: VirtualListProps, +): JSX.Element { + const [virtual, onScroll] = createVirtualList({ + items: () => props.each, + rootHeight: () => props.rootHeight, + rowHeight: () => props.rowHeight, + overscanCount: () => props.overscanCount || 1, + }); + return (
{ - setOffset(rootElement.scrollTop); - }} + onScroll={onScroll} >
- + {props.children}
diff --git a/packages/virtual/test/index.test.tsx b/packages/virtual/test/index.test.tsx index 67f0aa4c0..f30abccb0 100644 --- a/packages/virtual/test/index.test.tsx +++ b/packages/virtual/test/index.test.tsx @@ -1,96 +1,239 @@ import { describe, test, expect } from "vitest"; -import { VirtualList } from "../src/index.jsx"; import { render } from "solid-js/web"; +import { DOMElement } from "solid-js/jsx-runtime"; + +import { createVirtualList, VirtualList } from "../src/index.jsx"; const TEST_LIST = Array.from({ length: 1000 }, (_, i) => i); -const SELECTOR_CLASS_NAME = "scroll-container-selector"; +const ROOT = document.createElement("div"); const SCROLL_EVENT = new Event("scroll"); -let root = document.createElement("div"); +const TARGETED_SCROLL_EVENT = (el: DOMElement) => ({ ...SCROLL_EVENT, target: el }); -function get_scroll_continer() { - const scroll_container = root.querySelector("." + SELECTOR_CLASS_NAME); - if (scroll_container == null) { - throw "." + SELECTOR_CLASS_NAME + " was not found"; +function getScrollContainer() { + const scrollContainer = ROOT.querySelector("div"); + if (scrollContainer === null) { + throw "scrollContainer not found"; } - return scroll_container; + return scrollContainer; } +describe("createVirtualList", () => { + test("returns containerHeight representing the size of the list container element within the root", () => { + const [virtual] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtual().containerHeight).toEqual(10_000); + }); + + test("returns viewerTop representing the location of the list viewer element within the list container", () => { + const [virtual] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtual().viewerTop).toEqual(0); + }); + + test("returns visibleList representing the subset of items to render", () => { + const [virtual] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtual().visibleItems).toEqual([0, 1, 2]); + }); + + test("returns onScroll which sets viewerTop and visibleItems based on rootElement's scrolltop", () => { + const el = document.createElement("div"); + + const [virtual, onScroll] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtual().visibleItems).toEqual([0, 1, 2]); + expect(virtual().viewerTop).toEqual(0); + + el.scrollTop += 10; + + // no change until onScroll is called + expect(virtual().visibleItems).toEqual([0, 1, 2]); + expect(virtual().viewerTop).toEqual(0); + + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([0, 1, 2, 3]); + expect(virtual().viewerTop).toEqual(0); + + el.scrollTop += 10; + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([1, 2, 3, 4]); + expect(virtual().viewerTop).toEqual(10); + + el.scrollTop -= 10; + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([0, 1, 2, 3]); + expect(virtual().viewerTop).toEqual(0); + + el.scrollTop -= 10; + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([0, 1, 2]); + expect(virtual().viewerTop).toEqual(0); + }); + + test("onScroll handles reaching the bottom of the list", () => { + const el = document.createElement("div"); + + const [virtual, onScroll] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtual().visibleItems).toEqual([0, 1, 2]); + expect(virtual().viewerTop).toEqual(0); + + el.scrollTop += 9_980; + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([997, 998, 999]); + expect(virtual().viewerTop).toEqual(9_970); + }); + + test("visibleList takes `overscanCount` into account", () => { + const el = document.createElement("div"); + + const [virtual, onScroll] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + overscanCount: 2, + }); + + el.scrollTop += 100; + onScroll(TARGETED_SCROLL_EVENT(el)); + + expect(virtual().visibleItems).toEqual([8, 9, 10, 11, 12, 13]); + }); + + test("overscanCount defaults to 1 if undefined or zero", () => { + const [virtualUndefined] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + }); + + expect(virtualUndefined().visibleItems).toEqual([0, 1, 2]); + + const [virtualZero] = createVirtualList({ + items: TEST_LIST, + rootHeight: 20, + rowHeight: 10, + overscanCount: 0, + }); + + expect(virtualZero().visibleItems).toEqual([0, 1, 2]); + }); + + test("handles empty list", () => { + const [virtual] = createVirtualList({ + items: [], + rootHeight: 20, + rowHeight: 10, + overscanCount: 0, + }); + + expect(virtual().containerHeight).toEqual(0); + expect(virtual().viewerTop).toEqual(0); + expect(virtual().visibleItems).toEqual([]); + }); +}); + describe("VirtualList", () => { test("renders a subset of the items", () => { - let root = document.createElement("div"); const dispose = render( () => ( - {item =>
} + {item =>
} ), - root, + ROOT, ); - expect(root.querySelector("#item-0")).not.toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).toBeNull(); + expect(ROOT.querySelector("#item-0")).not.toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).toBeNull(); dispose(); }); - test("scrolling renders the correct subset of the items", () => { + test("renders the correct subset of the items based on scrolling", () => { const dispose = render( () => ( - - {item =>
} + + {item =>
} ), - root, + ROOT, ); - const scroll_container = get_scroll_continer(); - scroll_container.dispatchEvent(SCROLL_EVENT); + const scrollContainer = getScrollContainer(); + + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-0")).not.toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).toBeNull(); + expect(ROOT.querySelector("#item-0")).not.toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).toBeNull(); - scroll_container.scrollTop += 10; - scroll_container.dispatchEvent(SCROLL_EVENT); + scrollContainer.scrollTop += 10; + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-0")).not.toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).not.toBeNull(); - expect(root.querySelector("#item-4")).toBeNull(); + expect(ROOT.querySelector("#item-0")).not.toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).not.toBeNull(); + expect(ROOT.querySelector("#item-4")).toBeNull(); - scroll_container.scrollTop += 10; - scroll_container.dispatchEvent(SCROLL_EVENT); + scrollContainer.scrollTop += 10; + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-0")).toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).not.toBeNull(); - expect(root.querySelector("#item-4")).not.toBeNull(); - expect(root.querySelector("#item-5")).toBeNull(); + expect(ROOT.querySelector("#item-0")).toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).not.toBeNull(); + expect(ROOT.querySelector("#item-4")).not.toBeNull(); + expect(ROOT.querySelector("#item-5")).toBeNull(); - scroll_container.scrollTop -= 10; - scroll_container.dispatchEvent(SCROLL_EVENT); + scrollContainer.scrollTop -= 10; + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-0")).not.toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).not.toBeNull(); - expect(root.querySelector("#item-4")).toBeNull(); + expect(ROOT.querySelector("#item-0")).not.toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).not.toBeNull(); + expect(ROOT.querySelector("#item-4")).toBeNull(); - scroll_container.scrollTop -= 10; - scroll_container.dispatchEvent(SCROLL_EVENT); + scrollContainer.scrollTop -= 10; + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-0")).not.toBeNull(); - expect(root.querySelector("#item-1")).not.toBeNull(); - expect(root.querySelector("#item-2")).not.toBeNull(); - expect(root.querySelector("#item-3")).toBeNull(); + expect(ROOT.querySelector("#item-0")).not.toBeNull(); + expect(ROOT.querySelector("#item-1")).not.toBeNull(); + expect(ROOT.querySelector("#item-2")).not.toBeNull(); + expect(ROOT.querySelector("#item-3")).toBeNull(); dispose(); }); @@ -98,108 +241,82 @@ describe("VirtualList", () => { test("renders the correct subset of the items for the end of the list", () => { const dispose = render( () => ( - - {item =>
} + + {item =>
} ), - root, + ROOT, ); - const scroll_container = get_scroll_continer(); - scroll_container.scrollTop += 9_980; - scroll_container.dispatchEvent(SCROLL_EVENT); + const scrollContainer = getScrollContainer(); - expect(root.querySelector("#item-996")).toBeNull(); - expect(root.querySelector("#item-997")).not.toBeNull(); - expect(root.querySelector("#item-998")).not.toBeNull(); - expect(root.querySelector("#item-999")).not.toBeNull(); - expect(root.querySelector("#item-1000")).toBeNull(); + scrollContainer.scrollTop += 9_980; + scrollContainer.dispatchEvent(SCROLL_EVENT); + + expect(ROOT.querySelector("#item-996")).toBeNull(); + expect(ROOT.querySelector("#item-997")).not.toBeNull(); + expect(ROOT.querySelector("#item-998")).not.toBeNull(); + expect(ROOT.querySelector("#item-999")).not.toBeNull(); + expect(ROOT.querySelector("#item-1000")).toBeNull(); dispose(); }); - test("renders `overScan` rows above and below the visible rendered items", () => { + test("renders `overscanCount` rows above and below the visible rendered items", () => { const dispose = render( () => ( - - {item =>
} + + {item =>
} ), - root, + ROOT, ); - const scroll_container = get_scroll_continer(); - scroll_container.scrollTop += 100; - scroll_container.dispatchEvent(SCROLL_EVENT); + const scrollContainer = getScrollContainer(); + + scrollContainer.scrollTop += 100; + scrollContainer.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-7")).toBeNull(); - expect(root.querySelector("#item-8")).not.toBeNull(); - expect(root.querySelector("#item-9")).not.toBeNull(); - expect(root.querySelector("#item-10")).not.toBeNull(); - expect(root.querySelector("#item-11")).not.toBeNull(); - expect(root.querySelector("#item-12")).not.toBeNull(); - expect(root.querySelector("#item-13")).not.toBeNull(); - expect(root.querySelector("#item-14")).toBeNull(); + expect(ROOT.querySelector("#item-7")).toBeNull(); + expect(ROOT.querySelector("#item-8")).not.toBeNull(); + expect(ROOT.querySelector("#item-9")).not.toBeNull(); + expect(ROOT.querySelector("#item-10")).not.toBeNull(); + expect(ROOT.querySelector("#item-11")).not.toBeNull(); + expect(ROOT.querySelector("#item-12")).not.toBeNull(); + expect(ROOT.querySelector("#item-13")).not.toBeNull(); + expect(ROOT.querySelector("#item-14")).toBeNull(); dispose(); }); - test("overscanCount defaults to 1 if undefined", () => { + test("renders when list is empty", () => { const dispose = render( () => ( - - {item =>
} + + {item =>
} ), - root, + ROOT, ); - const scroll_container = get_scroll_continer(); - - scroll_container.scrollTop += 100; - scroll_container.dispatchEvent(SCROLL_EVENT); - expect(root.querySelector("#item-8")).toBeNull(); - expect(root.querySelector("#item-9")).not.toBeNull(); - expect(root.querySelector("#item-10")).not.toBeNull(); - expect(root.querySelector("#item-11")).not.toBeNull(); - expect(root.querySelector("#item-12")).not.toBeNull(); - expect(root.querySelector("#item-13")).toBeNull(); + expect(getScrollContainer()).not.toBeNull(); dispose(); }); - test("overscanCount defaults to 1 if set to zero", () => { + test("renders when list is empty with optional fallback", () => { const dispose = render( () => ( - - {item =>
} + } rootHeight={20} rowHeight={10}> + {item =>
} ), - root, + ROOT, ); - const scroll_container = get_scroll_continer(); - scroll_container.scrollTop += 100; - scroll_container.dispatchEvent(SCROLL_EVENT); + expect(getScrollContainer()).not.toBeNull(); - expect(root.querySelector("#item-8")).toBeNull(); - expect(root.querySelector("#item-9")).not.toBeNull(); - expect(root.querySelector("#item-10")).not.toBeNull(); - expect(root.querySelector("#item-11")).not.toBeNull(); - expect(root.querySelector("#item-12")).not.toBeNull(); - expect(root.querySelector("#item-13")).toBeNull(); + expect(ROOT.querySelector("#fallback")).not.toBeNull(); dispose(); }); diff --git a/packages/virtual/test/server.test.tsx b/packages/virtual/test/server.test.tsx index 903be5a97..b70da7ff0 100644 --- a/packages/virtual/test/server.test.tsx +++ b/packages/virtual/test/server.test.tsx @@ -7,25 +7,19 @@ const TEST_LIST = Array.from({ length: 1000 }, (_, i) => i); describe("VirtualList", () => { test("doesn't break in SSR", () => { const virtualListStr = renderToString(() => ( - - {item =>
{item}
} + + {item =>
{item}
}
)); expect(virtualListStr).toEqual( [ - '
', + '
', '
', '
', - '
0
', - '
1
', - '
2
', + '
0
', + '
1
', + '
2
', "
", "
", "
", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 00b14cb42..addbfa8d1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,9 +38,6 @@ importers: eslint-plugin-no-only-tests: specifier: ^3.3.0 version: 3.3.0 - gzip-size: - specifier: ^7.0.0 - version: 7.0.0 jsdom: specifier: ^25.0.0 version: 25.0.0 @@ -97,7 +94,7 @@ importers: version: 2.10.2(solid-js@1.8.22)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) vitest: specifier: ^2.1.0 - version: 2.1.0(@types/node@22.5.4)(jsdom@25.0.0)(sass@1.77.8)(terser@5.31.5) + version: 2.1.1(@types/node@22.5.4)(jsdom@25.0.0)(sass@1.77.8)(terser@5.31.5) packages/active-element: dependencies: @@ -211,6 +208,12 @@ importers: specifier: ^1.8.7 version: 1.8.20 + packages/cookies: + devDependencies: + solid-js: + specifier: ^1.8.18 + version: 1.8.22 + packages/cursor: dependencies: '@solid-primitives/utils': @@ -849,15 +852,6 @@ importers: specifier: ^1.6.12 version: 1.8.22 - packages/start: - devDependencies: - solid-js: - specifier: ^1.8.7 - version: 1.8.20 - solid-start: - specifier: ^0.3.10 - version: 0.3.11(@solidjs/meta@0.29.4(solid-js@1.8.20))(@solidjs/router@0.13.6(solid-js@1.8.20))(solid-js@1.8.20)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) - packages/state-machine: dependencies: solid-js: @@ -881,7 +875,7 @@ importers: version: link:../utils '@tauri-apps/plugin-store': specifier: '*' - version: 2.0.0-rc.1 + version: 2.0.0 devDependencies: solid-js: specifier: ^1.8.15 @@ -962,6 +956,9 @@ importers: packages/virtual: dependencies: + '@solid-primitives/utils': + specifier: workspace:^ + version: link:../utils solid-js: specifier: ^1.6.12 version: 1.8.20 @@ -981,53 +978,53 @@ importers: site: dependencies: '@solid-primitives/clipboard': - specifier: workspace:^ - version: link:../packages/clipboard + specifier: latest + version: 1.5.10(solid-js@1.8.22) '@solid-primitives/event-bus': - specifier: workspace:^ - version: link:../packages/event-bus + specifier: latest + version: 1.0.11(solid-js@1.8.22) '@solid-primitives/event-listener': - specifier: workspace:^ - version: link:../packages/event-listener + specifier: latest + version: 2.3.3(solid-js@1.8.22) '@solid-primitives/intersection-observer': - specifier: workspace:^ - version: link:../packages/intersection-observer + specifier: latest + version: 2.1.6(solid-js@1.8.22) '@solid-primitives/keyboard': - specifier: workspace:^ - version: link:../packages/keyboard + specifier: latest + version: 1.2.8(solid-js@1.8.22) '@solid-primitives/marker': - specifier: workspace:^ - version: link:../packages/marker + specifier: latest + version: 0.1.0(solid-js@1.8.22) '@solid-primitives/media': - specifier: workspace:^ - version: link:../packages/media + specifier: latest + version: 2.2.9(solid-js@1.8.22) '@solid-primitives/mutation-observer': - specifier: workspace:^ - version: link:../packages/mutation-observer + specifier: latest + version: 1.1.17(solid-js@1.8.22) '@solid-primitives/platform': - specifier: workspace:^ - version: link:../packages/platform + specifier: latest + version: 0.1.2(solid-js@1.8.22) '@solid-primitives/refs': - specifier: workspace:^ - version: link:../packages/refs + specifier: latest + version: 1.0.8(solid-js@1.8.22) '@solid-primitives/resize-observer': - specifier: workspace:^ - version: link:../packages/resize-observer + specifier: latest + version: 2.0.26(solid-js@1.8.22) '@solid-primitives/rootless': - specifier: workspace:^ - version: link:../packages/rootless + specifier: latest + version: 1.4.5(solid-js@1.8.22) '@solid-primitives/scheduled': - specifier: workspace:^ - version: link:../packages/scheduled + specifier: latest + version: 1.4.4(solid-js@1.8.22) '@solid-primitives/scroll': - specifier: workspace:^ - version: link:../packages/scroll + specifier: latest + version: 2.0.23(solid-js@1.8.22) '@solid-primitives/tween': - specifier: workspace:^ - version: link:../packages/tween + specifier: latest + version: 1.3.0(solid-js@1.8.22) '@solid-primitives/utils': - specifier: workspace:^ - version: link:../packages/utils + specifier: latest + version: 6.2.3(solid-js@1.8.22) '@solidjs/meta': specifier: ^0.29.3 version: 0.29.4(solid-js@1.8.22) @@ -1142,10 +1139,6 @@ packages: resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - resolution: {integrity: sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} engines: {node: '>=6.9.0'} @@ -1156,17 +1149,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.2': - resolution: {integrity: sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-define-polyfill-provider@0.6.2': - resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-member-expression-to-functions@7.24.8': resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} engines: {node: '>=6.9.0'} @@ -1193,12 +1175,6 @@ packages: resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.25.0': - resolution: {integrity: sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.25.0': resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} engines: {node: '>=6.9.0'} @@ -1225,10 +1201,6 @@ packages: resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.25.0': - resolution: {integrity: sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==} - engines: {node: '>=6.9.0'} - '@babel/helpers@7.25.0': resolution: {integrity: sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==} engines: {node: '>=6.9.0'} @@ -1242,36 +1214,6 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3': - resolution: {integrity: sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0': - resolution: {integrity: sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0': - resolution: {integrity: sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7': - resolution: {integrity: sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0': - resolution: {integrity: sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-proposal-class-properties@7.18.6': resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} engines: {node: '>=6.9.0'} @@ -1286,38 +1228,11 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-async-generators@7.8.4': - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-class-properties@7.12.13': resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-class-static-block@7.14.5': - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-dynamic-import@7.8.3': - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-export-namespace-from@7.8.3': - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-flow@7.24.7': resolution: {integrity: sha512-9G8GYT/dxn/D1IIKOUBmGX0mnmj46mGH9NnZyJLwtCpgh5f7D2VbuKodb+2s9m1Yavh1s7ASQN8lf0eqrb1LTw==} engines: {node: '>=6.9.0'} @@ -1330,100 +1245,29 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.24.7': - resolution: {integrity: sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-json-strings@7.8.3': - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-jsx@7.24.7': resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4': - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-numeric-separator@7.10.4': - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-object-rest-spread@7.8.3': resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-optional-catch-binding@7.8.3': - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-chaining@7.8.3': - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-private-property-in-object@7.14.5': - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-top-level-await@7.14.5': - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.24.7': resolution: {integrity: sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6': - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/plugin-transform-arrow-functions@7.24.7': resolution: {integrity: sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.25.0': - resolution: {integrity: sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-to-generator@7.24.7': - resolution: {integrity: sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.24.7': resolution: {integrity: sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==} engines: {node: '>=6.9.0'} @@ -1436,18 +1280,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.24.7': - resolution: {integrity: sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-class-static-block@7.24.7': - resolution: {integrity: sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.25.0': resolution: {integrity: sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==} engines: {node: '>=6.9.0'} @@ -1466,42 +1298,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.24.7': - resolution: {integrity: sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-duplicate-keys@7.24.7': - resolution: {integrity: sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0': - resolution: {integrity: sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-dynamic-import@7.24.7': - resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-exponentiation-operator@7.24.7': - resolution: {integrity: sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-export-namespace-from@7.24.7': - resolution: {integrity: sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-flow-strip-types@7.25.2': resolution: {integrity: sha512-InBZ0O8tew5V0K6cHcQ+wgxlrjOw1W4wDXLkOTjLRD8GYhTSkxTVBtdy3MMtvYBrbAWa1Qm3hNoTc1620Yj+Mg==} engines: {node: '>=6.9.0'} @@ -1520,120 +1316,36 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.24.7': - resolution: {integrity: sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.25.2': resolution: {integrity: sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.24.7': - resolution: {integrity: sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.24.7': resolution: {integrity: sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.24.7': - resolution: {integrity: sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.8': resolution: {integrity: sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.25.0': - resolution: {integrity: sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-umd@7.24.7': - resolution: {integrity: sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7': - resolution: {integrity: sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-new-target@7.24.7': - resolution: {integrity: sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7': - resolution: {integrity: sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-numeric-separator@7.24.7': - resolution: {integrity: sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-rest-spread@7.24.7': - resolution: {integrity: sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.24.7': resolution: {integrity: sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.24.7': - resolution: {integrity: sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-optional-chaining@7.24.8': - resolution: {integrity: sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.7': resolution: {integrity: sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.24.7': - resolution: {integrity: sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-private-property-in-object@7.24.7': - resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.24.7': resolution: {integrity: sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==} engines: {node: '>=6.9.0'} @@ -1652,18 +1364,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-regenerator@7.24.7': - resolution: {integrity: sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-reserved-words@7.24.7': - resolution: {integrity: sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-shorthand-properties@7.24.7': resolution: {integrity: sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==} engines: {node: '>=6.9.0'} @@ -1676,74 +1376,24 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.24.7': - resolution: {integrity: sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-template-literals@7.24.7': resolution: {integrity: sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typeof-symbol@7.24.8': - resolution: {integrity: sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.25.2': resolution: {integrity: sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-escapes@7.24.7': - resolution: {integrity: sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-property-regex@7.24.7': - resolution: {integrity: sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-regex@7.24.7': - resolution: {integrity: sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-sets-regex@7.24.7': - resolution: {integrity: sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/preset-env@7.25.3': - resolution: {integrity: sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-modules@0.1.6-no-external-plugins': - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - '@babel/preset-typescript@7.24.7': resolution: {integrity: sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - '@babel/runtime@7.25.0': resolution: {integrity: sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==} engines: {node: '>=6.9.0'} @@ -1849,12 +1499,6 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.17.19': - resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm64@0.19.12': resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} engines: {node: '>=12'} @@ -1879,12 +1523,6 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm@0.17.19': - resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - '@esbuild/android-arm@0.19.12': resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} engines: {node: '>=12'} @@ -1909,12 +1547,6 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-x64@0.17.19': - resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - '@esbuild/android-x64@0.19.12': resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} engines: {node: '>=12'} @@ -1939,12 +1571,6 @@ packages: cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.17.19': - resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-arm64@0.19.12': resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} engines: {node: '>=12'} @@ -1969,12 +1595,6 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.17.19': - resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - '@esbuild/darwin-x64@0.19.12': resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} engines: {node: '>=12'} @@ -1999,12 +1619,6 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.17.19': - resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-arm64@0.19.12': resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} engines: {node: '>=12'} @@ -2029,12 +1643,6 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.17.19': - resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - '@esbuild/freebsd-x64@0.19.12': resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} engines: {node: '>=12'} @@ -2059,12 +1667,6 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.17.19': - resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm64@0.19.12': resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} engines: {node: '>=12'} @@ -2089,12 +1691,6 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.17.19': - resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - '@esbuild/linux-arm@0.19.12': resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} engines: {node: '>=12'} @@ -2119,12 +1715,6 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.17.19': - resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-ia32@0.19.12': resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} engines: {node: '>=12'} @@ -2149,12 +1739,6 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.17.19': - resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-loong64@0.19.12': resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} engines: {node: '>=12'} @@ -2179,12 +1763,6 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.17.19': - resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-mips64el@0.19.12': resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} engines: {node: '>=12'} @@ -2209,12 +1787,6 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.17.19': - resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-ppc64@0.19.12': resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} engines: {node: '>=12'} @@ -2239,12 +1811,6 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.17.19': - resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-riscv64@0.19.12': resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} engines: {node: '>=12'} @@ -2269,12 +1835,6 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.17.19': - resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-s390x@0.19.12': resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} engines: {node: '>=12'} @@ -2299,12 +1859,6 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.17.19': - resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - '@esbuild/linux-x64@0.19.12': resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} engines: {node: '>=12'} @@ -2329,12 +1883,6 @@ packages: cpu: [x64] os: [linux] - '@esbuild/netbsd-x64@0.17.19': - resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - '@esbuild/netbsd-x64@0.19.12': resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} engines: {node: '>=12'} @@ -2365,12 +1913,6 @@ packages: cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.17.19': - resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - '@esbuild/openbsd-x64@0.19.12': resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} engines: {node: '>=12'} @@ -2395,12 +1937,6 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/sunos-x64@0.17.19': - resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - '@esbuild/sunos-x64@0.19.12': resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} engines: {node: '>=12'} @@ -2425,12 +1961,6 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.17.19': - resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-arm64@0.19.12': resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} engines: {node: '>=12'} @@ -2455,12 +1985,6 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.17.19': - resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-ia32@0.19.12': resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} engines: {node: '>=12'} @@ -2485,12 +2009,6 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.17.19': - resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - '@esbuild/win32-x64@0.19.12': resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} engines: {node: '>=12'} @@ -2761,12 +2279,6 @@ packages: peerDependencies: graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@hapi/hoek@9.3.0': - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} - - '@hapi/topo@5.1.0': - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} - '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} @@ -3119,15 +2631,6 @@ packages: cpu: [x64] os: [win32] - '@sideway/address@4.1.5': - resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} - - '@sideway/formula@3.0.1': - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} - - '@sideway/pinpoint@2.0.0': - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} - '@sindresorhus/is@4.6.0': resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} @@ -3136,6 +2639,11 @@ packages: resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} engines: {node: '>=18'} + '@solid-primitives/clipboard@1.5.10': + resolution: {integrity: sha512-ohwlrBP4j+Qjksg01CFWaP/USpzX78dBNVA1DPRZkf/vJgytX0T6KMc2YxF6o8fs6ePIYSI8Nt3sKxF0sh1q+Q==} + peerDependencies: + solid-js: ^1.6.12 + '@solid-primitives/composites@1.1.1': resolution: {integrity: sha512-eNi1jnUJehBjcVQvod8N1uz91Cn3KvJn/HJIPHUVpnpDj8dFhu5eHJtsiEdNBFJFOR/pPmf9RhJG0pKoTdPz6g==} peerDependencies: @@ -3147,11 +2655,76 @@ packages: peerDependencies: solid-js: '>=1.0.0' + '@solid-primitives/event-bus@1.0.11': + resolution: {integrity: sha512-bSwVA4aI2aNHomSbEroUnisMSyDDXJbrw4U8kFEvrcYdlLrJX5i6QeCFx+vj/zdQQw62KAllrEIyWP8KMpPVnQ==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/event-listener@2.3.3': + resolution: {integrity: sha512-DAJbl+F0wrFW2xmcV8dKMBhk9QLVLuBSW+TR4JmIfTaObxd13PuL7nqaXnaYKDWOYa6otB00qcCUIGbuIhSUgQ==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/intersection-observer@2.1.6': + resolution: {integrity: sha512-SeiCmN/R46Z+o9+5HhIQzSor0DqVPyo4ROLQMvCI8AsGZl/5nHlWzHTTbWPeukVUXTgb04wfC3DUo9IzF/XloA==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/keyboard@1.2.8': + resolution: {integrity: sha512-pJtcbkjozS6L1xvTht9rPpyPpX55nAkfBzbFWdf3y0Suwh6qClTibvvObzKOf7uzQ+8aZRDH4LsoGmbTKXtJjQ==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/marker@0.1.0': + resolution: {integrity: sha512-vRbqZ1z0qVYXLg5UmG4q5zAZeT6rOl2FcTyis7lnrp7WtY/WynsqIbiDEmnE9LJJPWdAz6HGZBgsOXeWkbPelw==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/media@2.2.9': + resolution: {integrity: sha512-QUmU62D4/d9YWx/4Dvr/UZasIkIpqNXz7wosA5GLmesRW9XlPa3G5M6uOmTw73SByHNTCw0D6x8bSdtvvLgzvQ==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/mutation-observer@1.1.17': + resolution: {integrity: sha512-01skkiHtNWl2PQ0ugFzZHBMsHk870+bZSNK8Gvjcj3mZwBzAJPaUPzFswfM/V8Io1Cko86vfXl73vl9ddRYb5A==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/platform@0.1.2': + resolution: {integrity: sha512-sSxcZfuUrtxcwV0vdjmGnZQcflACzMfLriVeIIWXKp8hzaS3Or3tO6EFQkTd3L8T5dTq+kTtLvPscXIpL0Wzdg==} + peerDependencies: + solid-js: ^1.6.12 + '@solid-primitives/refs@1.0.8': resolution: {integrity: sha512-+jIsWG8/nYvhaCoG2Vg6CJOLgTmPKFbaCrNQKWfChalgUf9WrVxWw0CdJb3yX15n5lUcQ0jBo6qYtuVVmBLpBw==} peerDependencies: solid-js: ^1.6.12 + '@solid-primitives/resize-observer@2.0.26': + resolution: {integrity: sha512-KbPhwal6ML9OHeUTZszBbt6PYSMj89d4wVCLxlvDYL4U0+p+xlCEaqz6v9dkCwm/0Lb+Wed7W5T1dQZCP3JUUw==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/rootless@1.4.5': + resolution: {integrity: sha512-GFJE9GC3ojx0aUKqAUZmQPyU8fOVMtnVNrkdk2yS4kd17WqVSpXpoTmo9CnOwA+PG7FTzdIkogvfLQSLs4lrww==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/scheduled@1.4.4': + resolution: {integrity: sha512-BTGdFP7t+s7RSak+s1u0eTix4lHP23MrbGkgQTFlt1E+4fmnD/bEx3ZfNW7Grylz3GXgKyXrgDKA7jQ/wuWKgA==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/scroll@2.0.23': + resolution: {integrity: sha512-kO0YpXKEUHaAnHp3zIsHYmxxuKXO3/LxVhZQHHmhqsmUY6A5IBObkSkoQ/ChIPl/WMKE7ynxEq40OgRmhvyUSw==} + peerDependencies: + solid-js: ^1.6.12 + + '@solid-primitives/static-store@0.0.8': + resolution: {integrity: sha512-ZecE4BqY0oBk0YG00nzaAWO5Mjcny8Fc06CdbXadH9T9lzq/9GefqcSe/5AtdXqjvY/DtJ5C6CkcjPZO0o/eqg==} + peerDependencies: + solid-js: ^1.6.12 + '@solid-primitives/throttle@1.2.0': resolution: {integrity: sha512-qYKYEgGl/nSCF+wq7H6zFFi8s2e/woFZJkZbCbyUrtbEIvCze4xSZRr64Xi067GlBE+T/N4LZX/htJmLfwkAeg==} deprecated: throttle primitive moved to @solid-primitives/scheduled @@ -3163,6 +2736,11 @@ packages: peerDependencies: solid-js: ^1.6.12 + '@solid-primitives/tween@1.3.0': + resolution: {integrity: sha512-APS/C++t0DY0KoWkDbFX7yqykpQ0rdmmv/A42+7zwxy0X0uxgVC3kYqH8gP5eh6HVrDbgtguTTBsb1irhbNjHg==} + peerDependencies: + solid-js: ^1.6.12 + '@solid-primitives/utils@6.2.3': resolution: {integrity: sha512-CqAwKb2T5Vi72+rhebSsqNZ9o67buYRdEJrIFzRXz3U59QqezuuxPsyzTSVCacwS5Pf109VRsgCJQoxKRoECZQ==} peerDependencies: @@ -3200,11 +2778,11 @@ packages: resolution: {integrity: sha512-rqI++FWClU5I2UBp4HXFvl+sBWkdigBkxnpJDQUWttNyG7IZP4FwQGhTNL5EOw0vI8i6eSAJ5frLqO7n7jbJdg==} engines: {node: '>= 14.6.0', npm: '>= 6.6.0', yarn: '>= 1.19.1'} - '@tauri-apps/api@2.0.0-rc.4': - resolution: {integrity: sha512-UNiIhhKG08j4ooss2oEEVexffmWkgkYlC2M3GcX3VPtNsqFgVNL8Mcw/4Y7rO9M9S+ffAMnLOF5ypzyuyb8tyg==} + '@tauri-apps/api@2.0.1': + resolution: {integrity: sha512-eoQWT+Tq1qSwQpHV+nw1eNYe5B/nm1PoRjQCRiEOS12I1b+X4PUcREfXVX8dPcBT6GrzWGDtaecY0+1p0Rfqlw==} - '@tauri-apps/plugin-store@2.0.0-rc.1': - resolution: {integrity: sha512-rW71Tkr7OifxoL8NkWgPy5Os4Gn3oJTbv/j/nJ03HDuYsq+F4+8kU8o4epRFJnr6VKmgB/2CtiacSC3dnSSRnA==} + '@tauri-apps/plugin-store@2.0.0': + resolution: {integrity: sha512-l4xsbxAXrKGdBdYNNswrLfcRv3v1kOatdycOcVPYW+jKwkznCr1HEOrPXkPhXsZLSLyYmNXpgfOmdSZNmcykDg==} '@types/babel__core@7.20.5': resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} @@ -3221,9 +2799,6 @@ packages: '@types/braces@3.0.4': resolution: {integrity: sha512-0WR3b8eaISjEW7RpZnclONaLFDf7buaowRHdqLp4vLj54AsSAYWfh3DRbfiYJY9XDxMgx1B4sE1Afw2PGpuHOA==} - '@types/cookie@0.5.4': - resolution: {integrity: sha512-7z/eR6O859gyWIAjuvBWFzNURmf2oPBmJlfVWkwehU5nzIyjwBsTh7WMmEEV4JFnHuQ3ex4oyTvfKzcyJVDBNA==} - '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} @@ -3374,13 +2949,13 @@ packages: peerDependencies: vinxi: ^0.4.2 - '@vitest/expect@2.1.0': - resolution: {integrity: sha512-N3/xR4fSu0+6sVZETEtPT1orUs2+Y477JOXTcU3xKuu3uBlsgbD7/7Mz2LZ1Jr1XjwilEWlrIgSCj4N1+5ZmsQ==} + '@vitest/expect@2.1.1': + resolution: {integrity: sha512-YeueunS0HiHiQxk+KEOnq/QMzlUuOzbU1Go+PgAsHvvv3tUkJPm9xWt+6ITNTlzsMXUjmgm5T+U7KBPK2qQV6w==} - '@vitest/mocker@2.1.0': - resolution: {integrity: sha512-ZxENovUqhzl+QiOFpagiHUNUuZ1qPd5yYTCYHomGIZOFArzn4mgX2oxZmiAItJWAaXHG6bbpb/DpSPhlk5DgtA==} + '@vitest/mocker@2.1.1': + resolution: {integrity: sha512-LNN5VwOEdJqCmJ/2XJBywB11DLlkbY0ooDJW3uRX5cZyYCrc4PI/ePX0iQhE3BiEGiQmK4GE7Q/PqCkkaiPnrA==} peerDependencies: - '@vitest/spy': 2.1.0 + '@vitest/spy': 2.1.1 msw: ^2.3.5 vite: ^5.0.0 peerDependenciesMeta: @@ -3389,20 +2964,20 @@ packages: vite: optional: true - '@vitest/pretty-format@2.1.0': - resolution: {integrity: sha512-7sxf2F3DNYatgmzXXcTh6cq+/fxwB47RIQqZJFoSH883wnVAoccSRT6g+dTKemUBo8Q5N4OYYj1EBXLuRKvp3Q==} + '@vitest/pretty-format@2.1.1': + resolution: {integrity: sha512-SjxPFOtuINDUW8/UkElJYQSFtnWX7tMksSGW0vfjxMneFqxVr8YJ979QpMbDW7g+BIiq88RAGDjf7en6rvLPPQ==} - '@vitest/runner@2.1.0': - resolution: {integrity: sha512-D9+ZiB8MbMt7qWDRJc4CRNNUlne/8E1X7dcKhZVAbcOKG58MGGYVDqAq19xlhNfMFZsW0bpVKgztBwks38Ko0w==} + '@vitest/runner@2.1.1': + resolution: {integrity: sha512-uTPuY6PWOYitIkLPidaY5L3t0JJITdGTSwBtwMjKzo5O6RCOEncz9PUN+0pDidX8kTHYjO0EwUIvhlGpnGpxmA==} - '@vitest/snapshot@2.1.0': - resolution: {integrity: sha512-x69CygGMzt9VCO283K2/FYQ+nBrOj66OTKpsPykjCR4Ac3lLV+m85hj9reaIGmjBSsKzVvbxWmjWE3kF5ha3uQ==} + '@vitest/snapshot@2.1.1': + resolution: {integrity: sha512-BnSku1WFy7r4mm96ha2FzN99AZJgpZOWrAhtQfoxjUU5YMRpq1zmHRq7a5K9/NjqonebO7iVDla+VvZS8BOWMw==} - '@vitest/spy@2.1.0': - resolution: {integrity: sha512-IXX5NkbdgTYTog3F14i2LgnBc+20YmkXMx0IWai84mcxySUDRgm0ihbOfR4L0EVRBDFG85GjmQQEZNNKVVpkZw==} + '@vitest/spy@2.1.1': + resolution: {integrity: sha512-ZM39BnZ9t/xZ/nF4UwRH5il0Sw93QnZXd9NAZGRpIgj0yvVwPpLd702s/Cx955rGaMlyBQkZJ2Ir7qyY48VZ+g==} - '@vitest/utils@2.1.0': - resolution: {integrity: sha512-rreyfVe0PuNqJfKYUwfPDfi6rrp0VSu0Wgvp5WBqJonP+4NvXHk48X6oBam1Lj47Hy6jbJtnMj3OcRdrkTP0tA==} + '@vitest/utils@2.1.1': + resolution: {integrity: sha512-Y6Q9TsI+qJ2CC0ZKj6VBb+T8UPz593N113nnUykqwANqhgf3QkZeHFlusgKLTqrnVHbj/XDKZcDHol+dxVT+rQ==} '@whatwg-node/events@0.0.3': resolution: {integrity: sha512-IqnKIDWfXBJkvy/k6tzskWTc2NK3LcqHlb+KHGCrjOCH4jfQckRX0NAiIcC/vIqQkzLYw2r2CTSwAxcrtcD6lA==} @@ -3428,10 +3003,6 @@ packages: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - acorn-import-attributes@1.9.5: resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} peerDependencies: @@ -3597,9 +3168,6 @@ packages: resolution: {integrity: sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==} hasBin: true - axios@0.25.0: - resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} - b4a@1.6.6: resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} @@ -3608,21 +3176,6 @@ packages: peerDependencies: '@babel/core': ^7.20.12 - babel-plugin-polyfill-corejs2@0.4.11: - resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-corejs3@0.10.6: - resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-regenerator@0.6.2: - resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0: resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==} @@ -3723,10 +3276,6 @@ packages: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} - bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} - bytes@3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} @@ -3930,24 +3479,12 @@ packages: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} - compressible@2.0.18: - resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} - engines: {node: '>= 0.6'} - - compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} - engines: {node: '>= 0.8.0'} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} confbox@0.1.7: resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - connect@3.7.0: - resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==} - engines: {node: '>= 0.10.0'} - consola@3.2.3: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} @@ -3964,9 +3501,6 @@ packages: cookie-es@1.2.2: resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==} - core-js-compat@3.38.0: - resolution: {integrity: sha512-75LAicdLa4OJVwFxFbQR3NdnZjNgX6ILpVcVzcC4T2smerB5lELMrJQQQoWV6TiuC/vlaFqgU2tKQx9w5s0e0A==} - core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -4257,11 +3791,6 @@ packages: esbuild: '>=0.12' solid-js: '>= 1.0' - esbuild@0.17.19: - resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==} - engines: {node: '>=12'} - hasBin: true - esbuild@0.19.12: resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} engines: {node: '>=12'} @@ -4461,10 +3990,6 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@1.1.2: - resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} - engines: {node: '>= 0.8'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -4558,10 +4083,6 @@ packages: get-port-please@3.1.2: resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} - get-port@6.1.2: - resolution: {integrity: sha512-BrGGraKm2uPqurfGVj/z97/zv8dPleC6x9JBNRTrDNtCkkRF4rPwrQXFgL7+I+q8QSdU4ntLQX2D7KIxSy8nGw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -4992,9 +4513,6 @@ packages: resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} hasBin: true - joi@17.13.3: - resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==} - jose@5.6.3: resolution: {integrity: sha512-1Jh//hEEwMhNYPDDLwXHa2ePWgWiFNNUadVmguAAw2IJ6sj9mNxV5tGXJNqlMkJAybF6Lgw1mISDxTePP/187g==} @@ -5025,10 +4543,6 @@ packages: canvas: optional: true - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} @@ -5128,9 +4642,6 @@ packages: lodash.castarray@4.4.0: resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} - lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - lodash.defaults@4.2.0: resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} @@ -5349,17 +4860,10 @@ packages: resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} - micromorph@0.3.1: - resolution: {integrity: sha512-dbX4sz405e/QQtbHFMJj0SaVP+xuBBpSpR44AQYTjsrPek8oKyeRXkbtYN1XyFVdV7WjHp5DZMwxJOJiBfH1Jw==} - mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} - mime-db@1.53.0: - resolution: {integrity: sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==} - engines: {node: '>= 0.6'} - mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} @@ -5460,10 +4964,6 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - nitropack@2.9.7: resolution: {integrity: sha512-aKXvtNrWkOCMsQbsk4A0qQdBjrJ1ZcvwlTQevI/LAgLWLYc5L7Q/YiYxGLal4ITyNSlzir1Cm1D2ZxnYhmpMEw==} engines: {node: ^16.11.0 || >=17.0.0} @@ -5585,18 +5085,10 @@ packages: ohash@1.1.3: resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} - on-finished@2.3.0: - resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} - engines: {node: '>= 0.8'} - on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} - on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} - engines: {node: '>= 0.8'} - once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -5688,9 +5180,6 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} - parse-multipart-data@1.5.0: - resolution: {integrity: sha512-ck5zaMF0ydjGfejNMnlo5YU2oJ+pT+80Jb1y4ybanT27j+zbVP/jkYmCrUGsEln0Ox/hZmuvgy8Ra7AxbXP2Mw==} - parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} @@ -6059,27 +5548,9 @@ packages: redux@4.2.1: resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} - regenerate-unicode-properties@10.1.1: - resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} - engines: {node: '>=4'} - - regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - - regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} - engines: {node: '>=4'} - - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - rehype-autolink-headings@7.1.0: resolution: {integrity: sha512-rItO/pSdvnvsP4QRB1pmPiNHUskikqtPojZKJPPPAVx9Hj8i8TwMBhofrrAYRhYOOBZH9tgmG5lPqDLuIWPWmw==} @@ -6177,26 +5648,11 @@ packages: rollup: optional: true - rollup-route-manifest@1.0.0: - resolution: {integrity: sha512-3CmcMmCLAzJDUXiO3z6386/Pt8/k9xTZv8gIHyXI8hYGoAInnYdOsFXiGGzQRMy6TXR1jUZme2qbdwjH2nFMjg==} - engines: {node: '>=8'} - peerDependencies: - rollup: '>=2.0.0' - - rollup@3.29.4: - resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==} - engines: {node: '>=14.18.0', npm: '>=8.0.0'} - hasBin: true - rollup@4.20.0: resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - route-sort@1.0.0: - resolution: {integrity: sha512-SFgmvjoIhp5S4iBEDW3XnbT+7PRuZ55oRuNjY+CDB1SGZkyCG9bqQ3/dhaZTctTBYMAvDxd2Uy9dStuaUfgJqQ==} - engines: {node: '>= 6'} - rrweb-cssom@0.7.1: resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==} @@ -6214,10 +5670,6 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - sade@1.8.1: - resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} - engines: {node: '>=6'} - safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -6281,9 +5733,6 @@ packages: set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - set-cookie-parser@2.7.0: - resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==} - setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} @@ -6388,40 +5837,6 @@ packages: peerDependencies: solid-js: ^1.3 - solid-start@0.3.11: - resolution: {integrity: sha512-zVv1CI/Zwr3nBgRLqp0xxXZh9TGSqFcBTdcDwDT89HeVnL3ly2+bZGfXd3K9cEAJ/H9JUSmEyr0EzZfGhjZ/Yg==} - hasBin: true - peerDependencies: - '@solidjs/meta': ^0.29.1 - '@solidjs/router': ^0.8.2 - solid-js: ^1.8.4 - solid-start-aws: '*' - solid-start-cloudflare-pages: '*' - solid-start-cloudflare-workers: '*' - solid-start-deno: '*' - solid-start-netlify: '*' - solid-start-node: '*' - solid-start-static: '*' - solid-start-vercel: '*' - vite: ^4.4.6 - peerDependenciesMeta: - solid-start-aws: - optional: true - solid-start-cloudflare-pages: - optional: true - solid-start-cloudflare-workers: - optional: true - solid-start-deno: - optional: true - solid-start-netlify: - optional: true - solid-start-node: - optional: true - solid-start-static: - optional: true - solid-start-vercel: - optional: true - solid-tippy@0.2.1: resolution: {integrity: sha512-8qB6X1iMn7nBd5BX+x7tS+5mDVragw5vCaXLOxEQFWUsyRRGKAY8JmbmmyVFIMIvF+pgkIIVIArhNfAGGtYVLA==} engines: {node: '>=10'} @@ -6481,10 +5896,6 @@ packages: standard-as-callback@2.1.0: resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} - statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - statuses@2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} @@ -6835,26 +6246,10 @@ packages: unenv@1.10.0: resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==} - unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} engines: {node: '>=4'} - unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - - unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - - unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} @@ -6899,10 +6294,6 @@ packages: resolution: {integrity: sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg==} engines: {node: '>=0.10.0'} - unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - unplugin@1.12.1: resolution: {integrity: sha512-aXEH9c5qi3uYZHo0niUtxDlT9ylG/luMW/dZslSCkbtC31wCyFkmM0kyoBBh+Grhn7CL+/kvKLfN61/EdxPxMQ==} engines: {node: '>=14.0.0'} @@ -6992,10 +6383,6 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - valibot@0.20.1: resolution: {integrity: sha512-7lToTLG5wtK76u32gq8dUK0bAw7bknTGbeNSKRJunAC2soGVnNrKngg+38Jjt6FOwH+MshUONHoFz+LgmjeYKQ==} @@ -7006,10 +6393,6 @@ packages: resolution: {integrity: sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==} engines: {node: '>=12'} - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - vfile-location@5.0.3: resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} @@ -7023,8 +6406,8 @@ packages: resolution: {integrity: sha512-BbvIum9BLUQ22O/lU1RX0+aKNMXXcl58hofNoWFnFcKkm+efgVsHiD2d7HG3w8QLdb2Asdhmz5/ZzI1Y3zTBXw==} hasBin: true - vite-node@2.1.0: - resolution: {integrity: sha512-+ybYqBVUjYyIscoLzMWodus2enQDZOpGhcU6HdOVD6n8WZdk12w1GFL3mbnxLs7hPtRtqs1Wo5YF6/Tsr6fmhg==} + vite-node@2.1.1: + resolution: {integrity: sha512-N/mGckI1suG/5wQI35XeR9rsMsPqKXzq1CdUndzVstBj/HvyxxGctwnK6WX43NGt5L3Z5tcRf83g4TITKJhPrA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -7087,15 +6470,15 @@ packages: vite: optional: true - vitest@2.1.0: - resolution: {integrity: sha512-XuuEeyNkqbfr0FtAvd9vFbInSSNY1ykCQTYQ0sj9wPy4hx+1gR7gqVNdW0AX2wrrM1wWlN5fnJDjF9xG6mYRSQ==} + vitest@2.1.1: + resolution: {integrity: sha512-97We7/VC0e9X5zBVkvt7SGQMGrRtn3KtySFQG5fpaMlS+l62eeXRQO633AYhSTC3z7IMebnPPNjGXVGNRFlxBA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.0 - '@vitest/ui': 2.1.0 + '@vitest/browser': 2.1.1 + '@vitest/ui': 2.1.1 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -7116,11 +6499,6 @@ packages: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} engines: {node: '>=18'} - wait-on@6.0.1: - resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==} - engines: {node: '>=10.0.0'} - hasBin: true - wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} @@ -7373,13 +6751,6 @@ snapshots: dependencies: '@babel/types': 7.25.2 - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - dependencies: - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 - transitivePeerDependencies: - - supports-color - '@babel/helper-compilation-targets@7.25.2': dependencies: '@babel/compat-data': 7.25.2 @@ -7401,24 +6772,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - regexpu-core: 5.3.2 - semver: 6.3.1 - - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - debug: 4.3.6 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-member-expression-to-functions@7.24.8': dependencies: '@babel/traverse': 7.25.3 @@ -7453,15 +6806,6 @@ snapshots: '@babel/helper-plugin-utils@7.24.8': {} - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-wrap-function': 7.25.0 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/helper-replace-supers@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7491,14 +6835,6 @@ snapshots: '@babel/helper-validator-option@7.24.8': {} - '@babel/helper-wrap-function@7.25.0': - dependencies: - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 - transitivePeerDependencies: - - supports-color - '@babel/helpers@7.25.0': dependencies: '@babel/template': 7.25.0 @@ -7509,47 +6845,12 @@ snapshots: '@babel/helper-validator-identifier': 7.24.7 chalk: 2.4.2 js-tokens: 4.0.0 - picocolors: 1.0.1 + picocolors: 1.1.0 '@babel/parser@7.25.3': dependencies: '@babel/types': 7.25.2 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7567,35 +6868,11 @@ snapshots: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-flow@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7606,101 +6883,26 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-async-generator-functions@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7711,23 +6913,6 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-classes@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7751,43 +6936,6 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) - - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-flow-strip-types@7.25.2(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7811,36 +6959,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7850,55 +6978,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) - - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7907,44 +6986,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) - - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7966,17 +7012,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - regenerator-transform: 0.15.2 - - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7990,21 +7025,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -8016,125 +7041,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/preset-env@7.25.3(@babel/core@7.25.2)': - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/core': 7.25.2 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.25.2) - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-async-generator-functions': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.25.2) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.25.2) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.25.2) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.25.2) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) - babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) - core-js-compat: 3.38.0 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/types': 7.25.2 - esutils: 2.0.3 - '@babel/preset-typescript@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -8146,8 +7052,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/regjsgen@0.8.0': {} - '@babel/runtime@7.25.0': dependencies: regenerator-runtime: 0.14.1 @@ -8343,9 +7247,6 @@ snapshots: '@esbuild/aix-ppc64@0.23.0': optional: true - '@esbuild/android-arm64@0.17.19': - optional: true - '@esbuild/android-arm64@0.19.12': optional: true @@ -8358,9 +7259,6 @@ snapshots: '@esbuild/android-arm64@0.23.0': optional: true - '@esbuild/android-arm@0.17.19': - optional: true - '@esbuild/android-arm@0.19.12': optional: true @@ -8373,9 +7271,6 @@ snapshots: '@esbuild/android-arm@0.23.0': optional: true - '@esbuild/android-x64@0.17.19': - optional: true - '@esbuild/android-x64@0.19.12': optional: true @@ -8388,9 +7283,6 @@ snapshots: '@esbuild/android-x64@0.23.0': optional: true - '@esbuild/darwin-arm64@0.17.19': - optional: true - '@esbuild/darwin-arm64@0.19.12': optional: true @@ -8403,9 +7295,6 @@ snapshots: '@esbuild/darwin-arm64@0.23.0': optional: true - '@esbuild/darwin-x64@0.17.19': - optional: true - '@esbuild/darwin-x64@0.19.12': optional: true @@ -8418,9 +7307,6 @@ snapshots: '@esbuild/darwin-x64@0.23.0': optional: true - '@esbuild/freebsd-arm64@0.17.19': - optional: true - '@esbuild/freebsd-arm64@0.19.12': optional: true @@ -8433,9 +7319,6 @@ snapshots: '@esbuild/freebsd-arm64@0.23.0': optional: true - '@esbuild/freebsd-x64@0.17.19': - optional: true - '@esbuild/freebsd-x64@0.19.12': optional: true @@ -8448,9 +7331,6 @@ snapshots: '@esbuild/freebsd-x64@0.23.0': optional: true - '@esbuild/linux-arm64@0.17.19': - optional: true - '@esbuild/linux-arm64@0.19.12': optional: true @@ -8463,9 +7343,6 @@ snapshots: '@esbuild/linux-arm64@0.23.0': optional: true - '@esbuild/linux-arm@0.17.19': - optional: true - '@esbuild/linux-arm@0.19.12': optional: true @@ -8478,9 +7355,6 @@ snapshots: '@esbuild/linux-arm@0.23.0': optional: true - '@esbuild/linux-ia32@0.17.19': - optional: true - '@esbuild/linux-ia32@0.19.12': optional: true @@ -8493,9 +7367,6 @@ snapshots: '@esbuild/linux-ia32@0.23.0': optional: true - '@esbuild/linux-loong64@0.17.19': - optional: true - '@esbuild/linux-loong64@0.19.12': optional: true @@ -8508,9 +7379,6 @@ snapshots: '@esbuild/linux-loong64@0.23.0': optional: true - '@esbuild/linux-mips64el@0.17.19': - optional: true - '@esbuild/linux-mips64el@0.19.12': optional: true @@ -8523,9 +7391,6 @@ snapshots: '@esbuild/linux-mips64el@0.23.0': optional: true - '@esbuild/linux-ppc64@0.17.19': - optional: true - '@esbuild/linux-ppc64@0.19.12': optional: true @@ -8538,9 +7403,6 @@ snapshots: '@esbuild/linux-ppc64@0.23.0': optional: true - '@esbuild/linux-riscv64@0.17.19': - optional: true - '@esbuild/linux-riscv64@0.19.12': optional: true @@ -8553,9 +7415,6 @@ snapshots: '@esbuild/linux-riscv64@0.23.0': optional: true - '@esbuild/linux-s390x@0.17.19': - optional: true - '@esbuild/linux-s390x@0.19.12': optional: true @@ -8568,9 +7427,6 @@ snapshots: '@esbuild/linux-s390x@0.23.0': optional: true - '@esbuild/linux-x64@0.17.19': - optional: true - '@esbuild/linux-x64@0.19.12': optional: true @@ -8580,10 +7436,7 @@ snapshots: '@esbuild/linux-x64@0.21.5': optional: true - '@esbuild/linux-x64@0.23.0': - optional: true - - '@esbuild/netbsd-x64@0.17.19': + '@esbuild/linux-x64@0.23.0': optional: true '@esbuild/netbsd-x64@0.19.12': @@ -8601,9 +7454,6 @@ snapshots: '@esbuild/openbsd-arm64@0.23.0': optional: true - '@esbuild/openbsd-x64@0.17.19': - optional: true - '@esbuild/openbsd-x64@0.19.12': optional: true @@ -8616,9 +7466,6 @@ snapshots: '@esbuild/openbsd-x64@0.23.0': optional: true - '@esbuild/sunos-x64@0.17.19': - optional: true - '@esbuild/sunos-x64@0.19.12': optional: true @@ -8631,9 +7478,6 @@ snapshots: '@esbuild/sunos-x64@0.23.0': optional: true - '@esbuild/win32-arm64@0.17.19': - optional: true - '@esbuild/win32-arm64@0.19.12': optional: true @@ -8646,9 +7490,6 @@ snapshots: '@esbuild/win32-arm64@0.23.0': optional: true - '@esbuild/win32-ia32@0.17.19': - optional: true - '@esbuild/win32-ia32@0.19.12': optional: true @@ -8661,9 +7502,6 @@ snapshots: '@esbuild/win32-ia32@0.23.0': optional: true - '@esbuild/win32-x64@0.17.19': - optional: true - '@esbuild/win32-x64@0.19.12': optional: true @@ -9149,12 +7987,6 @@ snapshots: dependencies: graphql: 16.9.0 - '@hapi/hoek@9.3.0': {} - - '@hapi/topo@5.1.0': - dependencies: - '@hapi/hoek': 9.3.0 - '@humanwhocodes/module-importer@1.0.1': {} '@humanwhocodes/retry@0.3.0': {} @@ -9410,14 +8242,6 @@ snapshots: estree-walker: 2.0.2 picomatch: 2.3.1 - '@rollup/pluginutils@5.1.0(rollup@3.29.4)': - dependencies: - '@types/estree': 1.0.5 - estree-walker: 2.0.2 - picomatch: 2.3.1 - optionalDependencies: - rollup: 3.29.4 - '@rollup/pluginutils@5.1.0(rollup@4.20.0)': dependencies: '@types/estree': 1.0.5 @@ -9474,18 +8298,15 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.20.0': optional: true - '@sideway/address@4.1.5': - dependencies: - '@hapi/hoek': 9.3.0 - - '@sideway/formula@3.0.1': {} - - '@sideway/pinpoint@2.0.0': {} - '@sindresorhus/is@4.6.0': {} '@sindresorhus/merge-streams@2.3.0': {} + '@solid-primitives/clipboard@1.5.10(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + '@solid-primitives/composites@1.1.1(solid-js@1.8.20)': dependencies: '@solid-primitives/debounce': 1.3.0(solid-js@1.8.20) @@ -9496,11 +8317,88 @@ snapshots: dependencies: solid-js: 1.8.20 + '@solid-primitives/event-bus@1.0.11(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/event-listener@2.3.3(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/intersection-observer@2.1.6(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/keyboard@1.2.8(solid-js@1.8.22)': + dependencies: + '@solid-primitives/event-listener': 2.3.3(solid-js@1.8.22) + '@solid-primitives/rootless': 1.4.5(solid-js@1.8.22) + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/marker@0.1.0(solid-js@1.8.22)': + dependencies: + solid-js: 1.8.22 + + '@solid-primitives/media@2.2.9(solid-js@1.8.22)': + dependencies: + '@solid-primitives/event-listener': 2.3.3(solid-js@1.8.22) + '@solid-primitives/rootless': 1.4.5(solid-js@1.8.22) + '@solid-primitives/static-store': 0.0.8(solid-js@1.8.22) + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/mutation-observer@1.1.17(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/platform@0.1.2(solid-js@1.8.22)': + dependencies: + solid-js: 1.8.22 + '@solid-primitives/refs@1.0.8(solid-js@1.8.20)': dependencies: '@solid-primitives/utils': 6.2.3(solid-js@1.8.20) solid-js: 1.8.20 + '@solid-primitives/refs@1.0.8(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/resize-observer@2.0.26(solid-js@1.8.22)': + dependencies: + '@solid-primitives/event-listener': 2.3.3(solid-js@1.8.22) + '@solid-primitives/rootless': 1.4.5(solid-js@1.8.22) + '@solid-primitives/static-store': 0.0.8(solid-js@1.8.22) + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/rootless@1.4.5(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/scheduled@1.4.4(solid-js@1.8.22)': + dependencies: + solid-js: 1.8.22 + + '@solid-primitives/scroll@2.0.23(solid-js@1.8.22)': + dependencies: + '@solid-primitives/event-listener': 2.3.3(solid-js@1.8.22) + '@solid-primitives/rootless': 1.4.5(solid-js@1.8.22) + '@solid-primitives/static-store': 0.0.8(solid-js@1.8.22) + solid-js: 1.8.22 + + '@solid-primitives/static-store@0.0.8(solid-js@1.8.22)': + dependencies: + '@solid-primitives/utils': 6.2.3(solid-js@1.8.22) + solid-js: 1.8.22 + '@solid-primitives/throttle@1.2.0(solid-js@1.8.20)': dependencies: solid-js: 1.8.20 @@ -9509,21 +8407,21 @@ snapshots: dependencies: solid-js: 1.8.20 - '@solid-primitives/utils@6.2.3(solid-js@1.8.20)': + '@solid-primitives/tween@1.3.0(solid-js@1.8.22)': dependencies: - solid-js: 1.8.20 + solid-js: 1.8.22 - '@solidjs/meta@0.29.4(solid-js@1.8.20)': + '@solid-primitives/utils@6.2.3(solid-js@1.8.20)': dependencies: solid-js: 1.8.20 - '@solidjs/meta@0.29.4(solid-js@1.8.22)': + '@solid-primitives/utils@6.2.3(solid-js@1.8.22)': dependencies: solid-js: 1.8.22 - '@solidjs/router@0.13.6(solid-js@1.8.20)': + '@solidjs/meta@0.29.4(solid-js@1.8.22)': dependencies: - solid-js: 1.8.20 + solid-js: 1.8.22 '@solidjs/router@0.13.6(solid-js@1.8.22)': dependencies: @@ -9573,11 +8471,11 @@ snapshots: '@tauri-apps/api@1.6.0': {} - '@tauri-apps/api@2.0.0-rc.4': {} + '@tauri-apps/api@2.0.1': {} - '@tauri-apps/plugin-store@2.0.0-rc.1': + '@tauri-apps/plugin-store@2.0.0': dependencies: - '@tauri-apps/api': 2.0.0-rc.4 + '@tauri-apps/api': 2.0.1 '@types/babel__core@7.20.5': dependencies: @@ -9602,8 +8500,6 @@ snapshots: '@types/braces@3.0.4': {} - '@types/cookie@0.5.4': {} - '@types/debug@4.1.12': dependencies: '@types/ms': 0.7.34 @@ -9830,43 +8726,43 @@ snapshots: recast: 0.23.9 vinxi: 0.4.2(@types/node@22.5.4)(ioredis@5.4.1)(sass@1.77.8)(terser@5.31.5) - '@vitest/expect@2.1.0': + '@vitest/expect@2.1.1': dependencies: - '@vitest/spy': 2.1.0 - '@vitest/utils': 2.1.0 + '@vitest/spy': 2.1.1 + '@vitest/utils': 2.1.1 chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.0(@vitest/spy@2.1.0)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5))': + '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5))': dependencies: - '@vitest/spy': 2.1.0 + '@vitest/spy': 2.1.1 estree-walker: 3.0.3 magic-string: 0.30.11 optionalDependencies: vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - '@vitest/pretty-format@2.1.0': + '@vitest/pretty-format@2.1.1': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.1.0': + '@vitest/runner@2.1.1': dependencies: - '@vitest/utils': 2.1.0 + '@vitest/utils': 2.1.1 pathe: 1.1.2 - '@vitest/snapshot@2.1.0': + '@vitest/snapshot@2.1.1': dependencies: - '@vitest/pretty-format': 2.1.0 + '@vitest/pretty-format': 2.1.1 magic-string: 0.30.11 pathe: 1.1.2 - '@vitest/spy@2.1.0': + '@vitest/spy@2.1.1': dependencies: tinyspy: 3.0.2 - '@vitest/utils@2.1.0': + '@vitest/utils@2.1.1': dependencies: - '@vitest/pretty-format': 2.1.0 + '@vitest/pretty-format': 2.1.1 loupe: 3.1.1 tinyrainbow: 1.2.0 @@ -9906,11 +8802,6 @@ snapshots: dependencies: event-target-shim: 5.0.1 - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - acorn-import-attributes@1.9.5(acorn@8.12.1): dependencies: acorn: 8.12.1 @@ -10077,12 +8968,6 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 4.2.0 - axios@0.25.0(debug@4.3.6): - dependencies: - follow-redirects: 1.15.6(debug@4.3.6) - transitivePeerDependencies: - - debug - b4a@1.6.6: {} babel-plugin-jsx-dom-expressions@0.38.1(@babel/core@7.25.2): @@ -10094,30 +8979,6 @@ snapshots: html-entities: 2.3.3 validate-html-nesting: 1.2.2 - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2): - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/core': 7.25.2 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.2): - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) - core-js-compat: 3.38.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.2): - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) - transitivePeerDependencies: - - supports-color - babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0: {} babel-preset-fbjs@3.4.0(@babel/core@7.25.2): @@ -10253,8 +9114,6 @@ snapshots: dependencies: streamsearch: 1.1.0 - bytes@3.0.0: {} - bytes@3.1.2: {} c12@1.11.1: @@ -10469,35 +9328,10 @@ snapshots: normalize-path: 3.0.0 readable-stream: 4.5.2 - compressible@2.0.18: - dependencies: - mime-db: 1.53.0 - - compression@1.7.4: - dependencies: - accepts: 1.3.8 - bytes: 3.0.0 - compressible: 2.0.18 - debug: 2.6.9 - on-headers: 1.0.2 - safe-buffer: 5.1.2 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - concat-map@0.0.1: {} confbox@0.1.7: {} - connect@3.7.0: - dependencies: - debug: 2.6.9 - finalhandler: 1.1.2 - parseurl: 1.3.3 - utils-merge: 1.0.1 - transitivePeerDependencies: - - supports-color - consola@3.2.3: {} console-control-strings@1.1.0: {} @@ -10512,10 +9346,6 @@ snapshots: cookie-es@1.2.2: {} - core-js-compat@3.38.0: - dependencies: - browserslist: 4.23.3 - core-util-is@1.0.3: {} cosmiconfig@8.3.6(typescript@5.6.2): @@ -10728,16 +9558,6 @@ snapshots: es-module-lexer@1.5.4: {} - esbuild-plugin-solid@0.5.0(esbuild@0.17.19)(solid-js@1.8.20): - dependencies: - '@babel/core': 7.25.2 - '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) - babel-preset-solid: 1.8.19(@babel/core@7.25.2) - esbuild: 0.17.19 - solid-js: 1.8.20 - transitivePeerDependencies: - - supports-color - esbuild-plugin-solid@0.5.0(esbuild@0.19.12)(solid-js@1.8.22): dependencies: '@babel/core': 7.25.2 @@ -10748,31 +9568,6 @@ snapshots: transitivePeerDependencies: - supports-color - esbuild@0.17.19: - optionalDependencies: - '@esbuild/android-arm': 0.17.19 - '@esbuild/android-arm64': 0.17.19 - '@esbuild/android-x64': 0.17.19 - '@esbuild/darwin-arm64': 0.17.19 - '@esbuild/darwin-x64': 0.17.19 - '@esbuild/freebsd-arm64': 0.17.19 - '@esbuild/freebsd-x64': 0.17.19 - '@esbuild/linux-arm': 0.17.19 - '@esbuild/linux-arm64': 0.17.19 - '@esbuild/linux-ia32': 0.17.19 - '@esbuild/linux-loong64': 0.17.19 - '@esbuild/linux-mips64el': 0.17.19 - '@esbuild/linux-ppc64': 0.17.19 - '@esbuild/linux-riscv64': 0.17.19 - '@esbuild/linux-s390x': 0.17.19 - '@esbuild/linux-x64': 0.17.19 - '@esbuild/netbsd-x64': 0.17.19 - '@esbuild/openbsd-x64': 0.17.19 - '@esbuild/sunos-x64': 0.17.19 - '@esbuild/win32-arm64': 0.17.19 - '@esbuild/win32-ia32': 0.17.19 - '@esbuild/win32-x64': 0.17.19 - esbuild@0.19.12: optionalDependencies: '@esbuild/aix-ppc64': 0.19.12 @@ -11095,18 +9890,6 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@1.1.2: - dependencies: - debug: 2.6.9 - encodeurl: 1.0.2 - escape-html: 1.0.3 - on-finished: 2.3.0 - parseurl: 1.3.3 - statuses: 1.5.0 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -11124,9 +9907,7 @@ snapshots: flatted@3.3.1: {} - follow-redirects@1.15.6(debug@4.3.6): - optionalDependencies: - debug: 4.3.6 + follow-redirects@1.15.6: {} foreground-child@3.3.0: dependencies: @@ -11198,8 +9979,6 @@ snapshots: get-port-please@3.1.2: {} - get-port@6.1.2: {} - get-stream@6.0.1: {} get-stream@8.0.1: {} @@ -11497,7 +10276,7 @@ snapshots: http-proxy@1.18.1: dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.6(debug@4.3.6) + follow-redirects: 1.15.6 requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -11715,14 +10494,6 @@ snapshots: jiti@1.21.6: {} - joi@17.13.3: - dependencies: - '@hapi/hoek': 9.3.0 - '@hapi/topo': 5.1.0 - '@sideway/address': 4.1.5 - '@sideway/formula': 3.0.1 - '@sideway/pinpoint': 2.0.0 - jose@5.6.3: {} joycon@3.1.1: {} @@ -11768,8 +10539,6 @@ snapshots: - supports-color - utf-8-validate - jsesc@0.5.0: {} - jsesc@2.5.2: {} json-buffer@3.0.1: {} @@ -11879,8 +10648,6 @@ snapshots: lodash.castarray@4.4.0: {} - lodash.debounce@4.0.8: {} - lodash.defaults@4.2.0: {} lodash.isarguments@3.1.0: {} @@ -12281,12 +11048,8 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 - micromorph@0.3.1: {} - mime-db@1.52.0: {} - mime-db@1.53.0: {} - mime-types@2.1.35: dependencies: mime-db: 1.52.0 @@ -12363,8 +11126,6 @@ snapshots: natural-compare@1.4.0: {} - negotiator@0.6.3: {} - nitropack@2.9.7: dependencies: '@cloudflare/kv-asset-handler': 0.3.4 @@ -12552,16 +11313,10 @@ snapshots: ohash@1.1.3: {} - on-finished@2.3.0: - dependencies: - ee-first: 1.1.1 - on-finished@2.4.1: dependencies: ee-first: 1.1.1 - on-headers@1.0.2: {} - once@1.4.0: dependencies: wrappy: 1.0.2 @@ -12675,8 +11430,6 @@ snapshots: json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 - parse-multipart-data@1.5.0: {} - parse5@7.1.2: dependencies: entities: 4.5.0 @@ -12836,7 +11589,7 @@ snapshots: postcss@8.4.45: dependencies: nanoid: 3.3.7 - picocolors: 1.0.1 + picocolors: 1.1.0 source-map-js: 1.2.0 prelude-ls@1.2.1: {} @@ -12973,31 +11726,8 @@ snapshots: dependencies: '@babel/runtime': 7.25.0 - regenerate-unicode-properties@10.1.1: - dependencies: - regenerate: 1.4.2 - - regenerate@1.4.2: {} - regenerator-runtime@0.14.1: {} - regenerator-transform@0.15.2: - dependencies: - '@babel/runtime': 7.25.0 - - regexpu-core@5.3.2: - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.1 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - - regjsparser@0.9.1: - dependencies: - jsesc: 0.5.0 - rehype-autolink-headings@7.1.0: dependencies: '@types/hast': 3.0.4 @@ -13123,15 +11853,6 @@ snapshots: dependencies: glob: 7.2.3 - rollup-plugin-visualizer@5.12.0(rollup@3.29.4): - dependencies: - open: 8.4.2 - picomatch: 2.3.1 - source-map: 0.7.4 - yargs: 17.7.2 - optionalDependencies: - rollup: 3.29.4 - rollup-plugin-visualizer@5.12.0(rollup@4.20.0): dependencies: open: 8.4.2 @@ -13141,15 +11862,6 @@ snapshots: optionalDependencies: rollup: 4.20.0 - rollup-route-manifest@1.0.0(rollup@3.29.4): - dependencies: - rollup: 3.29.4 - route-sort: 1.0.0 - - rollup@3.29.4: - optionalDependencies: - fsevents: 2.3.3 - rollup@4.20.0: dependencies: '@types/estree': 1.0.5 @@ -13172,8 +11884,6 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.20.0 fsevents: 2.3.3 - route-sort@1.0.0: {} - rrweb-cssom@0.7.1: {} run-applescript@5.0.0: @@ -13190,10 +11900,6 @@ snapshots: dependencies: tslib: 2.6.3 - sade@1.8.1: - dependencies: - mri: 1.2.0 - safe-buffer@5.1.2: {} safe-buffer@5.2.1: {} @@ -13267,8 +11973,6 @@ snapshots: set-blocking@2.0.0: {} - set-cookie-parser@2.7.0: {} - setimmediate@1.0.5: {} setprototypeof@1.2.0: {} @@ -13360,15 +12064,6 @@ snapshots: seroval: 1.1.1 seroval-plugins: 1.1.1(seroval@1.1.1) - solid-refresh@0.6.3(solid-js@1.8.20): - dependencies: - '@babel/generator': 7.25.0 - '@babel/helper-module-imports': 7.24.7 - '@babel/types': 7.25.2 - solid-js: 1.8.20 - transitivePeerDependencies: - - supports-color - solid-refresh@0.6.3(solid-js@1.8.22): dependencies: '@babel/generator': 7.25.0 @@ -13378,50 +12073,6 @@ snapshots: transitivePeerDependencies: - supports-color - solid-start@0.3.11(@solidjs/meta@0.29.4(solid-js@1.8.20))(@solidjs/router@0.13.6(solid-js@1.8.20))(solid-js@1.8.20)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)): - dependencies: - '@babel/core': 7.25.2 - '@babel/generator': 7.25.0 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) - '@babel/preset-env': 7.25.3(@babel/core@7.25.2) - '@babel/preset-typescript': 7.24.7(@babel/core@7.25.2) - '@babel/template': 7.25.0 - '@solidjs/meta': 0.29.4(solid-js@1.8.20) - '@solidjs/router': 0.13.6(solid-js@1.8.20) - '@types/cookie': 0.5.4 - '@types/debug': 4.1.12 - chokidar: 3.6.0 - compression: 1.7.4 - connect: 3.7.0 - debug: 4.3.6 - dequal: 2.0.3 - dotenv: 16.4.5 - es-module-lexer: 1.5.4 - esbuild: 0.17.19 - esbuild-plugin-solid: 0.5.0(esbuild@0.17.19)(solid-js@1.8.20) - fast-glob: 3.3.2 - get-port: 6.1.2 - micromorph: 0.3.1 - parse-multipart-data: 1.5.0 - picocolors: 1.0.1 - rollup: 3.29.4 - rollup-plugin-visualizer: 5.12.0(rollup@3.29.4) - rollup-route-manifest: 1.0.0(rollup@3.29.4) - sade: 1.8.1 - set-cookie-parser: 2.7.0 - sirv: 2.0.4 - solid-js: 1.8.20 - terser: 5.31.5 - undici: 5.28.4 - vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - vite-plugin-inspect: 0.7.42(rollup@3.29.4)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) - vite-plugin-solid: 2.10.2(solid-js@1.8.20)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) - wait-on: 6.0.1(debug@4.3.6) - transitivePeerDependencies: - - '@nuxt/kit' - - '@testing-library/jest-dom' - - supports-color - solid-tippy@0.2.1(solid-js@1.8.22)(tippy.js@6.3.7): dependencies: solid-js: 1.8.22 @@ -13471,8 +12122,6 @@ snapshots: standard-as-callback@2.1.0: {} - statuses@1.5.0: {} - statuses@2.0.1: {} std-env@3.7.0: {} @@ -13851,19 +12500,8 @@ snapshots: node-fetch-native: 1.6.4 pathe: 1.1.2 - unicode-canonical-property-names-ecmascript@2.0.0: {} - unicode-emoji-modifier-base@1.0.0: {} - unicode-match-property-ecmascript@2.0.0: - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - - unicode-match-property-value-ecmascript@2.1.0: {} - - unicode-property-aliases-ecmascript@2.1.0: {} - unicorn-magic@0.1.0: {} unified@11.0.5: @@ -13932,8 +12570,6 @@ snapshots: dependencies: normalize-path: 2.1.1 - unpipe@1.0.0: {} - unplugin@1.12.1: dependencies: acorn: 8.12.1 @@ -14006,16 +12642,12 @@ snapshots: util-deprecate@1.0.2: {} - utils-merge@1.0.1: {} - valibot@0.20.1: {} validate-html-nesting@1.2.2: {} value-or-promise@1.0.12: {} - vary@1.1.2: {} - vfile-location@5.0.3: dependencies: '@types/unist': 3.0.2 @@ -14100,7 +12732,7 @@ snapshots: - uWebSockets.js - xml2js - vite-node@2.1.0(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5): + vite-node@2.1.1(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5): dependencies: cac: 6.7.14 debug: 4.3.6 @@ -14117,21 +12749,6 @@ snapshots: - supports-color - terser - vite-plugin-inspect@0.7.42(rollup@3.29.4)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)): - dependencies: - '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.0(rollup@3.29.4) - debug: 4.3.6 - error-stack-parser-es: 0.1.5 - fs-extra: 11.2.0 - open: 9.1.0 - picocolors: 1.0.1 - sirv: 2.0.4 - vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - transitivePeerDependencies: - - rollup - - supports-color - vite-plugin-inspect@0.7.42(rollup@4.20.0)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)): dependencies: '@antfu/utils': 0.7.10 @@ -14140,26 +12757,13 @@ snapshots: error-stack-parser-es: 0.1.5 fs-extra: 11.2.0 open: 9.1.0 - picocolors: 1.0.1 + picocolors: 1.1.0 sirv: 2.0.4 vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) transitivePeerDependencies: - rollup - supports-color - vite-plugin-solid@2.10.2(solid-js@1.8.20)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)): - dependencies: - '@babel/core': 7.25.2 - '@types/babel__core': 7.20.5 - babel-preset-solid: 1.8.19(@babel/core@7.25.2) - merge-anything: 5.1.7 - solid-js: 1.8.20 - solid-refresh: 0.6.3(solid-js@1.8.20) - vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - vitefu: 0.2.5(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) - transitivePeerDependencies: - - supports-color - vite-plugin-solid@2.10.2(solid-js@1.8.22)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)): dependencies: '@babel/core': 7.25.2 @@ -14188,15 +12792,15 @@ snapshots: optionalDependencies: vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - vitest@2.1.0(@types/node@22.5.4)(jsdom@25.0.0)(sass@1.77.8)(terser@5.31.5): + vitest@2.1.1(@types/node@22.5.4)(jsdom@25.0.0)(sass@1.77.8)(terser@5.31.5): dependencies: - '@vitest/expect': 2.1.0 - '@vitest/mocker': 2.1.0(@vitest/spy@2.1.0)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) - '@vitest/pretty-format': 2.1.0 - '@vitest/runner': 2.1.0 - '@vitest/snapshot': 2.1.0 - '@vitest/spy': 2.1.0 - '@vitest/utils': 2.1.0 + '@vitest/expect': 2.1.1 + '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(vite@5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5)) + '@vitest/pretty-format': 2.1.1 + '@vitest/runner': 2.1.1 + '@vitest/snapshot': 2.1.1 + '@vitest/spy': 2.1.1 + '@vitest/utils': 2.1.1 chai: 5.1.1 debug: 4.3.6 magic-string: 0.30.11 @@ -14207,7 +12811,7 @@ snapshots: tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.4.4(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) - vite-node: 2.1.0(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) + vite-node: 2.1.1(@types/node@22.5.4)(sass@1.77.8)(terser@5.31.5) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.5.4 @@ -14227,16 +12831,6 @@ snapshots: dependencies: xml-name-validator: 5.0.0 - wait-on@6.0.1(debug@4.3.6): - dependencies: - axios: 0.25.0(debug@4.3.6) - joi: 17.13.3 - lodash: 4.17.21 - minimist: 1.2.8 - rxjs: 7.8.1 - transitivePeerDependencies: - - debug - wcwidth@1.0.1: dependencies: defaults: 1.0.4 diff --git a/scripts/utils/calculate-bundlesize.ts b/scripts/utils/calculate-bundlesize.ts index 8ac6508a7..065a31574 100644 --- a/scripts/utils/calculate-bundlesize.ts +++ b/scripts/utils/calculate-bundlesize.ts @@ -1,18 +1,25 @@ -import fs from "fs"; -import fsp from "fs/promises"; -import path from "path"; +import * as fs from "node:fs"; +import * as fsp from "node:fs/promises"; +import * as path from "node:path"; +import * as zlib from "node:zlib"; import { build } from "esbuild"; -import { gzipSize } from "gzip-size"; import { fileURLToPath } from "url"; import { PACKAGES_DIR } from "./utils.js"; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); -const GZIP_HEADERS_AND_METADATA_SIZE = 20; // around 20 bytes - export type Bundlesize = { min: number; gzip: number }; +export async function gzipSize(input: zlib.InputType): Promise { + return new Promise((res, rej) => { + zlib.gzip( + input, + (err, val) => (err ? rej(err) : res(val.length - 20)), // around 20 bytes of gzip header + ); + }); +} + export const getPackageBundlesize = async ( packageName: string, { @@ -80,26 +87,11 @@ export const getPackageBundlesize = async ( const buffer = await fsp.readFile(outFilepath); const minifiedSize = buffer.toString().length; - const gzippedSize = (await gzipSize(buffer)) - GZIP_HEADERS_AND_METADATA_SIZE; + const gzippedSize = await gzipSize(buffer); fs.existsSync(exportFilepath) && (await fsp.rm(exportFilepath)); fs.existsSync(outFilepath) && (await fsp.rm(outFilepath)); - // if (minifiedSize <= 0) { - // if (recursive) { - // recursive = false; - // return result; - // } - // recursive = true; - - // return await getExportBundlesize({ - // packageName, - // type, - // exportName, - // isExportDefault: !isExportDefault, - // }); - // } - return { min: minifiedSize, gzip: gzippedSize, diff --git a/site/package.json b/site/package.json index e866e3d75..3e6e41b2b 100644 --- a/site/package.json +++ b/site/package.json @@ -21,22 +21,22 @@ "tailwindcss-dir": "^4.0.0" }, "dependencies": { - "@solid-primitives/clipboard": "workspace:^", - "@solid-primitives/event-bus": "workspace:^", - "@solid-primitives/event-listener": "workspace:^", - "@solid-primitives/intersection-observer": "workspace:^", - "@solid-primitives/keyboard": "workspace:^", - "@solid-primitives/marker": "workspace:^", - "@solid-primitives/media": "workspace:^", - "@solid-primitives/mutation-observer": "workspace:^", - "@solid-primitives/platform": "workspace:^", - "@solid-primitives/refs": "workspace:^", - "@solid-primitives/resize-observer": "workspace:^", - "@solid-primitives/rootless": "workspace:^", - "@solid-primitives/scheduled": "workspace:^", - "@solid-primitives/scroll": "workspace:^", - "@solid-primitives/tween": "workspace:^", - "@solid-primitives/utils": "workspace:^", + "@solid-primitives/clipboard": "latest", + "@solid-primitives/event-bus": "latest", + "@solid-primitives/event-listener": "latest", + "@solid-primitives/intersection-observer": "latest", + "@solid-primitives/keyboard": "latest", + "@solid-primitives/marker": "latest", + "@solid-primitives/media": "latest", + "@solid-primitives/mutation-observer": "latest", + "@solid-primitives/platform": "latest", + "@solid-primitives/refs": "latest", + "@solid-primitives/resize-observer": "latest", + "@solid-primitives/rootless": "latest", + "@solid-primitives/scheduled": "latest", + "@solid-primitives/scroll": "latest", + "@solid-primitives/tween": "latest", + "@solid-primitives/utils": "latest", "@solidjs/meta": "^0.29.3", "@solidjs/router": "^0.13.1", "clsx": "^2.0.0",